mirror of
https://github.com/a2-4am/passport.git
synced 2025-01-19 23:31:11 +00:00
remove gPossibleD5D5F7 flag as it's causing false negatives [fixes Picture Perfect 1987]
This commit is contained in:
parent
11f2ef57d6
commit
6bf634274f
@ -192,10 +192,6 @@ FIRSTFILTER
|
|||||||
!byte FALSE ; 0=true, 1=false
|
!byte FALSE ; 0=true, 1=false
|
||||||
; reset before each operation
|
; reset before each operation
|
||||||
; set in IDBootloader() after reading T00,S00
|
; set in IDBootloader() after reading T00,S00
|
||||||
;gPossibleD5D5F7
|
|
||||||
!byte FALSE ; 0=true, 1=false
|
|
||||||
; reset before each operation
|
|
||||||
; set in IDBootloader() after reading T00,S00
|
|
||||||
;gIsOptimum
|
;gIsOptimum
|
||||||
!byte FALSE ; 0=true, 1=false
|
!byte FALSE ; 0=true, 1=false
|
||||||
; reset before each operation
|
; reset before each operation
|
||||||
|
@ -158,8 +158,7 @@ gIsDavidDOS = gIsProtDOS-$01 ; byte
|
|||||||
gIsEA = gIsDavidDOS-$01 ; byte
|
gIsEA = gIsDavidDOS-$01 ; byte
|
||||||
gPossibleGamco = gIsEA-$01 ; byte
|
gPossibleGamco = gIsEA-$01 ; byte
|
||||||
gIsOptimum = gPossibleGamco-$01 ; byte
|
gIsOptimum = gPossibleGamco-$01 ; byte
|
||||||
gPossibleD5D5F7 = gIsOptimum-$01 ; byte
|
gIs8b3 = gIsOptimum-$01 ; byte
|
||||||
gIs8b3 = gPossibleD5D5F7-$01 ; byte
|
|
||||||
gIsMilliken1 = gIs8b3-$01 ; byte
|
gIsMilliken1 = gIs8b3-$01 ; byte
|
||||||
gAdventureInternational = gIsMilliken1-$01 ; byte
|
gAdventureInternational = gIsMilliken1-$01 ; byte
|
||||||
gIsLaureate = gAdventureInternational-$01 ; byte
|
gIsLaureate = gAdventureInternational-$01 ; byte
|
||||||
@ -272,7 +271,6 @@ ConstructStandardDelivery = jConstructStandardDelivery
|
|||||||
!warn "gPossibleGamco=",gPossibleGamco
|
!warn "gPossibleGamco=",gPossibleGamco
|
||||||
!warn "gIsOptimum=",gIsOptimum
|
!warn "gIsOptimum=",gIsOptimum
|
||||||
!warn "gMECCFastloadType=",gMECCFastloadType
|
!warn "gMECCFastloadType=",gMECCFastloadType
|
||||||
!warn "gPossibleD5D5F7=",gPossibleD5D5F7
|
|
||||||
!warn "gIs8b3=",gIs8b3
|
!warn "gIs8b3=",gIs8b3
|
||||||
!warn "gIsMilliken1=",gIsMilliken1
|
!warn "gIsMilliken1=",gIsMilliken1
|
||||||
!warn "gAdventureInternational=",gAdventureInternational
|
!warn "gAdventureInternational=",gAdventureInternational
|
||||||
|
@ -1,33 +0,0 @@
|
|||||||
;-------------------------------
|
|
||||||
; IDD5D5F7
|
|
||||||
; Identify specific version of DOS 3.3 bootloader
|
|
||||||
; shared by all disks that use the D5D5F7 check.
|
|
||||||
; Note: this detection pattern makes no logical
|
|
||||||
; sense; it just happens to be a useful filter for
|
|
||||||
; the D5D5F7 patcher to use later. It filters out
|
|
||||||
; about 2/3 of disks on which I've never seen a
|
|
||||||
; D5D5F7 protection check, so we can save time by
|
|
||||||
; not doing full-track searches on those disks.
|
|
||||||
;
|
|
||||||
; in: $0800..$08FF contains T00,S00
|
|
||||||
; IDDOS33 returned success
|
|
||||||
; A = 0
|
|
||||||
; out: A = 0
|
|
||||||
; Y preserved
|
|
||||||
; all other flags and registers clobbered
|
|
||||||
;-------------------------------
|
|
||||||
!macro IDD5D5F7 {
|
|
||||||
ldx #$08
|
|
||||||
cpx $08F2
|
|
||||||
beq @d5yes ; passport-test-suite/Trivia Fever (BB03 variant 3).woz [Z=1] matches
|
|
||||||
cpx $084C
|
|
||||||
bne @d5no
|
|
||||||
ldx $08B0
|
|
||||||
cpx #$B6
|
|
||||||
bne @d5no
|
|
||||||
ldx $08D0
|
|
||||||
cpx #$20
|
|
||||||
bne @d5no
|
|
||||||
@d5yes sta gPossibleD5D5F7 ; passport-test-suite/RoboMath.woz [Z=1] matches
|
|
||||||
@d5no
|
|
||||||
}
|
|
@ -99,12 +99,6 @@ IDBootloader
|
|||||||
bcs .notdos33
|
bcs .notdos33
|
||||||
sta gIsBoot0 ; A = 0 (TRUE)
|
sta gIsBoot0 ; A = 0 (TRUE)
|
||||||
;
|
;
|
||||||
; Try to identify specific DOS 3.3-shaped bootloader
|
|
||||||
; that may imply a D5D5F7 whole-track protection.
|
|
||||||
; (in A=0; out A=0)
|
|
||||||
;
|
|
||||||
+IDD5D5F7
|
|
||||||
;
|
|
||||||
; Try to identify Diversi-DOS
|
; Try to identify Diversi-DOS
|
||||||
; (in A=0; out A=0)
|
; (in A=0; out A=0)
|
||||||
;
|
;
|
||||||
|
@ -65,7 +65,6 @@ NonRelocatable
|
|||||||
!source "id/quickdos.a"
|
!source "id/quickdos.a"
|
||||||
!source "id/diversidos.a"
|
!source "id/diversidos.a"
|
||||||
!source "id/prontodos.a"
|
!source "id/prontodos.a"
|
||||||
!source "id/d5d5f7.a"
|
|
||||||
!source "id/laureate.a"
|
!source "id/laureate.a"
|
||||||
!source "id/micrograms.a"
|
!source "id/micrograms.a"
|
||||||
!source "id/volumename.a"
|
!source "id/volumename.a"
|
||||||
@ -334,7 +333,7 @@ AnalyzeTrack
|
|||||||
; only run these modules in crack mode
|
; only run these modules in crack mode
|
||||||
!source "patchers/universale7.a"
|
!source "patchers/universale7.a"
|
||||||
!source "patchers/c9ff.a"
|
!source "patchers/c9ff.a"
|
||||||
!source "patchers/d5d5f7.a" ; gIsPascal || (gIsBoot0 && gPossibleD5D5F7) only
|
!source "patchers/d5d5f7.a" ; gIsPascal || gIsBoot0 only
|
||||||
!source "patchers/rwtsswapmecc.a" ; gMECCFastloadType || gPossibleMECCSwapper only
|
!source "patchers/rwtsswapmecc.a" ; gMECCFastloadType || gPossibleMECCSwapper only
|
||||||
!source "patchers/meccdqc.a" ; gMECCFastloadType==1 && gT07 only
|
!source "patchers/meccdqc.a" ; gMECCFastloadType==1 && gT07 only
|
||||||
!source "patchers/rwtsswappenguin.a" ; T01 only
|
!source "patchers/rwtsswappenguin.a" ; T01 only
|
||||||
|
@ -13,20 +13,14 @@
|
|||||||
; RoboMath (Mindplay)
|
; RoboMath (Mindplay)
|
||||||
; NoteCard Maker (Pascal variant)
|
; NoteCard Maker (Pascal variant)
|
||||||
; Les Sports (DC Heath) - variant wrapped by PHA/PLAs
|
; Les Sports (DC Heath) - variant wrapped by PHA/PLAs
|
||||||
|
; Picture Perfect (1987) (Mindplay)
|
||||||
;-------------------------------
|
;-------------------------------
|
||||||
!zone {
|
!zone {
|
||||||
;
|
;
|
||||||
; always run on Pascal disks
|
; only run on Pascal disks and DOS 3.3 disks
|
||||||
;
|
;
|
||||||
lda gIsPascal
|
lda gIsPascal
|
||||||
;
|
and gIsBoot0
|
||||||
; if DOS 3.3-shaped bootloader, only run if we found
|
|
||||||
; specific markers on T00,S00 earlier that are shared
|
|
||||||
; by all the samples I have that use this protection.
|
|
||||||
; (This filter is subject to revision if we find
|
|
||||||
; additional samples.)
|
|
||||||
;
|
|
||||||
and gPossibleD5D5F7
|
|
||||||
bne .exit
|
bne .exit
|
||||||
ldy #$20
|
ldy #$20
|
||||||
jsr SearchTrack
|
jsr SearchTrack
|
||||||
|
@ -385,7 +385,7 @@ StringTableHigh ; must be kept in sync with constants in enid.a
|
|||||||
.passport
|
.passport
|
||||||
!text "Passport ",$00
|
!text "Passport ",$00
|
||||||
.header
|
.header
|
||||||
!text "@",s_passport,"by 4am@",s_space7,"@",s_space7," 2023-09-03",$00
|
!text "@",s_passport,"by 4am@",s_space7,"@",s_space7," 2023-09-04",$00
|
||||||
.bar9
|
.bar9
|
||||||
!text "_________",$00
|
!text "_________",$00
|
||||||
.bar18
|
.bar18
|
||||||
|
Loading…
x
Reference in New Issue
Block a user