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

📄 disp96x64.asm

📁 96*94使用于ED06.ED02等小型的数码相框
💻 ASM
📖 第 1 页 / 共 3 页
字号:
		BBR1	<R_SysFlag1,L_Disp_Program_Mode431
L_Disp_Program_Mode430:
		STZ		R_Disp_CharL
;		STZ		R_Disp_CharH
		LDA		#OFF_TIME_ADDR_X+010H
		STA		<R_CursorX
		LDA		#OFF_TIME_ADDR_Y+010H
		STA		<R_CursorY
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+018H
		STA		<R_CursorX
;		STA		<R_CursorY
		JSR		F_Disp_NumOrABC_96X64
		BRA		L_Disp_Program_Mode432
L_Disp_Program_Mode431:
		JSR		F_Disp_OnTime
		JSR		F_Disp_OffTime
L_Disp_Program_Mode432:
		BRA		L_Disp_Program_Mode4_End
L_Disp_Program_Mode44:
		BBR1	<R_SysFlag1,L_Disp_Program_Mode441
L_Disp_Program_Mode440:
		STZ		R_Disp_CharL
;		STZ		R_Disp_CharH
		LDA		#OFF_TIME_ADDR_X+028H
		STA		<R_CursorX
		LDA		#OFF_TIME_ADDR_Y+010H
		STA		<R_CursorY
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+030H
		STA		<R_CursorX
;		STA		<R_CursorY
		JSR		F_Disp_NumOrABC_96X64
		BRA		L_Disp_Program_Mode442
L_Disp_Program_Mode441:
		JSR		F_Disp_OnTime
		JSR		F_Disp_OffTime
L_Disp_Program_Mode442:
L_Disp_Program_Mode4_End:
		BRA		L_Disp_Program_End
L_Disp_Program_Mode5:
		CMP		#05H
		BEQ		L_Disp_Program_Mode5_
		BRA		L_Disp_Program_Mode6
L_Disp_Program_Mode5_:
		LDA		R_Mode1
		BNE		L_Disp_Program_Mode5_1
L_Disp_Program_Mode5_0:
		BBR0	<R_Disp_Flag,L_Disp_Program_Mode5_End
		JSR		Main_Menu
		BRA		L_Disp_Program_End
L_Disp_Program_Mode5_1:
		CMP		#01H
		BNE		L_Disp_Program_Mode5_2
		LDA		R_Mode2
		BNE		L_Disp_Program_Mode5_1_1
L_Disp_Program_Mode5_1_0:
		LDA		#<T_NormalClock
		STA		<R_TempL
		LDA		#>T_NormalClock
		STA		<R_TempH
		JSR		F_Disp_ABCFull_A
		BRA		L_Disp_Program_Mode5_End
L_Disp_Program_Mode5_1_1:
		BBR0	<R_Disp_Flag,L_Disp_Program_Mode5_End
		RESB	0,R_Disp_Flag
		SETB	2,R_Disp_Flag
		JSR		F_Disp_Clock
		JSR		F_Disp_Week
L_Disp_Program_Mode5_End:
		BRA		L_Disp_Program_End
L_Disp_Program_Mode5_2:
		LDA		#<T_WaterMarkClock
		STA		<R_TempL
		LDA		#>T_WaterMarkClock
		STA		<R_TempH
		JSR		F_Disp_ABCFull_A
		BRA		L_Disp_Program_End
L_Disp_Program_Mode6:
		LDA		R_Mode1
		BEQ		L_Disp_Program_Mode60
		BRA		L_Disp_Program_Mode61
L_Disp_Program_Mode60:
		BBR0	<R_Disp_Flag,L_Disp_Program_Mode6_End
		JSR		Main_Menu
L_Disp_Program_Mode61:
L_Disp_Program_Mode6_End:
L_Disp_Program_End:
		RTS
;;==============================================
F_Disp_ABCFull_A:
;F_Disp_ABCFull:
		PHA
		PHX
		LDA		#MENU_ADDR_X
		STA		<R_CursorX
		LDA		#MENU_ADDR_Y
		STA		<R_CursorY
;;;		STZ		R_Disp_CharH
		LDX		#Page_Display_Line
L_Disp_ABCFull_1_A:
		PHX
		LDX		#Line_Display_Char
L_Disp_ABCFull_2_A:
		PHX
		LDA		(R_TempL)
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		INC		<R_TempL
		BNE		L_Disp_ABCFull_3_A
		INC		<R_TempH
L_Disp_ABCFull_3_A:
		CLC
		LDA		<R_CursorX
		ADC		#08H
		STA		<R_CursorX
		PLX
		DEX
		BNE		L_Disp_ABCFull_2_A
		LDA		#MENU_ADDR_X
		STA		<R_CursorX
		CLC
		LDA		<R_CursorY
		ADC		#10H
		STA		<R_CursorY
		PLX
		DEX
		BNE		L_Disp_ABCFull_1_A
L_Disp_ABCFull_End_C:
		PLX
		PLA
		RTS
;;==============================================
T_NormalClock:
		DB	016,'D','i','s','p',' ','C','l','o','c','k',' '
		DB	' ',' ','N','o','r','m','a','l',' ',' ',' ',' '
		DB	' ','D','i','s','p',' ','C','l','o','c','k',' '
		DB	' ',' ','W','a','t','e','r',' ','M','a','r','k'
;;==============================================
T_WaterMarkClock:
		DB	' ','D','i','s','p',' ','C','l','o','c','k',' '
		DB	' ',' ','N','o','r','m','a','l',' ',' ',' ',' '
		DB	016,'D','i','s','p',' ','C','l','o','c','k',' '
		DB	' ',' ','W','a','t','e','r',' ','M','a','r','k'
;;==============================================
T_AutoOnOFF_On:
		DB	016,'A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ',' ',' ',' ','O','N',' ',' ',' ',' ',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ',' ',' ',' ','O','F','F',' ',' ',' ',' ',' '
;;==============================================
T_AutoOnOFF_Off:
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ',' ',' ',' ','O','N',' ',' ',' ',' ',' ',' '
		DB	016,'A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ',' ',' ',' ','O','F','F',' ',' ',' ',' ',' '
;;==============================================
T_NorFlahNoPragramTab_A:
T_NorFlahNoPragramTab:
		DB	' ','P','l','s',' ','C','o','n','n','e','c','t'
		DB	' ',' ','T','o',' ','P','C',' ','U','S','B',' '
		DB	' ',' ',' ','U','p','d','a','t','e',' ',' ',' '
		DB	' ',' ',' ',' ','P','r','o','g','r','a','m',' '
;;==============================================
T_AutoPlayModeTab:
;		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;		DB	' ',' ',' ',' ','A','u','t','o',' ',' ',' ',' '
;		DB	' ',' ','P','l','a','y',' ','M','o','d','e',' '
;		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_SinglePhotoTab:
;		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;		DB	'S','i','n','g','l','e',' ','P','h','o','t','o'
;		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab0:
		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '

;;==============================================
T_MenuTab1:
		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
		DB	016,'D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
;		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
;		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab2:
		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	016,'C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
;		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
;		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab3:
		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	016,'A','u','t','o',' ','O','N','/','O','F','F'
;		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
;		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab4:
;		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	016,'C','l','o','c','k',' ','D','i','s','p',' '
;		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab5:
;		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
;		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
		DB	016,'E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab6:
;		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
		DB	016,'D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
;		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab7:
;			DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
;		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	016,'C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab8:
;		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
;		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	016,'A','u','t','o',' ','O','N','/','O','F','F'
		DB	' ','C','l','o','c','k',' ','D','i','s','p',' '
		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab9:
;		DB	' ','O','F','F',' ',' ',' ',' ',' ',' ',' ',' '
;		DB	' ','D','i','s','p',' ','M','o','d','e',' ',' '
		DB	' ','C','l','o','c','k',' ','S','e','t',' ',' '
		DB	' ','A','u','t','o',' ','O','N','/','O','F','F'
		DB	016,'C','l','o','c','k',' ','D','i','s','p',' '
		DB	' ','E','x','i','t',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab10:
		DB	' ','S','l','i','d','e',' ','S','e','t','u','p'
		DB	016,'A','u','t','o',' ',' ',' ',' ',' ',' ',' '
		DB	' ','M','a','n','u','a','l',' ',' ',' ',' ',' '
		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTab11:
		DB	' ','S','l','i','d','e',' ','S','e','t','u','p'
		DB	' ','A','u','t','o',' ',' ',' ',' ',' ',' ',' '
		DB	016,'M','a','n','u','a','l',' ',' ',' ',' ',' '
		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_NoPhotoTab_A:
T_NoPhotoTab:
		DB	' ',' ',' ','N','o',' ','P','h','o','t','o',' '
		DB	' ','P','l','s',' ','C','o','n','n','e','c','t'
		DB	'T','o',' ','P','C',' ','U','p','d','a','t','e'
		DB	' ',' ',' ','P','i','c','t','u','r','e',' ',' '
;;==============================================
T_MenuTabUSB_OnLine0:
		DB	016,'U','S','B',' ','C','h','a','r','g','e',' '
		DB	' ','U','S','B',' ','U','p','d','a','t','e',' '
		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
;;==============================================
T_MenuTabUSB_OnLine1:
		DB	' ','U','S','B',' ','C','h','a','r','g','e',' '
		DB	016,'U','S','B',' ','U','p','d','a','t','e',' '
		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '
		DB	' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' ',' '

Slide_MenuTab1:
		DB	' ','A','u','t','o',' ','S','l','i','d','e',' '
Slide_MenuTab2:
		DB	' ',' ',' ',' ','T','i','m','e',' ',' ',' ',' '
Slide_MenuTab3:
		DB	' ',' ',' ',' ',' '
