LSBs and MSBs

By | January 18, 2010

Note: The ASM selector has been removed. To obtain ASM versions of the skool disassemblies, use SkoolKit.

The refactored ASMs have arrived. Actually, they arrived a few days ago, but I’ve only just got round to announcing them here. You can get them from the Skool ASM selector by selecting the third option in the ‘Bug fixes’ drop-down: ‘More (refactored ASM)’.

So what is a refactored ASM? It’s one containing modifications to some of the routines (and a few data blocks) to make them less sensitive to the LSBs and MSBs of their start addresses and more amenable to relocation. Why is that a good thing? Well, it means that the gaps between routines can be removed, and extra instructions can be inserted (to fix bugs that could not otherwise be fixed) – without breaking anything (hopefully). The refactored ASMs would also be a better base from which to start modifying the games or adding new features: the unrefactored ‘pristine’ ASMs are probably a little too rigid and fragile for that.

However, my efforts at refactoring may have introduced new bugs, so playtesting of these ASMs is strongly encouraged. In fact, if it were in my power, I would make it required by law. But it isn’t in my power, so I’ll just have to ask nicely instead. Please playtest these refactored ASMs! To make it easy for you, each download from the Skool ASM selector (there’s that link again) contains a TAP file right next to the ASM, so you have no excuse not to load it in an emulator and get to work. I mean play. Please again?