📄 lcd.asm
字号:
F_ClrRam:
LDA #55-4
SEI
STA <82h
LDA #0
STA <81h
LDA #83h
STA <80h
CLRRam1:
LDA #0H
STA (80H)
INC <80H
DEC <82H
LDA <82H
BNE CLRRam1
CLRRam2:
LDA #0
STA <80h
STA <81h
STA <82H
CLI
RTS
F_LcdAllOn:
LDA #FFH
JMP L_SetLcd
F_LcdAllOff:
LDA #00H
L_SetLcd:
STA COM0_L
STA COM0_H
STA COM1_L
STA COM1_H
STA COM2_L
STA COM2_H
STA COM3_L
STA COM3_H
RTS
;===================================================================
DispLcdRout:
JNB B_FlashDisp,ExitDispLcdRout
CLRB B_FlashDisp
JNB B_FlashSnowManDisp,DispLcdRout1
JSR DispSnowManLcd
DispLcdRout1
JNB B_FlashLifeDisp,DispLcdRout2
JSR DispLifeLcd
DispLcdRout2
JNB B_FlashLevelDisp,DispLcdRout3
JSR DispLevelLcd
DispLcdRout3
JNB B_FlashTrunkDisp,DispLcdRout4
JSR DispTrunkLcd
DispLcdRout4
JNB B_FlashCupDisp,ExitDispLcdRout
JMP DispCupLcd
ExitDispLcdRout
RTS
;===============================================
DispLevelLcd:
CLRB B_FlashLevelDisp
RMB4 COM2_L
RMB4 COM1_L
RMB4 COM0_L
RMB5 COM0_L
BBS2 R_Level,LevelLcd_4
BBS1 R_Level,LevelLcd_3
BBS0 R_Level,LevelLcd_1
RTS
;---------------------------------------------------
LevelLcd_3:
BBR0 R_Level,LevelLcd_2 ;10
JMP LevelLcd_3X
;----------------------------------------------------
LevelLcd_4:
SMB5 COM0_L
LevelLcd_3X:
SMB4 COM0_L
LevelLcd_2:
SMB4 COM1_L
LevelLcd_1:
SMB4 COM2_L
RTS
;===================================================================
DispLifeLcd:
CLRB B_FlashLifeDisp
; LDA COM0_L
; AND #00011111B
; STA COM0_L
RMB6 COM0_L
RMB7 COM0_L
RMB0 COM0_H
BBS1 R_Life,LifeLcd_3
BBS0 R_Life,LifeLcd_1
RTS ;NO Lose .
LifeLcd_3:
BBR0 R_Life,LifeLcd_2
SMB6 COM0_L
LifeLcd_2:
SMB7 COM0_L
LifeLcd_1:
SMB0 COM0_H
RTS
;==========================================================================
DispCupLcd:
CLRB B_FlashCupDisp
RMB4 COM3_L
RMB5 COM2_L
RMB5 COM1_L
RMB6 COM3_L
RMB7 COM2_L
RMB7 COM1_L
RMB0 COM3_H
RMB1 COM2_H
RMB1 COM1_H
; LDA COM1_L
; AND #01010111B
; STA COM1_L
; LDA COM2_L
; AND #01010111B
; STA COM2_L
; LDA COM3_L
; AND #01010111B
; STA COM3_L
DispCupRow1
BBR0 CupRow1,DispCupRow11 ;CupRow1&ArrowRow1
SMB4 COM3_L
DispCupRow11
BBR1 CupRow1,DispCupRow12
SMB5 COM2_L
DispCupRow12
BBR2 CupRow1,DispCupRow2
SMB5 COM1_L
DispCupRow2
BBR0 CupRow2,DispCupRow21
SMB6 COM3_L
DispCupRow21
BBR1 CupRow2,DispCupRow22
SMB7 COM2_L
DispCupRow22
BBR2 CupRow2,DispCupRow3
SMB7 COM1_L
DispCupRow3
BBR0 CupRow3,DispCupRow31
SMB0 COM3_H
DispCupRow31
BBR1 CupRow3,DispCupRow32
SMB1 COM2_H
DispCupRow32
BBR2 CupRow3,DispCupDispExit
SMB1 COM1_H
DispCupDispExit
; RTS
;=========================================================
;==========================================================================
DispTrunkLcd:
; CLRB B_FlashTrunkDisp
RMB5 COM3_L
RMB6 COM2_L
RMB6 COM1_L
RMB7 COM3_L
RMB0 COM2_H
RMB0 COM1_H
RMB1 COM3_H
RMB2 COM2_H
RMB2 COM1_H
DispTrunkRow1
BBR0 TrunkRow1,DispTrunkRow11 ;TrunkRow1&ArrowRow1
SMB5 COM3_L
DispTrunkRow11
BBR1 TrunkRow1,DispTrunkRow12
SMB6 COM2_L
DispTrunkRow12
BBR2 TrunkRow1,DispTrunkRow2
SMB6 COM1_L
DispTrunkRow2
BBR0 TrunkRow2,DispTrunkRow21
SMB7 COM3_L
DispTrunkRow21
BBR1 TrunkRow2,DispTrunkRow22
SMB0 COM2_H
DispTrunkRow22
BBR2 TrunkRow2,DispTrunkRow3
SMB0 COM1_H
DispTrunkRow3
BBR0 TrunkRow3,DispTrunkRow31
SMB1 COM3_H
DispTrunkRow31
BBR1 TrunkRow3,DispTrunkRow32
SMB2 COM2_H
DispTrunkRow32
BBR2 TrunkRow3,DispTrunkDispExit
SMB2 COM1_H
DispTrunkDispExit
RTS
;===================================================================
DispSnowManLcd:
CLRB B_FlashSnowManDisp
RMB2 COM3_H
RMB3 COM3_H
RMB3 COM2_H
RMB3 COM1_H
RMB3 COM0_H
JB B_SnowManLL,SnowManLcdLLRt
JB B_SnowManRR,SnowManLcdRRRt
BBS0 R_SnowManMov,SnowManLcdMiddle
BBS1 R_SnowManMov,SnowManLcdRight
SnowManLcdLeft:
SMB3 COM3_H
RTS
;-------------------------------------------------
SnowManLcdMiddle:
SMB3 COM2_H
RTS
;-------------------------------------------------
SnowManLcdRight:
SMB3 COM1_H
RTS
SnowManLcdLLRt
SMB2 COM3_H
RTS
SnowManLcdRRRt
SMB3 COM0_H
RTS
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -