<<< Gemix BETA 6.5 >>>

Aggiornamenti, versioni e ultime notizie sul linguaggio.

<<< Gemix BETA 6.5 >>>

Postby CicTec » Fri Mar 02, 2012 7:35 pm

TOOLS download: Gemix Studio 6.5 Tools

BETA download: Gemix Studio BETA 6.5.2 Win32
BETA download: Gemix Studio BETA 6.5.2 Linux
BETA download: Gemix Studio BETA 6.5.2 Mac OS X


NOTE: Per le license della beta BETA, vedere qui

10/05/2012 BETA 6.5 UPDATE 2
---------------------------------------

Features:

Language & Core
---------------------

  • + Aggiunto: supporto auto-localizzazione path del core per il compilatore e auto-generazione del eseguibile nella cartella del source
  • * Corretto: bug di compilazione nel dichiarare TYPEDEFS in files PRG distinti dal principale (include)
  • * Corretto: bug nell'operatore bitwise NOT (~) al trattare correttamente tutti i tipi interi e no
  • * Corretto: bug che impediva dichiarare correttamente puntatori interi di default
  • * Corretto: bug nell'utilizzare gli operatori ++ e -- in puntatori no dereferenziati
  • * Corretto: bug nell'operatore ternario (?:) nel restituire il risultato corretto in alcuni casi
  • * Corretto: bug il quale provocava anomalie o crash del programma nell'usare dati o espressioni di tipo DOUBLE nelle condizioni
  • * Corretto: bug nella dichiarazione di costanti quando veniva specificato il tipo o altro elemento del linguaggio no relazionato con la grammatica per la dichiarazione provocando errori di compilazione errati
  • * Corretto: bug nel controllo di array LOCAL predefiniti di tipo FLOAT/DOUBLE
  • ! Informazione: migliorato utilizzo di memoria per il compilatore

Graphics
-----------

  • + Aggiunto: supporto di alpha compositing blends e nuove costanti:
    • fx_src, fx_dst, fx_srcoverdst, fx_dstoversrc, fx_srcindst, fx_dstinsrc, fx_srcoutdst, fx_dstoutsrc, fx_srcatopdst, fx_dstatopsrc, fx_srccleardst, fx_srcxordst
  • * Corretto: bug in SAVE_FPG e SAVE_MAP nel salvare correttamente i cpoints e su info in alcuni casi
  • * Corretto: bug nella funzione DRAW nel disegnare correttamente una linea quando le coordinate x1/y1 erano maggiori di x2/y2
  • * Corretto: bug di possibile crash del programma quando veniva passato un ID non valido alle funzioni OUT_REGION e XOUT_REGION
  • * Corretto: bugs nella funzione SAVE_IMAGE nel salvare correttamente i cpoints del formato MAP e formati di immagine a 32bits con canale alpha
  • * Corretto: bug nelle funzioni MAP_XXPUT e XXPUT che provocava il crash del programma quando si passava il valore 0 ai parametri size_x e size_y
  • ! Informazione: migliorate funzioni CLONE_FPG, CLONE_MAP, LOAD_FPG, LOAD_FPG_MAP, LOAD_MAP, SET_MAP_DESC e SET_MAP_NAME nella gestione dei cpoints e literali di info
  • ! Informazione: migliorata precisione di vari FX quando applicati cumulativamente
  • ! Informazione: migliorate precisione per grafici con canale alpha quando renderizzati cumulativamente

Input
-------

  • * Corretto: [Win] bug nella gestione incorretta dei pulsanti del mouse quando il cursore si trovava fuori dalla client area in un programma in finestra

Mode7
--------

  • * Corretto: bug nella funzione MODE7_TO_SCREEN nel posizionare correttamente le coordinate del punto nell'asse X dello schermo
  • * Corretto: [Mac] bug nel renderizzare correttamente un piano di mode7 in alcuni casi

Sound
--------

  • + Aggiunto: nuova funzione GET_SONGATTRIB_SIZE
  • - Eliminato: set funzioni MUSIC:
    • FADE_MUSIC, FADE_MUSIC_OFF, FADE_MUSIC_ON, GET_MUSIC_FREQUENCY, GET_MUSIC_ID, GET_MUSIC_LOOP, GET_MUSIC_LOOPCOUNT, GET_MUSIC_PAN, GET_MUSIC_POS, GET_MUSIC_SPEED, GET_MUSIC_TIME, GET_MUSIC_TIMEMS, GET_MUSIC_VOLUME, GET_MUSICATTRIB_FORMAT, GET_MUSICATTRIB_FREQUENCY, GET_MUSICATTRIB_LENGTH, GET_MUSICATTRIB_LENGTHMS, GET_MUSICATTRIB_LOOP, GET_MUSICATTRIB_LOOPCOUNT, GET_MUSICATTRIB_NAME, GET_MUSICATTRIB_PAN, GET_MUSICATTRIB_SIZE, GET_MUSICATTRIB_SPEED, GET_MUSICATTRIB_TYPE, GET_MUSICATTRIB_VOLUME, IS_FADING_MUSIC, IS_MUTED_MUSIC, IS_PAUSED_MUSIC, IS_PLAYING_MUSIC, LOAD_MUSIC, MUTE_MUSIC, PLAY_MUSIC, PAUSE_MUSIC, RESUME_MUSIC, SET_MUSIC_LOOP, SET_MUSIC_LOOPCOUNT, SET_MUSIC_PAN, SET_MUSIC_POS, SET_MUSIC_SPEED, SET_MUSIC_TIME, SET_MUSIC_TIMEMS SET_MUSIC_VOLUME, SET_MUSICATTRIB_LOOP, SET_MUSICATTRIB_LOOPCOUNT, SET_MUSICATTRIB_PAN, SET_MUSICATTRIB_SPEED, SET_MUSICATTRIB_VOLUME, STOP_MUSIC, UNLOAD_MUSIC, UNMUTE_MUSIC
    Adesso il supporto musiche stream (WAV/MP2/MP3/OGG) è stato integrato nel set di funzioni SONG
  • - Eliminato: set funzioni MIDI:
    • FADE_MIDI, FADE_MIDI_OFF, FADE_MIDI_ON, GET_MIDI_FREQUENCY, GET_MIDI_ID, GET_MIDI_LOOP, GET_MIDI_LOOPCOUNT, GET_MIDI_PAN, GET_MIDI_SPEED, GET_MIDI_TIME, GET_MIDI_TIMEMS, GET_MIDI_VOLUME, GET_MIDIATTRIB_CHANNELVOLUME, GET_MIDIATTRIB_FREQUENCY, GET_MIDIATTRIB_LENGTH, GET_MIDIATTRIB_LENGTHMS, GET_MIDIATTRIB_LOOP, GET_MIDIATTRIB_LOOPCOUNT, GET_MIDIATTRIB_NAME, GET_MIDIATTRIB_NUMCHANNELS, GET_MIDIATTRIB_PAN, GET_MIDIATTRIB_PANSEP, GET_MIDIATTRIB_SPEED, GET_MIDIATTRIB_VOLUME, IS_FADING_MIDI, IS_MUTED_MIDI, IS_MUTED_MIDICHANNEL, IS_PAUSED_MIDI, IS_PLAYING_MIDI, LOAD_MIDI, MUTE_MIDI, MUTE_MIDICHANNEL, PAUSE_MIDI, PLAY_MIDI, RESUME_MIDI, SET_MIDI_LOOP, SET_MIDI_LOOPCOUNT, SET_MIDI_PAN, SET_MIDI_SPEED, SET_MIDI_TIME, SET_MIDI_TIMEMS, SET_MIDI_VOLUME, SET_MIDIATTRIB_CHANNELVOLUME, SET_MIDIATTRIB_LOOP, SET_MIDIATTRIB_LOOPCOUNT, SET_MIDIATTRIB_PAN, SET_MIDIATTRIB_SPEED, SET_MIDIATTRIB_VOLUME, STOP_MIDI, UNLOAD_MIDI, UNMUTE_MIDI, UNMUTE_MIDICHANNEL
    Adesso il supporto midis (MID) è stato integrato nel set di funzioni SONG
  • - Eliminato: set funzioni MUSIC e MIDI per info AUDIOLIB:
    • GET_AUDIOLIB_MIDICHANNELS, GET_AUDIOLIB_MIDISLOADED, GET_AUDIOLIB_MIDISPLAYING, GET_AUDIOLIB_MUSICCHANNELS, GET_AUDIOLIB_MUSICLOADED, GET_AUDIOLIB_MUSICSPLAYING
  • - Eliminato: campi della struttura AUDIO_SETUP:
    • music_channels, music_volume, midi_channels, midi_volume
  • - Eliminato: costante audio_speaker_prologic, adesso obsoleta
  • - Eliminato: costanti all_music e all_midi, adesso non più necessarie
  • ! Informazione: ottimizzata velocità di inizializzazione

String
--------

  • ! Informazione: ottimizzata funzione ITOB

Text
-----

  • * Corretto: bug di memory leak nell'usare la funzione DRAW_TEXT[/color]
  • * Corretto: bug nell'usare correttamente gli align 1, 4 e 7 nelle funzioni di testo in alcuni casi

Url
----

  • + Aggiunto: modulo url per trasferimento dati via URL mediante vari protocolli (HTTP, FTP, POP3, etc...)



30/01/2012 BETA 6.5
---------------------------

Features:

Language & Core
---------------------

  • + Aggiunto: supporto di espressioni STRING in SWITCH
  • + Aggiunto: supporto di dati locali PUBLIC nei processi
  • + Aggiunto: supporto di variabili/array/puntatori de tipo PROCESS
    (es: ENEMY id_enemy;)
  • + Aggiunto: [Mac] supporto di combinazione predefinita Command + Q per uscire dal programma automaticamente
  • + Aggiunto: opzione di compilazione _use_always_int2string_conversions, la quale indica al compilatore di convertire sempre un INT a STRING quando necessario nelle espressioni
    NOTA: questa opzione di compilazione rompe la compatibilità con i programmi DIV2
  • + Aggiunto: supporto di TYPEDEFS (tipos definidos por el usuario) (tipi definiti dall'utente) al linguaggio
  • * Corretto: bug nei parametri FLOAT dei blocchi PROCESS/FUNCTION, dove il valore passato al parametro era 0 o errato
  • * Corretto: bug in alcune operazioni di conversione automatica
  • * Corretto: bug nel core il quale provocava a volte il crash del programma quando venivano lanciati certi errori di runtime
  • * Corretto: bug di "nessuna corrispondenza di funzione trovata" nell'usare una chiamata corretta di un blocco FUNCTION in alcuni casi
  • * Corretto: bug nel definire literali formati da varie linee
  • * Corretto: bug che mandava in crash il compilatore quando si tentava di aprire un prg inesistente con INCLUDE
  • * Corretto: bug nell'operatore cast nell'effettuare una conversione FLOAT -> INT
  • * Corretto: bug di errore di compilazione di espressioni in alcuni casi
  • * Corretto: bug che impediva di chiamare correttamente un PROCESS/FUNCTION contenente tutti i parametri con argomenti di default
  • * Corretto: bug nell'uso dei puntatori a stringa
  • * Corretto: vari bugs su operazioni con puntatori
  • * Corretto: bug il quale permetteva di dichiarare blocchi PROCESS/FUNCTION con lo stesso nome di funzioni predefinite
  • * Corretto: bug di memory leak nel dichiarare parametri nei blocchi PROCESS/FUNCTION di variabili LOCALI già esistenti
  • * Corretto: bug il quale impediva di utilizzare costanti definite (CONST) come valori per gli argomenti di default dei parametri dei blocchi PROCESS/FUNCTION
  • * Corretto: alcuni bugs di memory leak nel compilatore
  • * Corretto: bug il quale provocava il crash del programma quando si utilizzava l'operatore ternario (?:) con alcune espressioni
  • * Corretto: [Win] bug nel lanciare un'applicazione contenente spazi nel nome dell'eseguibile
  • * Corretto: bug il quale provocava il crash del programma o anomalie del compilatore quando venivano compilate espressioni condizionali molto grandi
  • * Corretto: bug il quale permetteva dichiarare PROCESS o FUNCTION con lo stesso nome di elementi predefiniti (variabili, etc...)
  • * Corretto: bug il quale provocava il crash del programma nell'utilizzare puntatori di tipo DOUBLE in alcune espressioni
  • * Corretto: bug nel dichiarare correttamente parametri nei blocchi PROCESS/FUNCTION di variabili LOCAL già esistenti di tipo distinto a INT
  • * Corretto: bug il quale provocava il crash del compilatore o anomalie di compilazione con alcuni moduli quando il compilatore non incontrava il file gemix.cfg
  • ! Informazione: migliorati messaggi di errore di runtime
  • ! Informazione: migliorato controllo di puntatori in compile-time e run-time
  • ! Informazione: ottimizzata generazione di codice, adesso il codice prodotto è più rapido del 200 ~ 300%
  • ! Informazione: ottimizzato core di esecuzione, adesso i programmi girano fino a 3 ~ 5 volte più rapidamente

Main
------

  • + Aggiunto: supporto in ARGV di numero illimitato di argomenti del programma (33 nella beta 6.0)
  • + Aggiunto: supporto della costante all_process per la funzione GET_ID per permettere di ottenere tutti gli ID di qualunque tipo di processo
  • + Aggiunto: nuova funzione GET_TYPE la quale permette di ottenere il tipo di una istanza di processo mediante su ID
  • + Aggiunto: nuove funzioni di gestione dei segnali dei processi:
    • GET_SIGNAL_BEHAVIOUR, SET_SIGNAL_BEHAVIOUR
    e nuove costanti:
      s_behaviour_ignore, s_behaviour_receive, s_behaviour_unknown/[b]
    Permettono di ottenere e impostare il comportamento dei processi nella ricezione dei segnali inviati con la funzione [b]SIGNAL
  • * Corretto: bug nella funzione EXIT la quale non terminava immediatamente il programma provocando eventuali sovrascritture del tipo di messaggio di ritorno in caso di multiple chiamate
  • * Corretto: [Linux/Mac] bug il quale impediva di visualizzare il messaggio di uscita della funzione EXIT
  • ! Informazione: ottimizzate funzioni EXISTS, GET_ID, LET_ME_ALONE e SIGNAL

File
----

  • + Aggiunto: supporto in GET_DIINFO di listato illimitato di archivi (2048 nella beta 6.0)
  • [b]+ Aggiunto: nuova funzione GETWPATH, permette di ottenere il path di scrittura in piattaforme che necessitano di una locazione particolare per salvare files (es: Max OS X, iOS, etc...)

Graphics
-----------

  • + Aggiunto: nuove funzioni di maneggio risorse:
    • GET_FPG_NUMMAPS, IS_EMPTY_FPG, IS_FULL_FPG, GET_MAP_ALPHACHANNEL, GET_MAP_HEIGHT, GET_MAP_NUMCPOINTS, GET_MAP_WIDTH, GET_MAP_XCENTER, GET_MAP_YCENTER
  • + Aggiunto: nuove funzioni di informazione grafica:
    • GET_GRAPHICLIB_FPGSLOADED, GET_GRAPHICLIB_MAPSLOADED, GET_GRAPHICLIB_DRAWSPAINTED, GET_GRAPHICLIB_DRAWSFIXED, GET_GRAPHICLIB_DRAWSLOCKED, GET_GRAPHICLIB_REGIONSDEFINED
  • + Aggiunto: nuove funzioni di primitive grafiche:
    • GET_DRAW_TYPE, GET_DRAW_COLOR, GET_DRAW_BOX, GET_DRAW_X0, GET_DRAW_Y0, GET_DRAW_X1, GET_DRAW_Y1, GET_DRAW_WIDTH, GET_DRAW_HEIGHT, GET_DRAW_ALPHA, GET_DRAW_REGION, GET_DRAW_Z, IS_LOCKED_DRAW, IS_FIXED_DRAW
  • + Aggiunto: nuova variabile GLOBAL draw_visible per permettere di occultare o visualizzare tutte le primitive grafiche (DRAW)
    Vengono aggiunte inoltre le seguenti nuove funzioni di info e setting:
    • GET_DRAW_VISIBLE, SET_DRAW_VISIBLE
  • + Aggiunto: nuove funzioni di regioni:
    • GET_REGION_WIDTH, GET_REGION_HEIGHT, GET_REGION_BOX, GET_REGION_X0, GET_REGION_Y0, GET_REGION_X1, GET_REGION_Y1, IS_DEFINED_REGION
  • + Aggiunto: nuove funzioni di inizializzazione grafica:
    • GET_MODE_WIDTH, GET_MODE_HEIGHT, GET_MODE_BPP, GET_MODE_TYPE, GET_MODE_BUFFERBEHAVIOUR, GET_MODE_RATE, GET_MODE_REALWIDTH, GET_MODE_REALHEIGHT, GET_MODE_VSYNC, IS_EMULATED_MODE, GET_VIRTUALRESOLUTION_ASPECTRATIO, GET_VIRTUALRESOLUTION_WIDTH, GET_VIRTUALRESOLUTION_HEIGHT, GET_VIRTUALRESOLUTION_RATIOWIDTH, GET_VIRTUALRESOLUTION_RATIOHEIGHT, GET_VIRTUALRESOLUTION_XOFFSET, GET_VIRTUALRESOLUTION_YOFFSET, IS_EMULATED_VIRTUALRESOLUTION
  • + Aggiunto: nuove funzioni per impostare e ottenere il nome e la descrizione dei grafici:
    • GET_MAP_DESC, GET_MAP_NAME, SET_MAP_DESC, SET_MAP_NAME
  • + Aggiunto: supporto della costante all_process per le funzioni COLLISION e OVERLAP per permettere di verificare le collisioni con qualunque tipo di processo
  • + Aggiunto: supporto per regioni con larghezza e altezza negative
  • + Aggiunto: supporto nella funzione LOAD_PCX per il caricamento di PCX a 24bits
  • + Aggiunto: supporto nella funzione SAVE_PCX per il salvataggio di PCX a 24bits
  • + Aggiunto: nuove funzioni per formati grafici:
    • LOAD_IMAGE, SAVE_IMAGE, UNLOAD_IMAGE
    e costanti per SAVE_IMAGE:
    • img_format_bmp, img_format_jpeg, img_format_map, img_format_pcx, img_format_png, img_format_tga
    Permettono di caricare e salvare immagini in formato standard e DIV/Gemix
  • - Eliminato: funzione di maneggio risorse FPG_INFO e costanti:
    • fpg_loaded, fpg_num_maps, fpg_empty, fpg_full
  • - Eliminato: funzione di informazione grafica MODE_INFO e costanti:
    • mode_width, mode_height, mode_bpp, mode_programtype, mode_bufferbehaviour, mode_buffercount, mode_rate, mode_isvirtual, mode_realwidth, mode_realheight, mode_vsync, mode_filter_scaletype, mode_filter_scanlinetype, mode_filter_scanlinepercent
  • - Eliminato: funzione di primitiva grafica DRAW_INFO e costanti:
    • drawing_type, drawing_color, drawing_x0, drawing_y0, drawing_x1, drawing_y1, drawing_width, drawing_height, drawing_locked, drawing_fixed, drawing_region, drawing_z, drawing_alpha, drawing_destination_file, drawing_destination_graph
  • - Eliminato: funzione di regioni REGION_INFO e costanti:
    • rgn_defined, rgn_width, rgn_height, rgn_x0, rgn_y0, rgn_x1, rgn_y1
  • - Eliminato: funzioni di inizializzazione grafica VIRTUALRESOLUTION_INFO e costanti:
    • virtualres_isvirtual, virtualres_aspectratio, virtualres_width, virtualres_height, virtualres_ratiowidth, virtualres_ratioheight, virtualres_xoffset, virtualres_yoffset
  • - Eliminato: funzione MAP_SET_COLOR/COLOUR
  • # Modificato: GRAPHIC_EXISTS -> MAP_EXISTS
  • # Modificato: MAP_SET_PIXEL -> MAP_SET_COLOR/COLOUR
  • # Modificato: overloads delle funzioni LOAD_MAP e LOAD_FPG:
    • INT SAVE_MAP(INT fpg_id, INT graph, STRING fname, INT compress, STRING password)
    • INT SAVE_FPG(INT fpg_id, STRING fname, INT compress, STRING password)
    Permettendo in questo modo di specificare se comprimere e/o criptare le risorse salvate
    NOTA: le funzioni adesso ritornano a salvare senza compressione per default
  • # Modificato: funzioni per punti di controllo:
    • DELETE_POINT -> DELETE_MAP_CPOINT
    • NEW_POINT -> NEW_MAP_CPOINT
    • POINT_EXISTS -> MAP_CPOINT_EXISTS
    • SET_CENTER -> SET_MAP_CENTER
    • SET_POINT -> SET_MAP_CPOINT
  • # Modificato: costante g_points -> g_numcpoints
  • * Corretto: bug nelle primitive grafiche rettangolo e cerchio (DRAW) nell'usare regioni distinte allo schermo (0)
  • * Corretto: bug nella primitiva grafica rettangolo (DRAW)[b] nell'usare [b]alpha, disegnando i bordi solidi
  • * Corretto: bug di controllo della funzione SET_COLOR il quale gli impediva di funzionare
  • * Corretto: bug nella rutine di tiling (per le funzioni PUT_TILE, MAP_PUT_TILE, etc...) il quale provocava il crash del programma nell'usare un grafico con cpoint 0 definito
  • * Corretto: bug nella rutine di tiling (per le funzioni PUT_TILE, MAP_PUT_TILE, etc...) il quale provocava il crash del programma nel disegnare in una destinazione di dimensione inferiore al grafico origine
  • * Corretto: bug in CLONE_MAP nell'accedere all'FPG corretto per la clonazione, il quale provocava il crash del programma in alcune occasioni
  • * Corretto: bug nell'usare COLLISION(X, Y, ID/TYPE process) con un grafico del processo indicato contenente canale alpha
  • * Corretto: [Win] bug il quale impediva di renderizzare le finestre di dimensione inferiore a 120 pixels di larghezza
  • * Corretto: bug nel disegnare correttamente le primitive (DRAW) in modalità restore_type = no_restore
  • * Corretto: bug in LOAD_FPG_MAP nel caricare grafici da FPG compressi
  • * Corretto: bug nel renderizzare correttamente una risoluzione virtuale con aspect ratio attivo in alcuni casi
  • * Corretto: bug in DRAW_BLOCK nel renderizzare incorrettamente il grafico o provocare il crash del programma quando si usava una regione diversa dallo schermo
  • * Corretto: messaggi di runtime-error con numero di parametro errato in alcune funzioni
  • * Corretto: [Win] bug il quale impediva di visualizzare programmi in fullscreen in alcuni hardwares
  • * Corretto: bug il quale mandava in crash il programma usando SET_VIRTUAL_RESOLUTION con valori Width e Height a 0 per disattivarlo
  • * Corretto: bug in partial_dump usato con finestre di scroll e mode7 attive
  • * Corretto: [Mac] bug nel visualizzare correttamente i colori in fullscreen a 32bits
  • * Corretto: bug in LOAD_FPG, LOAD_FPG_MAP e LOAD_MAP il quale provocava una corruzione nel caricamento quando si usava una password e la risorsa non era criptata
  • * Corretto: bug in UNLOAD_MAP il quale provocava il crash del programma usando all_map come valore
  • * Corretto: bug in UNLOAD_PCX il quale provocava il crash del programma usando all_pcx come valore
  • ! Informazione: ottimizzato FADE a 16 e 32bits
  • ! Informazione: ottimizzate funzioni ADD_FPG_MAP, CLONE_FPG, CLONE_MAP, LOAD_FPG, LOAD_FPG_MAP, LOAD_MAP, LOAD_PCX, NEW_MAP, UNLOAD_FPG, UNLOAD_FPG_MAP, UNLOAD_MAP, UNLOAD_PCX
  • ! Informazione: optimizzate funzioni COLLISION e OVERLAP che utilizzano la forma TYPE process
  • ! Informazione: ottimizzate funzioni LOAD_FPG e LOAD_FPG nella conversione di grafici 8 -> 16, 8 -> 32, 16 -> 32, adesso 3 volte più rapide
  • ! Informazione: ottimizzata funzione LOAD_MAP nella conversione di grafico 8 -> 16, 8 -> 32, 16 -> 32, adesso 3 volte più rapida
  • ! Informazione: ottimizzata funzione CONVERT_PALETTE, 3 volte più rapida

Input
-------

  • + Aggiunto: nuove funzioni di inizializzazione input:
    • GET_INPUTLIB_MOUSEAVAILABLE, GET_INPUTLIB_JOYSCONNECTED
  • + Aggiunto: nuove funzioni di info joystick:
    • GET_JOY_MODEL, GET_JOY_NAME, GET_JOY_FORCEFEEDBACK, GET_JOY_NUMBUTTONS, GET_JOY_NUMAXES, GET_JOY_NUMHATS
  • + Aggiunto: campo visible alla struttura MOUSE per poter occultare o visualizzare il puntatore del mouse
  • + Aggiunto: nuove funzioni DISABLE_KEY_SHORTCUT, ENABLE_KEY_SHORTCUT e costanti:
    • _pause, _alt_x, _command_q
    Permettendo di attivare/disattivare tasti e combinazioni di tasti predefinite
  • + Aggiunto: supporto di meta key (COMMAND in Mac, WINDOW in Windows/Linux) per la funzione KEY/KEYDOWN mediante le seguenti costanti:
    • _meta, _l_meta, _r_meta
  • * Corretto: [Mac] bug nel restituire lo scan_code al premere un tasto
  • # Modificato: [WIN] supporto di rutine del mouse, adesso viene usata la API nativa di windows invece di Direct Input
  • # Modificato: funzionamento mouse.speed, adesso agisce solo il mouse emulato con la tastiera
  • - Eliminato: funzione di inizializzazione input INPUTLIB_INFO e costanti:
    • inlib_mouse_present, inlib_joys_connected
  • - Eliminato: funzioni di info JOY_INFO di joystick e costanti:
    • joy_model, joy_name, joy_axes, joy_buttons, joy_hats, joy_force_feedback
  • ! Informazione: migliorato controllo e performance del mouse

Math
------

  • + Aggiunto: nuova funzione NEAW_VALUE, la quale permette di ottener il valore più vicino al valore finale
  • + Aggiunto: nuove costanti PI_FLOAT e PI_DOUBLE, per ottenere il PI greco reale a maggiore o minore precisione
  • * Corretto: bug nella funzione RAND nel restituire pseudo-numeri corretti quando venivano passati valori molto grandi o piccoli nei parametri MIN e MAX
  • ! Informazione: ottimizzata funzione RAND, 10 volte più rapida

Mode7
--------

  • * Corretto: grave bug di corruzione di memoria nel disegnare una finestra di mode7 in una regione distinta allo schermo (0)
  • * Corretto: messaggi di runtime-error con numero di parametro errato in alcune funzioni
  • * Corretto: bug il quale impediva di aggiornare una finestra di mode7 che usava una regione distinta alla 0, quando quest'ultima cambiava di dimensione
  • * Corretto: bug il quale provocava il crash del programma nello scaricare il modulo in modalità 32bits
  • * Corretto: bug il quale provocava il crash del programma quando la regione di rendenring di destinazione era impostata a -1

Scroll
---------

  • + Aggiunto: supporto di regioni per i processi di scroll, adesso se viene indicato un valore maggiore di 0 nella LOCAL REGION, il processo utilizzarà la regione indicata (se esiste), altrimenti seguirà utilizzando quella della finestra di scroll
  • + Aggiunto: nuovo campo scroll.file per potere ottenere l'FPG attuale usato nella finestra di scroll o poter cambiarlo dinamicamente
  • + Aggiunto: resetting completo della struttura SCROLL della finestra di scroll attivo quando questa viene eliminata mediante una chiamata a STOP_SCROLL
  • * Corretto: messaggi di runtime-error con numero di parametro errato in alcune funzioni
  • * Corretto: bug il quale impediva di aggiornare una finestra di scroll che usava una regione distinta alla 0, quando quest'ultima cambiava di dimensione
  • * Corretto: bug il quale provocava il crash del programma quando la regione di rendenring di destinazione era impostata a -1
  • * Corretto: bug nella funzione SET_SCROLL_DESTINATION nell'impostare correttamente la regione passata come parametro
  • ! Informazione: ottimizzati scroll, più rapidi del 2 ~ 5%

Sound
--------

  • + Aggiunto: nuove funzioni di info e setting dei suoni:
    • GET_SOUNDATTRIB_LOOP, GET_SOUNDATTRIB_LOOPCOUNT, GET_SOUNDATTRIB_FREQUENCY, GET_SOUNDATTRIB_VOLUME, GET_SOUNDATTRIB_SPEED, GET_SOUNDATTRIB_PAN, GET_SOUNDATTRIB_NAME, GET_SOUNDATTRIB_TYPE, GET_SOUNDATTRIB_FORMAT, GET_SOUNDATTRIB_LENGTH, GET_SOUNDATTRIB_LENGTHMS, GET_SOUNDATTRIB_SIZE, SET_SOUNDATTRIB_LOOP, SET_SOUNDATTRIB_LOOPCOUNT, SET_SOUNDATTRIB_VOLUME, SET_SOUNDATTRIB_SPEED, SET_SOUNDATTRIB_PAN
  • + Aggiunto: nuove funzioni di info e setting della riproduzione di suoni:
    • GET_SOUND_LOOP, GET_SOUND_LOOPCOUNT, GET_SOUND_FREQUENCY, GET_SOUND_VOLUME, GET_SOUND_SPEED, GET_SOUND_PAN, GET_SOUND_POS, GET_SOUND_TIME, GET_SOUND_TIMEMS, SET_SOUND_TIMEMS
  • + Aggiunto: nuove funzioni di info e setting delle song:
    • GET_SONGATTRIB_LOOP, GET_SONGATTRIB_LOOPCOUNT, GET_SONGATTRIB_FREQUENCY, GET_SONGATTRIB_VOLUME, GET_SONGATTRIB_SPEED, GETSONGATTRIB_PAN, GET_SONGATTRIB_PANSEP, GET_SONGATTRIB_NAME, GET_SONGATTRIB_TYPE, GET_SONGATTRIB_FORMAT, GET_SONGATTRIB_LENGTH, GET_SONGATTRIB_LENGTHMS, GET_SONGATTRIB_NUMCHANNELS, GET_SONGATTRIB_NUMORDERS, GET_SONGATTRIB_NUMPATTERNS, SET_SONGATTRIB_LOOP, SET_SONGATTRIB_LOOPCOUNT, SET_SONGATTRIB_VOLUME, SET_SONGATTRIB_SPEED, SET_SONGATTRIB_PAN
  • + Aggiunto: nuove funzioni di info e setting della riproduzione di songs:
    • GET_SONG_LOOP, GET_SONG_LOOPCOUNT, GET_SONG_FREQUENCY, GET_SONG_VOLUME, GET_SONG_SPEED, GET_SONG_PAN, GET_SONG_POS, GET_SONG_TIME, GET_SONG_TIMEMS, GET_SONG_ORDER, GET_SONG_PATTERN, GET_SONG_ROW, GET_SONG_NUMROWS, SET_SONG_TIMEMS
  • + Aggiunto: nuove funzioni di info e setting della riproduzione di musiche stream:
    • GET_MUSICATTRIB_LOOP, GET_MUSICATTRIB_LOOPCOUNT, GET_MUSICATTRIB_FREQUENCY, GET_MUSICATTRIB_VOLUME, GET_MUSICATTRIB_SPEED, GET_MUSICATTRIB_PAN, GET_MUSICATTRIB_NAME, GET_MUSICATTRIB_TYPE, GET_MUSICATTRIB_FORMAT, GET_MUSICATTRIB_LENGTH, GET_MUSICATTRIB_LENGTHMS, GET_MUSICATTRIB_SIZE, SET_MUSICATTRIB_LOOP, SET_MUSICATTRIB_LOOPCOUNT, SET_MUSICATTRIB_VOLUME, SET_MUSICATTRIB_SPEED, SET_MUSICATTRIB_PAN
  • + Aggiunto: nuove funzioni di info e setting della riproduzione di musiche stream:
    • GET_MUSIC_LOOP, GET_MUSIC_LOOPCOUNT, GET_MUSIC_FREQUENCY, GET_MUSIC_VOLUME, GET_MUSIC_SPEED, GET_MUSIC_PAN, GET_MUSIC_POS, GET_MUSIC_TIME, GET_MUSIC_TIMEMS, SET_MUSIC_TIMEMS
  • + Aggiunto: nuove funzioni di info e setting dei midi:
    • GET_MIDIATTRIB_LOOP, GET_MIDIATTRIB_LOOPCOUNT, GET_MIDIATTRIB_FREQUENCY, GET_MIDIATTRIB_VOLUME, GET_MIDIATTRIB_PANSEP, GET_MIDIATTRIB_NAME, GET_MIDIATTRIB_LENGTH, GET_MIDIATTRIB_LENGTHMS, GET_MIDIATTRIB_NUMCHANNELS, SET_MIDIATTRIB_LOOP, SET_MIDIATTRIB_LOOPCOUNT, SET_MIDIATTRIB_VOLUME, SET_MIDIATTRIB_SPEED, SET_MIDIATTRIB_PAN
  • + Aggiunto: nuove funzioni di info e setting della riproduzione di midis:
    • GET_MIDI_LOOP, GET_MIDI_LOOPCOUNT, GET_MIDI_FREQUENCY, GET_MIDI_VOLUME, GET_MIDI_SPEED, GET_MIDI_PAN, GET_MIDI_TIME, GET_MIDI_TIMEMS, SET_MIDI_TIMEMS
  • + Aggiunto: nuove funzioni di info e setting dei cd audio:
    • GET_CDATTRIB_VOLUME, GET_CDATTRIB_SPEED, GET_CDATTRIB_PAN, GET_CDATTRIB_NAME, GET_CDATTRIB_LENGTH, GET_CDATTRIB_LENGTHMS, GET_CDATTRIB_NUMTRACKS, SET_CDATTRIB_VOLUME, SET_CDATTRIB_SPEED, SET_CDATTRIB_PAN
  • + Aggiunto: nuove funzioni di info e setting della riproduzione di cd audio:
    • GET_CD_MODE, GET_CD_FREQUENCY, GET_CD_VOLUME, GET_CD_SPEED, GET_CD_PAN, GET_CDTRACK_NAME, GET_CDTRACK_PLAYING, GET_CDTRACK_LENGTH, GET_CDTRACK_LENGTHMS, GET_CDTRACK_TIME, GET_CDTRACK_TIMEMS, SET_CD_TIMEMS
  • + Aggiunto: nuove funzioni di inizializzazione audio:
    • GET_AUDIOLIB_DRIVERNAME, GET_AUDIOLIB_SOUNDSLOADED, GET_AUDIOLIB_SONGSLOADED, GET_AUDIOLIB_MUSICSLOADED, GET_AUDIOLIB_MIDISLOADED, GET_AUDIOLIB_CDSLOADED, GET_AUDIOLIB_SOFTWARECHANNELS, GET_AUDIOLIB_HARDWARECHANNELS, GET_AUDIOLIB_SOUNDCHANNELS, GET_AUDIOLIB_SONGCHANNELS, GET_AUDIOLIB_MUSICCHANNELS, GET_AUDIOLIB_MIDICHANNELS, GET_AUDIOLIB_CDCHANNELS, GET_AUDIOLIB_NUMDRIVERS, GET_AUDIOLIB_NUMCDDRIVES
  • - Eliminato: funzione SOUND_INFO e costanti:
    • snd_loop, snd_loopcount, snd_volume, snd_speed, snd_pan, snd_name, snd_type, snd_format, snd_frequency, snd_length, snd_lengthms, snd_size
  • - Eliminato: funzione SOUND_SET_ATTRIB e costanti:
    • snd_attrib_loop, snd_attrib_loopcount, snd_attrib_volume, snd_attrib_speed, snd_attrib_pan
  • - Eliminato: funzione SONG_INFO e costanti:
    • sng_loop, sng_loopcount, sng_volume, sng_speed, sng_pan, sng_pansep, sng_frequency, sng_name, sng_type, sng_format, sng_channels, sng_length, sng_lengthms, sng_orders, sng_patterns
  • - Eliminato: funzione SONG_SET_ATTRIB e costanti:
    • sng_attrib_loop, sng_attrib_loopcount, sng_attrib_volume, sng_attrib_speed, sng_attrib_pan
  • - Eliminato: funzione MUSIC_INFO e costanti:
    • mus_loop, mus_loopcount, mus_volume, mus_speed, mus_pan, mus_name, mus_type, mus_format, mus_frequency, mus_length, mus_lengthms, mus_size
  • - Eliminato: funzione MUSIC_SET_ATTRIB e costanti:
    • mus_attrib_loop, mus_attrib_loopcount, mus_attrib_volume, mus_attrib_speed, mus_attrib_pan
  • - Eliminato: funzione MIDI_INFO e costanti:
    • mid_loop, mid_loopcount, mid_volume, mid_speed, mid_pan, mid_pansep, mid_frequency, mid_name, mid_channels, mid_length, mid_lengthms
  • - Eliminato: funzione MIDI_SET_ATTRIB e costanti:
    • mid_attrib_loop, mid_attrib_loopcount, mid_attrib_volume, mid_attrib_speed, mid_attrib_pan
  • - Eliminato: funzione CD_INFO e costanti:
    • cd_mode, cd_volume, cd_speed, cd_pan, cd_name, cd_length, cd_lengthms, cd_tracks
  • - Eliminato: funzione CHANNEL_INFO e costanti:
    • channel_sound, channel_song, channel_music, channel_midi, channel_cd, chn_sound_loop, chn_sound_loopcount, chn_sound_volume, chn_sound_speed, chn_sound_pan, chn_sound_time, chn_sound_timems, chn_sound_frequency, chn_sound_pos, chn_song_loop, chn_song_loopcount, chn_song_volume, chn_song_speed, chn_song_pan, chn_song_time, chn_song_timems, chn_song_frequency, chn_song_order, chn_song_pattern, chn_song_rows, chn_song_row, chn_music_loop, chn_music_loopcount, chn_music_volume, chn_music_speed, chn_music_pan, chn_music_time, chn_music_timems, chn_music_frequency, chn_music_pos, chn_midi_loop, chn_midi_loopcount, chn_midi_volume, chn_midi_speed, chn_midi_pan, chn_midi_time, chn_midi_timems, chn_midi_frequency, chn_cd_mode, chn_cd_volume, chn_cd_speed, chn_cd_pan, chn_cd_frequency, chn_cdtrack_name, chn_cdtrack_play, chn_cdtrack_length, chn_cdtrack_lengthms, chn_cdtrack_time, chn_cdtrack_timems
  • - Eliminato: funzione AUDIOLIB_INFO e costanti:
    • audlib_sound_channels, audlib_song_channels, audlib_midi_channels, audlib_music_channels, audlib_cd_channels, audlib_sw_channels, audlib_hw_channels, audlib_snds_loaded, audlib_sngs_loaded, audlib_muss_loaded, audlib_mids_loaded, audlib_cds_loaded, audlib_drivers, audlib_driver, audlib_driver_name
  • - Eliminato: nomi di funzioni:
    • midi, music
  • # Modificato: funzioni di caricamento LOAD_PCM, LOAD_WAV, LOAD_SOUND, LOAD_SONG, LOAD_MUSIC y LOAD_MIDI
    Adesso permettono di verificare il formato del file senza guardare l'estenzione
  • # Modificato: funzioni song:
    • GET_SONG_CHANNELVOLUME -> GET_SONGATTRIB_CHANNELVOLUME
    • SET_SONG_CHANNELVOLUME -> SET_SONGATTRIB_CHANNELVOLUME
  • # Modificato: funzioni midi:
    • GET_MIDI_CHANNELVOLUME -> GET_MIDIATTRIB_CHANNELVOLUME
    • SET_MIDI_CHANNELVOLUME -> SET_MIDIATTRIB_CHANNELVOLUME
  • # Modificato: funzioni di info di riproduzione risorse:
    • SOUNDS_PLAYING -> GET_AUDIOLIB_SOUNDSPLAYING
    • SONGS_PLAYING -> GET_AUDIOLIB_SONGSPLAYING
    • MUSICS_PLAYING -> GET_AUDIOLIB_MUSICSPLAYING
    • MIDIS_PLAYING -> GET_AUDIOLIB_MIDISPLAYING
    • CDS_PLAYING -> GET_AUDIOLIB_CDSPLAYING
    • CHANNELS_PLAYING -> GET_AUDIOLIB_CHANNELSPLAYING
    • GET_CD_DRIVES -> GET_AUDIOLIB_NUMCDDRIVES
    • GET_AUDIO_DRIVER -> GET_AUDIOLIB_DRIVER
  • # Modificato: parametro speed -> ms delle funzioni fading:
    • FADE_CD, FADE_MIDI, FADE_MUSIC, FADE_SONG, FADE_SOUND
    Adesso il tempo di durata viene indicato in MS
  • * Corretto: bug nei fades degli effetti di suono
  • ! Informazione: ottimizzate funzioni di caricamento LOAD_PCM, LOAD_WAV, LOAD_SOUND, LOAD_SONG, LOAD_MUSIC e LOAD_MIDI

Pathfind
-----------

  • + Aggiunto: nuovi overloads per le funzioni PATH_FIND e PATH_LINE:
    • INT PATH_FIND(INT mode, INT fpg_id, INT graph_id, INT factor_size, INT proc_id_dst, VOID POINTER struct, INT sizeof(struct))
    • INT PATH_FIND(INT mode, INT fpg_id, INT graph_id, INT factor_size, INT proc_id, INT x, INT y, VOID POINTER struct, INT sizeof(struct))
    • INT PATH_FIND(INT mode, INT fpg_id, INT graph_id, INT factor_size, INT INT src_x, INT src_y, INT x, INT y, VOID POINTER struct, INT sizeof(struct))
    • INT PATH_LINE(INT fpg_id, INT graph_id, INT factor_size, INT proc_id_dst)
    • INT PATH_LINE(INT fpg_id, INT graph_id, INT factor_size, INT proc_id, INT x, INT y)
    • INT PATH_LINE(INT fpg_id, INT graph_id, INT factor_size, INT src_x, INT src_y, INT x, INT y)
    Permettendo cosi di saltare ostacoli di un mappa di ricerca chiamando la funzione in varie forme e in vari punti del programma (PROCESS/FUNCTION)

String
--------

  • + Aggiunto: nuova funzione UITOA per conversioni di numeri interi di 8/16/32bits senza segno a stringa
  • + Aggiunto: nuovo overload della STRSTR:
    • INT STRSTR(STRING str, STRING substr, INT start)
    Il quale permette di specificare la posizione di str da dove iniziare a cercare la substr
  • + Aggiunto: nuova funzione STRSECTION, la quale permette di restituire una stringa suddivisa secondo il pattern e la posizione passati come parametri
  • * Corretto: bug il quale provocava il crash del programma al passare una stringa vuota alla funzione STRTRM ed altre aventi una stringa come tipo di ritorno, usate in espressioni con stringhe
  • * Corretto: bug nella funzione ITOA al convertire correttamente numeri INT negativi grandi
  • * Corretto: bug nelle funzioni ISSTRALNUM, ISSTRALNUMSPACE e ISSTRALPHA nel restituire il risultato corretto in alcuni casi
  • ! Informazione: ottimizzate funzioni ISSTRALNUM, ISSTRALNUMSPACE e ISSTRALPHA

Text
-----

  • + Aggiunto: nuove funzioni di info testi:
    • GET_TEXT_TYPE, GET_TEXT_VALUE, GET_TEXT_FNT, GET_TEXT_ALIGN, GET_TEXT_POS, GET_TEXT_X, GET_TEXT_Y, GET_TEXT_WIDTH, GET_TEXT_HEIGHT, GET_TEXT_ALPHA, GET_TEXT_ANGLE, GET_TEXT_DESTINATION, GET_TEXT_FLAGS, GET_TEXT_FX, GET_TEXT_REGION, GET_TEXT_SHEAR, GET_TEXT_SIZE, GET_TEXT_TFMORDER, GET_TEXT_Z, IS_FIXED_TEXT, IS_LOCKED_TEXT
  • + Aggiunto: nuova variabile GLOBAL text_visible per permettere di occultare o visualizzare tutti i testi
    Vengono aggiunte inoltre le seguenti nuove funzioni di info e setting:
    • GET_TEXT_VISIBLE, SET_TEXT_VISIBLE
  • + Aggiunto: nuove funzioni di inizializzazione testi:
    • GET_TEXTLIB_FNTSLOADED, GET_TEXTLIB_TEXTSFIXED, GET_TEXTLIB_TEXTSLOCKED, GET_TEXTLIB_WRITERBEHAVIOUR
  • + Aggiunto: nuove funzioni per stampare testi numerici interi con e senza segno:
    • WRITE_BYTE, WRITE_SBYTE, WRITE_SHORT, WRITE_WORD
  • + Aggiunto: supporto del nuovo formato FNT a 8, 16 e 32bits
  • - Eliminato: funzione di info testi TEXT_INFO e costanti:
    • txt_type, txt_text, txt_fnt, txt_align, txt_x, txt_y, txt_width, txt_height, txt_fixed, txt_locked, txt_angle, txt_flags, txt_region, txt_size_x, txt_size_y, txt_z, txt_fxmode, txt_fxcolor, txt_fxintensity, txt_alpha, txt_tfmorder, txt_shear_x, txt_shear_y, txt_destination_file, txt_destination_graph
  • - Eliminato: funzioni di inizializzazione testi TEXTLIB_INFO e costanti:
    • txtlib_fnts_loaded, txtlib_texts_fixed, txtlib_locked, txtlib_texts_written, txtlib_writer_behaviour
  • - Eliminato: funzioni FNT_SET_COLOR/COLOUR e TEXT_SET_COLOR/COLOUR
  • # Modificato: funzioni di FNT e testi:
    • FNT_SET_PIXEL -> FNT_SET_COLOR/COLOUR
    • TEXT_SET_PIXEL -> TEXT_SET_COLOR/COLOUR
  • * Corretto: messaggi di runtime-error con numero di parametri errato in alcune funzioni
  • * Corretto: bug nelle funzioni MAP_PUT_TEXT e PUT_TEXT il quale provocava il crash del programma quando venivano utilizzate
  • ! Informazione: ottimizzate funzioni LOAD_FNT e WRITE_IN_MAP
  • ! Informazione: ottimizzate funzioni grafiche DRAW_TEXT, MAP_PUT_TEXT, PUT_TEXT

Tween
--------

  • + Aggiunto: nuove funzioni di inizializzazione tweens:
    • GET_TWEENLIB_NUMTWEENS, GET_TWEENLIB_NUMTWEENGROUPS, GET_TWEENLIB_TWEENSPLAYING, GET_TWEENLIB_TWEENGROUPSPLAYING
  • - Eliminato: funzione di info tween TWEEN_INFO e costanti:
    • twn_start, twn_end, twn_duration, twn_type, twn_easing, twn_overshoot, twn_amplitude, twn_period, twn_repeat, twn_crepeat
  • - Eliminato: funzione di info tween gruop TWEENGROUP_INFO e costanti:
    • twngrp_type, twngrp_tweens, twngrp_ctweens, twngrp_repeat twngrp_crepeat
  • # Modificato: nomi di funzioni:
    • GET_TWEEN_CREPEAT-> GET_TWEEN_REPEATCOUNT
    • GET_TWEENGROUP_CTWEEN -> GET_TWEENGROUP_TWEENPLAYING
    • GET_TWEENGROUP_CREPEAT -> GET_TWEENGROUP_REPEATCOUNT
    • GET_TWEENGROUP_NTWEENS -> GET_TWEENGROUP_NUMTWEENS
  • * Corretto: bug di ID non valido usando la costante all_tween nella funzione DELETE_TWEEN
  • * Corretto: bug di ID non valido usando la constante all_tweengroup nella funzione DELETE_TWEENGROUP
  • * Corretto: messaggi di runtime-error con numero di parametri errato in alcune funzioni
  • * Corretto: bug in SET_TWEENGROUP_REPEAT che le impediva di funzionare correttamente

WM
-----

  • + Aggiunto: [Win] bug nella funzione GET_WINDOW_POS che le impediva di restituire dopo la prima chiamata della stessa, la posizione attuale della finestra
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: <<< Gemix BETA 6.5 >>>

Postby CicTec » Sun Mar 04, 2012 3:47 pm

03/02/2012 BETA 6.5 UPDATE 1
---------------------------------------

Features:

Language & Core
---------------------

  • * Corretto: bug di compilazione "nome sconosciuto" quando si tentava di utilizzare dati come indici di array/struct/typedefs in alcuni casi
  • * Corretto: bug nel compilatore che impediva di utilizzare il primo TYPEDEF dichiarato come tipo per i blocchi PROCESS/FUNCTION
  • * Corretto: bug che provocava il crash del programma quando si tentava di utilizzare operatori composti (+=, etc...) con puntatori di tipo TYPEDEF/STRUCT
  • * Corretto: bug il quale permetteva di compilare un tipo definito dall'utente senza specificare la parola chiave TYPE (es: vector invece di type vector)
    Addesso viene visualizzato correttamente l'errore di compilazione
  • * Corretto: bug nell'utilizzare valori distinti da 1 con gli operatori -, +, -=, += etc... applicati a dati di tipo STRING
  • * Corretto: bug che provocava il crash del programma quando si tentava di accedere/modificare un carattere di una stringa mediante indicizazzione (es: my_string[1] = "a")
  • * Corretto: bug nell'accedere correttamente a un dato PUBLIC mediante variabile di tipo PROCESS (es: id_ship_speed = 3)
  • * Corretto: bug nell'inizializzare correttamente i parametri di tipo SBYTE, BYTE, SHORT e WORD con argomenti di default nei blocchi PROCESS/FUNCTION
  • * Corretto: bug che provocava il crash del programma in alcuni sistemi, nel visualizzare il messaggio di errore di runtime sulla divisione per 0 di interi
  • # modificato: sistema di gestione delle divisioni per 0 dei numeri in virgola mobile (FLOAT/DOUBLE), adesso al posto dell'errore di runtime viene restituito il risultato INF

Main
------

  • * Corretto: bug nella funzione EXEC che provocava il crash del programma al passare 0 o "" al parametro args

File
----

  • * Corretto: bug nella funzione GET_DIRINFO che provocava il crash del programma quando si tentava di listare una cartella con più di 1024 files

Graphics
-----------

  • * Corretto: bug che provocava il crash del programma quando si tentava di renderizzare/muovere una primitiva grafica (DRAW) con width o height minore o uguale a 0
  • * Corretto: bug in SAVE_FPG nel salvare correttamente i punti di controllo dei grafici (se esistevano)
  • * Corretto: bug in CONVERT_PALETTE che provocava il crash del programma tentando di convertire il grafico
  • * Corretto: [Win] bug nell'impostare correttamente i valori di chiamate a SET_MODE in alcuni casi
  • * Corretto: bug di overflow in LOAD_IMAGE quando si oltrepassava un determinato numero di chiamate consecutive
  • * Corretto: bug nella funzione GET_SCREEN_COLOR nel restituire correttamente il valore del colore quando si usava la versione senza parametri
  • * Corretto: bug nella funzione SET_SCREEN_COLOR nell'impostare correttamente il colore in modalità 16bits
  • * Corretto: bug che provocava il crash del programma quando si utilizzava flags con trasparenza (da 4 a 7) + size e/o angle in grafici a 32bits con canale alpha
  • * Corretto: bug nella funzione LOAD_SCREEN che provocava il crash del programma nell'utilizzare l'overload con password
  • * Corretto: bug nelle primitive grafiche (DRAW) che provocava il crash del programma nell'utilizzare coordinate negative e/o invertite in alcuni casi
  • * Corretto: bug nella rutine delle funzioni di tiling (DRAW_TILE, etc...) nell'utilizzare correttamente una regione in alcuni casi
  • * Corretto: bug in LOAD_IMAGE nel caricare correttamente la tavolozza dei color in immagini BMP e TGA di 8bits in alcuni casi

Input
-------

  • * Corretto: [Win] bug che impediva di rimuovere correttamente il puntatore del mouse del SO in fullscreen in alcuni casi

Mode7
--------

  • + Aggiunto: nuova funzione GET_MODE7_SCALEFACTOR, permette di ottenere il fattore di scala applicato ad un punto di mode7 secondo la distanza di questo al piano della camera
  • * Corretto: bug nel renderizzare correttamente una finestra di mode7 in una regione distinta dallo schermo in alcuni casi

Sound
--------

  • * Corretto: bug di memory leak nelle funzioni UNLOAD_MIDI, UNLOAD_MUSIC, UNLOAD_SONG e UNLOAD_SOUND

Text
-----

  • * Aggiunto: supporto di FNT compresse e criptate, si aggiunge il seguente nuovo overload
    • INT LOAD_FNT(STRING fname, STRING password)
  • * Corretto: bug nelle funzioni PUT_TEXT, MAP_PUT_TEXT y DRAW_TEXT che mandava in crash il programma al passare una stringa vuota o 0 al parametro text
  • * Corretto: bug nelle funzioni GET_FNT_STRWIDTH, GET_FNT_STRHEIGHT e TEXT_SET_COLOR/COLOUR che provocava il crash del programma quando il testo era nullo o non valido
  • * Corretto: bug nelle funzioni DRAW_TEXT, MAP_PUT_TEXT, PUT_TEXT e WRITE_IN_MAP nel renderizzare correttamente un testo di un FNT con canale alpha

Download disponibile mediante link al principio del thread.

Saluti.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm

Re: <<< Gemix BETA 6.5 >>>

Postby CicTec » Thu May 10, 2012 10:50 pm

Nuova beta 6.5 UPDATE 2 disponibile, link di download e worklog Qui

Saluti.
User avatar
CicTec
 
Posts: 16553
Joined: Thu Jul 31, 2008 10:18 pm


Return to Novità e Releases

Who is online

Users browsing this forum: No registered users and 3 guests