📄 system.lst
字号:
<
< .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_
<
< .EXTERNAL F_SP_GetResource
<
< //////////////////////////////////////////////////////////////////
< // Reserve old defintion
< // Note: Some user who use old library may use the old name
< //////////////////////////////////////////////////////////////////
< .EXTERNAL F_SP_Send_PWM // Get RAW data
< .EXTERNAL F_SP_Send_DAC1 //
< .EXTERNAL F_SP_Send_DAC2 //
<
< .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
< //========================================================================================
.include key.inc;
< //========================================================================================
< // Progarm: The head file for pcplay.asm
< // Wrote by: Andy Hsu
< // Last modified date:
< // 2000/06/23: first version
< // 2000/07/20: modified
< //========================================================================================
<
< .EXTERNAL F_Key_Scan_Initial;
< .EXTERNAL F_Key_Scan_ServiceLoop; // 1 scan line +Vcc
< .EXTERNAL F_Key_Scan_ServiceLoop_2; // 2 scan line +Vcc / IOA
< .EXTERNAL F_Key_DebounceCnt_Down;
< .EXTERNAL F_SP_GetCh;
.public R_SpeechType;
000001AA .RAM
000001AA 00 00 .VAR R_SpeechType;
00008F03 .CODE
.public _System_Initial;
.public F_System_Initial;
_System_Initial: .PROC
F_System_Initial:
//push BP,BP to [SP]; //add if some parameters in
//BP = SP + 1;
//r1 = [BP+3];
//r2 = [BP+4];
00008F03 40 F0 06 8F call F_User_Init_IO; // For keyboard scan
// Add other general initialization here
//r1 =0x0001; // return value
//pop BP,BP from [SP];
00008F05 90 9A retf;
.ENDP;
///////////////////////////////////////////////
F_User_Init_IO:
00008F06 40 92 R1 = 0x0000;
00008F07 19 D3 02 70 [P_IOA_Dir] = R1; //
00008F09 19 D3 00 70 [P_IOA_Data] = R1; //
00008F0B 40 92 R1 = 0x0000;
00008F0C 19 D3 03 70 [P_IOA_Attrib] = R1; //
00008F0E 90 9A retf;
.public _System_ServiceLoop;
.public F_System_ServiceLoop;
_System_ServiceLoop: .PROC
F_System_ServiceLoop:
00008F0F 40 F0 16 8E call F_Key_DebounceCnt_Down; //
00008F11 40 F0 B0 8D call F_Key_Scan_ServiceLoop; //
00008F13 41 92 R1=0x0001; //
00008F14 19 D3 12 70 [P_Watchdog_Clear]=R1; //
00008F16 90 9A retf;
.ENDP;
.public _Clear_WatchDog;
_Clear_WatchDog: .PROC
00008F17 41 92 R1=0x0001; // Clear watch dog
00008F18 19 D3 12 70 [P_Watchdog_Clear]=R1;
00008F1A 90 9A retf;
.ENDP
//=========================================//
//函数名称:RunTime2Hz()
//=========================================//
.public _RunTime2Hz; //初始化中断为2HZ定时中断源
_RunTime2Hz: .proc
00008F1B 44 92 r1 = 0x0004;
00008F1C 19 D3 10 70 [P_INT_Ctrl] = r1;
00008F1E 41 F1 INT IRQ; //开中断
00008F1F 90 9A retf
.endp;
//=========================================//
//函数名称:OffTime2Hz()
//========================================//
.public _OffTime2Hz;
_OffTime2Hz: .proc
00008F20 11 93 10 70 r1 = [P_INT_Ctrl]
00008F22 09 B3 FB FF r1 &= 0xfffb;
00008F24 19 D3 10 70 [P_INT_Ctrl] = r1;
00008F26 40 92 r1 = 0x0000
00008F27 19 D3 40 02 [_sum] = r1;
00008F29 90 9A retf;
.endp;
//=======================================//
//DataBusTest()
//=======================================//
.public _DataBusTest;
_DataBusTest: .proc
00008F2A 40 92 r1=0x0000 //初始化A口为输入端
00008F2B 19 D3 02 70 [P_IOA_Dir]=r1
00008F2D 19 D3 03 70 [P_IOA_Attrib]=r1
00008F2F 19 D3 00 70 [P_IOA_Data]=r1
//初始化B口为输出端
00008F31 09 93 FF FF r1=0xffff
00008F33 19 D3 07 70 [P_IOB_Dir]=r1
00008F35 19 D3 08 70 [P_IOB_Attrib]=r1
00008F37 40 92 r1=0x0000
00008F38 19 D3 05 70 [P_IOB_Data]=r1
00008F3A 09 93 FF FF r1=0xffff
00008F3C 19 D3 05 70 [P_IOB_Data]=r1
loop1:
00008F3E 00 EE nop;
00008F3F 00 EE nop;
00008F40 00 EE nop;
00008F41 00 EE nop;
00008F42 00 EE nop;
00008F43 12 95 00 70 r2 = [P_IOA_Data]
00008F45 01 45 cmp r2,r1
00008F46 01 4E jne exit;
00008F47 4A EE jmp loop1;
exit:
00008F48 90 9A retf;
.endp
0 error(s), 0 warning(s).
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -