📄 conio.asm
字号:
*******************************************************
* TMS320C2x/C2xx/C5x ANSI C Codegen Beta Version 6.63
*******************************************************
; C:\DSP\2XX\DSPTOOLS\CGT\6.63B\dspac.exe -v2xx -i..\h ..\source\conio.c C:\WINDOWS\TEMP\conio.if
; C:\DSP\2XX\DSPTOOLS\CGT\6.63B\dspopt.exe -v2xx -s -O2 C:\WINDOWS\TEMP\conio.if C:\WINDOWS\TEMP\conio.opt
; C:\DSP\2XX\DSPTOOLS\CGT\6.63B\dspcg.exe -v2xx -o -n -o -n -o C:\WINDOWS\TEMP\conio.opt C:\WINDOWS\TEMP\conio.asm C:\WINDOWS\TEMP\conio.tmp
.port
.file "..\source\conio.c"
.file "c:\dsp\2xx\dsptools\cgt\6.63b\stdlib.h"
.sym _size_t,0,14,13,16
.sym _wchar_t,0,4,13,16
.globl _atoi
.globl _atol
.globl _atof
.globl _strtod
.globl _strtol
.globl _strtoul
.stag __div_t,32
.member _quot,0,4,8,16
.member _rem,16,4,8,16
.eos
.sym _div_t,0,8,13,32,__div_t
.stag __ldiv_t,64
.member _quot,0,5,8,32
.member _rem,32,5,8,32
.eos
.sym _ldiv_t,0,8,13,64,__ldiv_t
.globl _div
.globl _ldiv
.globl _rand
.globl _srand
.globl _calloc
.globl _free
.globl _malloc
.globl _minit
.globl _realloc
.globl _abort
.globl _exit
.globl _atexit
.globl _abs
.globl _labs
.globl _qsort
.globl _bsearch
.globl _getenv
.globl _ti_sprintf
.file "c:\dsp\2xx\dsptools\cgt\6.63b\math.h"
.globl _asin
.globl _acos
.globl _atan
.globl _atan2
.globl _ceil
.globl _cos
.globl _cosh
.globl _exp
.globl _fabs
.globl _floor
.globl _fmod
.globl _frexp
.globl _ldexp
.globl _log
.globl _log10
.globl _modf
.globl _pow
.globl _sin
.globl _sinh
.globl _sqrt
.globl _tan
.globl _tanh
.file "..\h\sci.h"
.globl _SCI_Init
.globl _kbhit
.globl _SCI_Getc
.globl _SCI_Sendc
.globl _SCI_Rdy_to_Send
.file "..\h\conio.h"
.globl _getch
.globl _putch
.globl _clrscr
.globl _sendstr_PMEM
.globl _sendstr_DMEM
.globl _getline
.globl _getlong
.globl _atol_F240
.globl _read_PMEM
.file "..\source\conio.c"
.text
.sym _getch,_getch,36,2,0
.globl _getch
.func 52
;>>>> int getch(void)
;>>>> int c;
******************************************************
* FUNCTION DEF : _getch
******************************************************
_getch:
POPD *+
SAR AR0,*+
SAR AR1,*
LAR AR0,*+
*
* AR5 assigned to variable c
*
L2:
*** -----------------------g2:
*** 55 ----------------------- if ( (c = SCI_Getc()) == (-1) ) goto g2;
.line 4
;>>>> while (-1 == (c = SCI_Getc()));
CALL _SCI_Getc,AR1
MAR * ,AR0
SACL *
LAR AR5,*
SAR AR5,*
SSXM
LAC * ,AR1
SUBK -1
BZ L2
*** 56 ----------------------- return c;
.line 5
;>>>> return c;
MAR * ,AR0
SAR AR5,*
LAC *
EPI0_1:
.line 6
MAR * ,AR1
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 57,000000000H,1
.sym _putch,_putch,32,2,0
.globl _putch
.func 63
;>>>> void putch(int c)
******************************************************
* FUNCTION DEF : _putch
******************************************************
_putch:
LF2 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LAR AR0,*+,AR2
.sym _c,-3+LF2,4,9,16
.line 2
L4:
*** -----------------------g2:
*** 65 ----------------------- if ( SCI_Sendc(c) == (-1) ) goto g2;
.line 3
;>>>> while (-1 == SCI_Sendc(c));
LARK AR2,-3+LF2
MAR *0+
LAC * ,AR1
SACL *+
CALL _SCI_Sendc
MAR *-,AR2
SSXM
SUBK -1
BZ L4
*** ----------------------- return;
EPI0_2:
.line 4
MAR * ,AR1
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 66,000000000H,1
.sym _clrscr,_clrscr,32,2,0
.globl _clrscr
.func 72
;>>>> void clrscr(void)
******************************************************
* FUNCTION DEF : _clrscr
******************************************************
_clrscr:
POPD *+
*** 74 ----------------------- sendstr_PMEM("\033c");
.line 3
;>>>> sendstr_PMEM("\x1b\x63"); /* ESC-c */
LRLK AR3,SL0
SAR AR3,*+
CALL _sendstr_PMEM
MAR *-
*** 75 ----------------------- sendstr_PMEM("\017");
.line 4
;>>>> sendstr_PMEM("\x0f");
LRLK AR3,SL1
SAR AR3,*+
CALL _sendstr_PMEM
MAR *-
*** ----------------------- return;
EPI0_3:
.line 5
SBRK 1
PSHD *
RET
.endfunc 76,000000000H,1
.sym _sendstr_PMEM,_sendstr_PMEM,32,2,0
.globl _sendstr_PMEM
.func 88
;>>>> void sendstr_PMEM(char *x)
******************************************************
* FUNCTION DEF : _sendstr_PMEM
******************************************************
_sendstr_PMEM:
LF4 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,2
LAR AR0,*0+
; <save register vars>
SAR AR6,*+,AR2
.sym _x,-3+LF4,20,9,16
*
* AR6 assigned to parameter x
*
.sym _buffer,1,4,1,16
.line 2
;>>>> char buffer;
LARK AR2,-3+LF4
MAR *0+
LAR AR6,*
*** 92 ----------------------- goto g3;
.line 5
;>>>> buffer = read_PMEM(x);
;>>>> while(buffer)
B L7
L5:
*** -----------------------g1:
*** 96 ----------------------- if ( SCI_Sendc(buffer) == (-1) ) goto g1;
.line 9
;>>>> while(-1 == SCI_Sendc(buffer));
LARK AR2,1
MAR *0+
LAC * ,AR1
SACL *+
CALL _SCI_Sendc
MAR *-,AR2
SSXM
SUBK -1
BZ L5
*** 98 ----------------------- ++x;
.line 11
;>>>> x++;
MAR * ,AR6
MAR *+
L7:
*** -----------------------g3:
*** 99 ----------------------- if ( buffer = read_PMEM(x) ) goto g1;
.line 12
;>>>> buffer = read_PMEM(x);
MAR * ,AR1
SAR AR6,*+
CALL _read_PMEM
MAR *-,AR2
LARK AR2,1
MAR *0+
SACL *
BNZ L5
*** ----------------------- return;
EPI0_4:
.line 15
MAR * ,AR1
; <restore register vars>
MAR *-
LAR AR6,*
SBRK 3
LAR AR0,*-
PSHD *
RET
.endfunc 102,000000040H,2
.sym _sendstr_DMEM,_sendstr_DMEM,32,2,0
.globl _sendstr_DMEM
.func 114
;>>>> void sendstr_DMEM(char *x)
******************************************************
* FUNCTION DEF : _sendstr_DMEM
******************************************************
_sendstr_DMEM:
LF5 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LAR AR0,*+
; <save register vars>
SAR AR6,*+,AR2
.sym _x,-3+LF5,20,9,16
*
* AR6 assigned to parameter x
*
.line 2
LARK AR2,-3+LF5
MAR *0+
LAR AR6,* ,AR6
*** 116 ----------------------- if ( !*x ) goto g3;
.line 3
;>>>> while(*x)
LAC *
BZ EPI0_5
L9:
*** -----------------------g2:
*** 118 ----------------------- if ( SCI_Sendc(*x) == (-1) || *(++x) ) goto g2;
.line 5
;>>>> while(-1 == SCI_Sendc(*x));
;>>>> x++;
LAC * ,AR1
SACL *+
CALL _SCI_Sendc
MAR *-,AR6
SSXM
SUBK -1
BZ L9
MAR *+
LAC *
BNZ L9
*** -----------------------g3:
*** ----------------------- return;
EPI0_5:
.line 10
MAR * ,AR1
; <restore register vars>
MAR *-
LAR AR6,*
SBRK 2
LAR AR0,*-
PSHD *
RET
.endfunc 123,000000040H,1
.sym _getlong,_getlong,37,2,0
.globl _getlong
.func 132
;>>>> long getlong(char *text, long deflt, long lowlimit, long highlimit)
******************************************************
* FUNCTION DEF : _getlong
******************************************************
_getlong:
LF6 .set 0
POPD *+
SAR AR0,*+
SAR AR1,*
LARK AR0,13
LAR AR0,*0+
; <save register vars>
SAR AR6,*+,AR2
.sym _text,-3+LF6,20,9,16
.sym _deflt,-5+LF6,5,9,32
.sym _lowlimit,-7+LF6,5,9,32
.sym _highlimit,-9+LF6,5,9,32
*
* AR6 assigned to parameter text
*
.sym _val,1,5,1,32
.sym _buf,3,52,1,160,,10
.line 2
;>>>> char buf[10];
;>>>> long val;
;>>>> do
LARK AR2,-3+LF6
MAR *0+
LAR AR6,* ,AR1
L12:
*** -----------------------g2:
*** 139 ----------------------- sendstr_PMEM(text);
.line 8
;>>>> sendstr_PMEM(text);
SAR AR6,*+
CALL _sendstr_PMEM
MAR *-
*** 140 ----------------------- sendstr_PMEM("[");
.line 9
;>>>> sendstr_PMEM("[");
LRLK AR3,SL2
SAR AR3,*+
CALL _sendstr_PMEM
MAR *-,AR3
*** 141 ----------------------- ltoa(lowlimit, &buf);
.line 10
;>>>> ltoa(lowlimit, buf);
LARK AR3,3
MAR *0+,AR1
SAR AR3,*+,AR2
LARK AR2,-7+LF6
MAR *0+
ZALS *+
ADDH * ,AR1
SACL *+
SACH *+
CALL _ltoa
SBRK 3
*** 142 ----------------------- sendstr_DMEM(&buf);
.line 11
;>>>> sendstr_DMEM(buf);
MAR * ,AR3
LARK AR3,3
MAR *0+,AR1
SAR AR3,*+
CALL _sendstr_DMEM
MAR *-
*** 143 ----------------------- sendstr_PMEM(",");
.line 12
;>>>> sendstr_PMEM(",");
LRLK AR3,SL3
SAR AR3,*+
CALL _sendstr_PMEM
MAR *-,AR3
*** 144 ----------------------- ltoa(highlimit, &buf);
.line 13
;>>>> ltoa(highlimit, buf);
LARK AR3,3
MAR *0+,AR1
SAR AR3,*+,AR2
LARK AR2,-9+LF6
MAR *0+
ZALS *+
ADDH * ,AR1
SACL *+
SACH *+
CALL _ltoa
SBRK 3
*** 145 ----------------------- sendstr_DMEM(&buf);
.line 14
;>>>> sendstr_DMEM(buf);
MAR * ,AR3
LARK AR3,3
MAR *0+,AR1
SAR AR3,*+
CALL _sendstr_DMEM
MAR *-
*** 146 ----------------------- sendstr_PMEM("]");
.line 15
;>>>> sendstr_PMEM("]");
LRLK AR3,SL4
SAR AR3,*+
CALL _sendstr_PMEM
MAR *-
*** 147 ----------------------- sendstr_PMEM("<");
.line 16
;>>>> sendstr_PMEM("<");
LRLK AR3,SL5
SAR AR3,*+
CALL _sendstr_PMEM
MAR *-,AR3
*** 148 ----------------------- ltoa(deflt, &buf);
.line 17
;>>>> ltoa(deflt, buf);
LARK AR3,3
MAR *0+,AR1
SAR AR3,*+,AR2
LARK AR2,-5+LF6
MAR *0+
ZALS *+
ADDH * ,AR1
SACL *+
SACH *+
CALL _ltoa
SBRK 3
*** 149 ----------------------- sendstr_DMEM(&buf);
.line 18
;>>>> sendstr_DMEM(buf);
MAR * ,AR3
LARK AR3,3
MAR *0+,AR1
SAR AR3,*+
CALL _sendstr_DMEM
MAR *-
*** 150 ----------------------- sendstr_PMEM(">: ");
.line 19
;>>>> sendstr_PMEM(">: ");
LRLK AR3,SL6
SAR AR3,*+
CALL _sendstr_PMEM
MAR *-
*** 151 ----------------------- getline(&buf, 10);
.line 20
;>>>> getline(buf,10);
LACK 10
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -