SkoolKit

Spectrum game disassembly toolkit

ORGs and ASMs

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

The HTML versions of the Skool Disassemblies are all well and good for browsing, but less than useful for the hacker who wants to try something a little more adventurous than the odd POKE here and there. I get that. I really do. So for that hacker (and others like him), let me present the Skool ASM selector.

The Skool ASM selector (there’s the link again for good measure) lets you choose a game (Skool Daze or Back to Skool), a case (UPPER or lower, as in ‘LD A,(HL)’ v. ‘ld a,(hl)’), an indentation (a TAB or two spaces at the start of each instruction-bearing line), and whether to include bug fixes (Yes or No). When these selections have been made, a download link will appear. Click it, and the zip archive that springs forth is guaranteed to contain an ASM file that matches your criteria.

Feed the ASM file into an assembler (such as pasmo), and the result will be something that matches the original game, byte-for-byte - except for the bug fixes - in all the important places. But that’s boring, so get hacking on that ASM and make it your own!

Later I’ll release ASMs that have been ‘refactored’, meaning that routines have been amended so that they can be moved around without breaking stuff; this ‘refactoring’ will allow the hacker (and me) to remove the unused bits between (and inside) routines, and fix bugs that are not amenable to a short sequence of POKEs. Data blocks will, by and large, be left alone, though; too many routines in the Skool games depend on data blocks being in very specific locations. Stay tuned.

Piles of tiles

Tiles. 2618 of them, to be exact. Not ceramic, but graphic. In the 8x8 pixel block Speccy sense. That’s what you’ll find in the latest release of the Skool Disassemblies: every tile - the ones used for the skool background, and the ones used for the game characters - presented with information on how the game engine looks it up and where the graphic data itself is stored.

But if you don’t care much for tiles - especially 2618 of them - don’t worry. Some newly found bugs and trivia items have been added, too.

See the changelog for all the details of what’s new, the home page if you want to start browsing now, or the downloads page to grab a copy of the disassemblies for local/offline browsing. (And given the size of the tiles pages, using a local copy is probably a wise choice.)

Deck the (disassembly) halls

deck-the-halls

‘Tis the season to be disassembling, as the saying goes. And what would Christmas be without an update to the Skool Disassemblies? Empty, meaningless, insipid? Well, perhaps not so bad as that, but I’ve prepared an update anyway just in case.

Corrections, refinements, more bugs unearthed, more POKEs listed and more trivia documented - see the changelog for all the gory details of what’s new. Then head over to the home page and start browsing. Or head over to the downloads page instead to grab a copy of the disassemblies for offline browsing.

If I had to pick a highlight or most interesting bit of newness from this update for each game, I think it would be the bug in Skool Daze that enables ERIC to avoid being sent home when he has mumps or over 10000 lines (without any cheats or POKEs!), and the bug in Back to Skool that makes a teacher wipe other bits of the skool clean instead of the blackboard.

As always, let me know if you spot any errors, or you know of any bugs, useful POKEs or trivia not documented here.