add Micro Fun patcher

This commit is contained in:
4am 2018-04-05 19:46:23 -04:00
parent e7d8d55d94
commit bfa675b13b
4 changed files with 44 additions and 4 deletions

View File

@ -57,8 +57,8 @@ AnalyzeT00
ldx #$00
ldy #$40
jsr compare ; if T00,S07,$00 ==
!byte $84,$48,$85,$49,$A0,$02,$8C,$F8
!byte $06,$A0,$04,$8C,$F8,$04,$A0,$01
!byte $84,$48,$85,$49,$A0,$02,$8C,WILDCARD
!byte WILDCARD,$A0,$04,$8C,WILDCARD,WILDCARD,$A0,$01
!byte $B1,$48,$AA,$A0,$0F,$D1,$48,$F0
!byte $1B,$8A,$48,$B1,$48,$AA,$68,$48
!byte $91,$48,$BD,$8E,$C0,$A0,$08,$BD
@ -107,6 +107,7 @@ AnalyzeT00
!source "../patchers/micrograms.a"
!source "../patchers/dos32.a"
!source "../patchers/dos32dlm.a"
!source "../patchers/microfun.a"
;add only above this line
rts

35
src/patchers/microfun.a Normal file
View File

@ -0,0 +1,35 @@
;-------------------------------
; #MICROFUN
; RWTS jumps to nibble check
; from $BE38
; e.g. Station 5, re-releases of
; The Heist and Miner 2049er
;-------------------------------
!zone {
lda gIsRWTS ; if DOS 3.3-shaped RWTS
bne .exit
lda #$08
ldx #$AF
ldy #$09
jsr compare ; and T00,S08,$AF ==
!byte $A0,$00 ; LDY #$00
!byte $84,$26 ; STY $26
!byte $84,$27 ; STY $27
!byte $BD,$8C,$C0; LDA $C08C,X
bcs .exit
ldx #$38
ldy #$03
jsr compare ; and T00,S08,$38 ==
!byte $4C,$6A,$BA; JMP $BA6A
bcs .exit
sta gDisplayBytes
pha
lda #s_microfun
jsr PrintByID
pla
ldy #$03
jsr modify ; then set T00,S08,$38 =
!byte $08 ; PHP
!byte $B0,$8E ; BCS -
.exit
}

View File

@ -114,6 +114,7 @@ StringTable
!word .dinkeydos
!word .trillium
!word .tamper
!word .microfun
;
; Text can contain substitution strings, which
; are replaced by current values at runtime. Each
@ -139,7 +140,7 @@ StringTable
; can be set directly before calling PrintByID.
;
.header
!text "Passport by 4am 2018-02-13",$00
!text "Passport by 4am 2018-04-05",$00
.mainmenu
!text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D
!text " "
@ -433,4 +434,6 @@ StringTable
!text "T%t,S%0 Found Trillium protection check",$8D,$00
.tamper
!text "T%t,S%0 Found anti-tamper check",$8D,$00
.microfun
!text "T%t,S%0 Found Micro Fun protection check",$00
}

View File

@ -102,4 +102,5 @@ s_volumename = $60
s_dinkeydos = $61
s_trillium = $62
s_tamper = $63
STRINGCOUNT = $64
s_microfun = $64
STRINGCOUNT = $65