<<< Gemix BETA 5.6 >>>

Aggiornamenti, versioni e ultime notizie sul linguaggio.

<<< Gemix BETA 5.6 >>>

Postby CicTec » Mon Oct 12, 2009 4:34 pm

NOTA: la versione BETA ed il suo utilizzo è GRATIS fino all'uscita della versione FINALE (vedere = README =.TXT per maggiori info sulla licenza d'uso)

12/10/2009 BETA 5.6
---------------------------
  • + Aggiunto: nuovi overloads della funzione MAP_APPLY_FX per indicare un colore di maschera da utilizzare con gli FX blend's e alpha:
    • INT MAP_APPLY_FX(INT fpg_id, INT graph, INT flags, INT alpha, INT fxmode, INT mask_color)
    • INT MAP_APPLY_FX(INT fpg_id, INT graph, INT flags, INT alpha, INT fxmode, INT fxcolor, INT fxintensity, INT mask_color)
  • + Aggiunto: supporto di grafici con canale alpha per lo scroll
  • + Aggiunto: supporto di array e strutture fino a 256 dimensioni (3 in DIV2)
  • + Aggiunto: opción de compilación _USE_CSTYLE_MATRIX la quale permette di utilizzare la sintassi stile C per array e strutture multidimensione (es: array[3][3] invece di array[2,2])
    NOTA: questa opzione di compilazione rompe la compatibilità con i programmi DIV2
  • + Aggiunto: opzione di compilazione _USE_CSTYLE_CONDITIONS che permette di utilizzare le condizioni stile C, dove 0 è FALSE e qualunque altro numero è TRUE
    NOTA: questa opzione di compilazione rompe la compatibilità con i programmi DIV2
  • + Aggiunto: nuova parola chiave INCLUDE al linguaggio, per poter modularizzare il programma in più file sorgenti
  • + Aggiunto: errore di runtime (accesso fuori intervallo) quando si tenta di accedere ad un array o struttura mediante un indice fuori limite
  • + Aggiunto: supporto nel FROM di variabili e array interi di qualunque tipo
  • + Aggiunto: nuovi tipi di dati al linguaggio:
    • SBYTE (signed integer 8bits)
    • SHORT (signed integer 16bits)
    • DWORD (unsigned integer 32bits)
    vengono aggiunte inoltre le seguenti costanti:
    • min_sbyte
    • max_sbyte
    • min_short
    • max_short
    • min_dword
    • max_dword
  • + Aggiunto: potenziato sistema dei puntori, adesso viene utilizzato un sistema reale dove vengono supportate più operazioni e operatori in espressioni complesse (stile C)
  • + Aggiunto: supporto di valori size (size, size_x, size_y) negativi, permettendo in questo modo si conseguire effetti di flags facilmente
  • + Aggiunto: nuove variabili LOCAL SHEAR_X e SHEAR_Y per effetti di distorsione del grafico
    nuova variabile LOCAL TFMORDER che permette di indicare l'ordine delle trasformazioni da applicare al grafico, per mezzo delle seguenti costanti:
    • tfm_hsr (Shear-Scale-Rotate)
    • tfm_hrs (Shear-Rotate-Scale)
    • tfm_shr (Scale-Shear-Rotate)
    • tfm_srh (Scale-Rotate-Shear)
    • tfm_rhs (Rotate-Shear-Scale)
    • tfm_rsh (Rotate-Scale-Shear)
    supporto di SHEAR_X, SHEAR_Y y TFMORDER nelle funzioni:
    • DRAW_GRAPHIC
    • MAP_XXPUT
    • XXPUT
    NOTA: i flags hmirror e vmirror si applicano sempre dopo le precedenti trasformazioni
  • + Aggiunto: supporto di SHEAR_X, SHEAR_Y e TFMORDER al mouse
  • + Aggiunto: nuove variabili GLOBAL per i testi:
    • text_shear_x
    • text_shear_y
    • text_tfmorder
    nuove funzioni:
    • SET_TEXT_TFMORDER
    • SET_TEXT_SHEAR
    nuove costanti per TEXT_INFO:
    • txt_shear_x
    • txt_shear_y
    • txt_tfmorder
  • + Añadido: versioni con nomi UK di alcune funzioni e costanti
--------------------------------------------------------------------------------------------------------------------------------------------------
  • * Corretto: bug in CLONE_MAP il quale portava al crash del programma quando venivano creati più di 255 cloni
  • * Corretto: bug quando venivano usati gli FX SCALE's in 32bits con rendering MMX
  • * Corretto: bug in GET_DIRINFO la quale usava i flags passati come paramtro in modo non corretto
  • * Corretto: bug che impediva di utilizzare la statiera per il mouse quando veniva impostato mouse.cursor = 1
  • * Corretto: bug nella funzione MAP_APPLY_FX nell'usare un valore in flags diverso da 0 e con altre combinazioni
  • * Corretto: bug nella funzione DRAW che portava al crash del programma nel disegnare un rettangolo vuoto (2) quando uno dei 4 vertici si trovavano fuori dai limiti dello schermo
  • * Corretto: bug nell'aggiornare correttamente i colori delle primitive grafiche (DRAW) quando si cambiava la tavolozza dei colori in 8bits
  • * Corretto: problema nel passare valori negativi a FRAME (ej: FRAME(-10)) il quale portava al blocco o crash del programma, adesso i valori passati vengono convertiti automaticamente in positivi
  • * Corretto: bug nelle funzioni:
    • STOP_MIDI
    • UNLOAD_MIDI
    • STOP_MUSIC
    • UNLOAD_MUSIC
    • STOP_SONG
    • UNLOAD_SONG
    nel finalizzare correttamente la canzone attuale il quale portava in seguito a chiamate a PLAY_XXX alla possibile esecuzione di più canzoni contemporaneamente anche quando i canali riservati erano 1
  • * Corretto: bug nella funzione SET_SCREEN_COLOR in modalità SOFT nell'impostare un colore distinto a quello scelto
  • * Corretto: bug nella funzione PUT_SCREEN nel cancellare correttamente lo schermo con il colore impostato da SET_SCREEN_COLOR
  • * Corretto: alcuni messagi di errore sulla compilazione di strutture
  • * Corretto: bug in scale2x di rendering errato della prima e ultima linea dello schermo in alcune risoluzioni
  • * Corretto: bug che portava ad una visualizazzione distorta dello schermo o al crash del programma in alcune risoluzioni hibride
  • * Corretto: bug nell'impostare correttamente la variabile SHIFT_STATUS quando venivano premuti LSHIFT o RSHIFT, restituendo i valori invertiti
  • * Corretto: costanti: _L_BRACHET e _R_BRACHET -> _L_BRACKET e _R_BRACKET
  • * Corretto: bug in COLLISION quando venivano usate alcune combinazioni di ANGLE e SIZE, sia con il mouse che tra processi
  • * Corretto: bug che provocava alcuni artefatti nel grafico quando questo era parzialmente fuori dalla regione quando veniva usado SIZE e/o ANGLE
  • * Corretto: bug in OVERLAP, adesso la funzione restituisce un overlap reale dei processi quando questi sono trasformati (size, angle, shear)
  • * Corretto: bug in OUT_REGION l quale provocava imprecisioni in certi casi, adesso la funzione restituisce un out_region reale dei processi quando questi sono trasformati (size, angle, shear)
--------------------------------------------------------------------------------------------------------------------------------------------------
  • ! Informazione: ottimizzata funzione COLLISION, più rapida del 20 ~ 80%
  • ! Informazione: ottimizzate le seguenti funzioni, più rapide del 30 ~ 90%:
    • ADD_FPG_MAP
    • CLONE_FPG
    • CLONE_MAP
    • LOAD_FPG
    • LOAD_FPG_MAP
    • LOAD_MAP
    • LOAD_PCX
    • NEW_FPG_MAP
    • NEW_MAP
  • ! Informazione: ottimizzato sistema DUMP/RESTORE_TYPE, più rapido del 10 ~ 30%
  • ! Informazione: ottimizzato filtro di rendering scale2x, più rapido del 8 ~ 250%
  • ! Informazione: ottimizzati FX a 32bits, più rapid del 5 ~ 50%
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 4 guests