add patchers/dos32muse [fixes Castle Wolfenstein and maybe other DOS 3.2 MUSE titles]

This commit is contained in:
4am 2017-11-24 17:03:48 -05:00
parent 9eb4b5044d
commit 3ee6fa37bc
3 changed files with 26 additions and 1 deletions

View File

@ -697,6 +697,7 @@ _applyToAll
!source "patchers/advint.a" ; gAdventureInternational only !source "patchers/advint.a" ; gAdventureInternational only
!source "patchers/jsr8635.a" ; gIsRWTS only !source "patchers/jsr8635.a" ; gIsRWTS only
!source "patchers/dos32jmpb4bb.a" ; T01 && gIsDOS32 only !source "patchers/dos32jmpb4bb.a" ; T01 && gIsDOS32 only
!source "patchers/dos32muse.a" ; T01 && gIsDOS32 only
!source "patchers/sra.a" ; gIsDOS32 or gIsRWTS only !source "patchers/sra.a" ; gIsDOS32 or gIsRWTS only
lda gPatchCount lda gPatchCount

24
src/patchers/dos32muse.a Normal file
View File

@ -0,0 +1,24 @@
;-------------------------------
; #DOS32MUSE
; $A5D6 jumps to $BFD5 for no good reason
;
; tested on
; Castle Wolfenstein (1981, MUSE)
;-------------------------------
!zone {
lda gIsDOS32
bne .exit
lda gTrack
cmp #$01
bne .exit
lda #$08
ldx #$D6
ldy #$02
jsr compare ; if T01,S08,$D6 ==
!byte $4C,$D5
bcs .exit
ldy #$03
jsr modify ; then set T01,S08,$D6 =
!byte $E8,$D0,$32
.exit
}

View File

@ -134,7 +134,7 @@ StringTable
; can be set directly before calling PrintByID. ; can be set directly before calling PrintByID.
; ;
.header .header
!text "Passport by 4am 2017-11-14",$00 !text "Passport by 4am 2017-11-24",$00
.mainmenu .mainmenu
!text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D !text "________________________________________",$8D,$8D,$8D,$8D,$8D,$8D,$8D
!text " " !text " "