add support for BBF9 desync protection check seen in late 80s / early 90s Sunburst disks

This commit is contained in:
4am 2017-05-21 13:59:36 -04:00
parent 47acabad9a
commit b90f60349b
3 changed files with 47 additions and 2 deletions

View File

@ -713,6 +713,7 @@ _applyToAll
!source "patchers/prodosrwts.a" ; gIsProDOS only
!source "patchers/prodos6a.a" ; gIsProDOS only
!source "patchers/prodosmecc.a" ; gIsProDOS only
!source "patchers/bbf9.a" ; gIsProDOS only
!source "patchers/rwtsswapmecc.a" ; gIsMECCFastloader only
!source "patchers/protecteddos.a" ; gIsProtDOS only
!source "patchers/fbff.a"

40
src/patchers/bbf9.a Normal file
View File

@ -0,0 +1,40 @@
;-------------------------------
; #BBF9
; patch nibble check seen in
; Sunburst disks 1988 and later
;
; see write-up of 4am crack
; no. 1165 Muppet Slate
;
; tested on
; Muppet Slate (1988)
; Memory Building Blocks (1989)
; Odd One Out (1989)
; Regrouping (1989)
; Simon Says (1989)
; Teddy and Iggy (1990)
; 1-2-3 Sequence Me (1991)
;-------------------------------
!zone {
lda gIsProDOS
bne .exit
ldy #$0E
jsr SearchTrack
!byte $A6,WILDCARD
!byte $BD,$89,$C0
!byte $BD,$8E,$C0
!byte $18
!byte $A5,WILDCARD
!byte $69,$8C
!byte $8D
bcs .exit
sta gDisplayBytes
pha
lda #s_bbf9
jsr PrintByID
pla
ldy #$02
jsr modify
!byte $18,$60
.exit
}

View File

@ -98,7 +98,8 @@ s_diversidos = $4F
s_prontodos = $50
s_jmpb412 = $51
s_laureate = $52
STRINGCOUNT = $53
s_bbf9 = $53
STRINGCOUNT = $54
!zone {
StringTable
@ -185,6 +186,7 @@ StringTable
!word .prontodos
!word .jmpb412
!word .laureate
!word .bbf9
;
; Text can contain substitution strings, which
; are replaced by current values at runtime. Each
@ -210,7 +212,7 @@ StringTable
; can be set directly before calling PrintByID.
;
.header
!text "Passport by 4am 2017-05-16",00
!text "Passport by 4am 2017-05-21",00
.mainmenu
!text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D
!text " "
@ -466,4 +468,6 @@ StringTable
!text "at $B412 before initializing DOS.",$8D,00
.laureate
!text "T00,S00 Found Laureate bootloader",$8D,00
.bbf9
!text "T%t,S%0 Found BBF9 protection check",$8D,00
}