- 注册时间
- 2004-8-29
- 最后登录
- 1970-1-1
|
;这些东西都是我为了做游戏这几天写的,但也算不上原创了,因为方法大家都知道
;只是搜集那些数据也会花些工夫,我就全贴出来方便大家使用
;********************************************************************************************
;Getchar For NC3K,PC2K,NC2K
Getchar:
LDA #$00
STA $C7
GetLoop:
LDA #$00
STA $03f6 ;Tc1000 改为sta $03f7既可
sta $0401
LDA $c7
BPL GetLoop
AND #$7f
STA $c7
RTS
;*******************************
;函数说明:CheckKey for NC3k&&Tc1k
;入参A,出参:Y:SEC,N:CLC
;*******************************
CheckKeyData1 .DB $0a,$00,$25,$16,$69,$6b,$13,$17
.DB $08,$00,$26,$0e,$75,$6a,$6d,$20
.DB $06,$00,$0f,$0d,$79,$68,$6e,$2e
.DB $18,$00,$27,$70,$74,$67,$62,$30
.DB $00,$00,$1f,$15,$72,$66,$76,$1b
.DB $02,$00,$1e,$14,$65,$64,$63,$12
.DB $04,$00,$1d,$6c,$77,$73,$78,$1a
.DB $0c,$00,$1c,$6f,$71,$61,$7a,$19
CheckKeyData2 .db $01,$02,$04,$08,$10,$20,$40,$80
CheckKey:
LDX #$3f
CheckKeyLoop1:
CMP CheckKeyData1,x
BEQ CheckKeyLabel1
DEX
BPL CheckKeyLoop1
CheckKeyReturn0:
CLC
RTS
CheckKeyLabel1:
TXA
LSR
LSR
LSR
TAY
TXA
AND #$07
TAX
LDA CheckKeyData2,x
AND $bf,y
BNE CheckKeyReturn0
SEC
RTS
;****************************************************
;*******************************
;函数说明:CheckKey for NC2K,PC2K
;入参A,出参:Y:SEC,N:CLC
;*******************************
CheckKeyData1 .DB $00,$00,$00,$16,$69,$6b,$13,$17
.DB $00,$0c,$00,$0e,$75,$6a,$6d,$20
.DB $00,$02,$0f,$0d,$79,$68,$6e,$2e
.DB $00,$04,$11,$70,$74,$67,$62,$30
.DB $00,$06,$1f,$15,$72,$66,$76,$1b
.DB $00,$08,$1e,$14,$65,$64,$63,$12
.DB $21,$0a,$1d,$6c,$77,$73,$78,$1a
.DB $18,$00,$1c,$6f,$71,$61,$7a,$19
CheckKeyData2 .db $01,$02,$04,$08,$10,$20,$40,$80
CheckKey:
LDX #$3f
CheckKeyLoop1:
CMP CheckKeyData1,x
BEQ CheckKeyLabel1
DEX
BPL CheckKeyLoop1
CheckKeyReturn0:
CLC
RTS
CheckKeyLabel1:
TXA
LSR
LSR
LSR
TAY
TXA
AND #$07
TAX
LDA CheckKeyData2,x
AND $bf,y
BNE CheckKeyReturn0
SEC
RTS
;********************************************************
;CheckKey FOR NC1020(CC880,CC980)
CheckKeyData1 .DB $00,$00,$00,$16,$69,$6b,$13,$17
.DB $0A,$00,$00,$0e,$75,$6a,$6d,$20
.DB $08,$00,$1f,$0d,$79,$68,$6e,$2e
.DB $0C,$00,$1E,$70,$74,$67,$62,$30
.DB $02,$00,$1D,$15,$72,$66,$76,$1b
.DB $06,$00,$1C,$14,$65,$64,$63,$12
.DB $04,$00,$11,$6c,$77,$73,$78,$1a
.DB $18,$00,$0F,$6f,$71,$61,$7a,$19
CheckKeyData2 .db $01,$02,$04,$08,$10,$20,$40,$80
CheckKey:
LDX #$3f
CheckKeyLoop1:
CMP CheckKeyData1,x
BEQ CheckKeyLabel1
DEX
BPL CheckKeyLoop1
CheckKeyReturn0:
CLC
RTS
CheckKeyLabel1:
TXA
LSR
LSR
LSR
TAY
TXA
AND #$07
TAX
LDA CheckKeyData2,x
AND $bc,y ;here is $bc!
BNE CheckKeyReturn0
SEC
RTS
|
|