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
(usebleepload
instead)edge
(userom
instead)elite-uni-loader
(usespeedlock
instead)excelerator
(usebleepload
instead)flash-loader
(userom
instead)ftl
(usespeedlock
instead)gargoyle
(usespeedlock
instead)hewson-slowload
(userom
instead)injectaload
(usebleepload
instead)poliload
(usedinaload
instead)power-load
(usebleepload
instead)softlock
(userom
instead)zydroload
(usespeedlock
instead)
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.