📄 system.lst
字号:
<
< .EXTERNAL R_InterruptStatus
< //////////////////////////////////////////////////
<
< .EXTERNAL F_SP_Send_PWM // Get RAW data
< .EXTERNAL F_SP_Send_DAC1 //
< .EXTERNAL F_SP_Send_DAC2 //
<
< .EXTERNAL F_SP_RampUpDAC1
< .EXTERNAL F_SP_RampDnDAC1
< .EXTERNAL F_SP_RampUpDAC2
< .EXTERNAL F_SP_RampDnDAC2
<
< .EXTERNAL F_SP_InitQueue
< .EXTERNAL F_SP_InitQueue_A2000
< .EXTERNAL F_SP_InitQueue_S480
< .EXTERNAL F_SP_InitQueue_S240
< .EXTERNAL F_SP_InitQueue_MS01
< .EXTERNAL F_SP_InitQueue_DVR
<
< .EXTERNAL F_SP_ReadQueue
< .EXTERNAL F_SP_ReadQueue_A2000
< .EXTERNAL F_SP_ReadQueue_S480
< .EXTERNAL F_SP_ReadQueue_S240
< .EXTERNAL F_SP_ReadQueue_MS01
< .EXTERNAL F_SP_ReadQueue_DVR
<
< .EXTERNAL F_SP_WriteQueue
< .EXTERNAL F_SP_WriteQueue_A2000
< .EXTERNAL F_SP_WriteQueue_S480
< .EXTERNAL F_SP_WriteQueue_S240
< .EXTERNAL F_SP_WriteQueue_MS01
< .EXTERNAL F_SP_WriteQueue_DVR
<
< .EXTERNAL F_SP_TestQueue
< .EXTERNAL F_SP_TestQueue_A2000
< .EXTERNAL F_SP_TestQueue_S480
< .EXTERNAL F_SP_TestQueue_S240
< .EXTERNAL F_SP_TestQueue_MS01
< .EXTERNAL F_SP_TestQueue_DVR
<
< .EXTERNAL F_SP_ReadQueue_NIC // Read queue with no index change
< .EXTERNAL F_SP_ReadQueue_NIC_A2000
< .EXTERNAL F_SP_ReadQueue_NIC_S480
< .EXTERNAL F_SP_ReadQueue_NIC_S240
< .EXTERNAL F_SP_ReadQueue_NIC_MS01
< .EXTERNAL F_SP_ReadQueue_NIC_DVR
<
<
<
<
< .EXTERNAL F_SP_SACM_A2000_Init_
< .EXTERNAL F_SP_SACM_S480_Init_
< .EXTERNAL F_SP_SACM_S240_Init_
<
< .EXTERNAL F_SP_SACM_MS01_Init_
< .EXTERNAL F_SP_PlayMode0_
< .EXTERNAL F_SP_PlayMode1_
< .EXTERNAL F_SP_PlayMode2_
< .EXTERNAL F_SP_PlayMode3_
<
< .EXTERNAL F_SP_SACM_DVR_Init_
< .EXTERNAL F_SP_SACM_DVR_Rec_Init_
< .EXTERNAL F_SP_SACM_DVR_Play_Init_
< //////////////////////////////////////////////////////////////////
< // Reserve old defintion
< // Note: Some user who use old library may use the old name
< //////////////////////////////////////////////////////////////////
< .EXTERNAL F_STD_Send_DAC1 // reserved old
< .EXTERNAL F_STD_Send_DAC2 // reserved old
<
< .EXTERNAL F_RampUpDAC1 // reserved old
< .EXTERNAL F_RampDnDAC1 // reserved old
< .EXTERNAL F_RampUpDAC2 // reserved old
< .EXTERNAL F_RampDnDAC2 // reserved old
< ///////////////////////////////////////////////////////////////////
<
<
<
< //========================================================================================
< // End of hardware.inc
< //========================================================================================
0000D80D .code
//void memset(void* addr,int value,unsigned int size);
.PUBLIC _System_Initial
0000D80D .CODE
_System_Initial: .PROC
// R1 = 0x0000 ;
0000D80D 09 93 98 00 R1 = 0x0098
0000D80F 19 D3 13 70 [P_SystemClock] = R1; // Initial System Clock, 24MHz, Fcpu=Fosc
0000D811 40 92 R1 = 0x0000
0000D812 19 D3 0E 70 [P_TimeBase_Setup] = R1; //
0000D814 09 93 FF FF R1 = 0xFFFF
0000D816 19 D3 02 70 [P_IOA_Dir] = R1; // Port IOA input
0000D818 19 D3 03 70 [P_IOA_Attrib] = R1; //
0000D81A 40 92 R1 = 0x0000;
0000D81B 19 D3 00 70 [P_IOA_Data] = R1; //
// R1 = 0xFFFF;
0000D81D 09 93 FF C7 R1 = 0xc7ff;
0000D81F 19 D3 07 70 [P_IOB_Dir] = R1; // Port IOB output
0000D821 19 D3 08 70 [P_IOB_Attrib] = R1; //
0000D823 40 92 R1 = 0x0000;
0000D824 19 D3 05 70 [P_IOB_Data] = R1; //
0000D826 19 D3 0B 70 [P_TimerA_Ctrl] = R1; //
0000D828 19 D3 0D 70 [P_TimerB_Ctrl] = R1; //
0000D82A 19 D3 0A 70 [P_TimerA_Data] = R1; //
0000D82C 19 D3 0C 70 [P_TimerB_Data] = R1; //
// [P_Watchdog_Clear] = R1; //
0000D82E 19 D3 21 70 [P_UART_Command1] = R1; //added by hs,2002.4.2
0000D830 19 D3 22 70 [P_UART_Command2] = R1; //added by hs,2002.4.2
0000D832 19 D3 10 70 [P_INT_Ctrl] = R1; // set interrupt control
0000D834 09 93 FF FF R1 = 0xFFFF ;
0000D836 19 D3 11 70 [P_INT_Clear] = R1 ; // clear interrupt register
0000D838 40 92 R1 = 0x0 ;
// BP = SP
// R1 = 0x2ff
// R2 = 0xAAAA
//loop:
// [BP--] = R2
// R1 = R1 -1
// JNZ loop
_SpF_Init_HW_End:
0000D839 41 F1 Int irq
0000D83A 90 9A RETF;
.ENDP;
00000001 .ram
.public _hours,_mins,_secs,_hsec
00000001 00 00 00 00 .var _hours,_mins,_secs,_hsec;
00 00 00 00
//.external R_InterruptStatus
0000D83B .code
.public _F_InitRTC
_F_InitRTC: .proc
0000D83B 40 92 r1 = 0;
0000D83C 19 D3 01 00 [_hours] = r1;
0000D83E 19 D3 02 00 [_mins] = r1;
0000D840 19 D3 03 00 [_secs] = r1;
0000D842 19 D3 04 00 [_hsec] = r1;
// r1 = [R_InterruptStatus];
0000D844 44 A2 r1 |= C_IRQ5_2Hz;
0000D845 19 D3 10 70 [P_INT_Ctrl] = r1;
// [R_InterruptStatus] = r1;
0000D847 90 9A retf;
.endp
.external _nowt
.public _F_InitTcpTmr
_F_InitTcpTmr: .proc
0000D848 40 92 r1 = 0
0000D849 19 D3 05 00 [_nowt] = r1
// r1 = [R_InterruptStatus]
0000D84B 42 A2 r1 |= C_IRQ6_TMB1
0000D84C 19 D3 10 70 [P_INT_Ctrl] = r1
// [R_InterruptStatus] = r1
0000D84E 90 9A retf
.endp
.end
0 error(s), 0 warning(s).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -