Migrating from SkoolKit 8¶
SkoolKit 9 includes some changes that make it incompatible with SkoolKit 8. If you have developed a disassembly using SkoolKit 8 and find that the SkoolKit commands no longer work with your source files, or produce broken output, look through the following sections for tips on how to migrate your disassembly to SkoolKit 9.
#DEFINE¶
The #DEFINE macro is not supported in SkoolKit 9. Instead, the more
powerful #DEF macro should be used.
For example, you might have used #DEFINE to define a #MIN macro that
expands to the smaller of its two integer arguments:
#DEFINE2(MIN,#IF({0}<{1})({0},{1}))
This can be redefined by using the #DEF macro:
#DEF(#MIN(a,b) #IF($a<$b)($a,$b))
snapmod.py¶
In SkoolKit 8, snapmod.py would refuse to overwrite an existing snapshot
unless the --force option was given. In SkoolKit 9, snapmod.py will
overwrite an existing snapshot by default, and the --force option is no
longer supported.
tapinfo.py¶
The --tzx-blocks option is no longer supported in SkoolKit 9. In addition,
the short option name for --basic has changed from -B to -b (for
consistency with the -b option of snapinfo.py).
tap2sna.py¶
In SkoolKit 8, tap2sna.py performed a
simulated LOAD only if the --sim-load option was
given. In SkoolKit 9, tap2sna.py performs a simulated LOAD by default, and
the --sim-load option is no longer supported. Simulated LOADing is disabled
only if a --ram load option is given.
In SkoolKit 8, tap2sna.py would refuse to overwrite an existing snapshot
unless the --force option was given. In SkoolKit 9, tap2sna.py will
overwrite an existing snapshot by default, and the --force option is no
longer supported.
In SkoolKit 8, the default value of the first-edge simulated LOAD
configuration parameter was -2168. In SkoolKit 9, the default value is 0.
The contended-in simulated LOAD configuration parameter is no longer
supported. Use in-flags=1 instead.
The following tape-sampling loop accelerator names are not available in SkoolKit 9:
cyberlode(usebleeploadinstead)edge(userominstead)elite-uni-loader(usespeedlockinstead)excelerator(usebleeploadinstead)flash-loader(userominstead)ftl(usespeedlockinstead)gargoyle(usespeedlockinstead)hewson-slowload(userominstead)injectaload(usebleeploadinstead)poliload(usedinaloadinstead)power-load(usebleeploadinstead)softlock(userominstead)zydroload(usespeedlockinstead)
The r[t] replacement field (for use in the TraceLine configuration
parameter) is no longer supported in SkoolKit 9. Use the t replacement
field instead.
trace.py¶
In SkoolKit 8, trace.py had a --dump option for specifying an output
Z80 snapshot file. In SkoolKit 9, this option has been removed; instead the
output filename may be specified after the input filename. For example:
$ trace.py --stop 32768 in.z80 out.z80
In SkoolKit 8, the --interrupts option enabled the execution of interrupt
routines. In SkoolKit 9, interrupt routines are executed by default, and the
--interrupts option has been removed. Use the --no-interrupts option to
prevent the execution of interrupt routines.
In SkoolKit 8, if the input filename was ‘.’, a blank 48K snapshot was substituted. In SkoolKit 9, this no longer works; instead, use ‘48’ for a blank 48K snapshot, or ‘128’ for a blank 128K snapshot.