add support for Hoffman protection check

This commit is contained in:
4am 2019-04-04 20:25:00 -04:00
parent 646157a1f5
commit 852dfc43f5
4 changed files with 54 additions and 2 deletions

View File

@ -114,6 +114,7 @@ AnalyzeT00
!source "../patchers/muserwts.a"
!source "../patchers/artsci.a"
!source "../patchers/springboard.a"
!source "../patchers/hoffman.a"
;add only above this line

47
src/patchers/hoffman.a Normal file
View File

@ -0,0 +1,47 @@
;-------------------------------
; #HOFFMAN
; delayed check for timing bits
; and nibbles in track seam
;
; tested on
; - Good Thinking! Cause and Effect Level Two (Hoffman Educational Systems)
; - Good Thinking! Details Level One (Hoffman Educational Systems)
; - Good Thinking! Details Level Two (Hoffman Educational Systems)
; - Good Thinking! Drawing Conclusions Level Two (Hoffman Educational Systems)
; - Good Thinking! Fact & Opinion Level Two (Hoffman Educational Systems)
; - Good Thinking! Main Idea Level One (Hoffman Educational Systems)
; - Good Thinking! Main Idea Level Two (Hoffman Educational Systems)
; - Good Thinking! Predicting Outcomes Level One (Hoffman Educational Systems)
; - Good Thinking! Sequencing Events Level Two (Hoffman Educational Systems)
;-------------------------------
!zone {
bit gMode ; nothing to do here in verify-only mode
bpl .exit
lda #$0C
sta gDisplayBytes
ldx #$00
ldy #$19
jsr compare ; and T00,S0C,$00 ==
;
LDA #$07
STA $B7EC
LDA #$00
STA $B7F4
STA $B7F2
JSR $03E3
JSR $03D9
LDX $B7E9
LDA $C089,X
;
bcs .exit
lda #s_hoffman
jsr PrintByID
lda #$0C
ldx #$00
ldy #$01
jsr modify ; then set T00,S0C,$00 =
;
RTS
;
.exit
}

View File

@ -130,6 +130,7 @@ StringTable
!word .springboard
!word .hallabs
!word .holle
!word .hoffman
;
; Text can contain substitution strings, which
; are replaced by current values at runtime. Each
@ -155,7 +156,7 @@ StringTable
; can be set directly before calling PrintByID.
;
.header
!text "Passport by 4am 2019-04-03",$00
!text "Passport by 4am 2019-04-04",$00
.mainmenu
!text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D
!text " "
@ -478,4 +479,6 @@ StringTable
!text "T%t,S%0 Found HAL Labs protection check",$8D,$00
.holle
!text "T00,S00 Found Holle bootloader",$8D,$00
.hoffman
!text "T%t,S%0 Found Hoffman protection check",$8D,$00
}

View File

@ -116,4 +116,5 @@ s_dakin5 = $6E
s_springboard =$6F
s_hallabs = $70
s_holle = $71
STRINGCOUNT = $72
s_hoffman = $72
STRINGCOUNT = $73