Of bases and characters
SkoolKit 4.4 has been released. You may obtain a copy, as usual, from the download page, the Python Package Index, or the Ubuntu PPA.
First, a little SkoolKit history, to provide some context for the main new
feature in this release. Back in SkoolKit
3.7, support for binary numbers was added,
along with the ability to specify (in a control file or skool file template)
the base of numeric values in DEFB, DEFM, DEFS and DEFW statements: binary,
decimal or hexadecimal. Which was all well and good, but it left regular
assembly language instructions out in the cold. You could disassemble 3E24
as
DEFB $3E,%00100100
all day long if you wished, but if you wanted LD
A,%00100100
instead, you were out of luck. Cue sad trombone.
Suffice it to say that this sorry situation has been rectified in SkoolKit
4.4. If you want 3E24
to disassemble as LD A,%00100100
, you can now do so
to your heart’s content. What’s more, if you want 3E24
to disassemble as LD
A,"$"
instead, you may also do that until the cows come home. (Of course, the
options to disassemble 3E24
as LD A,36
or LD A,$24
are also still
available.) All that’s required is the careful use of ‘b’ (binary), ‘c’
(character), ‘d’ (decimal) or ‘h’ (hexadecimal) prefixes in the control file or
skool file template. Cue fanfare.
In other news - and in the “this really should have been in SkoolKit 1.0”
department - 4.4 brings support for @ssub
block directives. The only excuse I
can offer for not implementing them sooner is that I never found a pressing
need for them in any of the disassemblies I’ve worked on. But there have been
@bfix
, @ofix
, @rfix
, @isub
and @rsub
block directives since day one,
so it only makes sense to add @ssub
block directives and round out the
family. I hope someone finds them useful, even if I have yet to.
Also possibly in the “this really should have been in SkoolKit 1.0 (or
thereabouts)” department, sna2skool.py
now has an -e/--end
option to
complement the -s/--start
option it’s had since SkoolKit 1.0.4. Many’s the
time I’ve wanted to disassemble just a bit of a snapshot (without a control
file) instead of everything up to the end of RAM, and now I can do that by
using --start
and --end
together. I encourage you to try it, too.
And that’s about it. For details of other changes less interesting than these,
you can consult the changelog. Then get
your copy of SkoolKit 4.4 and start disassembling FE21
as CP "!"
like
there’s no tomorrow.