📄 ram.asm
字号:
RTC_INIT equ (FLG_ICON_1<<4)+0
F_KON equ (FLG_K<<4)+0 ;for key interrupt
F_KOFF equ (FLG_K<<4)+1 ;for key interrupt
F_HLD_FED equ (FLG_K<<4)+2 ;FEED key press and hold
F_HLD_SET equ (FLG_K<<4)+3 ;SET key(share with = key) press and hold
F_WAKE equ (FLG_K<<4)+4 ;
F_TNKEY equ (FLG_K<<4)+5 ;indicate ten key or dot entry
F_ICPN equ (FLG_K<<4)+6 ;indicate IC already printed
F_ICDSP equ (FLG_K<<4)+7 ;
;-----------------------------------------
;
SW_DP0 equ (MDFLG_0<<4)+0 ;
SW_DP1 equ (MDFLG_0<<4)+1 ;
SW_DP2 equ (MDFLG_0<<4)+2 ;
SW_DP3 equ (MDFLG_0<<4)+3 ;
SW_DP4 equ (MDFLG_0<<4)+4 ;
SW_DP5 equ (MDFLG_0<<4)+5 ;
SW_DP6 equ (MDFLG_0<<4)+6 ;
SW_ADM equ (MDFLG_0<<4)+7 ;
;-----------------------------------------
;
SW_SGT equ (MDFLG_1<<4)+0 ;
SW_SGM equ (MDFLG_1<<4)+1 ;
SW_SGG equ (MDFLG_1<<4)+2 ;
SW_SGK equ (MDFLG_1<<4)+3 ;
SW_GT equ (MDFLG_1<<4)+4 ;
SW_MGT equ (MDFLG_1<<4)+5 ;
SW_RNDUP equ (MDFLG_1<<4)+6 ;
SW_RND54 equ (MDFLG_1<<4)+7 ;
;------------------------------------------
SW_SG equ (MDFLG_2<<4)+0 ;
SW_ICPM equ (MDFLG_2<<4)+1 ;
SW_IC equ (MDFLG_2<<4)+2 ;
SW_NP equ (MDFLG_2<<4)+3 ;
SW_OFF equ (MDFLG_2<<4)+4 ;
SW_AC equ (MDFLG_2<<4)+5 ;
SW_V15 equ (MDFLG_2<<4)+6 ;
SW_FEED equ (MDFLG_2<<4)+7 ;
;-----------------------------------------
SW_DTST equ (MDFLG_3<<4)+0 ;
SW_ADM12 equ (MDFLG_3<<4)+1 ;
SW_EUTX equ (MDFLG_3<<4)+2 ;
M14 equ (MDFLG_3<<4)+3 ;
M10 equ (MDFLG_3<<4)+4 ;
SW_TA equ (MDFLG_3<<4)+5 ;
SW_M2 equ (MDFLG_3<<4)+6 ;
SW_RATE equ (MDFLG_3<<4)+7 ;
;----------------------------------------
FEED_REQ equ (MDFLG_01<<4)+0 ;
SW_DMY equ (MDFLG_01<<4)+1 ;
SW_24 equ (MDFLG_01<<4)+2 ;
SW_EUROS equ (MDFLG_01<<4)+3 ;
SW_A equ (MDFLG_01<<4)+4 ;
SW_FIN equ (MDFLG_01<<4)+5 ;
; equ (MDFLG_01<<4)+6 ;
; equ (MDFLG_01<<4)+7 ;
;----------------------------------------
F_TX12 equ (MDFLG_11<<4)+0 ;temporary flag for tax12+/- for Victor
DP_UPDATE equ (MDFLG_11<<4)+1 ;temporary flag
RATE_INI equ (MDFLG_11<<4)+2 ;temporary flag for rate initial
F_24ON equ (MDFLG_11<<4)+3 ;temporary flag for time setting
F_WAITP equ (MDFLG_11<<4)+4 ;temporary flag for power failure happen with no real time
EURO_DISPLY equ (MDFLG_11<<4)+5 ;temporary flag for eidt euro rate display
F_COUNTRY equ (MDFLG_11<<4)+6 ;
; equ (MDFLG_11<<4)+7 ;
;----------------------------------------
F_COUNTRY1 equ (MDFLG_21<<4)+0 ;
F_COUNTRY2 equ (MDFLG_21<<4)+1 ;
F_COUNTRY_EQU equ (MDFLG_21<<4)+2 ;
; equ (MDFLG_21<<4)+3 ;
; equ (MDFLG_21<<4)+4 ;
; equ (MDFLG_21<<4)+5 ;
; equ (MDFLG_21<<4)+6 ;
; equ (MDFLG_21<<4)+7 ;V2.13
;-------------------------------------------
PAPER_FEED equ (MDSW_2<<4)+7
NO_PRINT equ (MDSW_2<<4)+3
;------mode slider flag------------------------------------
;DP0 equ (MDFLG_RT0<<4)+0 ;decimal0
;DP1 equ (MDFLG_RT0<<4)+1 ;decimal1
;DP2 equ (MDFLG_RT0<<4)+2 ;decimal2
;DP3 equ (MDFLG_RT0<<4)+3 ;decimal3
;DP4 equ (MDFLG_RT0<<4)+4 ;decimal4
;DP5 equ (MDFLG_RT0<<4)+5 ;decimal5
;DP6 equ (MDFLG_RT0<<4)+6 ;decimal6
SW_ADM_RT equ (MDFLG_RT0<<4)+7 ;deciaml point ADM
;FLOAT
;SGT equ (MDFLG_RT1<<4)+0 ;+,- is have the +=,-= function
;SGM equ (MDFLG_RT1<<4)+1 ;M+,M- is have M+=,M-= function
;SGG equ (MDFLG_RT1<<4)+2 ;M2+/M2- have the M2+=/M2-= function
;SGK equ (MDFLG_RT1<<4)+3 ;+=,-=,M+=,M-=,M2+=,M2-= all have constant calculation
SW_GT_RT equ (MDFLG_RT1<<4)+4 ;total key will add the result to GT memory
;MGT equ (MDFLG_RT1<<4)+5 ;total key will add result to memory1
SW_RNDUP_RT equ (MDFLG_RT1<<4)+6 ;round up while next digit of last is not 0
SW_RND54_RT equ (MDFLG_RT1<<4)+7 ;round up while the next digit of last digit is more the 4
;SG=% equ (MDFLG_RT2<<4)+0 ;=, % key will add the result to accumlator
SW_ICPM_RT equ (MDFLG_RT2<<4)+1 ;-,M1,M2- will decreases item counter
SW_IC_RT equ (MDFLG_RT2<<4)+2 ;item counter
SW_NP_RT equ (MDFLG_RT2<<4)+3 ;non-print mode select
SW_OFF_RT equ (MDFLG_RT2<<4)+4 ;off mode
;AC equ (MDFLG_RT2<<4)+5 ;AC function is selected for the CE/C/AC key
;V15 equ (MDFLG_RT2<<4)+6 ;
SW_FEED_RT equ (MDFLG_RT2<<4)+7 ;paper feed
;#/D equ (MDFLG_RT3<<4)+0 ;rate slid
;ADM12 equ (MDFLG_RT3<<4)+1 ;mul and div also in add mode (when add on), 1st factor shif for mul, 2nd for div
;EUTX equ (MDFLG_RT3<<4)+2 ;tax+/tax- key have euro/local function
;D14 equ (MDFLG_RT3<<4)+3 ;
;D10 equ (MDFLG_RT3<<4)+4 ;10 digit
;TA equ (MDFLG_RT3<<4)+5 ;TA logic
;M2 equ (MDFLG_RT3<<4)+6 ;M2+/M2- is selected for euro/local, M2S/M2T have OFF/TIME functio
SW_RAT_RT equ (MDFLG_RT3<<4)+7 ;financial calculation selected
;feed_req equ (MDFLG_RT01<<4)+0 ;
SW_DMY_RT equ (MDFLG_RT01<<4)+1 ;date format: dd--mm--yy
SW_24_RT equ (MDFLG_RT01<<4)+2 ;military time selected
;EUROS equ (MDFLG_RT01<<4)+3 ;select no euro symbol
;A equ (MDFLG_RT01<<4)+4 ;the deciaml for tax,mu,d%,fin cal,c/s/m will be left 2 digit
SW_FIN_RT equ (MDFLG_RT01<<4)+5 ;
F_ENLARG equ (MDFLG_RT01<<4)+6 ;V4.03 enlarge the font for 5514T total print
F_LARGP equ (MDFLG_RT01<<4)+7 ;V4.03 printing large font
F_INIREQ equ (MDFLG_RT11<<4)+0 ;V4.08 for initial printer before printing.
; equ (MDFLG_RT11<<4)+1 ;
; equ (MDFLG_RT11<<4)+2 ;
; equ (MDFLG_RT11<<4)+3 ;
; equ (MDFLG_RT11<<4)+4 ;
; equ (MDFLG_RT11<<4)+5 ;
; equ (MDFLG_RT11<<4)+6 ;
; equ (MDFLG_RT11<<4)+7 ;
; equ (MDFLG_RT21<<4)+0 ;
; equ (MDFLG_RT21<<4)+1 ;
; equ (MDFLG_RT21<<4)+2 ;
; equ (MDFLG_RT21<<4)+3 ;
; equ (MDFLG_RT21<<4)+4 ;
; equ (MDFLG_RT21<<4)+5 ;
; equ (MDFLG_RT21<<4)+6 ;
; equ (MDFLG_RT21<<4)+7 ;
;----------------------------------------------------------
;For Real Time Clock...................................................
RTC_ON equ (FLG_RTC<<4)+0 ;1: RTC display mode 0: normal mode
RTC_TIM equ (FLG_RTC<<4)+1 ;1: time display 0: date display
RTC_24 equ (FLG_RTC<<4)+2 ;1: 24h clock 0: 12h clock
RTC_DMY equ (FLG_RTC<<4)+3 ;1: DMY format 0: <--|
RTC_YMD equ (FLG_RTC<<4)+4 ;1: YMD format 0: <--| both 0: MDY format
RTC_SET equ (FLG_RTC<<4)+5 ;1: RTC set mode 0: normal RTC mode
RTC_CHK equ (FLG_RTC<<4)+6 ;1: RTC setting confirm
NO_CLK equ (FLG_RTC<<4)+7 ;1: No sub clock 0: Mounted sub clock
;For printer controller.................................................
;F_INIT,F_FEED,F_PRINT,F_FDREQ,F_PRREQ,F_RUSH,F_REDBAK,P_MOVE
;F_EXFED,F_RVSE,F_RVREQ,F_STBDLY,F_CHPOFF,F_REVCAN,F_STBON
;F_SSTB,F_BHLD,F_ACC,P_ERR,P_RED
;-----------------------------------------------------------------------
F_INIT equ (F_PCONT<<4)+0 ;
F_FEED equ (F_PCONT<<4)+1 ;
F_PRINT equ (F_PCONT<<4)+2 ;
F_FDREQ equ (F_PCONT<<4)+3 ;
F_PRREQ equ (F_PCONT<<4)+4 ;
F_RUSH equ (F_PCONT<<4)+5 ;
F_REDBAK equ (F_PCONT<<4)+6 ;
P_MOVE equ (F_PCONT<<4)+7 ;=1 under printer moving
;F_PRSTB equ (F_PCONT+1<<4)+0 ;
F_LPRN equ (F_PCONT+1<<4)+0 ;
F_EXFED equ (F_PCONT+1<<4)+1 ;
F_RVSE equ (F_PCONT+1<<4)+2 ;
F_RVREQ equ (F_PCONT+1<<4)+3 ;
F_STBDLY equ (F_PCONT+1<<4)+4 ;
F_CHPOFF equ (F_PCONT+1<<4)+5 ;
F_REVCAN equ (F_PCONT+1<<4)+6 ;
F_STBON equ (F_PCONT+1<<4)+7 ;
F_SSTB equ (F_PCONT+2<<4)+0 ;
F_BHLD equ (F_PCONT+2<<4)+1 ;
F_ACC equ (F_PCONT+2<<4)+2 ;accelaration phase LTP8235 only
P_ERR equ (F_PCONT+2<<4)+3 ;
P_NP equ (F_PCONT+2<<4)+4 ;
P_RED equ (F_PCONT+2<<4)+5 ;
IO_MT equ (F_PCONT+2<<4)+6 ;
F_TRAN equ (F_PCONT+2<<4)+7 ;
;P0 bit assigment............................
;SW_LTP,STB2,STB1,LAT;EP_DIO,EP_SK,EP_CS
;SW_LTP equ (P0DR<<4)+0 ;
;M_COM_SPACE equ (P0DR<<4)+1 ;
STB2 equ (P0DR<<4)+2 ;
STB1 equ (P0DR<<4)+3 ;
LAT equ (P0DR<<4)+4 ;
;EP_DIO equ (P0DR<<4)+5 ;
;EP_SK equ (P0DR<<4)+6 ;
;EP_CS equ (P0DR<<4)+7 ;
;P1 bit assignment...........................
;key return0 equ (P1PRD<<4)+0
;key return1 equ (P1PRD<<4)+1
;key return2 equ (P1PRD<<4)+2
;key return3 equ (P1PRD<<4)+3
;key return4 equ (P1PRD<<4)+4
;key return5 equ (P1PRD<<4)+5
;key return6 equ (P1PRD<<4)+6
;key return7 equ (P1PRD<<4)+7
;P2 bit assignment...........................
IO_PF equ (P2PRD<<4)+0 ;;power failure check
; equ (P2DR<<4)+1 ;
; equ (P2DR<<4)+2 ;
;P3 bit assignment...........................
;M_5514T equ (P3PRD<<4)+0 ;P30 0:3212T, 1:5514T
;P31
;P4 bit assigment............................
;ENA2,ENA1,IN1,IN2
; equ (P4DR<<4)+0 ;
; equ (P4DR<<4)+1 ;
; equ (P4DR<<4)+2 ;
ENA2 equ (P4DR<<4)+3 ;
ENA1 equ (P4DR<<4)+4 ;
IN1 equ (P4DR<<4)+5 ;
IN2 equ (P4DR<<4)+6 ;
; equ (P4DR<<4)+7
;P5 bit assignment...........................
;SLID_RT0,SLID_RT1,SLID_RT2,SLID_RT3
SLID_RT0 equ (P5DR<<4)+0 ;
SLID_RT1 equ (P5DR<<4)+1 ;
SLID_RT2 equ (P5DR<<4)+2 ;
SLID_RT3 equ (P5DR<<4)+3 ;
;P6 bit assignment...........................
;G1,G2,G3,G4,G5,G6,G7,G8
G1 equ (P6DR<<4)+0
G2 equ (P6DR<<4)+1
G3 equ (P6DR<<4)+2
G4 equ (P6DR<<4)+3
G5 equ (P6DR<<4)+4
G6 equ (P6DR<<4)+5
G7 equ (P6DR<<4)+6
G8 equ (P6DR<<4)+7
;P7 bit assignment...........................
;G9,G10,G11,G12,G13,G14,G15
G9 equ (P7DR<<4)+0
G10 equ (P7DR<<4)+1
G11 equ (P7DR<<4)+2
G12 equ (P7DR<<4)+3
G13 equ (P7DR<<4)+4
G14 equ (P7DR<<4)+5
G15 equ (P7DR<<4)+6
SEG_dp equ (P7DR<<4)+7
;P8 bit assignment...........................
SEGMENT equ P8DR
SEG_a equ (P8DR<<4)+0
SEG_b equ (P8DR<<4)+1
SEG_f equ (P8DR<<4)+2
SEG_g equ (P8DR<<4)+3
SEG_c equ (P8DR<<4)+4
SEG_e equ (P8DR<<4)+5
SEG_d equ (P8DR<<4)+6
SEG_COM equ (P8DR<<4)+7
SEG_E equ (P8DR<<4)+2
SEG_MIN equ (P8DR<<4)+1
SEG_M equ (P8DR<<4)+0
; equ (P8DR<<4)+6
;P9 bit assignment...........................
;key_scan0 equ (P9DR<<4)+0 ;
;key_scan1 equ (P9DR<<4)+1 ;
;key_scan2 equ (P9DR<<4)+2 ;
;key_scan3 equ (P9DR<<4)+2 ;
;key_scan4 equ (P9DR<<4)+4 ;
;key_scan5 equ (P9DR<<4)+5 ;
;key_scan6 equ (P9DR<<4)+6 ;
;key_scan7 equ (P9DR<<4)+7 ;
;Pd bit assignment...........................
;
;=========================================================================
F_INTEREST equ (FINANCE_0<<4)+0;F_INTEREST=1 when F_TNKY=1
F_AMOUNT equ (FINANCE_0<<4)+1;F_AMOUNT=1 when F_TNKY=1
F_MONTH equ (FINANCE_0<<4)+2;F_MONTH=1 when F_TNKY=1
F_PAYMENT equ (FINANCE_0<<4)+3;F_PAYMENT=1 when F_TNKY=1
F_MODIFIED equ (FINANCE_0<<4)+4;Flag showing it is any FN items have been modified in prior
F_CAL_AMOUNT equ (FINANCE_0<<4)+5;Flag showing that need calculation on Loan Amount
F_CAL_MONTH equ (FINANCE_0<<4)+6;Flag showing that need calculation on Month
F_CAL_PAYMENT equ (FINANCE_0<<4)+7;Flag showing that need calculation on Monthly Payment
F_FNEABL equ (FINANCE_1<<4)+0;finance calculate enable
F_FINBUSY equ (FINANCE_1<<4)+1;in finance compute
F_FINAL equ (FINANCE_1<<4)+2;indicate the latest compute, after this compute, finish calculation
F_FINCAL equ (FINANCE_1<<4)+3;flag for amortize calcumate mode
F_FNRECALL equ (FINANCE_1<<4)+4;flag for amortize recall after computed
;mode flag set:
SW_LTP equ (FLG_MODE<<4)+0
M_COM_SPACE equ (FLG_MODE<<4)+1
M_5514T equ (FLG_MODE<<4)+2 ;V4.02 1:5514T model, 0:3212T model
;V4.02 M_FX_AC equ (FLG_MODE<<4)+2
M_FX_AC equ (FLG_MODE<<4)+3 ;V4.01
M_FINANCE equ (FLG_MODE<<4)+3
M_TX2 equ (FLG_MODE<<4)+4
M_M2 equ (FLG_MODE<<4)+5
F_DOFF equ (FLG_MODE<<4)+6
M_TX1 equ (FLG_MODE<<4)+7 ;used for [tx1][tx2][+]
M_FX_M14 equ (FLG_MODE+1<<4)+0 ;V4.07 fix flag for M14
M_FX_V15 equ (FLG_MODE+1<<4)+1 ;fixed flag for slid 'V15'
M_FX_SD equ (FLG_MODE+1<<4)+2 ;fixed flag for slid '#/D'
M_FX_SGM equ (FLG_MODE+1<<4)+3 ;fixed flag for slid 'sgm'
M_FX_TA equ (FLG_MODE+1<<4)+4 ;fixed flag for slid 'ta' logic
M_FX_54 equ (FLG_MODE+1<<4)+5 ;fixed flag for slid 'round5/4'
F_POWER equ (FLG_MODE+1<<4)+6;temporary flag for AC power on
F_BLINK equ (FLG_MODE+1<<4)+7 ;for VFT blink
end ;
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -