Bun Runner Devlog -- 2024-11-09

November 9, 2024

Another week of slow progress, but this is mainly due to some really heavy refactoring work. I wanted to use ptplayer for music, and that required having my code in a ready-to-link format. If I was going to do this, I was going to do it right, and so I restructured all of the code using all of the techniques I use when working with higher level languages:

  • proper separation of concerns into deep modules
  • “data classes” that enforce structure

My biggest problem holding me back was that MonAm did not like it as all when I gave it linked code:

  • I lost all my symbols
  • Source code mode was non-existent, though that barely worked for me anyways

Along with all the refactoring, I switched to using BDebug in the Barfly assembler package, and I haven’t looked back. Symbols, source code, proper OS 2.0 windows, full mouse support, command line arguments, and lots and lots of great options.

Along with reworking the game code in this way, I restructured my art compression tool to get more practice. I’ve gotten a lot better at restructing assembler code and figuring out the good places to divide up modules. Once I feel really confident that this is the way to go, I’ll write up an article detailing my approach, if you want to try it out yourself.

Oh, and music playback works!