Release

From MSX Game Library

Revision as of 13:36, 30 September 2025 by Aoineko (talk | contribs) (Majors updates)

MSXgl 1.3.0

Majors updates

  • New modules:
    • Disk_Save: Save to disk from a ROM application (for saving game data or use with a in-game editor)
    • WaveGame: Play high-quality wave file from application using a MSX Pico+ feature
    • Lightgun: Handle MSX lightguns (ASCII Plus-X Terminator and Gun-Stick)
    • Sequence: Can be use to create interactive movie or point&click type games
  • Redesign of the Pawn module, which handles animated objects (such as characters), with optimizations and new features
    • Ability to load sprite patterns into VRAM on the fly (removing the animation frame limit)
    • Ability to enable real-time special effects on sprites (flip and rotation)
    Note: To convert old project to use this new module, follow the conversion guide
  • You can now create 'library' project to build code to be used in different project
  • Several bug fixes (thanks to MSXgl community) and optimizations
  • Big cleanup in source code standardization

Change log

  • [Arkos] Small optimization in playback function
  • [ayFX] Made the module compatible with default PSG register buffer (to use with VGM and lVGM)
  • [BIOS] Small optimization in Bios_InterSlotRead()
  • [Build tool] Added new target "C library" and option to add additionnal library to a project
  • [Build Tool] Added support for 16 KB ROM naming for RISKY MSX
  • [Build tool] Fixed emulator launch method for Linux & MacOS
  • [Core] Reactivated warnings #283 "function declarator with no prototype" and #59 "function must return value"
  • [Core] Reserved entries for MSX2++ and MSX turbo R+
  • [DOS] Added new features: error handler for MSX1, delete file (FCB), get free space, BIOS routine access (interslot read/write/call)
  • [Disk_Save] Added new module to handle save to disk from a ROM application (for saving game data or use with a in-game editor)
  • [Game/State] Moved Game module to Game/State
  • [Game/State] Added game data getter functions
  • [Game/State] Optimized in size and performance
  • [Game/State] Fixed Game module synchronization
  • [Game/Pawn] Moved Game_Pawn module to Game/Pawn
  • [Game/Pawn] Added new feature: realtime sprite pattern loading, sprite FX, force current action, force Pawn update and data getter
  • [Game/Pawn] Added PAWN_UNIT options and allowed Pawn position to be fixed-point 16-bit
  • [Game/Menu] Moved Game_Menu module to Game/Menu
  • [Game/Menu] Added get current item function for Menu module
  • [Game/Menu] Added new drawing events
  • [Game/Menu] Added feature to return to previous page
  • [Input] Added INPUT_HOLD_SIGNAL option
  • [Input] Added Light gun ID
  • [LightGun] Added a module to handle light gun and a sample program (s_lgun)
  • [MSX-Audio][MSX-Music] Fixed FM music mute functions
  • [MSX-Music] Added function to get detected FM cartridge slot ID
  • [Print] Added helper function to get/set pattern offset
  • [Print] Fixed X/Y coordinate unit
  • [Print] Added new inline helper functions to draw at a given position
  • [Sequence] Added new Sequencer module to use in interactive movie
  • [System] Added target independant functions to get MSX and BASIC version (from BIOS)
  • [System] Fixed GET_TARGET_ISR flag value
  • [V9] Fixed V9_SetSpriteDisableP1
  • [VDP] Fixed stack adjustment for VDP_Peek_128K() function and optimized VDP_SetBlinkTile()
  • [VDP] Added wrapper function for setting backdrop color
  • [WaveGame] Added a new module to handle WaveGame device of the MSX Pico/Pico+
  • [Example] Moved example game into a separate GitHub project (Peng Pong)
  • [MSXtk] Fixed help message displaying an error message ; Harmonized if/for/while writing convention
  • [MSXimg] Added support for partial custom palette (a given number of color starting at a given index)
  • [Doc] Improved source code documentation
  • Cleaned inline assembler function for return value
  • Cleaned macro parameters and fixed parameter precedence
  • Fixed many typos
  • Standardization of spaces after if/for/while/switch functions and defines
  • Standardization of structure definition