📄 function.src
字号:
ITMD :1000,WR_DATA5
ITMD :1000,WR_DATA4
LBR UPRDO2
UPRDO1
ITMD :1001,WR_DATA5
ITMD :1000,WR_DATA4
UPRDO2
ITMD :0000,WR_DATA3
ITMD :0000,WR_DATA2
ITMD :0000,WR_DATA1
ITMD :0000,WR_DATA0
SMD P_RDODAT
CALL CLK_HIGH
CALL CLK_LOW
CALL WR_DAT
RMD P_RDOCLK
ITMD :1101,DBUF
SMD 2,PMODB
SMD P_RDODAT
SMD IE
RET
SCHDNRDO
RMD IE
CALL DIS_MUTE
CALL DELAY
CALL EN_WR
TMD F_AMFM
LBR SCHNRDO1
ITMD :0000,WR_DATA5
ITMD :1010,WR_DATA4
LBR SCHNRDO2
SCHNRDO1
ITMD :0001,WR_DATA5
ITMD :1000,WR_DATA4
SCHNRDO2
ITMD :0000,WR_DATA3
ITMD :0000,WR_DATA2
ITMD :0000,WR_DATA1
ITMD :0000,WR_DATA0
SMD P_RDODAT
CALL CLK_HIGH
CALL CLK_LOW
CALL WR_DAT
RMD P_RDOCLK
ITMD :1101,DBUF
SMD 2,PMODB
SMD P_RDODAT
SMD IE
RET
;=====================================================
;=====================================================
SAV_V_FM
CALL G_FMADDR
MTAD FM_VALU0
ATMIY
MTAD FM_VALU1
ATMIY
MTAD FM_VALU2
ATMIY
MTAD FM_VALU3
ATMIY
MTAD FM_LCT0
ATMIY
MTAD FM_LCT1
ATMIY
MTAD FM_LCT2
ATM
RET
GET_V_FM
CALL G_FMADDR
MTA
ATMD FM_VALU0
IY
MTA
ATMD FM_VALU1
IY
MTA
ATMD FM_VALU2
IY
MTA
ATMD FM_VALU3
IY
MTA
ATMD FM_LCT0
IY
MTA
ATMD FM_LCT1
IY
MTA
ATMD FM_LCT2
RET
;=====================================================
;=====================================================
SAV_V_AM
CALL G_AMADDR
MTAD AM_VALU0
ATMIY
MTAD AM_VALU1
ATMIY
MTAD AM_VALU2
ATMIY
MTAD AM_VALU3
ATMIY
MTAD AM_LCT0
ATMIY
MTAD AM_LCT1
ATMIY
MTAD AM_LCT2
ATM
RET
GET_V_AM
CALL G_AMADDR
MTA
ATMD AM_VALU0
IY
MTA
ATMD AM_VALU1
IY
MTA
ATMD AM_VALU2
IY
MTA
ATMD AM_VALU3
IY
MTA
ATMD AM_LCT0
IY
MTA
ATMD AM_LCT1
IY
MTA
ATMD AM_LCT2
RET
;====================================================
ON_RDO
SMD P_RDOON
RMD F_SETFG
ITMD $0,SCH_STE
MTAD VOL_CNT
CALL CTRL_VOL
TMD F_AMFM
BR ON_RDO2
CALL FM_BAND
BR ON_RDO1
ON_RDO2
CALL AM_BAND
ON_RDO1
SMD F_RDOEN
; CALL RDO_MUTE
RES_RDO
ITMD $8,RDOMOD
ITMD $0,FUNCMOD
RMD F_PROG
CALL ICONDSP
ITMD $f,TIME_CNT
CALL CLRNAME
CALL DSPCHAR
RET
;====================================================
SCH_RDO
MTAD TIME_CNT
AAI $F
LBR SCH_RDOE
ITMD $3,TIME_CNT
TMD F_RDOEN
CALL ONWRRDO
TMD F_SETFG
CALL SETPROG
INEMD $0,SCH_STE
BR SCH_RDO1
BR SCH_RDOR
SCH_RDOE
ATMD TIME_CNT
SCH_RDOR
RET
;----------------------------
SCH_RDO1
ITMD $A,RES_TIME
INEMD $1,SCH_STE
LBR SCH_RDO2
TMD KEYACT
BR SCHRDO11
ITMD $0,SCH_STE
CALL WR_RDO
BR SCH_RDOR
SCHRDO11
ITMD $2,SCH_STE
LBR SCH_RDOR
SCH_RDO2
INEMD $2,SCH_STE
LBR SCH_RDO3
TMD KEYACT
LBR SCHRDO21
CALL WR_RDO
ITMD $3,SCH_STE
ITMD $0,TIME_CNT
LBR SCH_RDOR
SCHRDO21
TMD F_AMFM
LBR SCHRO211
CALL INC_V_FM
CALL FM_BAND
LBR SCH_RDOR
SCHRO211
CALL INC_V_AM
CALL AM_BAND
LBR SCH_RDOR
SCH_RDO3
INEMD $3,SCH_STE
LBR SCH_RDO4
CALL SCHUPRDO
CALL DIS_MUTE
ITMD $4,SCH_STE
ITMD $8,TIME_CNT
LBR SCH_RDOR
SCH_RDO4
INEMD $4,SCH_STE
LBR SCH_RDO5
CALL RD_RDO
LBR SCHRDO46 ;
TMD F_AMFM
LBR SCHRDO41
CALL CHKFMVLU
LBR SCHRDO42
LBR SCHRDO43
SCHRDO46
TMD F_AMFM
LBR SCHRDO47
CALL INC_V_FM
CALL FM_BAND
TMD F_SRCEND
LBR SCHRDO55
LBR SCHRDORR
SCHRDO47
CALL INC_V_AM
CALL AM_BAND
TMD F_SRCEND
LBR SCHRDO55
LBR SCHRDORR
SCHRDO42
ITMD $2,WR_DATA0
ITMD $5,WR_DATA1
ITMD $1,WR_DATA2
ITMD $8,WR_DATA3
SCHRDO43
ITMD $5,SCH_STE
LBR SCHRDO51
SCHRDO41
CALL CHKAMVLU
BR SCHRDO44
BR SCHRDO43
SCHRDO44
ITMD $0,WR_DATA0
ITMD $8,WR_DATA1
ITMD $7,WR_DATA2
ITMD $0,WR_DATA3
LBR SCHRDO43
;-----------------------------
SCH_RDO5
INEMD $5,SCH_STE
LBR SCHRDODN
TMD F_AMFM
BR SCHRDO53
CALL INC_V_FM
CALL FM_BAND
BR SCHRDO51
SCHRDO53
CALL INC_V_AM
CALL AM_BAND
SCHRDO51
TMD F_AMFM
LBR SCHRDO56
CALL CHKFMEQU
LBR SCHRDO52
SCHRDO55
CALL WR_RDO
ITMD $0,SCH_STE
LBR SCHRDORR
SCHRDO56
CALL CHKAMEQU
BR SCHRDO52
LBR SCHRDO55
SCHRDO52
CALL RDO_MUTE
SCHRDORR
RET
;=====================================
SCHRDODN
INEMD $8,SCH_STE
LBR SCHRRDO1
TMD KEYACT
BR SCHNRD01
ITMD $0,SCH_STE
CALL WR_RDO
LBR SCHRDORR
SCHNRD01
ITMD $9,SCH_STE
LBR SCHRDORR
SCHRRDO1
INEMD $9,SCH_STE
LBR SCHRRDO2
TMD KEYACT
LBR SCHNRD11
CALL WR_RDO
ITMD $A,SCH_STE
ITMD $0,TIME_CNT
LBR SCHRDORR
SCHNRD11
TMD F_AMFM
BR SCHNRD12
CALL DEC_V_FM
CALL FM_BAND
LBR SCHRDORR
SCHNRD12
CALL DEC_V_AM
CALL AM_BAND
LBR SCHRDORR
SCHRRDO2
INEMD $A,SCH_STE
BR SCHNRDO3
CALL SCHDNRDO
CALL DIS_MUTE
ITMD $B,SCH_STE
LBR SCHRDORR
SCHNRDO3
INEMD $B,SCH_STE
LBR SCHNRDO5
CALL RD_RDO
LBR SCHNRD36 ;TOTTI
TMD F_AMFM
LBR SCHNRD31
CALL CHKFMVLU
LBR SCHNRD32
LBR SCHNRD33
SCHNRD36
TMD F_AMFM
LBR SCHNRD37
CALL DEC_V_FM
CALL FM_BAND
TMD F_SRCEND
LBR SCHNRD55
LBR SCHRDORR
SCHNRD37
CALL DEC_V_AM
CALL AM_BAND
TMD F_SRCEND
LBR SCHNRD55
LBR SCHRDORR
SCHNRD32
ITMD $2,WR_DATA0
ITMD $5,WR_DATA1
ITMD $1,WR_DATA2
ITMD $8,WR_DATA3
SCHNRD33
ITMD $C,SCH_STE
LBR SCHNRD51
SCHNRD31
CALL CHKAMVLU
BR SCHNRD34
LBR SCHNRD33
SCHNRD34
ITMD $0,WR_DATA0
ITMD $8,WR_DATA1
ITMD $7,WR_DATA2
ITMD $0,WR_DATA3
LBR SCHNRD33
;-----------------------------
SCHNRDO5
INEMD $C,SCH_STE
LBR SCHRDRRR
TMD F_AMFM
BR SCHNRD53
CALL DEC_V_FM
CALL FM_BAND
BR SCHNRD51
SCHNRD53
CALL DEC_V_AM
CALL AM_BAND
SCHNRD51
TMD F_AMFM
LBR SCHNRD56
CALL CHKFMEQU
LBR SCHNRD52
SCHNRD55
CALL WR_RDO
ITMD $0,SCH_STE
LBR SCHRDRRR
SCHNRD56
CALL CHKAMEQU
BR SCHNRD52
LBR SCHNRD55
SCHNRD52
CALL RDO_MUTE
SCHRDRRR
RET
;---------------------------------------------
; 1EB0 <= X <= 2518
;---------------------------------------------
CHKFMVLU
ITA $8
ANDMD WR_DATA3
ATMD WR_DATA3
INEMD $2,WR_DATA0
LBR CHKFVLU1
ILEMD $6,WR_DATA1
BR CHKFVLER
INEMD $5,WR_DATA1
BR CHKFVLEQ
ILEMD $2,WR_DATA2
BR CHKFVLER
BR CHKFVLEQ
CHKFVLU1
INEMD $1,WR_DATA0
BR CHKFVLER
INEMD $F,WR_DATA1
BR CHKFVLU2
BR CHKFVLEQ
CHKFVLU2
INEMD $E,WR_DATA1
BR CHKFVLER
ILEMD $B,WR_DATA2
BR CHKFVLEQ
BR CHKFVLER
CHKFVLEQ
RC
TC
CHKFVLER
RET
;--------------------------------------
CHKFMEQU
MTAD FM_VALU0
ANEMD WR_DATA0
LBR CHKFMEQR
MTAD FM_VALU1
ANEMD WR_DATA1
LBR CHKFMEQR
MTAD FM_VALU2
ANEMD WR_DATA2
BR CHKFMEQR
MTAD FM_VALU3
ANEMD WR_DATA3
BR CHKFMEQR
RC
TC
CHKFMEQR
RET
;---------------------------------------------
; 03CA <= X <= 0870
;---------------------------------------------
CHKAMVLU
INEMD $0,WR_DATA0
LBR CHKAVLER
ILEMD $9,WR_DATA1
LBR CHKAVLER
INEMD $8,WR_DATA1
LBR CHKAVLE1
ILEMD $8,WR_DATA2
LBR CHKAVLER
INEMD $7,WR_DATA2
LBR CHKAVLEQ
INEMD $0,WR_DATA3
LBR CHKAVLER
LBR CHKAVLEQ
CHKAVLE1
ILEMD $4,WR_DATA1
BR CHKAVLEQ
INEMD $3,WR_DATA1
BR CHKAVLER
ILEMD $C,WR_DATA2
BR CHKAVLEQ
BR CHKAVLER
CHKAVLEQ
RC
TC
CHKAVLER
RET
;--------------------------------------
CHKAMEQU
MTAD AM_VALU0
ANEMD WR_DATA0
LBR CHKAMEQR
MTAD AM_VALU1
ANEMD WR_DATA1
LBR CHKAMEQR
MTAD AM_VALU2
ANEMD WR_DATA2
BR CHKAMEQR
; MTAD AM_VALU3
; ANEMD WR_DATA3
; BR CHKAMEQR
RC
TC
CHKAMEQR
RET
;================================================
;
;================================================
SETPROG
RMD F_SETFG
TMD KEYACT
BR SETPROG1
ITMD $C,RDOMOD
CALL UPSSETC2
BR SETPROGR
SETPROG1
ITMD $B,RDOMOD
CALL UPSETCH4
SETPROGR
RET
;===============================================
PSETFDSP
CALL CLRDBUF
ITMD $D,LCDBUF0
ITMD $C,LCDBUF1
MTAD V_FMPSET
ATMD LCDBUF2
CALL G_V_FM
CALL DSPDBUF
RET
PSETADSP
CALL CLRDBUF
ITMD $D,LCDBUF0
ITMD $C,LCDBUF1
MTAD V_AMPSET
ATMD LCDBUF2
CALL G_V_AM
CALL DSPDBUF
RET
;========================================
UPSETCH
CALL CLRDBUF
MTAD V_PSET
AAI $1
ALEI $9
BR UPSETCH1
UPSETCH4
ITA $0
UPSETCH1
ATMD V_PSET
UPSETCH2
ATMD LCDBUF2
ITMD $D,LCDBUF0
ITMD $C,LCDBUF1
TMD F_AMFM
LBR UPSETCH3
CALL G_V_FM
CALL DSPDBUF
RET
UPSETCH3
CALL G_V_AM
CALL DSPDBUF
RET
;===============================================
DNSETCH
CALL CLRDBUF
MTAD V_PSET
AAI $F
LBR UPSETCH1
ITA $9
LBR UPSETCH1
;=================================================
RDO_OFF
RMD P_RDOON
RMD F_SETFG
ITMD $0,SCH_STE
ITMD $0,RDOMOD
RMD F_PROG
RMD F_SLEEP
CALL CLRDBUF
CALL DSPDBUF
CALL ICONDSP
INEMD $0,FLAG64
BR RDOOFFR
CALL CLRNAME
CALL DSPCHAR
RDOOFFR
RET
;========================================================
;
;========================================================
ONWRRDO
CALL WR_RDO
RMD F_RDOEN
RET
;========================================================
; FUNCTION AND RDO RES
;========================================================
FUNCRELE
MTAD RES_TIME
AAI $F
BR FUNCRELR
INEMD $0,FUNCMOD
LBR FUNDCLKL
TMD F_RDOON
BR FUNCREL1
RET
FUNCREL1
INEMD $8,RDOMOD
LBR RES_RDO
TMD F_PROG
CALL RDOCSET6
RET
FUNCRELR
ATMD RES_TIME
RET
;========================================================
;
;========================================================
TSLEEP
TMD F_SLEEP
BR TSLEEP1
RET
TSLEEP1
; CALL CHK_P9
MTAD SLEEPTM1
AAI $F
ATMD SLEEPTM1
BR TSLEEPR
MTAD SLEEPTM2
AAI $F
ATMD SLEEPTM2
BR TSLEEPR
CALL RDO_OFF
TSLEEPR
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -