⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 main_nonbios.asm

📁 2812 开发库
💻 ASM
📖 第 1 页 / 共 5 页
字号:
	.field  	-5971,16			; _COSTAB[31] @ 496
	.field  	-6000,16			; _COSTAB[32] @ 512
	.field  	-5971,16			; _COSTAB[33] @ 528
	.field  	-5885,16			; _COSTAB[34] @ 544
	.field  	-5742,16			; _COSTAB[35] @ 560
	.field  	-5543,16			; _COSTAB[36] @ 576
	.field  	-5292,16			; _COSTAB[37] @ 592
	.field  	-4989,16			; _COSTAB[38] @ 608
	.field  	-4622,16			; _COSTAB[39] @ 624
	.field  	-4243,16			; _COSTAB[40] @ 640
	.field  	-3806,16			; _COSTAB[41] @ 656
	.field  	-3333,16			; _COSTAB[42] @ 672
	.field  	-2828,16			; _COSTAB[43] @ 688
	.field  	-2296,16			; _COSTAB[44] @ 704
	.field  	-1742,16			; _COSTAB[45] @ 720
	.field  	-1171,16			; _COSTAB[46] @ 736
	.field  	-588,16			; _COSTAB[47] @ 752
	.field  	0,16			; _COSTAB[48] @ 768
	.field  	588,16			; _COSTAB[49] @ 784
	.field  	1171,16			; _COSTAB[50] @ 800
	.field  	1742,16			; _COSTAB[51] @ 816
	.field  	2296,16			; _COSTAB[52] @ 832
	.field  	2828,16			; _COSTAB[53] @ 848
	.field  	3333,16			; _COSTAB[54] @ 864
	.field  	3806,16			; _COSTAB[55] @ 880
	.field  	4243,16			; _COSTAB[56] @ 896
	.field  	4638,16			; _COSTAB[57] @ 912
	.field  	4989,16			; _COSTAB[58] @ 928
	.field  	5292,16			; _COSTAB[59] @ 944
	.field  	5543,16			; _COSTAB[60] @ 960
	.field  	5742,16			; _COSTAB[61] @ 976
	.field  	5885,16			; _COSTAB[62] @ 992
	.field  	5971,16			; _COSTAB[63] @ 1008
IR_2:	.set	64

	.sect	".text"
	.global	_COSTAB
_COSTAB:	.usect	".ebss",64,1,0
	.sym	_COSTAB,_COSTAB, 52, 2, 1024,, 64
	.global	_HAR_RATE
_HAR_RATE:	.usect	".ebss",114,1,0
	.sym	_HAR_RATE,_HAR_RATE, 254, 2, 1824,, 6, 19
	.global	_HAR_REAL
_HAR_REAL:	.usect	".ebss",114,1,0
	.sym	_HAR_REAL,_HAR_REAL, 254, 2, 1824,, 6, 19
	.global	_samp_buff
_samp_buff:	.usect	".ebss",384,1,0
	.sym	_samp_buff,_samp_buff, 244, 2, 6144,, 6, 64
	.global	_SAMPLE
_SAMPLE:	.usect	".ebss",792,1,0
	.sym	_SAMPLE,_SAMPLE, 244, 2, 12672,, 6, 132
;	C:\ti\c2000\cgtools\bin\ac2000.exe -@C:\DOCUME~1\春明\LOCALS~1\Temp\TI3204_4 

	.sect	".text"
	.sym	_BCD_HEX,_BCD_HEX, 36, 3, 0
	.func	66
;----------------------------------------------------------------------
;  66 | int inline BCD_HEX(int bcd)                                            
;----------------------------------------------------------------------

;***************************************************************
;* FNAME: _BCD_HEX                      FR SIZE:   1           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  1 Auto,  0 SOE     *
;***************************************************************

_BCD_HEX:
	.line	2
;* AL    assigned to _bcd
	.sym	_bcd,0, 4, 17, 16
	.sym	_bcd,-1, 4, 1, 16
        ADDB      SP,#1
        MOV       *-SP[1],AL            ; |67| 
	.line	3
;----------------------------------------------------------------------
;  68 | return (bcd - (bcd>>4)*6);                                             
;----------------------------------------------------------------------
        ASR       AL,4                  ; |68| 
        MOV       T,AL                  ; |68| 
        MPYB      P,T,#6                ; |68| 
        MOV       AL,*-SP[1]            ; |68| 
        SUB       AL,PL                 ; |68| 
	.line	4
        SUBB      SP,#1                 ; |68| 
        LRETR
        ; return occurs
	.endfunc	69,000000000h,1



	.sect	".text"
	.sym	_HEX_BCD,_HEX_BCD, 36, 3, 0
	.func	70
