passport/src/patchers/meccdqc.a
2021-06-21 11:24:21 -04:00

74 lines
1.4 KiB
Plaintext

;-------------------------------
; #MECCDQC
; additional shenanigans in
; MECC Database Composer
;-------------------------------
!zone {
lda gTrack
cmp #7
bne .jmpexit
lda gMECCFastloadType
cmp #ID_MECC1
bne .jmpexit
lda #$0B
ldx #$02
ldy #$06
jsr compare
!byte $BD,$8C,$C0
!byte $10,$FB
!byte $C9
bcs .exit ; passport-test-suite/MECC Dataquest Composer.woz [C=0] matches
lda gMECCFastloadType
asl
asl
asl
sta tmp
asl
adc tmp
ldx #8
- pha
tay
txa
pha
lda .table+2-24,y
sta .cmpbyte
sta .modbyte
lda .table-24,y
ldx .table+1-24,y
jsr compare1
.cmpbyte
!byte $D1 ; SMC
bcc +
jsr modify1
.modbyte
!byte $D1 ; SMC
+ pla
tax
pla
tay
iny
iny
iny
tya
dex
bne -
.jmpexit
jmp .exit
.table
!byte $0B,$08,$D5
!byte $0B,$12,$AA
!byte $0B,$1D,$96
!byte $0B,$8F,$D5
!byte $0B,$99,$AA
!byte $0B,$A3,$AD
!byte $0C,$82,$AA
!byte $0C,$87,$AD
.exit
}