From 13a6e3928b5768706c6a55f38e824772e03dd6c1 Mon Sep 17 00:00:00 2001 From: 4am Date: Mon, 1 Mar 2021 12:22:46 -0500 Subject: [PATCH] add support for another MECC RWTS swapper [fixes Zoyon Patrol] --- src/passport.a | 3 +-- src/patchers/rwtsswapmecc.a | 37 ++++++++++++++++++++++++++++++++---- src/patchers/rwtsswapmecc2.a | 25 ------------------------ src/strings/en.a | 2 +- 4 files changed, 35 insertions(+), 32 deletions(-) delete mode 100644 src/patchers/rwtsswapmecc2.a diff --git a/src/passport.a b/src/passport.a index f798d65..915b665 100755 --- a/src/passport.a +++ b/src/passport.a @@ -792,9 +792,8 @@ _applyToAll !source "patchers/bbf9.a" ; gIsProDOS only !source "patchers/memory.config.a" ; gIsProDOS only !source "patchers/origin.a" ; gIsProDOS only + !source "patchers/rwtsswapmecc.a" ; gMECCFastloadType || gPossibleMECCSwapper only !source "patchers/meccdqc.a" ; gMECCFastloadType==1 && gT07 only - !source "patchers/rwtsswapmecc.a" ; gMECCFastloadType only - !source "patchers/rwtsswapmecc2.a" ; gPossibleMECCSwapper only !source "patchers/rwtsswappenguin.a" ; T01 only !source "patchers/protecteddos.a" ; gIsProtDOS only !source "patchers/fbff.a" diff --git a/src/patchers/rwtsswapmecc.a b/src/patchers/rwtsswapmecc.a index 0e65a4d..ee235a2 100755 --- a/src/patchers/rwtsswapmecc.a +++ b/src/patchers/rwtsswapmecc.a @@ -1,14 +1,42 @@ ;------------------------------- ; #RWTSSWAPMECC -; post-boot RWTS swapper in MECC -; fastloader disks +; post-boot RWTS swappers in +; various MECC disks ;------------------------------- !zone { bit gMode ; nothing to do here in verify-only mode bpl .exit + + lda gPossibleMECCSwapper + beq + + ldy #$08 + jsr SearchTrack + !byte $A9,$AA + !byte $2C + !byte $A9,$D5 + !byte $8D,$7A,$BC + bcs + ; passport-test-suite/Word Wizards v1.0.woz [C=0] matches + sta gDisplayBytes + jsr inx5 + ldy #$01 + jsr modify + !byte $60 ++ lda gMECCFastloadType beq .exit - + ldy #$06 + jsr SearchTrack + !byte $8A + !byte $F0,$02 + !byte $A2,$06 + !byte $BD + bcs + ; passport-test-suite/Zoyon Patrol v1.0.woz [C=0] matches + sta gDisplayBytes + jsr inx4 + ldy #$01 + jsr modify + !byte $00 ++ ldy #$08 jsr SearchTrack !byte $A0,$02 @@ -32,11 +60,12 @@ !byte $8D,$8B,$C0 !byte $B9,WILDCARD,WILDCARD !byte $8D,$AC,$D5 - bcs .exit ; passport-test-suite/MECC Dataquest - Europe and Soviet Union.woz [C=0] matches + bcs + ; passport-test-suite/MECC Dataquest - Europe and Soviet Union.woz [C=0] matches sta gDisplayBytes ldy #$03 jsr modify !byte $A9,$00 !byte $24 ++ .exit } diff --git a/src/patchers/rwtsswapmecc2.a b/src/patchers/rwtsswapmecc2.a deleted file mode 100644 index 5c4481a..0000000 --- a/src/patchers/rwtsswapmecc2.a +++ /dev/null @@ -1,25 +0,0 @@ -;------------------------------- -; #RWTSSWAPMECC2 -; post-boot RWTS swapper in MECC -; DOS disks -;------------------------------- -!zone { - bit gMode ; nothing to do here in verify-only mode - bpl .exit - lda gPossibleMECCSwapper - beq .exit - - ldy #$08 - jsr SearchTrack - !byte $A9,$AA - !byte $2C - !byte $A9,$D5 - !byte $8D,$7A,$BC - bcs .exit ; passport-test-suite/Word Wizards v1.0.woz [C=0] matches - sta gDisplayBytes - jsr inx5 - ldy #$01 - jsr modify - !byte $60 -.exit -} diff --git a/src/strings/en.a b/src/strings/en.a index 78ad5a5..6ad4d2b 100755 --- a/src/strings/en.a +++ b/src/strings/en.a @@ -284,7 +284,7 @@ StringTableHigh ; can be set directly before calling PrintByID. ; .header - !text "Passport by 4am 2021-02-28",$00 + !text "Passport by 4am 2021-03-01",$00 .mainmenu !text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D,$8D !text " "