diff --git a/src/passport.a b/src/passport.a index 040a33e..c2606b3 100755 --- a/src/passport.a +++ b/src/passport.a @@ -378,6 +378,7 @@ AnalyzeTrack !source "patchers/harvey.a" ; gIsBoot0 && T01 only !source "patchers/jmpb400.a" ; gIsBoot0 && T02 only !source "patchers/jmpb412.a" ; gIsBoot0 && T02 only + !source "patchers/mak.a" ; gIsBoot0 && T02 only !source "patchers/jsr8635.a" ; gIsBoot0 only !source "patchers/sierra.a" ; gIsBoot0 only _endDOS33Patchers diff --git a/src/patchers/mak.a b/src/patchers/mak.a new file mode 100644 index 0000000..07a3fd5 --- /dev/null +++ b/src/patchers/mak.a @@ -0,0 +1,41 @@ +;------------------------------- +; #MAK +; Boot1 jumps to $B3BB to read +; two sectors on track $23 +; +; so named because it prints the +; initials 'MAK' on screen before +; executing the protection check +; +; Kittens, Kids, and a Frog 03.12.86 (Hartley) +; Who What Where When Why 02.05.86 (Hartley) +;------------------------------- +!zone { + ; gIsBoot0 is TRUE here + + lda gTrack + cmp #$02 + bne .exit + + lda #$02 + ldx #$BB + ldy #$0A + jsr compare ; if T02,S02,$BB == + !byte $20,$58,$FC; JSR $FC58 + !byte $A9,$CD ; LDA #$CD + !byte $20,$ED,$FD; JSR $FDED + !byte $A9,$C1 ; LDA #$C1 + bcs .exit ; passport-test-suite/Kittens, Kids, and a Frog.woz [C=0] matches + + ldy #$B3 + sty gDisplayBytes+1 ; address (hi) + ldy #$BB + sty gDisplayBytes+2 ; address (lo) + jsr PrintByID + !byte s_beforedos + + ldx #$BB + jsr modify3 ; then set T02,S02,$BB = + !byte $4C,$84,$9D +.exit +} diff --git a/src/strings/en.a b/src/strings/en.a index c589226..fafd4a9 100755 --- a/src/strings/en.a +++ b/src/strings/en.a @@ -365,7 +365,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," 2022-06-01",$00 + !text "@",s_passport,"by 4am@",s_space7,"@",s_space7," 2022-06-03",$00 .bar9 !text "_________",$00 .bar18