⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 lcd.asm

📁 本程序为一语音LCD GAME
💻 ASM
字号:
; *****  *   *  *****  *       *  ******  
; *      *   *  *   *  **     **  *    * 
; *      *****  *   *  * *   * *  ****** 
; *      *   *  *   *  *  * *  *  * 
; *****  *   *  *****  *   *   *  * 
;============================================================================================
; *****  *   *  *****  *       *  ******  
; *      *   *  *   *  **     **  *    * 
; *      *****  *   *  * *   * *  ****** 
; *      *   *  *   *  *  * *  *  * 
; *****  *   *  *****  *   *   *  * 
;------------------------
;LCD DISPLAY
;=========================================================================
;==================================================================================
AllLcdOn:
	LDA	#FFH
	JMP	LcdSet
AllLcdOff:
	LDA	#00H
LcdSet:
	STHN	LCD_00
	STHN	LCD_10
	STHN	LCD_20
	STA	LCD_00+1
	STA	LCD_10+1
	STA	LCD_20+1
	STA	LCD_00+2
	STA	LCD_10+2
	STA	LCD_20+2
	RTS
;===================================================================
DispLcdRout:
	JNB	B_FlashDisp,ExitDispLcdRout
	CLRB	B_FlashDisp
	JNB	B_FlashGmDisp,DispLcdRout1
	JSR	DispGmRout
DispLcdRout1
	JNB	B_FlashLifeDisp,DispLcdRout2
	JSR	DispLifeLcd
DispLcdRout2
	JNB	B_FlashLevelDisp,DispLcdRout3
	JSR	DispLevelLcd
DispLcdRout3
	JNB	B_FlashWolfDisp,DispLcdRout4
	JSR	DispWolfPigLcd
DispLcdRout4
	JNB	B_FlashSocDisp,ExitDispLcdRout
	JMP	DispSocArrow
ExitDispLcdRout
	RTS
;===================================================================	
DispGmRout
	CLRB	B_FlashGmDisp
	SMB5	LCD_20+1		;37
	RMB4	LCD_20+1		;36
	RMB4	LCD_10+1
	JB	B_Gm2Flag,DispGm2Rout
DispGm1Rout
	SMB4	LCD_20+1
	JMP	DispLcdRoutC
DispGm2Rout
	SMB4	LCD_10+1
DispLcdRoutC:
	RMB5	LCD_10+1		;ov
	JNB	B_GmOvFlag,ExitDispGmRout
	SMB5	LCD_10+1
ExitDispGmRout
	RTS
;===================================================================
DispLifeLcd:
	CLRB	B_FlashLifeDisp
	RMB3	LCD_20+1
	RMB2	LCD_20+1
	RMB1	LCD_20+1
	BBS1	R_Life,LifeLcd_3	
	BBS0	R_Life,LifeLcd_1
	RTS
LifeLcd_3:
	BBR0	R_Life,LifeLcd_2
	SMB1	LCD_20+1
LifeLcd_2:
	SMB2	LCD_20+1
LifeLcd_1:
	SMB3	LCD_20+1
	RTS

;===============================================
DispLevelLcd:
	CLRB	B_FlashLevelDisp
	SMB7	LCD_20
	RMB5	LCD_20
	RMB5	LCD_10
	RMB5	LCD_00
	RMB4	LCD_00
	BBS2	R_Level,LevelLcd_4
	BBS1	R_Level,LevelLcd_3
	BBS0	R_Level,LevelLcd_1
	RTS
;----------------------------------------------------
LevelLcd_4:
	SMB4	LCD_00
	RTS
;---------------------------------------------------
LevelLcd_3:
	BBR0	R_Level,LevelLcd_2	;10
	SMB5	LCD_00
	RTS
;----------------------------------------------------
LevelLcd_2:
	SMB5	LCD_10
	RTS
;-------------------------------------------------------
LevelLcd_1:
	SMB5	LCD_20
	RTS

;===================================================================
DispWolfPigLcd:
	CLRB	B_FlashWolfDisp
	JB	B_Gm2Flag,DispGm2WolfPigLcd
DispGm1WolfLcd
	RMB6	LCD_20+1
	RMB0	LCD_20+2
	RMB2	LCD_20+2
	RMB1	LCD_20+2
	BBS0	R_Wolf1Pig2Move,WolfLcdMiddle
	BBS1	R_Wolf1Pig2Move,WolfLcdRight
WolfLcdLeft:
	SMB6	LCD_20+1
	JNB	B_LoseLive,DispGm1PigLcd
	SMB1	LCD_20+2
	JMP	DispGm1PigLcd
;-------------------------------------------------
WolfLcdMiddle:
	SMB0	LCD_20+2
	JNB	B_LoseLive,DispGm1PigLcd
	SMB1	LCD_20+2
	JMP	DispGm1PigLcd
;-------------------------------------------------
WolfLcdRight:
	SMB2	LCD_20+2
	JNB	B_LoseLive,DispGm1PigLcd
	SMB1	LCD_20+2
	JMP	DispGm1PigLcd
