passport/src/patchers/jsrbb03.a
2018-08-02 22:00:03 -07:00

45 lines
1.3 KiB
Plaintext
Executable File

;-------------------------------
; #JSRBB03
; boot1 calls $BB03 for a self-
; decrypting nibble check which
; continues to $B793 on success
; e.g. Classifying Animals with
; 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
bne .exit
lda #$01
ldx #$38
ldy #$03
jsr compare ; and T00,S01,$38 ==
!byte $20,$03,$BB
bcs .exit
lda #$05
ldx #$03
ldy #$25
jsr compare ; and T00,S05,$03 ==
!byte $4E,$06,$BB,$71,$6E
!byte $0A,$BB,$40,$27,$6E,$0F,$BB,$DD
!byte $1B,$BB,$6E,$15,$BB,$DC,$1E,$BB
!byte $6E,$25,$BB,$72,$00,$BB,$B3,$00
!byte $B8,$99,$00,$BB,$C8,$A0,$F4,$B0
bcs .exit
lda #s_jsrbb03
jsr PrintByID
lda #$05
ldx #$03
ldy #$09
jsr modify ; then set T00,S05,$03 =
!byte $A9,$B5
!byte $48
!byte $A9,$18
!byte $48
!byte $4C,$93,$B7
.exit
}