mirror of
https://github.com/a2-4am/passport.git
synced 2024-08-31 08:29:14 +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
|
||||
; reset before each operation
|
||||
; 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
|
||||
!byte FALSE ; 0=true, 1=false
|
||||
; reset before each operation
|
||||
|
@ -158,8 +158,7 @@ gIsDavidDOS = gIsProtDOS-$01 ; byte
|
||||
gIsEA = gIsDavidDOS-$01 ; byte
|
||||
gPossibleGamco = gIsEA-$01 ; byte
|
||||
gIsOptimum = gPossibleGamco-$01 ; byte
|
||||
gPossibleD5D5F7 = gIsOptimum-$01 ; byte
|
||||
gIs8b3 = gPossibleD5D5F7-$01 ; byte
|
||||
gIs8b3 = gIsOptimum-$01 ; byte
|
||||
gIsMilliken1 = gIs8b3-$01 ; byte
|
||||
gAdventureInternational = gIsMilliken1-$01 ; byte
|
||||
gIsLaureate = gAdventureInternational-$01 ; byte
|
||||
@ -272,7 +271,6 @@ ConstructStandardDelivery = jConstructStandardDelivery
|
||||
!warn "gPossibleGamco=",gPossibleGamco
|
||||
!warn "gIsOptimum=",gIsOptimum
|
||||
!warn "gMECCFastloadType=",gMECCFastloadType
|
||||
!warn "gPossibleD5D5F7=",gPossibleD5D5F7
|
||||
!warn "gIs8b3=",gIs8b3
|
||||
!warn "gIsMilliken1=",gIsMilliken1
|
||||
!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
|
||||
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
|
||||
; (in A=0; out A=0)
|
||||
;
|
||||
|
@ -65,7 +65,6 @@ NonRelocatable
|
||||
!source "id/quickdos.a"
|
||||
!source "id/diversidos.a"
|
||||
!source "id/prontodos.a"
|
||||
!source "id/d5d5f7.a"
|
||||
!source "id/laureate.a"
|
||||
!source "id/micrograms.a"
|
||||
!source "id/volumename.a"
|
||||
@ -334,7 +333,7 @@ AnalyzeTrack
|
||||
; only run these modules in crack mode
|
||||
!source "patchers/universale7.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/meccdqc.a" ; gMECCFastloadType==1 && gT07 only
|
||||
!source "patchers/rwtsswappenguin.a" ; T01 only
|
||||
|
@ -13,20 +13,14 @@
|
||||
; RoboMath (Mindplay)
|
||||
; NoteCard Maker (Pascal variant)
|
||||
; Les Sports (DC Heath) - variant wrapped by PHA/PLAs
|
||||
; Picture Perfect (1987) (Mindplay)
|
||||
;-------------------------------
|
||||
!zone {
|
||||
;
|
||||
; always run on Pascal disks
|
||||
; only run on Pascal disks and DOS 3.3 disks
|
||||
;
|
||||
lda gIsPascal
|
||||
;
|
||||
; 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
|
||||
and gIsBoot0
|
||||
bne .exit
|
||||
ldy #$20
|
||||
jsr SearchTrack
|
||||
|
@ -385,7 +385,7 @@ StringTableHigh ; must be kept in sync with constants in enid.a
|
||||
.passport
|
||||
!text "Passport ",$00
|
||||
.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
|
||||
!text "_________",$00
|
||||
.bar18
|
||||
|
Loading…
Reference in New Issue
Block a user