If you are using SkoolKit to generate ASM versions of the Skool Disassemblies, and you want to modify and re-assemble them, you will need to use a supported assembler. At the time of writing, the assemblers listed below are known to work with the ASM format generated by skool2asm.py:
The following sections give examples of how to use each of these assemblers to create binary (raw memory) files or tape files that can be used with an emulator.
First, create an ASM version of the Skool Daze disassembly:
$ ./skool2asm.py src/sd.skool > sd.asm
Then use pasmo to create a binary file thus:
$ pasmo sd.asm sd.bin
or a TAP file that includes a BASIC loader thus:
$ pasmo --tapbas sd.asm sd.tap
When this TAP file, sd.tap, has been loaded into an emulator, you will need to enter:
RANDOMIZE USR 24573
to start Skool Daze.
The same procedure applies to Back to Skool, except that the --tapbas option will not work in this case, because Back to Skool’s origin address is too low and corrupts the BASIC loader. Instead, you can use the bin2tap.py utility, included with SkoolKit, to create a TAP file for Back to Skool:
$ ./skool2asm.py src/bts.skool > bts.asm
$ pasmo bts.asm bts.bin
$ ./bin2tap.py bts.bin
The end result is a file called bts.tap that can be loaded into an emulator, and will start the game automatically.
First, create an ASM version of the Skool Daze disassembly:
$ ./skool2asm.py src/sd.skool > sd.asm
Then create a file called sd.sjasm with the following contents:
; SjASMPlus source file for sd.asm
device zxspectrum48
include sd.asm
savebin "sd.bin",24573,65536-24573
Run sjasmplus on this source file:
$ sjasmplus sd.sjasm
and a binary file called sd.bin will be created. To create a TAP file from sd.bin, use the bin2tap.py utility, included with SkoolKit:
$ ./bin2tap.py sd.bin
The resultant TAP file, sd.tap, can be loaded into an emulator, and the game will start automatically.
The same procedure applies to Back to Skool, except that the source file, bts.sjasm, should look like this:
; SjASMPlus source file for bts.asm
device zxspectrum48
include bts.asm
savebin "bts.bin",23805,65536-23805
z80asm will not work on the ASM version of the Skool Daze disassembly unless, at the very least, the @ssub substitutions and the @ofix fixes are applied (see ASM modes and directives):
$ ./skool2asm.py -s -f1 src/sd.skool > sd-sf1.asm
Then a binary file can be created thus:
$ z80asm -r5ffd -b sd-sf1.asm
To create a TAP file from this binary file, use the bin2tap.py utility, included with SkoolKit:
$ ./bin2tap.py sd-sf1.bin
The resultant TAP file, sd-sf1.tap, can be loaded into an emulator, and the game will start automatically.
z80asm will not work on the ASM version of the Back to Skool disassembly unless, at the very least, the @ofix fixes are applied (see ASM modes and directives):
$ ./skool2asm.py -f1 src/bts.skool > bts-f1.asm
Then a binary file can be created thus:
$ z80asm -r5cfd -b bts-f1.asm
To create a TAP file from this binary file, use the bin2tap.py utility, included with SkoolKit:
$ ./bin2tap.py bts-f1.bin
The resultant TAP file, bts-f1.tap, can be loaded into an emulator, and the game will start automatically.