Difference between revisions of "Roadmap"

From MSX Game Library

(Display)
(Misc.)
 
Line 44: Line 44:
 
** Add support for R800 assembler (SDCC now support R800 natively).
 
** Add support for R800 assembler (SDCC now support R800 natively).
 
* Compress
 
* Compress
** Add support for ZX0 unpacker to VRAM  
+
** Add support for ZX0 unpacker to VRAM
 
** Add support for LZ48 unpacker to <s>RAM and</s> VRAM [https://github.com/EdouardBERGE/rasm/blob/master/decrunch/lz48decrunch_v006b.asm ][https://github.com/uniabis/z80depacker/blob/master/lz48decrunch_v006_180_speed.asm ]
 
** Add support for LZ48 unpacker to <s>RAM and</s> VRAM [https://github.com/EdouardBERGE/rasm/blob/master/decrunch/lz48decrunch_v006b.asm ][https://github.com/uniabis/z80depacker/blob/master/lz48decrunch_v006_180_speed.asm ]
* Improve Game module with an option to force 50 Hz main loop update on all machines
+
* Improve Game module with an option to force 50 Hz main loop update on all machines.
 
* Add support for variable-width fonts.
 
* Add support for variable-width fonts.
 +
* Add support for ISR in page 3 using IM2 (so page 0 is free to switch).
  
 
== [[Build tool]] ==
 
== [[Build tool]] ==

Latest revision as of 22:55, 27 May 2026

This is not really a Roadmap since I can't guarantee any delivery date, but here are the new features planned as of 2025/01/05.

⏳: work in progress features

Audio

Display

  • Add replayer for Animecha data and/or for an original 2D animation format.
  • Add video replayer(s) (Easy SCREEN3 Animation Converter).
  • Add bitmap scrolling feature to scroll module.
  • Add bitmap sprite upscsaler (cf. NOP).
  • ⏳ Add 3D module (generic 3d data format, transformation and rendering).
  • ⏳ Add Raycaster module (using DDA).
  • ⏳ Add Movie module (rewrite MGLV exporter from MSXimg and update MSX replayer)
  • Add support for 32x212 screen mode.
  • Add pseudo-bitmap support for Print module for tile-based screen mode and sprite (draw on consecutive 16x16).
  • Add loader for more common MSX picture formats (SCx, MIF, PCX, BMP, etc.).
  • Add support for Yamaha V9938/58 copy commands.
  • Add support for Yamaha V9990 copy commands.
    • Improve V9990 sample to allow testing of all color mode.
  • Add support for V9968 cartridge.
  • Add support for MSX2's 1-color-per-line sprite feature in Pawn module.

Misc.

  • Add support for SRAM cartridge: Game Master 2.
  • ⏳ Add support for Network cartridge (Gr8net, DenYoNet & Obsonet).
  • Add support for Network cable (Konami JE-700 & JoyNet).
  • Add support for MSX turbo R specific features.
    • Add support for R800 assembler (SDCC now support R800 natively).
  • Compress
    • Add support for ZX0 unpacker to VRAM
    • Add support for LZ48 unpacker to RAM and VRAM [1][2]
  • Improve Game module with an option to force 50 Hz main loop update on all machines.
  • Add support for variable-width fonts.
  • Add support for ISR in page 3 using IM2 (so page 0 is free to switch).

Build tool

  • ⏳ Add native support for SDCC 4.5.0 (done but waiting for SDCC fix release)
  • Add an option to compile the source files in parallel.
  • Add IPS generator (to create a Patch for a given binary).
  • Add build option to convert 16 KB ROM-mapper to RAM segment switch and RAM loader.
  • Use SDCC's -M option to generate file dependency list and allow skip old file option to check all depedecies (Make like).
  • Generate RCP file.

Optimization

Optimize, optimize and optimize!

  • Rewrite update function in assembler for game_pawn and scroll modules.
  • Create optional fast copy/fill/read functions using unrolled outi/ini for vdp module (for supported screen mode).
  • Add assembler optimization option to the Build tool (using SDCC peep-hole and/or MDL).
  • Continue to set the __preserves_regs directive for all remaining assembly functions to help the compiler optimize register usage. (already done for VDP and V9990 modules)
  • Add fast multiplication function ([3])

Want to contribute to MSXgl? Check this article.