From 6eaa2b42c406716f55a927ddcc43f86a877a3b2b Mon Sep 17 00:00:00 2001 From: Peter Ferrie Date: Sat, 4 Mar 2017 18:28:27 -0800 Subject: [PATCH] support PCS 1983 --- src/id/trace.a | 28 +++++++++++++++++++++------- 1 file changed, 21 insertions(+), 7 deletions(-) diff --git a/src/id/trace.a b/src/id/trace.a index 4fccdbf..682cecb 100755 --- a/src/id/trace.a +++ b/src/id/trace.a @@ -60,11 +60,13 @@ _Inspect1a clc adc #$06 sta b4bbcompare+1 - sec - sbc #$02 - sta .x3+1 - sta .x4+1 - sta callrwts+2 + tax + dex + stx .x5+1 + dex + stx .x3+1 + stx .x4+1 + stx callrwts+2 jsr ProtectedDOS ; check for a specific (encrypted) ; bootloader called "Protected DOS" bcs .notprotdos @@ -96,7 +98,7 @@ _Inspect1a ldy #$02 jsr CompareMemory !byte $20,00 - bcc + + bcc .x5 ; ; Check for RWTS variant that has extra code before ; JSR $B800 e.g. Verb Viper (DLM), Advanced Analogies (Hartley) @@ -106,7 +108,19 @@ _Inspect1a ldy #$02 jsr CompareMemory !byte $20,00 - bcc + + bcc .x5 + jmp UseUniversal ; give up tracing; this RWTS is unsupported +; +; Check for RWTS variant that uses non-standard address for slot +; LDX $1FE8 e.g. Pinball Construction Set (1983) +; we don't like that one +; +.x5 lda #$FF ; check for "LDX $1FE8" at $BE43 + ldx #$43 + ldy #$03 + jsr CompareMemory + !byte $AE,$E8,$1F + bcs + jmp UseUniversal ; give up tracing; this RWTS is unsupported + jmp ADStyle ; use this RWTS to read the disk