Slide_MenuTab4:
		DB	'S','e','c','o','n','d','s'
;;==============================================
T_SunDay:
		DB	' ',' ','S','u','n','d','a','y',' '
;;==============================================
T_MonDay:
		DB	' ',' ','M','o','n','d','a','y',' '
;;==============================================
T_TuesDay:
		DB	' ','T','u','e','s','d','a','y',' '
;;==============================================
T_WednesDay:
		DB	'W','e','d','n','e','s','d','a','y'
;;==============================================
T_ThursDay:
		DB	' ','T','h','u','r','s','d','a','y'
;;==============================================
T_FriDay:
		DB	' ',' ','F','r','i','d','a','y',' '
;;==============================================
T_SaturDay:
		DB	' ','S','a','t','u','r','d','a','y'
;;==============================================
F_Disp_OnTime:
		LDA		#ON_TIME_ADDR_X
		STA		<R_CursorX
		LDA		#ON_TIME_ADDR_Y
		STA		<R_CursorY
		LDA		#'O'
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#ON_TIME_ADDR_X+008H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		#'N'
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#ON_TIME_ADDR_X+010H
		STA		<R_CursorX
		LDA		#ON_TIME_ADDR_Y+010H
		STA		<R_CursorY
		STZ		R_Disp_CharL
		LDA		R_Hour_On
L_Disp_Clock_Hour0_On:
		CMP		#10
		BCC		L_Disp_Clock_Hour1_On
		INC		R_Disp_CharL
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Hour0_On
L_Disp_Clock_Hour1_On:
		CLC
		LDA		R_Disp_CharL
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#ON_TIME_ADDR_X+018H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		R_Hour_On
L_Disp_Clock_Hour2_On:
		CMP		#10
		BCC		L_Disp_Clock_Hour3_On
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Hour2_On
L_Disp_Clock_Hour3_On:
		CLC
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#ON_TIME_ADDR_X+020H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		#COLON_SIGN
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#ON_TIME_ADDR_X+028H
		STA		<R_CursorX
;		STA		<R_CursorY
		STZ		R_Disp_CharL
		LDA		R_Minute_On
L_Disp_Clock_Minute0_On:
		CMP		#10
		BCC		L_Disp_Clock_Minute1_On
		INC		R_Disp_CharL
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Minute0_On
L_Disp_Clock_Minute1_On:
		CLC
		LDA		R_Disp_CharL
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#ON_TIME_ADDR_X+030H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		R_Minute_On
L_Disp_Clock_Minute2_On:
		CMP		#10
		BCC		L_Disp_Clock_Minute3_On
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Minute2_On
L_Disp_Clock_Minute3_On:
		CLC
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		RTS
;;==============================================
F_Disp_OffTime:
		LDA		#OFF_TIME_ADDR_X
		STA		<R_CursorX
		LDA		#OFF_TIME_ADDR_Y
		STA		<R_CursorY
		LDA		#'O'
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+008H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		#'F'
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+010H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		#'F'
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64

		LDA		#OFF_TIME_ADDR_X+010H
		STA		<R_CursorX
		LDA		#OFF_TIME_ADDR_Y+010H
		STA		<R_CursorY
		STZ		R_Disp_CharL
		LDA		R_Hour_Off
L_Disp_Clock_Hour0_Off:
		CMP		#10
		BCC		L_Disp_Clock_Hour1_Off
		INC		R_Disp_CharL
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Hour0_Off
L_Disp_Clock_Hour1_Off:
		CLC
		LDA		R_Disp_CharL
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+018H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		R_Hour_Off
L_Disp_Clock_Hour2_Off:
		CMP		#10
		BCC		L_Disp_Clock_Hour3_Off
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Hour2_Off
L_Disp_Clock_Hour3_Off:
		CLC
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+020H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		#COLON_SIGN
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+028H
		STA		<R_CursorX
;		STA		<R_CursorY
		STZ		R_Disp_CharL
		LDA		R_Minute_Off
L_Disp_Clock_Minute0_Off:
		CMP		#10
		BCC		L_Disp_Clock_Minute1_Off
		INC		R_Disp_CharL
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Minute0_Off
L_Disp_Clock_Minute1_Off:
		CLC
		LDA		R_Disp_CharL
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		LDA		#OFF_TIME_ADDR_X+030H
		STA		<R_CursorX
;		STA		<R_CursorY
		LDA		R_Minute_Off
L_Disp_Clock_Minute2_Off:
		CMP		#10
		BCC		L_Disp_Clock_Minute3_Off
		SEC
		SBC		#10
		BRA		L_Disp_Clock_Minute2_Off
L_Disp_Clock_Minute3_Off:
		CLC
		ADC		#30H
		STA		R_Disp_CharL
;		STZ		R_Disp_CharH
		JSR		F_Disp_NumOrABC_96X64
		RTS
;;==============================================
F_Disp_Clock:
		PHA

⌨️ 快捷键说明

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