Add build script and make rules for testbase - a Forth core with include and dos file words.

These are needed to run tests automatedly.
This commit is contained in:
Philip Zembrod 2020-06-12 23:20:42 +02:00
parent 5f4ebcbb76
commit 410e6f06a5
4 changed files with 40 additions and 18 deletions

View File

@ -16,6 +16,9 @@ vf_blk_fth: $(vf_blk_fth_files)
run-devenv: emulator/devenv.T64
emulator/run-in-vice.sh devenv
run-testbase: emulator/testbase.T64
emulator/run-in-vice.sh testbase
# Rules for building Forth binaries on top of the plain vanilla
# c64-volksforth83.
@ -24,6 +27,10 @@ cbmfiles/devenv: emulator/run-in-vice.sh emulator/build-devenv.sh \
emulator/c64-volksforth83.T64
emulator/build-devenv.sh
cbmfiles/testbase: emulator/run-in-vice.sh emulator/build-testbase.sh \
emulator/c64-volksforth83.T64
emulator/build-testbase.sh
# Generic T64 tape image rule

Binary file not shown.

View File

@ -561,27 +561,27 @@
\ *** Block No. 20, Hexblock 14
\ savesystem w/o editor 12jun20pz
| : (savsys ( adr len -- )
[ Assembler ] Next [ Forth ]
['] pause dup push ! \ singletask
i/o push i/o off bustype ;
: savesystem \ name must follow
\ prepare Forth Kernal
scr push 1 scr ! r# push r# off
\ now we save the system
save
8 2 busopen 0 parse bustype
" ,p,w" count bustype busoff
8 2 busout origin $17 -
dup $100 u/mod swap bus! bus!
here over - (savsys busoff
8 2 busclose
0 (drv ! derror? abort" save-error" ;
Onlyforth

View File

@ -0,0 +1,15 @@
#!/bin/bash
set -e
emulatordir="$(dirname "${BASH_SOURCE[0]}")"
basedir="$(realpath --relative-to="$PWD" "${emulatordir}/..")"
rm -f "${basedir}/cbmfiles/testbase"
# load savesystem w/o editor from file-words.d64 block 20 in drive 11.
# load include and dos from file-words.d64 block 10 in drive 11.
# savesystem and then scratch file notdone to exit emulator.
keybuf="3 drive 20 load\n3 drive 10 load\n\
savesystem testbase\ndos s0:notdone\n"
"${emulatordir}/run-in-vice.sh" "c64-volksforth83" "${keybuf}"