
I'm a fan of the TI-99/4A, the computer I played with as a kid before getting my hands on a Philips VG-8020 MSX. So I thought it wouldn't be impossible to convert our MSX Italia Association's game for this strange and fascinating machine.
The original is written in C with the MSXgl library, which offers ready-made modules for graphics, input, character physics, PT3 music, and AYFX effects. For the port, only one module, game/pawn, was rewritten, which handles player physics and collisions. With the help of Claude Code, its behavior was faithfully replicated in CVBasic. The rest of the game was translated block by block from C to native CVBasic instructions. Music and effects are converted from Python scripts for the SN76489 sound chip.
The code is distributed on a 128 KB cartridge with multiple banks. The fixed bank contains the game logic. The other thirteen, interchangeable, contain graphics, levels, screens, cutscenes, audio, and the final boss. The cutscenes, which in the original were C scripts, became small bytecode read by an interpreter: a sort of script to be recited. CVBasic, Oscar Toledo's excellent cross-platform compiler, allowed much of the game to be written in BASIC. The critical parts (enemies, rewind, bosses, interrupts) are instead in TMS9900 assembly language, inserted into the source code and called from there.
Visual fidelity is down to the hardware. The TI-99/4A uses the same video processor as the MSX1, the TMS9918A. Tilesets, maps, colors, and sprites were transferred 1:1 from the original, without format conversion: what you see on the TI is, pixel for pixel, what you see on the MSX. The real work focused on what changed: the CPU, sound chip, keyboard, and memory. Between patience, debugging, and lots of testing, the conversion took a few months of free evenings and a few weekends.
I think the game is really great, and it's a pleasure to be able to show it to fans who are new to MSX. Hopefully someone will port it to other computers as well. To see it running, just download the ROM .bin file and load it into the online emulator. by clicking HERE. The keys are the same as the MSX game, with the addition of FCTN+9 (ALT+9 on PC) to skip the intro and M to turn the music on or off.
Have fun!
Fabrizio Luglio






From MSX to TI-99/4A: taking Chrono Runner apart and putting it back together for the TI99/4a
I'm a TI-99/4A enthusiast: it's the computer I played on as a kid, before I got my hands on a Philips VG-8020 MSX. So I thought it wouldn't be impossible to convert our Associazione MSX Italia's game to this strange and fascinating machine.
The original is written in C with the MSXgl library, which provides ready-made modules for graphics, input, character physics, PT3 music and AYFX sound effects. Only one module was rewritten for the port: game/pawn, which handles the player's physics and collisions. With the help of Claude Code, its behavior was faithfully replicated in CVBasic. The rest of the game was translated block by block from C into native CVBasic statements. Music and sound effects are converted by Python scripts for the SN76489 sound chip.
The code is spread across a 128 KB bank-switched cartridge. The fixed bank holds the game logic. The other thirteen, switchable, hold graphics, levels, screens, cutscenes, audio and the final boss. The cutscenes, which are C scripts in the original, became a small bytecode read by an interpreter: a sort of script for the game to act out. CVBasic, Oscar Toledo's excellent cross-platform compiler, made it possible to write most of the game in BASIC. The critical parts (enemies, rewind, boss, interrupts) are written in TMS9900 assembly instead, embedded in the source and called from it.
The visual fidelity comes from the hardware. The TI-99/4A uses the same video chip as the MSX1, the TMS9918A. Tilesets, maps, colors and sprites were carried over 1:1 from the original, with no format conversion: what you see on the TI is, pixel for pixel, what you saw on the MSX. The real work went into what changes: CPU, sound chip, keyboard and memory. With patience, debugging and plenty of testing, the conversion took a few months of free evenings and the odd weekend.
I think it's a really good game, and it's a pleasure to be able to show it to fans who don't know the MSX. Hopefully someone will port it to other computers too. To see it running, download the ROM .bin file, load it into the online emulator at click HERE. The controls are the same as in the MSX game, plus FCTN+9 (ALT+9 on a PC) to skip the intro and M to turn the music on or off.
Have fun!
Fabrizio Luglio
The file is available here:
The CVBASIC source is available here on Github: https://github.com/fablug-wq/chrono-runner-ti99
Below are the manuals, in Italian and English:Chrono_Runner_TI99_manual_IT or Chrono_Runner_TI99_manuale_EN.pdf
