📄 stepper.lst
字号:
*/ C:\MCC18\src\traditional\startup\c018i.c
static short long prom; C:\MCC18\src\traditional\startup\c018i.c
static unsigned short curr_byte; C:\MCC18\src\traditional\startup\c018i.c
static unsigned short curr_entry; C:\MCC18\src\traditional\startup\c018i.c
static short long data_ptr; C:\MCC18\src\traditional\startup\c018i.c
C:\MCC18\src\traditional\startup\c018i.c
000180 0e2a MOVLW 0x2a // Initialized data... C:\MCC18\src\traditional\startup\c018i.c
000182 6ef6 MOVWF 0xf6,0x0
000184 0e00 MOVLW 0x0
000186 6ef7 MOVWF 0xf7,0x0
000188 0e00 MOVLW 0x0
00018a 6ef8 MOVWF 0xf8,0x0
TBLPTR = (short long)&_cinit; C:\MCC18\src\traditional\startup\c018i.c
00018c 0100 MOVLB 0x0 _asm C:\MCC18\src\traditional\startup\c018i.c
00018e 0009 TBLRDPOSTINC movlb data_ptr C:\MCC18\src\traditional\startup\c018i.c
000190 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
000192 6f85 MOVWF 0x85,0x1 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
000194 0009 TBLRDPOSTINC movwf curr_entry, 1 C:\MCC18\src\traditional\startup\c018i.c
000196 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
000198 6f86 MOVWF 0x86,0x1 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
movwf curr_entry+1, 1 C:\MCC18\src\traditional\startup\c018i.c
_endasm C:\MCC18\src\traditional\startup\c018i.c
//while (curr_entry) C:\MCC18\src\traditional\startup\c018i.c
//{ C:\MCC18\src\traditional\startup\c018i.c
test: C:\MCC18\src\traditional\startup\c018i.c
00019a e103 BNZ 0x1a2 _asm C:\MCC18\src\traditional\startup\c018i.c
00019c 6785 TSTFSZ 0x85,0x1 bnz 3 C:\MCC18\src\traditional\startup\c018i.c
00019e d001 BRA 0x1a2 tstfsz curr_entry, 1 C:\MCC18\src\traditional\startup\c018i.c
bra 1 C:\MCC18\src\traditional\startup\c018i.c
0001a0 d03d BRA 0x21c _endasm C:\MCC18\src\traditional\startup\c018i.c
goto done; C:\MCC18\src\traditional\startup\c018i.c
/* Count down so we only have to look up the data in _cinit C:\MCC18\src\traditional\startup\c018i.c
* once. C:\MCC18\src\traditional\startup\c018i.c
* C:\MCC18\src\traditional\startup\c018i.c
* At this point we know that TBLPTR points to the top of the current C:\MCC18\src\traditional\startup\c018i.c
* entry in _cinit, so we can just start reading the from, to, and C:\MCC18\src\traditional\startup\c018i.c
* size values. C:\MCC18\src\traditional\startup\c018i.c
*/ C:\MCC18\src\traditional\startup\c018i.c
_asm C:\MCC18\src\traditional\startup\c018i.c
0001a2 0009 TBLRDPOSTINC /* read the source address */ C:\MCC18\src\traditional\startup\c018i.c
0001a4 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001a6 6f80 MOVWF 0x80,0x1 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
0001a8 0009 TBLRDPOSTINC movwf prom, 1 C:\MCC18\src\traditional\startup\c018i.c
0001aa 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001ac 6f81 MOVWF 0x81,0x1 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
0001ae 0009 TBLRDPOSTINC movwf prom+1, 1 C:\MCC18\src\traditional\startup\c018i.c
0001b0 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001b2 6f82 MOVWF 0x82,0x1 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
movwf prom+2, 1 C:\MCC18\src\traditional\startup\c018i.c
0001b4 0009 TBLRDPOSTINC /* skip a byte since it's stored as a 32bit int */ C:\MCC18\src\traditional\startup\c018i.c
tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001b6 0009 TBLRDPOSTINC /* read the destination address directly into FSR0 */ C:\MCC18\src\traditional\startup\c018i.c
0001b8 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001ba 6ee9 MOVWF 0xe9,0x0 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
0001bc 0009 TBLRDPOSTINC movwf FSR0L, 0 C:\MCC18\src\traditional\startup\c018i.c
0001be 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001c0 6eea MOVWF 0xea,0x0 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
movwf FSR0H, 0 C:\MCC18\src\traditional\startup\c018i.c
0001c2 0009 TBLRDPOSTINC /* skip two bytes since it's stored as a 32bit int */ C:\MCC18\src\traditional\startup\c018i.c
0001c4 0009 TBLRDPOSTINC tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001c6 0009 TBLRDPOSTINC /* read the destination address directly into FSR0 */ C:\MCC18\src\traditional\startup\c018i.c
0001c8 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001ca 6f83 MOVWF 0x83,0x1 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
0001cc 0009 TBLRDPOSTINC movwf curr_byte, 1 C:\MCC18\src\traditional\startup\c018i.c
0001ce 50f5 MOVF 0xf5,0x0,0x0 tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
0001d0 6f84 MOVWF 0x84,0x1 movf TABLAT, 0, 0 C:\MCC18\src\traditional\startup\c018i.c
movwf curr_byte+1, 1 C:\MCC18\src\traditional\startup\c018i.c
0001d2 0009 TBLRDPOSTINC /* skip two bytes since it's stored as a 32bit int */ C:\MCC18\src\traditional\startup\c018i.c
0001d4 0009 TBLRDPOSTINC tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
tblrdpostinc C:\MCC18\src\traditional\startup\c018i.c
_endasm C:\MCC18\src\traditional\startup\c018i.c
//prom = data_ptr->from; C:\MCC18\src\traditional\startup\c018i.c
//FSR0 = data_ptr->to; C:\MCC18\src\traditional\startup\c018i.c
//curr_byte = (unsigned short) data_ptr->size; C:\MCC18\src\traditional\startup\c018i.c
/* the table pointer now points to the next entry. Save it C:\MCC18\src\traditional\startup\c018i.c
* off since we'll be using the table pointer to do the copying C:\MCC18\src\traditional\startup\c018i.c
* for the entry. C:\MCC18\src\traditional\startup\c018i.c
0001d6 cff6 MOVFF 0xff6,0x87 */ C:\MCC18\src\traditional\startup\c018i.c
0001d8 f087
0001da cff7 MOVFF 0xff7,0x88
0001dc f088
0001de cff8 MOVFF 0xff8,0x89
0001e0 f089
data_ptr = TBLPTR; C:\MCC18\src\traditional\startup\c018i.c
C:\MCC18\src\traditional\startup\c018i.c
0001e2 c080 MOVFF 0x80,0xff6 /* now assign the source address to the table pointer */ C:\MCC18\src\traditional\startup\c018i.c
0001e4 fff6
0001e6 c081 MOVFF 0x81,0xff7
0001e8 fff7
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -