📄 conf_tny.lst
字号:
611 ;------------------------------------------------
612 IF (TIMESHARING <> 0)
RobinOn: MOV @R0,A
SETB EA
IF (CODE_BANKING)
POP ACC
CALL ?B_RESTORE_BANK
ENDIF
POP AR7
POP AR6
POP AR5
POP AR4
POP AR3
POP AR2
POP AR1
POP AR0
POP DPL
POP DPH
POP B
POP PSW
POP ACC
CLR ?RTX_TS_DELAY
RET ; Restart Task
ENDIF
635 ; }
636 ; }
637
638
639
640 ;------------------------------------------------
641 ; Start RTX-51 Tiny Kernel
642 ;------------------------------------------------
643
644 EXTRN CODE (?C_STARTUP)
645 PUBLIC main
646
00EF 7800 F 647 main: MOV R0,#?RTX?TASKSP?S
00F1 A681 648 MOV @R0,SP
00F3 7400 F 649 MOV A,#?RTX_MAXTASKN
00F5 6006 650 JZ main2
00F7 FF 651 MOV R7,A
00F8 08 652 main1: INC R0
00F9 76FF 653 MOV @R0,#RAMTOP
00FB DFFB 654 DJNZ R7,main1
00FD 7F00 F 655 main2: MOV R7,#?RTX_MAXTASKN+1
00FF E4 656 CLR A
A51 MACRO ASSEMBLER CONF_TNY 04/08/2008 14:55:39 PAGE 11
0100 7800 F 657 MOV R0,#?RTX?TASKSTATE?S
0102 F6 658 main1x: MOV @R0,A
0103 08 659 INC R0
0104 F6 660 MOV @R0,A
0105 08 661 INC R0
0106 DFFA 662 DJNZ R7,main1x
0108 7800 F 663 MOV R0,#?RTX?TASKSTATE?S+1
010A 7630 664 MOV @R0,#K_ACTIVE+K_READY
010C 900000 F 665 MOV DPTR,#?RTX?TASKENT?S
010F 7401 666 MOV A,#1
0111 93 667 MOVC A,@A+DPTR
0112 C0E0 668 PUSH ACC
0114 E4 669 CLR A
0115 93 670 MOVC A,@A+DPTR
0116 C0E0 671 PUSH ACC
672 IF (TIMESHARING <> 0)
MOV ?RTX_ROBINTIME,#TIMESHARING
ENDIF
0118 438901 675 ORL TMOD,#01H ; Timer 0 Mode 1
011B 758AE0 676 MOV TL0,#LOW (?RTX_CLOCK)
011E 758CB1 677 MOV TH0,#HIGH (?RTX_CLOCK)
0121 D28C 678 SETB TR0
0123 D2AF 679 SETB EA
0125 D2A9 680 SETB ET0
0127 22 681 RET ; Start Task 0
682
683
684 ;------------------------------------------------
685
686 PUBLIC ?RTX_TASKIDX
0128 00 F 687 ?RTX_TASKIDX: DB ?RTX_MAXTASKN ; for Debugging
688
689 END
A51 MACRO ASSEMBLER CONF_TNY 04/08/2008 14:55:39 PAGE 12
SYMBOL TABLE LISTING
------ ----- -------
N A M E T Y P E V A L U E ATTRIBUTES
?B_CURRENTBANK . . D ADDR ----- EXT
?B_RESTORE_BANK. . C ADDR ----- EXT
?C0001 . . . . . . C ADDR 0057H R SEG=?RTX?CODE
?C0003 . . . . . . C ADDR 006BH R SEG=?RTX?CODE
?C0005 . . . . . . C ADDR 0070H R SEG=?RTX?CODE
?C0007 . . . . . . C ADDR 008AH R SEG=?RTX?CODE
?C0009 . . . . . . C ADDR 008CH R SEG=?RTX?CODE
?C0011 . . . . . . C ADDR 0096H R SEG=?RTX?CODE
?C0012 . . . . . . C ADDR 00C3H R SEG=?RTX?CODE
?C0013 . . . . . . C ADDR 00A9H R SEG=?RTX?CODE
?C0015 . . . . . . C ADDR 00AEH R SEG=?RTX?CODE
?C0016 . . . . . . C ADDR 00B9H R SEG=?RTX?CODE
?C_STARTUP . . . . C ADDR ----- EXT
?RTX51_TINY_KERNAL N NUMB -----
?RTX?BITS. . . . . B SEG 0001H REL=UNIT
?RTX?CODE. . . . . C SEG 0129H REL=UNIT
?RTX?SET_ISR . . . C ADDR 004BH R SEG=?RTX?CODE
?RTX?TASKENT?S . . C SEG 0002H REL=UNIT
?RTX?TASKSP?S. . . I SEG 0001H REL=UNIT
?RTX?TASKSTATE?S . I SEG 0002H REL=UNIT
?RTX_CLOCK . . . . N NUMB B1E0H A
?RTX_CURRENTTASK . D ADDR 000CH A
?RTX_ISR_SIG . . . B ADDR 0000H.0 R SEG=?RTX?BITS
?RTX_MAXTASKN. . . N ADDR ----- EXT
?RTX_NEXTID. . . . D ADDR 0007H A
?RTX_NEXTTASK. . . C ADDR 006FH R SEG=?RTX?CODE
?RTX_RAMTOP. . . . N NUMB 00FFH A
?RTX_REGISTERBANK. N NUMB 0008H A
?RTX_SAVEACC . . . D ADDR 000AH A
?RTX_SAVEPSW . . . D ADDR 000BH A
?RTX_STACKERROR. . C ADDR 0000H R SEG=?RTX?CODE
?RTX_TASKENTRY . . C ADDR 0000H R SEG=?RTX?TASKENT?S
?RTX_TASKIDX . . . C ADDR 0128H R SEG=?RTX?CODE
?RTX_TASKSP. . . . I ADDR 0000H R SEG=?RTX?TASKSP?S
?RTX_TASKSTATUS. . I ADDR 0000H R SEG=?RTX?TASKSTATE?S
ACC. . . . . . . . D ADDR 00E0H A
AR7. . . . . . . . D ADDR 0007H A
B. . . . . . . . . D ADDR 00F0H A
B_ACTIVE . . . . . N NUMB 0005H A
B_IVL. . . . . . . N NUMB 0007H A
B_RDY. . . . . . . N NUMB 0007H A
B_READY. . . . . . N NUMB 0004H A
B_ROBIN. . . . . . N NUMB 0006H A
B_SIGNAL . . . . . N NUMB 0002H A
B_TIMEOUT. . . . . N NUMB 0003H A
B_WAITSIG. . . . . N NUMB 0000H A
B_WAITTIM. . . . . N NUMB 0001H A
CHECKSTACK . . . . C ADDR 0029H R SEG=?RTX?CODE
CODE_BANKING . . . N NUMB 0001H A
CPU_IDLE_CODE. . . N NUMB 0001H A
CURRENTTASK. . . . REG R4
DPH. . . . . . . . D ADDR 0083H A
DPL. . . . . . . . D ADDR 0082H A
EA . . . . . . . . B ADDR 00A8H.7 A
ES . . . . . . . . B ADDR 00A8H.4 A
ET0. . . . . . . . B ADDR 00A8H.1 A
ET1. . . . . . . . B ADDR 00A8H.3 A
EX0. . . . . . . . B ADDR 00A8H.0 A
EX1. . . . . . . . B ADDR 00A8H.2 A
FREE_STACK . . . . N NUMB 0014H A
A51 MACRO ASSEMBLER CONF_TNY 04/08/2008 14:55:39 PAGE 13
HW_TIMER . . . . . C ADDR 0004H R SEG=?RTX?CODE
IE . . . . . . . . D ADDR 00A8H A
IE0. . . . . . . . B ADDR 0088H.1 A
IE1. . . . . . . . B ADDR 0088H.3 A
INT_CLOCK. . . . . N NUMB 4E20H A
INT_REGBANK. . . . N NUMB 0001H A
IT0. . . . . . . . B ADDR 0088H.0 A
IT1. . . . . . . . B ADDR 0088H.2 A
K_ACTIVE . . . . . N NUMB 0020H A
K_IVL. . . . . . . N NUMB 0080H A
K_RDY. . . . . . . N NUMB 0080H A
K_READY. . . . . . N NUMB 0010H A
K_ROBIN. . . . . . N NUMB 0040H A
K_SIG. . . . . . . N NUMB 0001H A
K_TMO. . . . . . . N NUMB 0002H A
LONG_USR_INTR. . . N NUMB 0000H A
MAIN . . . . . . . C ADDR 00EFH R SEG=?RTX?CODE
MAIN1. . . . . . . C ADDR 00F8H R SEG=?RTX?CODE
MAIN1X . . . . . . C ADDR 0102H R SEG=?RTX?CODE
MAIN2. . . . . . . C ADDR 00FDH R SEG=?RTX?CODE
NOEVENT. . . . . . C ADDR 00E0H R SEG=?RTX?CODE
NOIDLE . . . . . . C ADDR 0064H R SEG=?RTX?CODE
NOTIMEOUT. . . . . C ADDR 0045H R SEG=?RTX?CODE
NOWAITTIMEOUT. . . C ADDR 0043H R SEG=?RTX?CODE
OS_SWITCH_TASK . . C ADDR 004EH R SEG=?RTX?CODE
OS_SWITCH_TASK1. . C ADDR 0050H R SEG=?RTX?CODE
PCON . . . . . . . D ADDR 0087H A
PSW. . . . . . . . D ADDR 00D0H A
RAMTOP . . . . . . N NUMB 00FFH A
RDY_EVENT. . . . . N NUMB 0080H A
SAVEACC. . . . . . REG R2
SAVEPSW. . . . . . REG R3
SIGNALOFF. . . . . C ADDR 00D4H R SEG=?RTX?CODE
SIGNALON . . . . . C ADDR 00E0H R SEG=?RTX?CODE
SIG_EVENT. . . . . N NUMB 0004H A
SP . . . . . . . . D ADDR 0081H A
TASKSTATE. . . . . I ADDR 0001H R SEG=?RTX?TASKSTATE?S
TCON . . . . . . . D ADDR 0088H A
TF0. . . . . . . . B ADDR 0088H.5 A
TF1. . . . . . . . B ADDR 0088H.7 A
TH0. . . . . . . . D ADDR 008CH A
TH1. . . . . . . . D ADDR 008DH A
TIMEOUTON. . . . . C ADDR 00DCH R SEG=?RTX?CODE
TIMERINT . . . . . C ADDR 0005H R SEG=?RTX?CODE
TIMERLOOP. . . . . C ADDR 0035H R SEG=?RTX?CODE
TIMERVAL . . . . . I ADDR 0000H R SEG=?RTX?TASKSTATE?S
TIMESHARING. . . . N NUMB 0000H A
TL0. . . . . . . . D ADDR 008AH A
TL1. . . . . . . . D ADDR 008BH A
TMOD . . . . . . . D ADDR 0089H A
TMO_EVENT. . . . . N NUMB 0008H A
TR0. . . . . . . . B ADDR 0088H.4 A
TR1. . . . . . . . B ADDR 0088H.6 A
REGISTER BANK(S) USED: 0
ASSEMBLY COMPLETE. 0 WARNING(S), 0 ERROR(S)
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -