From dd1327f4beddfb64e21cc591705f995a56d46229 Mon Sep 17 00:00:00 2001 From: Peter Ferrie Date: Thu, 2 Aug 2018 22:00:03 -0700 Subject: [PATCH 1/2] honour verify mode --- src/patchers/a5count.a | 2 ++ src/patchers/a6bc95.a | 2 ++ src/patchers/advent.a | 7 ++++++- src/patchers/advint.a | 2 ++ src/patchers/bademu.a | 2 ++ src/patchers/bademu2.a | 2 ++ src/patchers/bbf9.a | 2 ++ src/patchers/bootcounter.a | 2 ++ src/patchers/border.a | 2 ++ src/patchers/c9ff.a | 2 ++ src/patchers/corrupter.a | 2 ++ src/patchers/d5d5f7.a | 2 ++ src/patchers/datasoft.a | 2 ++ src/patchers/davidbb03.a | 4 ++++ src/patchers/davidsonasm.a | 2 ++ src/patchers/davidsonforth.a | 2 ++ src/patchers/diskvol.a | 2 ++ src/patchers/dos32.a | 2 ++ src/patchers/dos32dlm.a | 2 ++ src/patchers/dos32muse.a | 2 ++ src/patchers/ea.a | 4 ++++ src/patchers/f7f6.a | 2 ++ src/patchers/fbffencrypted.a | 2 ++ src/patchers/fbffpascal.a | 2 ++ src/patchers/gamco.a | 2 ++ src/patchers/jmpae8e.a | 2 ++ src/patchers/jmpb400.a | 2 ++ src/patchers/jmpb412.a | 2 ++ src/patchers/jmpb4bb.a | 2 ++ src/patchers/jmpb660.a | 2 ++ src/patchers/jmpb720.a | 2 ++ src/patchers/jmpbbfe.a | 2 ++ src/patchers/jmpbcf0.a | 2 ++ src/patchers/jmpbeb1.a | 2 ++ src/patchers/jmpbeca.a | 2 ++ src/patchers/jsr8635.a | 2 ++ src/patchers/jsr8b3.a | 2 ++ src/patchers/jsrbb03.a | 2 ++ src/patchers/laureate.a | 2 ++ src/patchers/mecc1.a | 2 ++ src/patchers/mecc2.a | 2 ++ src/patchers/mecc3.a | 2 ++ src/patchers/mecc4.a | 2 ++ src/patchers/memory.config.a | 2 ++ src/patchers/methods.a | 2 ++ src/patchers/microfun.a | 2 ++ src/patchers/micrograms.a | 2 ++ src/patchers/milliken.a | 2 ++ src/patchers/nibtable.a | 2 ++ src/patchers/optimum.a | 2 ++ src/patchers/panglosdos.a | 2 ++ src/patchers/pascalrwts.a | 2 ++ src/patchers/polarware.a | 2 ++ src/patchers/prodosmecc.a | 3 +++ src/patchers/prodosrwts.a | 2 ++ src/patchers/protecteddos.a | 3 +++ src/patchers/rol1e.a | 2 ++ src/patchers/rwts.a | 3 +++ src/patchers/rwtsswap.a | 2 ++ src/patchers/rwtsswap2.a | 2 ++ src/patchers/rwtsswapmecc.a | 2 ++ src/patchers/sierra.a | 5 +++++ src/patchers/sierra13.a | 2 ++ src/patchers/sra.a | 2 ++ src/patchers/ssprot.a | 2 ++ src/patchers/sunburst.a | 2 ++ src/patchers/thunder.a | 2 ++ src/patchers/trillium.a | 2 ++ src/patchers/universale7.a | 5 +++++ 69 files changed, 155 insertions(+), 1 deletion(-) diff --git a/src/patchers/a5count.a b/src/patchers/a5count.a index df18e48..802b7f8 100644 --- a/src/patchers/a5count.a +++ b/src/patchers/a5count.a @@ -5,6 +5,8 @@ ; e.g. Game Frame One, Game Frame Two ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsPascal ; only ever seen this protection bne .exit ; on Pascal disks diff --git a/src/patchers/a6bc95.a b/src/patchers/a6bc95.a index bd6296d..726729f 100755 --- a/src/patchers/a6bc95.a +++ b/src/patchers/a6bc95.a @@ -4,6 +4,8 @@ ; e.g. The Secrets of Science Island ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsPascal ; only ever seen this protection bne .exit ; on Pascal disks diff --git a/src/patchers/advent.a b/src/patchers/advent.a index e85f375..59b342b 100644 --- a/src/patchers/advent.a +++ b/src/patchers/advent.a @@ -9,9 +9,14 @@ ; module by qkumba ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda gIsAdvent - bne .exit + beq + +.jmpexit + jmp .exit ++ ;carry controls how many times to run on one track ;Mindshadow and Tracer Sanction have two copies ;of the protection on track 0, loaded to two diff --git a/src/patchers/advint.a b/src/patchers/advint.a index f38f4dc..31df720 100644 --- a/src/patchers/advint.a +++ b/src/patchers/advint.a @@ -10,6 +10,8 @@ ; SAGA6 - Strange Odyssey v2.1-119 ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gAdventureInternational bne .exit ldy #$0A diff --git a/src/patchers/bademu.a b/src/patchers/bademu.a index f13e572..b6c6b3e 100755 --- a/src/patchers/bademu.a +++ b/src/patchers/bademu.a @@ -9,6 +9,8 @@ ; e.g. Dino Dig, Make A Face ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3 RWTS bne .exit lda #$03 diff --git a/src/patchers/bademu2.a b/src/patchers/bademu2.a index 8853607..9213a31 100755 --- a/src/patchers/bademu2.a +++ b/src/patchers/bademu2.a @@ -9,6 +9,8 @@ ; e.g. Dinosaur Days ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3 RWTS bne .exit lda #$03 diff --git a/src/patchers/bbf9.a b/src/patchers/bbf9.a index 5b53be9..4484f20 100644 --- a/src/patchers/bbf9.a +++ b/src/patchers/bbf9.a @@ -16,6 +16,8 @@ ; 1-2-3 Sequence Me (1991) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsProDOS bne .exit ldy #$08 diff --git a/src/patchers/bootcounter.a b/src/patchers/bootcounter.a index 604e2b0..1e0cd58 100644 --- a/src/patchers/bootcounter.a +++ b/src/patchers/bootcounter.a @@ -5,6 +5,8 @@ ; after a certain number of boots ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gTrack cmp #$01 bne .exit diff --git a/src/patchers/border.a b/src/patchers/border.a index eb284a9..d44645b 100644 --- a/src/patchers/border.a +++ b/src/patchers/border.a @@ -7,6 +7,8 @@ ; Border Software ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .exit lda gIsBoot1 ; and DOS 3.3 boot1 loader diff --git a/src/patchers/c9ff.a b/src/patchers/c9ff.a index 8151a71..1c8f2d8 100644 --- a/src/patchers/c9ff.a +++ b/src/patchers/c9ff.a @@ -13,6 +13,8 @@ ; position for it to start. ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit ldy #$1A jsr SearchTrack !byte $A8 ; TAY diff --git a/src/patchers/corrupter.a b/src/patchers/corrupter.a index 2a36769..16869ff 100644 --- a/src/patchers/corrupter.a +++ b/src/patchers/corrupter.a @@ -10,6 +10,8 @@ ; Super Huey ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gTrack cmp #$13 bne .exit diff --git a/src/patchers/d5d5f7.a b/src/patchers/d5d5f7.a index d92d373..e937ab3 100755 --- a/src/patchers/d5d5f7.a +++ b/src/patchers/d5d5f7.a @@ -15,6 +15,8 @@ ; NoteCard Maker ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit ; ; always run on Pascal disks ; diff --git a/src/patchers/datasoft.a b/src/patchers/datasoft.a index ae78965..4e70721 100755 --- a/src/patchers/datasoft.a +++ b/src/patchers/datasoft.a @@ -4,6 +4,8 @@ ; e.g. Video Title Shop, Tomahawk //e ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsDatasoft bne .exit diff --git a/src/patchers/davidbb03.a b/src/patchers/davidbb03.a index fbbcbd9..45b374f 100755 --- a/src/patchers/davidbb03.a +++ b/src/patchers/davidbb03.a @@ -10,6 +10,9 @@ ; Mystery of the Witch's Shoes ;------------------------------- !zone { + sec + bit gMode ; nothing to do here in verify-only mode + bpl .branchexit lda #$00 ldx #$00 ldy #$38 @@ -21,6 +24,7 @@ !byte $08,$30,$15,$BD,$ED,$08,$85,$3D !byte $CE,$FF,$08,$AD,$FE,$08,$85,$27 !byte $CE,$FE,$08,$A6,$2B,$6C,$3E,$00 +.branchexit bcs .exit lda #$00 ldx #$8B diff --git a/src/patchers/davidsonasm.a b/src/patchers/davidsonasm.a index 34dad8e..1610212 100644 --- a/src/patchers/davidsonasm.a +++ b/src/patchers/davidsonasm.a @@ -14,6 +14,8 @@ ; - Word Attack Plus Spanish 1.2 ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsDavidson bne .exit diff --git a/src/patchers/davidsonforth.a b/src/patchers/davidsonforth.a index 247e9a9..9e31b34 100644 --- a/src/patchers/davidsonforth.a +++ b/src/patchers/davidsonforth.a @@ -10,6 +10,8 @@ ; - Math and Me 1.0 ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsDavidson bne .exit diff --git a/src/patchers/diskvol.a b/src/patchers/diskvol.a index 7820f1f..cbeda17 100755 --- a/src/patchers/diskvol.a +++ b/src/patchers/diskvol.a @@ -4,6 +4,8 @@ ; DOS from loading ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3 RWTS bne .exit diff --git a/src/patchers/dos32.a b/src/patchers/dos32.a index a458217..26fdc65 100644 --- a/src/patchers/dos32.a +++ b/src/patchers/dos32.a @@ -3,6 +3,8 @@ ; construct new bootloader and RWTS for converted DOS 3.2 disks ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsDOS32 bne .exit bit gMode ; nothing to do here in verify-only mode diff --git a/src/patchers/dos32dlm.a b/src/patchers/dos32dlm.a index 4303a4d..c809104 100644 --- a/src/patchers/dos32dlm.a +++ b/src/patchers/dos32dlm.a @@ -10,6 +10,8 @@ ; Dragon Mix (1982, DLM) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsDOS32 bne .exit lda #$0b diff --git a/src/patchers/dos32muse.a b/src/patchers/dos32muse.a index c66a32e..c63051c 100644 --- a/src/patchers/dos32muse.a +++ b/src/patchers/dos32muse.a @@ -6,6 +6,8 @@ ; Castle Wolfenstein (1981, MUSE) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsDOS32 bne .exit lda gTrack diff --git a/src/patchers/ea.a b/src/patchers/ea.a index d9e2b83..60e675a 100644 --- a/src/patchers/ea.a +++ b/src/patchers/ea.a @@ -5,9 +5,13 @@ ; module by qkumba ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda gIsEA ; only ever seen this protection beq + ; on Electronic Arts titles jmp .dostitles +.jmpexit + jmp .exit + ldy #40 jsr SearchTrack diff --git a/src/patchers/f7f6.a b/src/patchers/f7f6.a index 4d87025..c7c8684 100644 --- a/src/patchers/f7f6.a +++ b/src/patchers/f7f6.a @@ -15,6 +15,8 @@ ; Teddy Bearrels of Fun (1987, DLM) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsF7F6 bne .exit diff --git a/src/patchers/fbffencrypted.a b/src/patchers/fbffencrypted.a index b420567..3f4fe5a 100644 --- a/src/patchers/fbffencrypted.a +++ b/src/patchers/fbffencrypted.a @@ -22,6 +22,8 @@ ; ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsProDOS ; only seen this protection on ProDOS disks bne .exit ldy #$06 diff --git a/src/patchers/fbffpascal.a b/src/patchers/fbffpascal.a index 9b45d8a..58ea841 100644 --- a/src/patchers/fbffpascal.a +++ b/src/patchers/fbffpascal.a @@ -10,6 +10,8 @@ ; Basic Fraction Concepts (1985) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsPascal ; only seen this protection on Pascal disks bne .exit ldy #$26 diff --git a/src/patchers/gamco.a b/src/patchers/gamco.a index 9cb8ddd..22f818f 100644 --- a/src/patchers/gamco.a +++ b/src/patchers/gamco.a @@ -5,6 +5,8 @@ ; e.g. Essential Grammar, Math Football ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit ; [speed optimization: only ever seen this protection on disks with ; a specific nibble sequence on track $22, or an unformatted T22 -- ; if this global variable is set in SkipTrack() after failing to read T22S0F, diff --git a/src/patchers/jmpae8e.a b/src/patchers/jmpae8e.a index f03a124..d480af4 100755 --- a/src/patchers/jmpae8e.a +++ b/src/patchers/jmpae8e.a @@ -5,6 +5,8 @@ ; e.g. Alien Addition ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .exit lda gIsBoot1 ; and DOS 3.3 boot1 loader diff --git a/src/patchers/jmpb400.a b/src/patchers/jmpb400.a index b93d14b..e84f6b2 100644 --- a/src/patchers/jmpb400.a +++ b/src/patchers/jmpb400.a @@ -14,6 +14,8 @@ ; Success With Math - Multiplying and Dividing Fractions (1984, Mindscape) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 bne .exit lda gTrack diff --git a/src/patchers/jmpb412.a b/src/patchers/jmpb412.a index 00f6d12..84a8b11 100644 --- a/src/patchers/jmpb412.a +++ b/src/patchers/jmpb412.a @@ -11,6 +11,8 @@ ; America Coast to Coast (Mindscape release) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gTrack cmp #$02 bne .exit diff --git a/src/patchers/jmpb4bb.a b/src/patchers/jmpb4bb.a index 74931be..fc6818e 100755 --- a/src/patchers/jmpb4bb.a +++ b/src/patchers/jmpb4bb.a @@ -5,6 +5,8 @@ ; e.g. Troll's Tale ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gTrack cmp #$02 bne .exit diff --git a/src/patchers/jmpb660.a b/src/patchers/jmpb660.a index 7b1ce49..8587d0c 100755 --- a/src/patchers/jmpb660.a +++ b/src/patchers/jmpb660.a @@ -6,6 +6,8 @@ ;------------------------------- !zone { _jmpb660 + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3-shaped RWTS bne .exit lda #$02 diff --git a/src/patchers/jmpb720.a b/src/patchers/jmpb720.a index e744cab..615ddd8 100755 --- a/src/patchers/jmpb720.a +++ b/src/patchers/jmpb720.a @@ -7,6 +7,8 @@ ;------------------------------- !zone { _jmpb720 + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3-shaped RWTS bne .exit lda #$0B diff --git a/src/patchers/jmpbbfe.a b/src/patchers/jmpbbfe.a index ba033ed..28e9d13 100755 --- a/src/patchers/jmpbbfe.a +++ b/src/patchers/jmpbbfe.a @@ -6,6 +6,8 @@ ;------------------------------- !zone { _jmpbbfe + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .exit lda #$00 diff --git a/src/patchers/jmpbcf0.a b/src/patchers/jmpbcf0.a index 4caa8f3..af94b5d 100755 --- a/src/patchers/jmpbcf0.a +++ b/src/patchers/jmpbcf0.a @@ -8,6 +8,8 @@ ;------------------------------- !zone { _jmpbcf0 + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3 RWTS bne .exit lda #$03 diff --git a/src/patchers/jmpbeb1.a b/src/patchers/jmpbeb1.a index e38ba98..bc2abf1 100755 --- a/src/patchers/jmpbeb1.a +++ b/src/patchers/jmpbeb1.a @@ -8,6 +8,8 @@ ;------------------------------- !zone { _jmpbeb1 + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3 RWTS bne .exit lda #$02 diff --git a/src/patchers/jmpbeca.a b/src/patchers/jmpbeca.a index dfe5c63..f2c817d 100755 --- a/src/patchers/jmpbeca.a +++ b/src/patchers/jmpbeca.a @@ -7,6 +7,8 @@ ; patchers due to overlapping bytes ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3 RWTS bne .exit lda #$02 diff --git a/src/patchers/jsr8635.a b/src/patchers/jsr8635.a index 05c31fe..9a9a60b 100644 --- a/src/patchers/jsr8635.a +++ b/src/patchers/jsr8635.a @@ -12,6 +12,8 @@ ; First Steps to Reading: Phonics II (1985, Grolier) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 bne .exit lda #$0F diff --git a/src/patchers/jsr8b3.a b/src/patchers/jsr8b3.a index 22f7e48..54aff1d 100644 --- a/src/patchers/jsr8b3.a +++ b/src/patchers/jsr8b3.a @@ -9,6 +9,8 @@ ; e.g. English Achievement I ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIs8b3 bne .exit beq + diff --git a/src/patchers/jsrbb03.a b/src/patchers/jsrbb03.a index f8fef63..aec642d 100755 --- a/src/patchers/jsrbb03.a +++ b/src/patchers/jsrbb03.a @@ -7,6 +7,8 @@ ; Backbones, EduCalc ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .exit lda gIsBoot1 ; and DOS 3.3 boot1 loader diff --git a/src/patchers/laureate.a b/src/patchers/laureate.a index 070f25d..380dce7 100644 --- a/src/patchers/laureate.a +++ b/src/patchers/laureate.a @@ -4,6 +4,8 @@ ; but generally DOS-shaped ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsLaureate bne .exit beq + diff --git a/src/patchers/mecc1.a b/src/patchers/mecc1.a index 2ae2148..83f2c25 100755 --- a/src/patchers/mecc1.a +++ b/src/patchers/mecc1.a @@ -5,6 +5,8 @@ ; e.g. Word Munchers ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gMECCFastloadType cmp #ID_MECC1 bne .exit diff --git a/src/patchers/mecc2.a b/src/patchers/mecc2.a index fcdd527..bbe1136 100755 --- a/src/patchers/mecc2.a +++ b/src/patchers/mecc2.a @@ -5,6 +5,8 @@ ; e.g. Phonics Prime Time series ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gMECCFastloadType cmp #ID_MECC2 bne .exit diff --git a/src/patchers/mecc3.a b/src/patchers/mecc3.a index f995990..e9640dd 100644 --- a/src/patchers/mecc3.a +++ b/src/patchers/mecc3.a @@ -5,6 +5,8 @@ ; e.g. Word Munchers v1.1 ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gMECCFastloadType cmp #ID_MECC3 bne .exit diff --git a/src/patchers/mecc4.a b/src/patchers/mecc4.a index d95ee0d..6f081a9 100644 --- a/src/patchers/mecc4.a +++ b/src/patchers/mecc4.a @@ -5,6 +5,8 @@ ; e.g. A-201 Conquering Whole Numbers ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gMECCFastloadType cmp #ID_MECC4 bne .exit diff --git a/src/patchers/memory.config.a b/src/patchers/memory.config.a index 4d14035..699bf73 100644 --- a/src/patchers/memory.config.a +++ b/src/patchers/memory.config.a @@ -18,6 +18,8 @@ ; GeoWhiz (1990, Silver Burdett and Ginn) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsProDOS ; only if ProDOS bne .exit ldy #$0C diff --git a/src/patchers/methods.a b/src/patchers/methods.a index 229f892..74169f1 100644 --- a/src/patchers/methods.a +++ b/src/patchers/methods.a @@ -6,6 +6,8 @@ ; and others by Methods & Solutions ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .exit lda #$08 diff --git a/src/patchers/microfun.a b/src/patchers/microfun.a index 28fb1be..4198c3d 100644 --- a/src/patchers/microfun.a +++ b/src/patchers/microfun.a @@ -11,6 +11,8 @@ ; - Short Circuit ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3-shaped RWTS bne .exit ldy #$09 diff --git a/src/patchers/micrograms.a b/src/patchers/micrograms.a index 9b7b275..e0bdf35 100644 --- a/src/patchers/micrograms.a +++ b/src/patchers/micrograms.a @@ -10,6 +10,8 @@ ; Shapes and Patterns ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit ldy #$09 jsr SearchTrack !byte $AD,$EC,$C0 diff --git a/src/patchers/milliken.a b/src/patchers/milliken.a index d5ed765..9f5c5c0 100644 --- a/src/patchers/milliken.a +++ b/src/patchers/milliken.a @@ -7,6 +7,8 @@ ; The Writing Workshop, Math Sequences ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsMilliken1 bne .exit lda #$01 diff --git a/src/patchers/nibtable.a b/src/patchers/nibtable.a index 9958cc8..606c996 100755 --- a/src/patchers/nibtable.a +++ b/src/patchers/nibtable.a @@ -19,6 +19,8 @@ _nibtable !byte $F7,$F9,$FA,$FB,$FC,$FD,$FE,$FF .checkread + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsRWTS ; if DOS 3.3 RWTS bne .exit lda #$02 diff --git a/src/patchers/optimum.a b/src/patchers/optimum.a index 74d8d93..3876216 100644 --- a/src/patchers/optimum.a +++ b/src/patchers/optimum.a @@ -7,6 +7,8 @@ ; module by qkumba ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit1 lda gIsOptimum bne .jmpexit1 ldx gTrack diff --git a/src/patchers/panglosdos.a b/src/patchers/panglosdos.a index 274aeb3..81b747a 100644 --- a/src/patchers/panglosdos.a +++ b/src/patchers/panglosdos.a @@ -5,6 +5,8 @@ ; module by qkumba ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsPanglosDOS ; only if PanglossianDOS bne .exit ldy #6 diff --git a/src/patchers/pascalrwts.a b/src/patchers/pascalrwts.a index 2f05ee5..5ffadd4 100644 --- a/src/patchers/pascalrwts.a +++ b/src/patchers/pascalrwts.a @@ -10,6 +10,8 @@ ; (Jupiter, Saturn, Uranus, Nepture) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsPascal bne .exit lda #$0D diff --git a/src/patchers/polarware.a b/src/patchers/polarware.a index 45c8bac..eb092cd 100644 --- a/src/patchers/polarware.a +++ b/src/patchers/polarware.a @@ -15,6 +15,8 @@ ; ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsProDOS ; only seen this protection on ProDOS disks bne .exit ldy #$06 diff --git a/src/patchers/prodosmecc.a b/src/patchers/prodosmecc.a index 79fc207..f6d24b3 100755 --- a/src/patchers/prodosmecc.a +++ b/src/patchers/prodosmecc.a @@ -5,8 +5,11 @@ ; [thanks LoGo] ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda gIsProDOS beq + +.jmpexit jmp .exit + ldy #$0E diff --git a/src/patchers/prodosrwts.a b/src/patchers/prodosrwts.a index d42345e..5447efd 100755 --- a/src/patchers/prodosrwts.a +++ b/src/patchers/prodosrwts.a @@ -5,6 +5,8 @@ ;------------------------------- !zone { _prodosrwts + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsProDOS bne .exit ldy #$14 diff --git a/src/patchers/protecteddos.a b/src/patchers/protecteddos.a index db42978..813ea76 100755 --- a/src/patchers/protecteddos.a +++ b/src/patchers/protecteddos.a @@ -9,8 +9,11 @@ ; Math Blaster, Moebius ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda gIsProtDOS beq + +.jmpexit jmp .exit + ; diff --git a/src/patchers/rol1e.a b/src/patchers/rol1e.a index 9e5b422..802cf72 100755 --- a/src/patchers/rol1e.a +++ b/src/patchers/rol1e.a @@ -5,6 +5,8 @@ ;------------------------------- !zone { _rol1e + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda #$03 ldx #$00 ldy #$2F diff --git a/src/patchers/rwts.a b/src/patchers/rwts.a index c5d3d4a..96d2e6b 100755 --- a/src/patchers/rwts.a +++ b/src/patchers/rwts.a @@ -3,8 +3,11 @@ ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda gIsRWTS ; DOS 3.3-shaped RWTSen only beq + +.jmpexit jmp .exit ; ; address prologue byte 1 (read) diff --git a/src/patchers/rwtsswap.a b/src/patchers/rwtsswap.a index fc4bba1..61dbea4 100755 --- a/src/patchers/rwtsswap.a +++ b/src/patchers/rwtsswap.a @@ -7,6 +7,8 @@ ; e.g. Puzzle Master ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .exit lda gIsBoot1 ; and DOS 3.3 boot1 loader diff --git a/src/patchers/rwtsswap2.a b/src/patchers/rwtsswap2.a index 24c7d64..6c57123 100755 --- a/src/patchers/rwtsswap2.a +++ b/src/patchers/rwtsswap2.a @@ -8,6 +8,8 @@ ;------------------------------- !zone { _rwtsswap2 + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .exit lda #$04 diff --git a/src/patchers/rwtsswapmecc.a b/src/patchers/rwtsswapmecc.a index 22a0669..dc18833 100755 --- a/src/patchers/rwtsswapmecc.a +++ b/src/patchers/rwtsswapmecc.a @@ -4,6 +4,8 @@ ; fastloader disks ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gMECCFastloadType beq .exit diff --git a/src/patchers/sierra.a b/src/patchers/sierra.a index 137243f..f0b5bdd 100755 --- a/src/patchers/sierra.a +++ b/src/patchers/sierra.a @@ -31,9 +31,14 @@ ; module by qkumba ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda gIsSierra beq + jmp .dosearch +.jmpexit + jmp .exit + + ldy #3 jsr SearchTrack .call diff --git a/src/patchers/sierra13.a b/src/patchers/sierra13.a index 2465562..77c4c46 100644 --- a/src/patchers/sierra13.a +++ b/src/patchers/sierra13.a @@ -13,6 +13,8 @@ ; module by qkumba ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda gIsDOS32 bne .jmpexit diff --git a/src/patchers/sra.a b/src/patchers/sra.a index dd2a538..32c0878 100644 --- a/src/patchers/sra.a +++ b/src/patchers/sra.a @@ -12,6 +12,8 @@ ; Measurement D-1 (1983, SRA) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsDOS32 bne + lda #$0C diff --git a/src/patchers/ssprot.a b/src/patchers/ssprot.a index 4070d10..360ce83 100644 --- a/src/patchers/ssprot.a +++ b/src/patchers/ssprot.a @@ -16,6 +16,8 @@ ; Wortgefecht (Word Attack German) (1984, Gessler) ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsF7F6 bne .exit lda #$0F diff --git a/src/patchers/sunburst.a b/src/patchers/sunburst.a index 78cc39e..2960b02 100755 --- a/src/patchers/sunburst.a +++ b/src/patchers/sunburst.a @@ -7,6 +7,8 @@ ; patchers due to overlapping bytes ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit sec lda gIsRWTS ; if DOS 3.3 RWTS bne .exit diff --git a/src/patchers/thunder.a b/src/patchers/thunder.a index 2df614f..dfa8ca2 100755 --- a/src/patchers/thunder.a +++ b/src/patchers/thunder.a @@ -10,6 +10,8 @@ ; Dig Dug, Pac-Man, Galaxian ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .no lda gIsBoot0 ; if DOS 3.3 boot0 loader bne .no lda gIsBoot1 ; and DOS 3.3 boot1 loader diff --git a/src/patchers/trillium.a b/src/patchers/trillium.a index 6babbef..df926a7 100644 --- a/src/patchers/trillium.a +++ b/src/patchers/trillium.a @@ -6,6 +6,8 @@ ; Fahrenheit 451 rev. 2 ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit lda gIsTrillium beq .search lda gTrack diff --git a/src/patchers/universale7.a b/src/patchers/universale7.a index cbd7b70..bb5e6d0 100755 --- a/src/patchers/universale7.a +++ b/src/patchers/universale7.a @@ -8,6 +8,8 @@ ;------------------------------- !zone { universale7 + bit gMode ; nothing to do here in verify-only mode + bpl .jmpexit lda #$0F sta .sector+1 .sector lda #$FF ; modified at runtime @@ -28,6 +30,9 @@ universale7 !byte $AC,$00,$AC,$00,$AC,$00,$AC,$00 bcc + jmp .nextsector +.jmpexit + jmp .exit + + lda .sector+1 ldx #$00 From 202ee089caa72d52cd38430c084174e22e0bb3a0 Mon Sep 17 00:00:00 2001 From: Peter Ferrie Date: Fri, 3 Aug 2018 14:13:06 -0700 Subject: [PATCH 2/2] honour verify mode --- src/patchers/fbff.a | 2 ++ src/patchers/protecteddos.a | 3 --- src/patchers/sierra.a | 12 ++++-------- src/strings/en.a | 2 +- 4 files changed, 7 insertions(+), 12 deletions(-) diff --git a/src/patchers/fbff.a b/src/patchers/fbff.a index c09e18e..39ac4b4 100755 --- a/src/patchers/fbff.a +++ b/src/patchers/fbff.a @@ -9,6 +9,8 @@ ; Module by Brian Troha ;------------------------------- !zone { + bit gMode ; nothing to do here in verify-only mode + bpl .exit ldy #$45 jsr SearchTrack !byte $BD,$89,$C0 diff --git a/src/patchers/protecteddos.a b/src/patchers/protecteddos.a index 813ea76..740c425 100755 --- a/src/patchers/protecteddos.a +++ b/src/patchers/protecteddos.a @@ -86,11 +86,8 @@ iny cpy #$03 bne .serialloop - bit gMode - bpl + lda #s_protserial jsr PrintByID -+ lda gTrack beq .track0 diff --git a/src/patchers/sierra.a b/src/patchers/sierra.a index f0b5bdd..edb3aec 100755 --- a/src/patchers/sierra.a +++ b/src/patchers/sierra.a @@ -31,13 +31,9 @@ ; module by qkumba ;------------------------------- !zone { - bit gMode ; nothing to do here in verify-only mode - bpl .jmpexit lda gIsSierra beq + jmp .dosearch -.jmpexit - jmp .exit + ldy #3 jsr SearchTrack @@ -237,7 +233,7 @@ .trybox lda #$2C ;BIT $xxxx - sta patchstyle + sta .patchstyle ldy #17 jsr SearchTrack !byte $20,$00,$1D ;JSR $1D00 @@ -277,7 +273,7 @@ ;"BLOAD WALT..." + bcc + lda #$60 ;RTS - sta patchstyle + sta .patchstyle ldy #14 jsr SearchTrack !byte $A9,$00 ;LDA #$00 @@ -299,7 +295,7 @@ pla ldy #$01 jsr modify -patchstyle +.patchstyle !byte $2C ;BIT $xxxx jmp .exit @@ -327,7 +323,7 @@ patchstyle ldy #$01 jsr modify !byte $DD ;checksum - sta patchstyle + sta .patchstyle ldy #11 jsr SearchTrack !byte $A5,$12 ;LDA $12 diff --git a/src/strings/en.a b/src/strings/en.a index 3a33481..44336b0 100755 --- a/src/strings/en.a +++ b/src/strings/en.a @@ -144,7 +144,7 @@ StringTable ; can be set directly before calling PrintByID. ; .header - !text "Passport by 4am 2018-07-19",$00 + !text "Passport by 4am 2018-08-03",$00 .mainmenu !text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D !text " "