;----------------------------------------------------------------------
;  70 | int inline HEX_BCD(int hex)                                            
;----------------------------------------------------------------------

;***************************************************************
;* FNAME: _HEX_BCD                      FR SIZE:   2           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  1 Auto,  0 SOE     *
;***************************************************************

_HEX_BCD:
	.line	2
;* AL    assigned to _hex
	.sym	_hex,0, 4, 17, 16
	.sym	_hex,-1, 4, 1, 16
        ADDB      SP,#2
        MOV       *-SP[1],AL            ; |71| 
	.line	3
;----------------------------------------------------------------------
;  72 | return (hex + hex/10*6);                                               
;----------------------------------------------------------------------
        MOVB      AH,#10                ; |72| 
        FFC       XAR7,#I$$DIV          ; |72| 
        ; call occurs [#I$$DIV] ; |72| 
        MOV       T,AL                  ; |72| 
        MPYB      ACC,T,#6              ; |72| 
        ADD       AL,*-SP[1]            ; |72| 
	.line	4
        SUBB      SP,#2                 ; |72| 
        LRETR
        ; return occurs
	.endfunc	73,000000000h,2



	.sect	".text"
	.global	_SET_TIME
	.sym	_SET_TIME,_SET_TIME, 32, 2, 0
	.func	75
;----------------------------------------------------------------------
;  75 | void SET_TIME(unsigned year,unsigned month,unsigned date,              
;  76 | unsigned hour,unsigned minute,unsigned second)                         
;----------------------------------------------------------------------

;***************************************************************
;* FNAME: _SET_TIME                     FR SIZE:   4           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  4 Auto,  0 SOE     *
;***************************************************************

_SET_TIME:
	.line	3
;* AL    assigned to _year
	.sym	_year,0, 14, 17, 16
;* AH    assigned to _month
	.sym	_month,1, 14, 17, 16
;* AR4   assigned to _date
	.sym	_date,12, 14, 17, 16
;* AR5   assigned to _hour
	.sym	_hour,14, 14, 17, 16
	.sym	_minute,-7, 14, 9, 16
	.sym	_second,-8, 14, 9, 16
	.sym	_year,-1, 14, 1, 16
	.sym	_month,-2, 14, 1, 16
	.sym	_date,-3, 14, 1, 16
	.sym	_hour,-4, 14, 1, 16
        ADDB      SP,#4
        MOV       *-SP[4],AR5           ; |77| 
        MOV       *-SP[3],AR4           ; |77| 
        MOV       *-SP[2],AH            ; |77| 
        MOV       *-SP[1],AL            ; |77| 
	.line	4
;----------------------------------------------------------------------
;  78 | *TIMER_FLAG = 0x02;                                                    
;----------------------------------------------------------------------
        MOVL      XAR4,#557040          ; |78| 
        MOV       *+XAR4[0],#2          ; |78| 
	.line	5
;----------------------------------------------------------------------
;  79 | *TIMER_SEC = HEX_BCD(second);                                          
;----------------------------------------------------------------------
        MOV       AL,*-SP[8]            ; |79| 
        LCR       #_HEX_BCD             ; |79| 
        ; call occurs [#_HEX_BCD] ; |79| 
        MOVL      XAR4,#557049          ; |79| 
        MOV       *+XAR4[0],AL          ; |79| 
	.line	6
;----------------------------------------------------------------------
;  80 | *TIMER_MIN = HEX_BCD(minute);                                          
;----------------------------------------------------------------------
        MOV       AL,*-SP[7]            ; |80| 
        LCR       #_HEX_BCD             ; |80| 
        ; call occurs [#_HEX_BCD] ; |80| 
        MOVL      XAR4,#557050          ; |80| 
        MOV       *+XAR4[0],AL          ; |80| 
	.line	7
;----------------------------------------------------------------------
;  81 | *TIMER_HOUR = HEX_BCD(hour);                                           
;----------------------------------------------------------------------
        MOV       AL,*-SP[4]            ; |81| 
        LCR       #_HEX_BCD             ; |81| 
        ; call occurs [#_HEX_BCD] ; |81| 
        MOVL      XAR4,#557051          ; |81| 
        MOV       *+XAR4[0],AL          ; |81| 
	.line	8
;----------------------------------------------------------------------
;  82 | *TIMER_DATE = HEX_BCD(date);                                           
;----------------------------------------------------------------------
        MOV       AL,*-SP[3]            ; |82| 
        LCR       #_HEX_BCD             ; |82| 
        ; call occurs [#_HEX_BCD] ; |82| 
        MOVL      XAR4,#557053          ; |82| 
        MOV       *+XAR4[0],AL          ; |82| 
	.line	9
;----------------------------------------------------------------------
;  83 | *TIMER_MONTH = HEX_BCD(month);                                         
;----------------------------------------------------------------------
        MOV       AL,*-SP[2]            ; |83| 
        LCR       #_HEX_BCD             ; |83| 
        ; call occurs [#_HEX_BCD] ; |83| 
        MOVL      XAR4,#557054          ; |83| 
        MOV       *+XAR4[0],AL          ; |83| 
	.line	10
;----------------------------------------------------------------------
;  84 | *TIMER_YEAR =  HEX_BCD(year);                                          
;----------------------------------------------------------------------
        MOV       AL,*-SP[1]            ; |84| 
        LCR       #_HEX_BCD             ; |84| 
        ; call occurs [#_HEX_BCD] ; |84| 
        MOVL      XAR4,#557055          ; |84| 
        MOV       *+XAR4[0],AL          ; |84| 
	.line	11
;----------------------------------------------------------------------
;  85 | *TIMER_FLAG = 0x00;                                                    
;----------------------------------------------------------------------
        MOVL      XAR4,#557040          ; |85| 
        MOV       *+XAR4[0],#0          ; |85| 
	.line	12
        SUBB      SP,#4
        LRETR
        ; return occurs
	.endfunc	86,000000000h,4



	.sect	".text"
	.global	_GET_TIME
	.sym	_GET_TIME,_GET_TIME, 32, 2, 0
	.func	88
;----------------------------------------------------------------------
;  88 | void GET_TIME()                                                        
;----------------------------------------------------------------------

;***************************************************************
;* FNAME: _GET_TIME                     FR SIZE:   0           *
;*                                                             *
;* FUNCTION ENVIRONMENT                                        *
;*                                                             *
;* FUNCTION PROPERTIES                                         *
;*                            0 Parameter,  0 Auto,  0 SOE     *
;***************************************************************

_GET_TIME:
	.line	2
	.line	3
;----------------------------------------------------------------------
;  90 | *TIMER_FLAG = 0x01;                                                    
;----------------------------------------------------------------------
        MOVL      XAR4,#557040          ; |90| 
        MOV       *+XAR4[0],#1          ; |90| 
	.line	4
;----------------------------------------------------------------------
;  91 | TimerSec = BCD_HEX(*TIMER_SEC & 0xFF);                                 
;----------------------------------------------------------------------
        MOVL      XAR4,#557049          ; |91| 
        AND       AL,*+XAR4[0],#0x00ff  ; |91| 
        LCR       #_BCD_HEX             ; |91| 
        ; call occurs [#_BCD_HEX] ; |91| 
        MOVW      DP,#_TimerSec
        MOV       @_TimerSec,AL         ; |91| 
	.line	5
;----------------------------------------------------------------------
;  92 | TimerMin = BCD_HEX(*TIMER_MIN & 0xFF);                                 
;----------------------------------------------------------------------
        MOVL      XAR4,#557050          ; |92| 
        AND       AL,*+XAR4[0],#0x00ff  ; |92| 
        LCR       #_BCD_HEX             ; |92| 
        ; call occurs [#_BCD_HEX] ; |92| 
        MOV       @_TimerMin,AL         ; |92| 
	.line	6
;----------------------------------------------------------------------
;  93 | TimerHour = BCD_HEX(*TIMER_HOUR & 0xFF);                               
;----------------------------------------------------------------------
        MOVL      XAR4,#557051          ; |93| 
        AND       AL,*+XAR4[0],#0x00ff  ; |93| 
        LCR       #_BCD_HEX             ; |93| 
        ; call occurs [#_BCD_HEX] ; |93| 
        MOV       @_TimerHour,AL        ; |93| 
	.line	7
;----------------------------------------------------------------------
;  94 | TimerDate = BCD_HEX(*TIMER_DATE & 0xFF);                               
;----------------------------------------------------------------------
        MOVL      XAR4,#557053          ; |94| 
        AND       AL,*+XAR4[0],#0x00ff  ; |94| 
        LCR       #_BCD_HEX             ; |94| 

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -