<<< Gemix BETA 6.5 >>>

Updates, releases and the last news about the programming language.

<<< Gemix BETA 6.5 >>>

Postby CicTec » Fri Mar 02, 2012 7:18 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: For the licences of the BETA, see Here

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

Features:

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

  • + Added: support auto-localization of the core path to the compiler and auto-generation of the executable in the source folder
  • * Fixed: compilation bug declaring TYPEDEFS in PRG files separate from the main (include)
  • * Fixed: bug in the operator bitwise NOT (~) to properly treat all integer types and no
  • * Fixed: bug that prevented properly declare pointers integers by default
  • * Fixed: bug using the ++ and -- operatos in not dereferenced pointers
  • * Fixed: bug in the operator ternary (?:) in return the correct result in some cases
  • * Fixed: bug which caused program crash or abnormal operation using data or expressions of type DOUBLE in conditions
  • * Fixed: bug in the declaration of constants when specified the type of language or other item not related with the grammar for the declaration causing compilation errors incorrect
  • * Fixed: bug in the control of predefined array LOCAL of type FLOAT/DOUBLE
  • ! Information: Improved memory usage for the compiler

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

  • + Added: support alpha compositing blends and new constants:
    • fx_src, fx_dst, fx_srcoverdst, fx_dstoversrc, fx_srcindst, fx_dstinsrc, fx_srcoutdst, fx_dstoutsrc, fx_srcatopdst, fx_dstatopsrc, fx_srccleardst, fx_srcxordst
  • * Fixed: bug in SAVE_MAP and SAVE_FPG to save correctly cpoints and info in some cases
  • * Fixed: bug in the DRAW function to draw a line properly when the coordinates x1/y1 were greater x2/y2
  • * Fixed: bug can crash the program when it was passed an invalid ID to OUT_REGION and XOUT_REGION functions
  • * Fixed: bugs in the SAVE_IMAGE function to save correctly cpoints in the MAP format and 32bits image formats with alpha channel
  • * Fixed: bug in MAP_XXPUT and XXPUT functions that caused program crash when passing a value of 0 to parameters size_x and size_y
  • ! Information: improved functions CLONE_FPG, CLONE_MAP, LOAD_FPG, LOAD_FPG_MAP, LOAD_MAP, SET_MAP_DESC and SET_MAP_NAME in management cpoints and literal of info
  • ! Information: improved precision of various FX when applied cumulatively
  • ! Information: improved accuracy for graphics with alpha channel when rendered cumulatively

Input
-------

  • * Fixed: [Win] bug in the handling of incorrect buttons on the mouse when the cursor was outside the client area in a program window

Mode7
--------

  • * Fixed: bug in MODE7_TO_SCREEN function in the correct positioning of the coordinates of the X screen
  • * Fixed: [Mac] bug in properly render a mode7 plane in some cases

Sound
--------

  • + Added: new function GET_SONGATTRIB_SIZE
  • - Removed: set of functions 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
    Now support stream music (WAV/MP2/MP3/OGG) has been built into the set of functions SONG
  • - Removed: set of functions 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
    Now support midi files (MID) has been built into the set of functions SONG
  • - Removed: set of functions MUSIC and MIDI for AUDIOLIB info:
    • GET_AUDIOLIB_MIDICHANNELS, GET_AUDIOLIB_MIDISLOADED, GET_AUDIOLIB_MIDISPLAYING, GET_AUDIOLIB_MUSICCHANNELS, GET_AUDIOLIB_MUSICLOADED, GET_AUDIOLIB_MUSICSPLAYING
  • - Removed: fields of the structure AUDIO_SETUP:
    • music_channels, music_volume, midi_channels, midi_volume
  • - Removed: constant audio_speaker_prologic, now obsolete
  • - Removed: constants all_music and all_midi, now no longer required
  • ! Information: optimized initialization speed

String
--------

  • ! Information: optimized function ITOB

Text
-----

  • * Fixed: memory leak bug in using the function DRAW_TEXT
  • * Fixed: bug correctly using the align 1, 4 and 7 in the text functions in some cases

Url
----

  • + Added: module url to transfer data via URL using various protocols (HTTP, FTP, POP3, etc ...)



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

Features:

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

  • + Added: support expressions STRING in SWITCH
  • + Added: support PUBLIC local data to processes
  • + Added: support for variables/arrays/pointers type PROCESS
    (ex: ENEMY id_enemy;)
  • + Added: [Mac] support Command + Q to default exit the program automatically
  • + Added: _use_always_int2string_conversions, compiler option, which tells the compiler to convert an INT to STRING always when needed in the expressions
    NOTE: this option breaks DIV2 compatibility
  • + Added: support for TYPEDEFS (user data types) to language
  • * Fixed: bug in the FLOAT of the PROCESS/FUNCTION blocks, where the was passed to the parameter 0 or Wrong
  • * Fixed: bug in some automatic conversion operations
  • * Fixed: bug in the core which sometimes caused the program to crash were started when certain runtime errors
  • * Fixed: bug in "no matching function found" using successfully FUNCTION call a block in some cases
  • * Fixed: bug in the literal definition formats from various lines
  • * Fixed: bug that crashes the compiler when you tried to open a nonexistent prg with INCLUDE
  • * Fixed: bug in the cast operator making a conversion FLOAT -> INT
  • * Fixed: bug in compilation error expressions in some cases
  • * Fixed: bug that prevented properly call a PROCESS/FUNCTION containing all parameters with default arguments
  • * Fixed: bug in the use of string pointers
  • * Fixed: several bugs on operations with pointers
  • * Fixed: bug which allowed to declare PROCESS/FUNCTION blocks with the same name as predefined functions
  • * Fixed: bug of memory leaks to declaring parameters in PROCESS/FUNCTION blocks of existing LOCAL variables
  • * Fixed: bug that prevented the use of defined constants (CONST) as values for the parameters of default arguments PROCESS/FUNCTION blocks
  • * Fixed: some bugs of memory leak in the compiler
  • * Fixed: bug which caused the program to crash when you using the ternary operator (?:) with some expressions
  • * Fixed: [Win] bug in launching an application that contains spaces in the name of the executable
  • * Fixed: bug which caused program crashes or malfunctions of the compiler when they were compiled conditionals very large
  • * Fixed: bug which allowed to declare PROCESS or FUNCTION with the same name as predefined elements (variables, etc...)
  • * Fixed: bug which caused a crash program to use pointers in some expressions of type DOUBLE
  • * Fixed: bug declaring parameters correctly in blocks PROCESS/FUNCTION of existing local variable of type distinct to INT
  • * Fixed: bug which caused the crash of the compiler or anomalies compilation with some modules when the compiler does not find the gemix.cfg file
  • ! Information: enhanced run-time error messages
  • ! Information: improved control of pointers in compile-time and run-time
  • ! Information: optimized code generation, now the product code is faster than 200 ~ 300%
  • ! Information: optimized execution core, now programs run up to 3 ~ 5 times faster

Main
------

  • + Added: support on ARGV of unlimited number of arguments of the program (33 in the beta 6.0)
  • + Added: support for GET_ID function of the constant all_process to allow you to get all the IDs of any kind process
  • + Added: new GET_TYPE function which allows you to get the type of a process instance by means of ID
  • + Added: new functions of the signal handling process:
    • GET_SIGNAL_BEHAVIOUR, SET_SIGNAL_BEHAVIOUR
    and new constants:
    • s_behaviour_ignore, s_behaviour_receive, s_behaviour_unknown
    They allow you to get and set the behavior of processes in the reception of signals with the function SIGNAL
  • * Fixed: bug in the EXIT function which did not end immediately the program causing the kind of overwriting return message in case of multiple calls
  • * Fixed: [Linux/Mac] bug that prevented to display the message output EXIT function
  • ! Information: optimized functions EXISTS GET_ID, LET_ME_ALONE and SIGNAL

File
----

  • + Added: support to GET_DIRINFO of unlimited listing of files (2048 in the beta 6.0)
  • + Added: new GETWPATH function, allows to obtain the path of writing in platforms that require a special location to save files (eg: Max OS X, iPhone OS, etc ...)

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

  • + Added: new functions for handling resources:
    • 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
  • + Added: new functions for graphic information:
    • GET_GRAPHICLIB_FPGSLOADED, GET_GRAPHICLIB_MAPSLOADED, GET_GRAPHICLIB_DRAWSPAINTED, GET_GRAPHICLIB_DRAWSFIXED, GET_GRAPHICLIB_DRAWSLOCKED, GET_GRAPHICLIB_REGIONSDEFINED
  • + Added: new functions of graphics primitives:
    • 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
  • + Added: new GLOBAL draw_visible variable to allow hide or show all the graphics primitives (DRAW)
    They also added the following new info and settings functions:
    • GET_DRAW_VISIBLE, SET_DRAW_VISIBLE
  • + Added: new regions functions:
    • GET_REGION_WIDTH, GET_REGION_HEIGHT, GET_REGION_BOX, GET_REGION_X0, GET_REGION_Y0, GET_REGION_X1, GET_REGION_Y1, IS_DEFINED_REGION
  • + Added: new graphical initialization functions:
    • 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
  • + Added: new functions to set and get the name and description of the graphic:
    • GET_MAP_DESC, GET_MAP_NAME, SET_MAP_DESC, SET_MAP_NAME
  • + Added: support of the all_process constant for the COLLISION and OVERLAP functions to allow you to check collisions with any type of process
  • + Added: support for regions with negative width and height
  • + Added: support in the LOAD_PCX function for loading PCX to 24bits
  • + Added: support in the SAVE_PCX function for saving PCX to 24bits
  • + Added: new functions for graphic formats:
    • LOAD_IMAGE, SAVE_IMAGE, UNLOAD_IMAGE
    and constant for SAVE_IMAGE:
    • img_format_bmp, img_format_jpeg, img_format_map, img_format_pcx, img_format_png, img_format_tga
    They allow you to load and save images in standard formats and DIV/Gemix
  • - Removed: function resources handling FPG_INFO and constants:
    • fpg_loaded, fpg_num_maps, fpg_empty, fpg_full
  • - Removed: function MODE_INFO graphic information and constants:
    • 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
  • - Removed: function DRAW_INFO primitive graphics and constants:
    • 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
  • - Removed: function regions REGION_INFO and constants:
    • rgn_defined, rgn_width, rgn_height, rgn_x0, rgn_y0, rgn_x1, rgn_y1
  • - Removed: graphical initialization function VIRTUALRESOLUTION_INFO and constants:
    • virtualres_isvirtual, virtualres_aspectratio, virtualres_width, virtualres_height, virtualres_ratiowidth, virtualres_ratioheight, virtualres_xoffset, virtualres_yoffset
  • - Removed: function MAP_SET_COLOR/COLOUR
  • # Modified: GRAPHIC_EXISTS -> MAP_EXISTS
  • # Modified: MAP_SET_PIXEL -> MAP_SET_COLOR/COLOUR
  • # Modified: overloads of the LOAD_FPG and LOAD_MAP functions:
    • 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)
    Thus allowing you to specify whether to compress and/or encrypt the resources saved
    NOTE: the functions now return to save without compression by default
  • # Modified: functions to control points:
    • 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
  • # Modified: constant g_points -> g_numcpoints
  • * Fixed: bug in graphics primitives rectangle and circle (DRAW) using different regions of the screen (0)
  • * Fixed: bug in rectangle graphic primitive (DRAW) using alpha drawing the edges of solid
  • * Fixed: bug control function which prevented the SET_COLOR work
  • * Fixed: bug in the tiling routine (for functions PUT_TILE, MAP_PUT_TILE, etc...) which caused the program to crash using a graph with 0 defined cpoint
  • * Fixed: bug in the tiling routine (for functions PUT_TILE, MAP_PUT_TILE, etc...) which caused the program to crash in the draw in a target smaller than the original graph
  • * Fixed: bug in CLONE_MAP accessing to correct FPG for cloning, which caused the program to crash on some occasions
  • * Fixed: bug in using COLLISION(X, Y, ID/TYPE process) with a graph of given process containing alpha channel
  • * Fixed: [Win] bugs which prevented render windows smaller than 120 pixels wide
  • * Fixed: bug in drawing primitives (DRAW) correctly in restore_type = no_restore mode
  • * Fixed: bug in LOAD_FPG_MAP loading graphics by FPG compressed
  • * Fixed: bug to rendering properly a virtual resolution with active aspect ratio in some cases
  • * Fixed: bug in DRAW_BLOCK rendering incorrectly in graphic or cause the program to crash when you used a region different from the screen
  • * Fixed: runtime-error messages with the wrong number of parameters in some functions
  • * Fixed: [Win] bug that prevented you to view programs in fullscreen in some Hardwares
  • * Fixed: bug that crashes the program using SET_VIRTUAL_RESOLUTION with Width and Height values to 0 to turn it off
  • * Fixed: bug in partial_dump used with active windows of scroll and mode7
  • * Fixed: [Mac] bug in the display colors properly in fullscreen 32bits
  • * Fixed: bug in LOAD_FPG, LOAD_FPG_MAP LOAD_MAP and which caused a corruption in the load when you used a password and resource was not encrypted
  • * Fixed: bug in UNLOAD_MAP which caused the program to crash using as the value all_map
  • * Fixed: bug in UNLOAD_PCX which caused the program to crash using as the value all_pcx
  • ! Information: optimized FADE to 16 and 32bits
  • ! Information: optimized functions 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
  • ! Information: optimized functions COLLISION and OVERLAP in the form TYPE process
  • ! Information: optimized functions LOAD_FPG and LOAD_FPG in the graphic conversion 8 -> 16, 8 -> 32, 16 -> 32, now 3 times faster
  • ! Information: optimized function LOAD_MAP in the graphic conversion 8 -> 16, 8 -> 32, 16 -> 32, now 3 times faster
  • ! Information: optimized function CONVERT_PALETTE, 3 times faster

Input
-------

  • + Added: new functions initialized input:
    • GET_INPUTLIB_MOUSEAVAILABLE, GET_INPUTLIB_JOYSCONNECTED
  • + Added: new info joystick functions:
    • GET_JOY_MODEL, GET_JOY_NAME, GET_JOY_FORCEFEEDBACK, GET_JOY_NUMBUTTONS, GET_JOY_NUMAXES, GET_JOY_NUMHATS
  • + Added: field visible to the MOUSE structure in order to hide or show the mouse pointer
  • + Added: new functions DISABLE_KEY_SHORTCUT, ENABLE_KEY_SHORTCUT and constants:
    • _pause, _alt_x, _command_q
    Allowing you to enable/disable keys and combinations default key
  • + Added: support for meta key (COMMAND on the Mac, WINDOW in Windows/Linux) for the function KEY/KeyDown using the following constants:
    • _meta, _l_meta, _r_meta
  • * Fixed: [Mac] bug in scan_code to return the push of a button
  • # Modified: [WIN] rutine mouse support, now the native windows API used instead of Direct Input
  • # Modified: operation mouse.speed now affects only the mouse emulated using the keyboard
  • - Removed: initialization input function INPUTLIB_INFO and constants:
    • inlib_mouse_present, inlib_joys_connected
  • - Removed: info function of joystick JOY_INFO and constants:
    • joy_model, joy_name, joy_axes, joy_buttons, joy_hats, joy_force_feedback
  • ! Information: improved control and performance of the mouse

Math
------

  • + Added: new NEAW_VALUE function, which allows to obtain the value closest to the final value
  • + Added: new PI_FLOAT and PI_DOUBLE constants, to obtain the PI greek real more or less precisely
  • * Fixed: bug in the RAND function to return pseudo-numbers corrects when they were gone, very large or small values in the MIN and MAX parameters
  • ! Information: optimized RAND function, 10 times faster

Mode7
--------

  • * Fixed: severe memory corruption bug to rendering a mode7 window in a separate region of the screen (0)
  • * Fixed: runtime-error messages with the wrong number of parameters in some functions
  • * Fixed: bug that prevented to update a window of mode7 that use a separate region to 0, when the latter changed in size
  • * Fixed: bug which caused the program to crash when unloading the module in 32bits mode
  • * Fixed: bug which caused the program to crash when the region rendenring target was set to -1

Scroll
---------

  • + Added: support of region for the scroll processes, if it is now indicated a value greater than 0 in the LOCAL region, the process he uses the region indicated (if any), otherwise follow using the window scroll
  • + Added: new field scroll.file to be able to get the current FPG used in the scroll window or to change dynamically
  • + Added: resetting of the complete SCROLL structure of the active scroll when it is removed by a STOP_SCROLL call
  • * Fixed: runtime-error messages with the wrong number of parameters in some functions
  • * Fixed: bug that prevented to update a window of scroll using a separate region to 0, when the latter changed in size
  • * Fixed: bug which caused the program to crash when the region rendenring target was set to -1
  • * Fixed: bug in the SET_SCROLL_DESTINATION function to set successfully the region passed as a parameter
  • ! Information: optimized scroll, faster than 2 ~ 5%

Sound
--------

  • + Added: new info and setting functions of the sound:
    • 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
  • + Added: new info and setting functions of the sounds playing:
    • 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
  • + Added: new info and settings functions of the 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
  • + Added: new info and setting functions of the songs playing:
    • 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
  • + Added: new info and settings functions of music streams playing:
    • 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
  • + Added: new info and settings functions of music streams playing:
    • 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
  • + Added: new functions of the midi info and settings:
    • 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
  • + Added: new info and settings functions of midis playing:
    • 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
  • + Added: new info and settings functions of the audio CD:
    • 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
  • + Added: new info and settings functions of audio CDs playing:
    • 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
  • + Added: new initialized audio functions:
    • 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
  • - Removed: function SOUND_INFO and constants:
    • snd_loop, snd_loopcount, snd_volume, snd_speed, snd_pan, snd_name, snd_type, snd_format, snd_frequency, snd_length, snd_lengthms, snd_size
  • - Removed: function SOUND_SET_ATTRIB and constants:
    • snd_attrib_loop, snd_attrib_loopcount, snd_attrib_volume, snd_attrib_speed, snd_attrib_pan
  • - Removed: function SONG_INFO and constants:
    • 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
  • - Removed: function SONG_SET_ATTRIB and constants:
    • sng_attrib_loop, sng_attrib_loopcount, sng_attrib_volume, sng_attrib_speed, sng_attrib_pan
  • - Removed: function MUSIC_INFO and constants:
    • mus_loop, mus_loopcount, mus_volume, mus_speed, mus_pan, mus_name, mus_type, mus_format, mus_frequency, mus_length, mus_lengthms, mus_size
  • - Removed: function MUSIC_SET_ATTRIB and constants:
    • mus_attrib_loop, mus_attrib_loopcount, mus_attrib_volume, mus_attrib_speed, mus_attrib_pan
  • - Removed: function MIDI_INFO and constants:
    • mid_loop, mid_loopcount, mid_volume, mid_speed, mid_pan, mid_pansep, mid_frequency, mid_name, mid_channels, mid_length, mid_lengthms
  • - Removed: function MIDI_SET_ATTRIB and constants:
    • mid_attrib_loop, mid_attrib_loopcount, mid_attrib_volume, mid_attrib_speed, mid_attrib_pan
  • - Removed: function CD_INFO and constants:
    • cd_mode, cd_volume, cd_speed, cd_pan, cd_name, cd_length, cd_lengthms, cd_tracks
  • - Removed: function CHANNEL_INFO and constants:
    • 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
  • - Removed: function AUDIOLIB_INFO and constants:
    • 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
  • - Removed: function names:
    • midi, music
  • # Modified: loading functions LOAD_PCM, LOAD_WAV, LOAD_SOUND, LOAD_SONG, LOAD_MUSIC and LOAD_MIDI
    Now allow for checking the format of the file without looking the extension
  • # Modified: song functions:
    • GET_SONG_CHANNELVOLUME -> GET_SONGATTRIB_CHANNELVOLUME
    • SET_SONG_CHANNELVOLUME -> SET_SONGATTRIB_CHANNELVOLUME
  • # Modified: midi functions:
    • GET_MIDI_CHANNELVOLUME -> GET_MIDIATTRIB_CHANNELVOLUME
    • SET_MIDI_CHANNELVOLUME -> SET_MIDIATTRIB_CHANNELVOLUME
  • # Modified: functions resources of playing info:
    • 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
  • # Modified: speed -> ms parameter in fading functions:
    • FADE_CD, FADE_MIDI, FADE_MUSIC, FADE_SONG, FADE_SOUND
    Now the time duration is specified in MS
  • * Fixed: bug in the fades of sound effects
  • ! Information: optimized loading functions LOAD_PCM, LOAD_WAV, LOAD_SOUND, LOAD_SONG, LOAD_MUSIC and LOAD_MIDI

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

  • + Added: new overloads for PATH_FIND and PATH_LINE functions:
    • 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)
    Thus allowing to jump hurdles of a path-find map calling the function in various forms and at various points of the program (PROCESS/FUNCTION)

String
--------

  • + Added: new UITOA functions for conversions of 8/16/32bits unsigned integers to string
  • + Added: new overload of STRSTR
    • INT STRSTR(STRING str, STRING substr, INT start)
    Which allows you to specify the position of str where to start to seek the substr
  • + Added: new STRSECTION function, which allows you to return a string divided according to the pattern and the position passed as parameters
  • * Fixed: bug which caused the program to crash to pass a empty string to STRTRM function and other string as having a kind of return used in expressions with strings
  • * Fixed: bug in ITOA to successfully convert negative large INT number
  • * Fixed: bug in ISSTRALNUM, ISSTRALNUMSPACE and ISSTRALPHA functions return the correct result in some cases
  • ! Information: optimized functions ISSTRALNUM, ISSTRALNUMSPACE and ISSTRALPHA

Text
-----

  • + Added: new functions for text info:
    • 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
    new GLOBAL text_visible variable to allow of concealing or view all text
    They also added new followed functions of info and settings:
    • GET_TEXT_VISIBLE, SET_TEXT_VISIBLE
  • + Added: new functions initialized texts:
    • GET_TEXTLIB_FNTSLOADED, GET_TEXTLIB_TEXTSFIXED, GET_TEXTLIB_TEXTSLOCKED, GET_TEXTLIB_WRITERBEHAVIOUR
  • + Added: new text functions for printing numeric unsigned integers:
    • WRITE_BYTE, WRITE_SBYTE, WRITE_SHORT, WRITE_WORD
  • + Added: support new format of the FNT to 8, 16 and 32bits
  • - Removed: function TEXT_INFO info text and constants:
    • 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
  • - Removed: initialization text TEXTLIB_INFO function and constants:
    • txtlib_fnts_loaded, txtlib_texts_fixed, txtlib_locked, txtlib_texts_written, txtlib_writer_behaviour
  • - Removed: FNT_SET_COLOR/COLOUR and TEXT_SET_COLOR/COLOUR functions
  • # Modified: FNT and text[b] functions:
      [b]
    • FNT_SET_PIXEL -> FNT_SET_COLOR/COLOUR
    • TEXT_SET_PIXEL -> TEXT_SET_COLOR/COLOUR
  • * Fixed: runtime-error messages with the wrong number of parameters in some functions
  • * Fixed: bug in MAP_PUT_TEXT and PUT_TEXT functions which caused the program to crash when they were used
  • ! Information: optimized LOAD_FNT and WRITE_IN_MAP functions
  • ! Information: optimized graphics DRAW_TEXT, MAP_PUT_TEXT, PUT_TEXT functions

Tween
--------

  • + Added: new initialized tweens/[b] functions:
      [b]
    • GET_TWEENLIB_NUMTWEENS, GET_TWEENLIB_NUMTWEENGROUPS, GET_TWEENLIB_TWEENSPLAYING, GET_TWEENLIB_TWEENGROUPSPLAYING
  • - Removed: info tween TWEEN_INFO function and constants:
    • twn_start, twn_end, twn_duration, twn_type, twn_easing, twn_overshoot, twn_amplitude, twn_period, twn_repeat, twn_crepeat
  • - Removed: info tween group TWEENGROUP_INFO function and constants:
    • twngrp_type, twngrp_tweens, twngrp_ctweens, twngrp_repeat twngrp_crepeat
  • # Modified: function names:
    • GET_TWEEN_CREPEAT-> GET_TWEEN_REPEATCOUNT
    • GET_TWEENGROUP_CTWEEN -> GET_TWEENGROUP_TWEENPLAYING
    • GET_TWEENGROUP_CREPEAT -> GET_TWEENGROUP_REPEATCOUNT
    • GET_TWEENGROUP_NTWEENS -> GET_TWEENGROUP_NUMTWEENS
  • * Fixed: bug invalid ID using the constant all_tween in the DELETE_TWEEN function
  • * Fixed: bug invalid ID using the constant all_tweengroup in the DELETE_TWEENGROUP function
  • * Fixed: runtime-error messages with the wrong number of parameters in some functions
  • * Fixed: bug in SET_TWEENGROUP_REPEAT that prevented her from working correctly

WM
-----

  • + Added: [Win] bug in GET_WINDOW_POS function that prevented return after the first call of the same, the position of current window
User avatar
CicTec
 
Posts: 15278
Joined: Thu Jul 31, 2008 10:18 pm

Re: <<< Gemix BETA 6.5 >>>

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

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

Features:

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

  • * Fixed: compilation bug "unknown name" when you attempted to use data as indices array/struct/typedefs in some cases
  • * Fixed: bug in the compiler that prevented the use TYPEDEF first declared as type for PROCESS/FUNCTION blocks
  • * Fixed: bug that caused program crash when attempted to use the compound operators (+=, etc...) with pointers of type TYPEDEF/STRUCT
  • * Fixed: bug which allowed to compiling a defined type user without specifying the keyword TYPE (eg: vector instead of type vector)
    Now correctly displays error compilation
  • * Fixed: bug in using distinct values of 1 with the operators -, +, - =, + = etc... applied to data STRING
  • * Fixed: bug that caused program crash when trying to access/change a character of a string using indexing (eg my_string[1] = "a")
  • * Fixed: bug when having properly to access to PUBLIC data by variable of type PROCESS (eg: id_ship_speed = 3)
  • * Fixed: bug initializing correctly parameters of type SBYTE, BYTE, SHORT and WORD with default arguments for PROCESS/FUNCTION blocks
  • * Fixed: bug that caused program crash in some systems, in view of the error message runtime on the division by 0 of integers
  • # Modified: management system of division by 0 floating point (FLOAT/DOUBLE), now instead of runtime error is returned the INF result

Main
------

  • * Fixed: bug in EXEC function that caused the crash program to pass 0 or "" to args parameter

File
----

  • * Fixed: bug in GET_DIRINFO that caused the program to crash when attempting to list a folder with more than 1024 files

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

  • * Fixed: bug that caused program crash when attempted to render/move a graphic primitive (DRAW) with width or height less than or equal to 0
  • * Fixed: bug in SAVE_FPG function saving correctly control points of graphics (if exists)
  • * Fixed: bug in CONVERT_PALETTE function that caused program crash attempting to convert the graph
  • * Fixed: [Win] bug in setting the correct values calls to SET_MODE in some cases
  • * Fixed: bug of overflow in LOAD_IMAGE when exceeded a certain number of consecutive calls
  • * Fixed: bug in GET_SCREEN_COLOR function in return the correct color value when used the version with no parameters
  • * Fixed: bug in SET_SCREEN_COLOR function to set properly in the color in 16bits mode
  • * Fixed: bug that caused program crash when flags with transparency (4 to 7) + size and/or angle is used in 32bits graph with alpha channel
  • * Fixed: bug in the LOAD_SCREEN function that caused the program crash to use overload with password
  • * Fixed: bug in graphics primitives (DRAW) that caused program crash to use negative and/or reversed coordinates in some cases
  • * Fixed: bug in rutine tiling functions (DRAW_TILE, etc ...) to use properly a region in some cases
  • * Fixed: bug in LOAD_IMAGE properly load palette color of BMP and TGA 8bits images in some cases

Input
-------

  • * Fixed: [Win] bug that prevented to properly remove the OS mouse pointer in fullscreen in some cases

Mode7
--------

  • + Added: new GET_MODE7_SCALEFACTOR function, allows to obtain the scale factor applied to a point of mode7 according to the distance of this to the plane of the camera
  • * Fixed: bug in render properly a mode7 window in a region distinct of the screen in some cases

Sound
--------

  • * Fixed: memory leak bug in UNLOAD_MIDI, UNLOAD_MUSIC, UNLOAD_SONG and UNLOAD_SOUND functions

Text
-----

  • + Added: Support for compressed and encrypted FNT, it adds the following new overloads
    • INT LOAD_FNT(STRING fname, STRING password)
  • * Fixed: bug in PUT_TEXT, MAP_PUT_TEXT and DRAW_TEXT functions that caused program crash to pass an empty string or 0 to the text parameter
  • * Fixed: bug in GET_FNT_STRWIDTH, GET_FNT_STRHEIGHT and TEXT_SET_COLOR/COLOUR functions that caused the program to crash when the text was null or invalid
  • * Fixed: bug in DRAW_TEXT, MAP_PUT_TEXT, PUT_TEXT and WRITE_IN_MAP functions to render properly in a text of a FNT with alpha channel


Download available at the begin of the thread.

Regards.
User avatar
CicTec
 
Posts: 15278
Joined: Thu Jul 31, 2008 10:18 pm

Re: <<< Gemix BETA 6.5 >>>

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

Added new beta 6.5 UPDATE 2, the download and worklog is available Here

Regards.
User avatar
CicTec
 
Posts: 15278
Joined: Thu Jul 31, 2008 10:18 pm

Re: <<< Gemix BETA 6.5 >>>

Postby humildadever » Wed Jul 04, 2012 4:39 pm

I download this version but when i click in gemix paste one screen black appear and don´t work???
humildadever
 
Posts: 7
Joined: Wed May 06, 2009 5:03 pm

Re: <<< Gemix BETA 6.5 >>>

Postby CicTec » Wed Jul 04, 2012 4:55 pm

Hello humildadever,

The beta includes only the core (compiler, libraries, etc ...) to work smoothly, you need a code editor.
Currently there are no official, however, you can find some in this section (spanish):
viewforum.php?f=137
or in this section (english):
viewforum.php?f=138

Following the instructions to configure Gemix.
I recommend you try the Gemix Game Maker or alternatively GMXEdit.

Regards.
User avatar
CicTec
 
Posts: 15278
Joined: Thu Jul 31, 2008 10:18 pm

Re: <<< Gemix BETA 6.5 >>>

Postby humildadever » Thu Jul 05, 2012 2:57 pm

Sorry but the link to download gemix maker http://dl.dropbox.com/u/60813711/GemixG ... 2.5SP2.rar don´t work

:(
humildadever
 
Posts: 7
Joined: Wed May 06, 2009 5:03 pm

Re: <<< Gemix BETA 6.5 >>>

Postby CicTec » Thu Jul 05, 2012 4:05 pm

Ask here:
viewforum.php?f=148

So, the autor could help you.
User avatar
CicTec
 
Posts: 15278
Joined: Thu Jul 31, 2008 10:18 pm


Return to News and Releases

Who is online

Users browsing this forum: No registered users and 1 guest