Merge pull request #57 from peterferrie/master

honour verify mode
This commit is contained in:
4am 2018-08-03 17:46:46 -05:00 committed by GitHub
commit fd62b7fbaf
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
71 changed files with 158 additions and 9 deletions

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -15,6 +15,8 @@
; NoteCard Maker
;-------------------------------
!zone {
bit gMode ; nothing to do here in verify-only mode
bpl .exit
;
; always run on Pascal disks
;

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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,

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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 +

View File

@ -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

View File

@ -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 +

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -5,6 +5,8 @@
;-------------------------------
!zone {
_prodosrwts
bit gMode ; nothing to do here in verify-only mode
bpl .exit
lda gIsProDOS
bne .exit
ldy #$14

View File

@ -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
+
;
@ -83,11 +86,8 @@
iny
cpy #$03
bne .serialloop
bit gMode
bpl +
lda #s_protserial
jsr PrintByID
+
lda gTrack
beq .track0

View File

@ -5,6 +5,8 @@
;-------------------------------
!zone {
_rol1e
bit gMode ; nothing to do here in verify-only mode
bpl .exit
lda #$03
ldx #$00
ldy #$2F

View File

@ -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)

View File

@ -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

View File

@ -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

View File

@ -4,6 +4,8 @@
; fastloader disks
;-------------------------------
!zone {
bit gMode ; nothing to do here in verify-only mode
bpl .exit
lda gMECCFastloadType
beq .exit

View File

@ -34,6 +34,7 @@
lda gIsSierra
beq +
jmp .dosearch
+ ldy #3
jsr SearchTrack
.call
@ -232,7 +233,7 @@
.trybox
lda #$2C ;BIT $xxxx
sta patchstyle
sta .patchstyle
ldy #17
jsr SearchTrack
!byte $20,$00,$1D ;JSR $1D00
@ -272,7 +273,7 @@
;"BLOAD WALT..."
+ bcc +
lda #$60 ;RTS
sta patchstyle
sta .patchstyle
ldy #14
jsr SearchTrack
!byte $A9,$00 ;LDA #$00
@ -294,7 +295,7 @@
pla
ldy #$01
jsr modify
patchstyle
.patchstyle
!byte $2C ;BIT $xxxx
jmp .exit
@ -322,7 +323,7 @@ patchstyle
ldy #$01
jsr modify
!byte $DD ;checksum
sta patchstyle
sta .patchstyle
ldy #11
jsr SearchTrack
!byte $A5,$12 ;LDA $12

View File

@ -13,6 +13,8 @@
; module by qkumba
;-------------------------------
!zone {
bit gMode ; nothing to do here in verify-only mode
bpl .jmpexit
lda gIsDOS32
bne .jmpexit

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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

View File

@ -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 " "