support Battle Group secondary prot

and a bit smaller code
This commit is contained in:
Peter Ferrie 2018-09-28 10:46:48 -07:00
parent 81bb88e0b2
commit 6d21441277
4 changed files with 28 additions and 12 deletions

View File

@ -420,7 +420,7 @@
ldy #1 ldy #1
jsr modify jsr modify
!byte $BB ;new checksum value for eor !byte $BB ;new checksum value for eor
jmp + bvc +
++ ldy #1 ++ ldy #1
jsr compare jsr compare
!byte $DB !byte $DB

View File

@ -343,7 +343,7 @@
ldy #$01 ldy #$01
jsr modify jsr modify
!byte $F8 ;checksum !byte $F8 ;checksum
jmp .exit bvc .jmpexit
+ ldy #19 + ldy #19
jsr SearchTrack jsr SearchTrack
@ -357,7 +357,7 @@
!byte $A9,$00 ;LDA #$00 !byte $A9,$00 ;LDA #$00
!byte $AA ;TAX !byte $AA ;TAX
!byte $9D,$00,$01 ;STA $0100,X !byte $9D,$00,$01 ;STA $0100,X
bcs + bcs .jmpexit
pha pha
lda #s_tamper lda #s_tamper
jsr PrintByID jsr PrintByID
@ -368,13 +368,13 @@
ldy #$01 ldy #$01
jsr modify jsr modify
!byte $19 ;checksum !byte $19 ;checksum
+ jmp .exit .jmpexit
jmp .exit
.dosearch .dosearch
lda gIsBoot0 lda gIsBoot0
beq + bne .jmpexit
jmp .exit ldy #15
+ ldy #15
jsr SearchTrack jsr SearchTrack
!byte $CE,WILDCARD,WILDCARD ;DEC $xxxx !byte $CE,WILDCARD,WILDCARD ;DEC $xxxx
!byte $EF,WILDCARD,WILDCARD ;mod->INC $xxxx !byte $EF,WILDCARD,WILDCARD ;mod->INC $xxxx

View File

@ -87,7 +87,7 @@
ldy #2 ldy #2
jsr modify jsr modify
!byte $A0,$B9 !byte $A0,$B9
jmp .exit bvc .jmpexit
;Threshold secondary protection ;Threshold secondary protection
@ -108,7 +108,7 @@
ldy #$01 ldy #$01
jsr modify jsr modify
!byte $FC !byte $FC
jmp .exit bvc .exit
;Missile Defense ;Missile Defense
@ -132,7 +132,7 @@
ldy #$01 ldy #$01
jsr modify jsr modify
!byte $2C ;LDA !byte $2C ;LDA
jmp .exit bvc .exit
;Cranston Manor, etc. ;Cranston Manor, etc.

View File

@ -1,5 +1,6 @@
;------------------------------- ;-------------------------------
; #SSI Weak-bit protection ; #SSI protections
; weak bit, magic values
; ;
; module by qkumba ; module by qkumba
;------------------------------- ;-------------------------------
@ -19,7 +20,7 @@
!byte $C1,$00 ; CMP ($00,X) !byte $C1,$00 ; CMP ($00,X)
!byte $EA ; NOP !byte $EA ; NOP
!byte $EA ; NOP !byte $EA ; NOP
bcs .exit bcs +
sta gDisplayBytes sta gDisplayBytes
pha pha
@ -29,6 +30,21 @@
ldy #$01 ldy #$01
jsr modify jsr modify
!byte $A9 ; LDA #$.. !byte $A9 ; LDA #$..
bvc .exit
+
ldy #$0E
jsr SearchTrack
!byte $CE,$07,$02; DEC $0207
!byte $EF,$07,$02; ??? $0207
!byte $A0,$27 ; LDY #$27
!byte $D0,$02 ; BNE *+4
!byte $00 ; BRK
!byte $6C,$B9,$00; JMP ($00B9)
bcs .exit
ldy #1
jsr modify
!byte $60 ; RTS
.exit .exit
} }