;-------------------------------------------------
;-------------------------------------------------
DispGm1PigLcd
	RMB4	LCD_00+1
	RMB2	LCD_10+1
	RMB7	LCD_10
	BBS1	R_Pig1Wolf2Move,PigLcdMiddle
	BBS2	R_Pig1Wolf2Move,PigLcdRight
	BBS0	R_Pig1Wolf2Move,PigLcdLeft
	RTS
PigLcdLeft:
	SMB4	LCD_00+1
	RTS
;-------------------------------------------------
PigLcdMiddle:
	SMB2	LCD_10+1
	RTS
;-------------------------------------------------
PigLcdRight:
	SMB7	LCD_10
	RTS

;-------------------------------------------------
;-------------------------------------------------
DispGm2WolfPigLcd:
DispGm2WolfLcd:
	RMB3	LCD_00+1
	RMB1	LCD_10+1
	RMB6	LCD_10
;	RMB3	LCD_10+1
;	RMB0	LCD_20+1
;	RMB6	LCD_20
	BBR0	R_Pig1Wolf2Move,Gm2WolfLcdMiddle
	SMB3	LCD_00+1
Gm2WolfLcdMiddle	
	BBR1	R_Pig1Wolf2Move,Gm2WolfLcdRight
	SMB1	LCD_10+1
Gm2WolfLcdRight:
	BBR2	R_Pig1Wolf2Move,DispGm2PigLcd
	SMB6	LCD_10
	JMP	DispGm2PigLcd
;-------------------------------------------------
;-------------------------------------------------
DispGm2PigLcd
	RMB7	LCD_20+1
	RMB1	LCD_10+2
	RMB3	LCD_20+2
	BBS0	R_Wolf1Pig2Move,Gm2PigLcdMiddle
	BBS1	R_Wolf1Pig2Move,Gm2PigLcdRight
Gm2PigLcdLeft:
	SMB7	LCD_20+1
	RTS
;-------------------------------------------------
Gm2PigLcdMiddle:
	SMB1	LCD_10+2
	RTS
;-------------------------------------------------
Gm2PigLcdRight:
	SMB3	LCD_20+2
	RTS
;==========================================================================
DispSocArrow:
	CLRB	B_FlashSocDisp
	JB	B_Gm2Flag,DispArrowLcd
DispSocLcd:
	RMB5	LCD_00+1		;1
	RMB1	LCD_00+1
	RMB7	LCD_00
	RMB6	LCD_00+1
	RMB0	LCD_00+2
	RMB2	LCD_00+2
	RMB6	LCD_10+1
	RMB0	LCD_10+2
	RMB2	LCD_10+2		;9
DispSocRow1
	BBR0	SocRow1,DispSocRow11	;SocRow1&ArrowRow1 
	SMB5	LCD_00+1
DispSocRow11
	BBR1	SocRow1,DispSocRow12
	SMB1	LCD_00+1
DispSocRow12
	BBR2	SocRow1,DispSocRow2
	SMB7	LCD_00
DispSocRow2
	BBR0	SocRow2,DispSocRow21
	SMB6	LCD_00+1
DispSocRow21
	BBR1	SocRow2,DispSocRow22
	SMB0	LCD_00+2
DispSocRow22
	BBR2	SocRow2,DispSocRow3
	SMB2	LCD_00+2
DispSocRow3
	BBR0	SocRow3,DispSocRow31
	SMB6	LCD_10+1
DispSocRow31
	BBR1	SocRow3,DispSocRow32
	SMB0	LCD_10+2
DispSocRow32
	BBR2	SocRow3,DispSocDispExit
	SMB2	LCD_10+2
DispSocDispExit
	RTS

DispArrowLcd:
	RMB2	LCD_00+1		;1
	RMB0	LCD_10+1	;2
	RMB6	LCD_00		;3
	RMB7	LCD_00+1	;4
	RMB0	LCD_00+1	;5
	RMB3	LCD_00+2	;6
	RMB7	LCD_10+1	;7
	RMB1	LCD_00+2	;8
	RMB3	LCD_10+2	;9
ArrowRow1
	BBR0	SocRow1,ArrowRow11
	SMB2	LCD_00+1
ArrowRow11
	BBR1	SocRow1,ArrowRow12
	SMB0	LCD_10+1
ArrowRow12
	BBR2	SocRow1,ArrowRow2
	SMB6	LCD_00
ArrowRow2
	BBR0	SocRow2,ArrowRow21
	SMB7	LCD_00+1
ArrowRow21
	BBR1	SocRow2,ArrowRow22
	SMB0	LCD_00+1
ArrowRow22
	BBR2	SocRow2,ArrowRow3
	SMB3	LCD_00+2
ArrowRow3
	BBR0	SocRow3,ArrowRow31
	SMB7	LCD_10+1
ArrowRow31
	BBR1	SocRow3,ArrowRow32
	SMB1	LCD_00+2
ArrowRow32
	BBR2	SocRow3,ArrowDispExit
	SMB3	LCD_10+2
ArrowDispExit
	RTS

	

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -