A bit about the Kit
SkoolKit 2.4 is now available from the usual download page. It’s been a while since I dedicated a blog post to a new version of SkoolKit, but that’s not because nothing’s been happening. On the contrary, some things have been happening. If you’ll bear with me, I’ll try to summarise the most significant and least boring changes in the six releases made since 2.2.2 came out over six months ago.
The biggest new feature is the addition of the skool2sft.py
command, which
can convert a skool
file into a ‘skool file template’. What’s a skool file
template? It’s a bit like a control file, except that it preserves the
following elements that control files don’t: all ASM directives, data
definition entries, remote entries, and comments that are not part of a code or
data block. Put more simply, a skool file template is a skool
file without
the Z80 instructions; to insert the Z80 instructions, you supply a Z80 (or SNA)
snapshot and run that and the skool file template through sna2skool.py
. For
more details, see the documentation.
Even if you don’t plan on using skool file templates, you still might find
sna2skool.py
’s support for them useful. For example, you could feed a snippet
of a skool file template to sna2skool.py
in order to disassemble a portion of
a snapshot (instead of the entire thing) thus:
$ echo 'cC32768,20' | sna2skool.py -T - game.z80
This would print a disassembly (in skool file format) of 20 bytes, starting at 32768.
In other news, skool2html.py
now supports multiple ref
files per
disassembly. So if your existing game.ref
is getting large and unwieldy, you
could split it up into smaller files named game*.ref
for easier
maintenance. And speaking of ref
files, support for [Changelog:*]
sections
has been reintroduced, making it easier to generate a disassembly changelog
page (such as the one for Skool
Daze).
On the image creation front, the #UDGARRAY
macro has been enhanced so that
masks can be specified, and both the #UDG
and #UDGARRAY
macros have been
enhanced so that images can be flipped (horizontally and/or vertically) and
rotated.
And finally, as always, there are a few bug fixes, including one that prevents
sna2skool.py
from choking on ancient version 1 Z80 snapshots (which are
evidently still in use by some people). See the
changelog for details of the other fixes.
So that’s all the SkoolKit news for now. Time to get cracking on 2.4.1.