main.asm
来自「完整的方案」· 汇编 代码 · 共 122 行
ASM
122 行
.PUBLIC ___ProgramBeginAddr
.PUBLIC ___ProgramEndAddr
//.INCLUDE HARDWARE.INC
.INCLUDE CONST.INC
.INCLUDE PLAY.INC
.INCLUDE TPLAY.INC
.INCLUDE RAM.INC
.INCLUDE LP.MAC
.EXTERNAL F_SACM_DVR_Stop
.EXTERNAL F_SACM_DVR_Initial
.EXTERNAL _SACM_DVR_InitEncoder
.PUBLIC _main
.CODE
___ProgramBeginAddr:
.INCLUDE SYS.ASM
.INCLUDE PEN.ASM
.INCLUDE DISP.ASM
.INCLUDE SUB.ASM
.INCLUDE BP.ASM
.INCLUDE PRINT.ASM
.INCLUDE SEARCH.ASM
.INCLUDE INDEX.ASM
.INCLUDE CTRS.ASM
.INCLUDE INDEX2.ASM
.INCLUDE TAB.ASM
.INCLUDE IND.INC
.INCLUDE NOR.ASM
.INCLUDE ADJ.ASM
.INCLUDE OTHER.ASM
.INCLUDE DOWN.ASM
.INCLUDE NAND.ASM
.INCLUDE CCHG.ASM
.INCLUDE PLAY.ASM
_main:
INT OFF
R1=0x0080 // system clock
[P_SystemClock]=R1
CALL Delay50ms
INT OFF
R1=0x0080 // system clock
[P_SystemClock]=R1
CALL Delay50ms
R1=1110111111111011B
[P_IOA_Data]=R1
[P_IOA_Buffer]=R1
R1=1111111111111000B
[P_IOA_Attrib]=R1
R1=0111011101111000B // port A
[P_IOA_Dir]=R1
R1=1110111111111011B
[P_IOA_Data]=R1
R1=0xfeff
[P_IOB_Attrib]=R1
R1=0xfe00
[P_IOB_Dir]=R1
R1=nINIT
[P_IOB_Data]=R1
R1=0000000000000011 // TB2=32HZ
[P_TimeBase_Setup]=R1
R1=[P_IOA_Buffer]
R1&=RstB_
[P_IOA_Buffer]=R1
CALL Delay50ms
CALL Delay50ms
R1=[P_IOA_Buffer]
R1|=RstB
[P_IOA_Buffer]=R1
CALL Delay50ms
CALL Delay50ms
CALL ClearWatchDog
CALL PrReset
MainH:
R4=0x1000
MainH0:
R1=[P_IOB_Data]
R1&=0x3f
CMP R1,0x15
JE MainDown
R4-=1
JE _main_
JMP MainH0
MainDown:
PC=DownLoad
_main_:
CALL PcDataOut
CALL IDChip
CALL _InitSacm
CALL Delay50ms
CALL ModeSelect
CMP R1, 0
JE MainIn
PC=DealSysError
MainIn:
R1=[_CardMode]
R1&=0x07
R1+=ModeTab
PC=[R1]
ModeTab:
.DW UnitOff
.DW DSLNormal
.DW MainAdjust
.DW MainOther
.DW MainOther
.DW XYDNormal
.DW MainOther
.INCLUDE ISR.ASM
___ProgramEndAddr:
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?