Automate error file rebuilding, add LC test

This commit is contained in:
Zellyn Hunter 2016-12-15 22:38:01 -05:00
parent c65d7b9ee2
commit 2cb576c492
4 changed files with 53 additions and 2 deletions

Binary file not shown.

View File

@ -12,6 +12,12 @@ cp ../dsk/supermon20.dsk audit.dsk
diskii nakedos mkhello audit.dsk DF02
diskii put -f audit.dsk DF02:FWORLD audit.o
# Extract extended error strings and rebuild ../v0/index.md
echo -e '# V0 Errors' > ../v0/index.md
grep -h '+prerr .*;;' *.asm | awk -F' ;; ' '{print $2}' | sort | sed 's|\(E....\): |\
## \1\
\
|' >> ../v0/index.md
# Also run mame? (set ROMPATH to your local variant)
[[ -z "${ROMPATH-}" ]] && ROMPATH=~/mame/roms/
@ -23,3 +29,4 @@ diskii put -f audit.dsk DF02:FWORLD audit.o
[[ "${1-}" == '2e-d' ]] && mame -rompath $ROMPATH apple2e -flop1 ./audit.dsk -skip_gameinfo -debug
[[ "${1-}" == '2p-d' ]] && mame -rompath $ROMPATH apple2p -flop1 ./audit.dsk -skip_gameinfo -debug
[[ "${1-}" == '2-d' ]] && mame -rompath $ROMPATH apple2 -flop1 ./audit.dsk -skip_gameinfo -debug

View File

@ -124,6 +124,34 @@
+prerred
beq .done
+ lda $C089 ; ROM read
lda $D17B
cmp #$53
beq ++
cmp #$55
bne +
+prerr $0011 ;; E0011: Read $C089 (read ROM), but the language card is still reading bank 1.
!text "$C089: BANK 1 ACTIVE"
+prerred
beq .done
+ cmp #$AA
bne +
+prerr $0012 ;; E0012: Read $C089 (read ROM), but the language card is reading bank 2.
!text "$C089: BANK 1 ACTIVE"
+prerred
beq .done
+ +prerr $0013 ;; E0013: Read $C089 (read ROM), but the check byte ($D17B) is an unknown value.
!text "$C089: UNKNOWN BYTE"
+prerred
beq .done
++ dec $D17B
eor $D17B
beq +
+prerr $0014 ;; E0014: Read $C089 (read ROM), but successfully modified byte ($D17B).
!text "$C089: ALLOWED WRITE"
+prerred
beq .done
+
;; Success

View File

@ -26,11 +26,11 @@ Read $C088 (read bank 1), but the language card is still reading bank 2.
## E0007
Read $C088 (read bank 1), but the language card is reading ROM.
Read $C088 (read bank 1), but the check byte ($D17B) is an unknown value.
## E0007
Read $C088 (read bank 1), but the check byte ($D17B) is an unknown value.
Read $C088 (read bank 1), but the language card is reading ROM.
## E0008
@ -67,3 +67,19 @@ Read $C081 (read ROM), but the check byte ($D17B) is an unknown value.
## E0010
Read $C081 (read ROM), but successfully modified byte ($D17B).
## E0011
Read $C089 (read ROM), but the language card is still reading bank 1.
## E0012
Read $C089 (read ROM), but the language card is reading bank 2.
## E0013
Read $C089 (read ROM), but the check byte ($D17B) is an unknown value.
## E0014
Read $C089 (read ROM), but successfully modified byte ($D17B).