📄 disp96x64.asm
字号:
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 + -