📄 usim.asm
字号:
;******************************************************************************
;* TMS470 C/C++ Codegen PC v4.1.4 *
;* Date/Time created: Wed Jun 25 14:12:12 2008 *
;******************************************************************************
.compiler_opts --abi=ti_arm9_abi --endian=little --float_support=fpalib --quiet --silicon_version=5e
.state32
DW$CU .dwtag DW_TAG_compile_unit
.dwattr DW$CU, DW_AT_name("usim.c")
.dwattr DW$CU, DW_AT_producer("TMS470 C/C++ Codegen PC v4.1.4 Copyright (c) 1996-2006 Texas Instruments Incorporated")
.dwattr DW$CU, DW_AT_stmt_list(0x00)
.dwattr DW$CU, DW_AT_TI_VERSION(0x01)
;*****************************************************************************
;* CINIT RECORDS *
;*****************************************************************************
.sect ".cinit"
.align 4
.field 4,32
.field _USIM_FLAG+0,32
.field 0,32 ; _USIM_FLAG @ 0
DW$1 .dwtag DW_TAG_subprogram, DW_AT_name("Neptune_VRSIM_2V8"), DW_AT_symbol_name("_Neptune_VRSIM_2V8")
.dwattr DW$1, DW_AT_declaration(0x01)
.dwattr DW$1, DW_AT_external(0x01)
DW$2 .dwtag DW_TAG_subprogram, DW_AT_name("Neptune_VRSIM_1V8"), DW_AT_symbol_name("_Neptune_VRSIM_1V8")
.dwattr DW$2, DW_AT_declaration(0x01)
.dwattr DW$2, DW_AT_external(0x01)
DW$3 .dwtag DW_TAG_subprogram, DW_AT_name("UART_Printf"), DW_AT_symbol_name("_UART_Printf")
.dwattr DW$3, DW_AT_declaration(0x01)
.dwattr DW$3, DW_AT_external(0x01)
DW$4 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
DW$5 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$22)
DW$6 .dwtag DW_TAG_unspecified_parameters
.dwendtag DW$3
DW$7 .dwtag DW_TAG_subprogram, DW_AT_name("UART_GetNum"), DW_AT_symbol_name("_UART_GetNum")
.dwattr DW$7, DW_AT_type(*DW$T$10)
.dwattr DW$7, DW_AT_declaration(0x01)
.dwattr DW$7, DW_AT_external(0x01)
DW$8 .dwtag DW_TAG_formal_parameter, DW_AT_type(*DW$T$10)
.dwendtag DW$7
DW$9 .dwtag DW_TAG_subprogram, DW_AT_name("IsrRegister"), DW_AT_symbol_name("_IsrRegister")
.dwattr DW$9, DW_AT_type(*DW$T$10)
.dwattr DW$9, DW_AT_declaration(0x01)
.dwattr DW$9, DW_AT_external(0x01)
DW$10 .dwtag DW_TAG_subprogram, DW_AT_name("Setgroupbit"), DW_AT_symbol_name("_Setgroupbit")
.dwattr DW$10, DW_AT_type(*DW$T$10)
.dwattr DW$10, DW_AT_declaration(0x01)
.dwattr DW$10, DW_AT_external(0x01)
DW$11 .dwtag DW_TAG_subprogram, DW_AT_name("OpenInterrupt"), DW_AT_symbol_name("_OpenInterrupt")
.dwattr DW$11, DW_AT_type(*DW$T$10)
.dwattr DW$11, DW_AT_declaration(0x01)
.dwattr DW$11, DW_AT_external(0x01)
DW$12 .dwtag DW_TAG_subprogram, DW_AT_name("triton_VRSIM_OFF"), DW_AT_symbol_name("_triton_VRSIM_OFF")
.dwattr DW$12, DW_AT_type(*DW$T$10)
.dwattr DW$12, DW_AT_declaration(0x01)
.dwattr DW$12, DW_AT_external(0x01)
.bss _temp,132,4
DW$13 .dwtag DW_TAG_variable, DW_AT_name("temp"), DW_AT_symbol_name("_temp")
.dwattr DW$13, DW_AT_type(*DW$T$41)
.dwattr DW$13, DW_AT_location[DW_OP_addr _temp]
.global _read_num
.bss _read_num,4,4
DW$14 .dwtag DW_TAG_variable, DW_AT_name("read_num"), DW_AT_symbol_name("_read_num")
.dwattr DW$14, DW_AT_location[DW_OP_addr _read_num]
.dwattr DW$14, DW_AT_type(*DW$T$10)
.dwattr DW$14, DW_AT_external(0x01)
.global _USIM_FLAG
.bss _USIM_FLAG,4,4
DW$15 .dwtag DW_TAG_variable, DW_AT_name("USIM_FLAG"), DW_AT_symbol_name("_USIM_FLAG")
.dwattr DW$15, DW_AT_location[DW_OP_addr _USIM_FLAG]
.dwattr DW$15, DW_AT_type(*DW$T$10)
.dwattr DW$15, DW_AT_external(0x01)
; C:\CCStudio_v3.3\tms470\cgtools\bin\acp470.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI92012
.sect ".text"
.align 4
.clink
.armfunc _USIM_IntCfg
.state32
.global _USIM_IntCfg
DW$16 .dwtag DW_TAG_subprogram, DW_AT_name("USIM_IntCfg"), DW_AT_symbol_name("_USIM_IntCfg")
.dwattr DW$16, DW_AT_low_pc(_USIM_IntCfg)
.dwattr DW$16, DW_AT_high_pc(0x00)
.dwattr DW$16, DW_AT_begin_file("usim.c")
.dwattr DW$16, DW_AT_begin_line(0x26)
.dwattr DW$16, DW_AT_begin_column(0x06)
.dwpsn "usim.c",39,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: USIM_IntCfg *
;* *
;* Regs Modified : A1,A2,A3,A4,V9,SP,LR,SR *
;* Regs Used : A1,A2,A3,A4,V9,SP,LR,SR *
;* Local Frame Size : 0 Args + 0 Auto + 4 Save = 4 byte *
;*****************************************************************************
_USIM_IntCfg:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 4
.dwpsn "usim.c",40,1
LDR A2, CON2 ; |40|
MOV A1, #57 ; |40|
BL _IsrRegister ; |40|
; |40|
.dwpsn "usim.c",42,1
MOV A4, #6 ; |42|
MOV A3, #8 ; |42|
MOV A2, #0 ; |42|
LDR A1, CON7 ; |42|
BL _Setgroupbit ; |42|
; |42|
.dwpsn "usim.c",45,1
MOV A4, #2 ; |45|
MOV A3, #7 ; |45|
MOV A2, #0 ; |45|
LDR A1, CON11 ; |45|
BL _Setgroupbit ; |45|
; |45|
.dwpsn "usim.c",46,1
MOV A1, #57 ; |46|
BL _OpenInterrupt ; |46|
; |46|
.dwpsn "usim.c",48,1
MOV V9, #65536 ; |48|
LDR A1, CON12 ; |48|
SUB V9, V9, #17 ; |48|
STRH V9, [A1, #0] ; |48|
.dwpsn "../arm9_inc/global_types.h",40,33
.dwpsn "usim.c",50,1
.dwcfa 0x0e, 4
LDMFD SP!, {PC}
.dwattr DW$16, DW_AT_end_file("usim.c")
.dwattr DW$16, DW_AT_end_line(0x32)
.dwattr DW$16, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$16
.sect ".text"
.align 4
.clink
.armfunc _USIM_Initialization_Test
.state32
.global _USIM_Initialization_Test
DW$17 .dwtag DW_TAG_subprogram, DW_AT_name("USIM_Initialization_Test"), DW_AT_symbol_name("_USIM_Initialization_Test")
.dwattr DW$17, DW_AT_low_pc(_USIM_Initialization_Test)
.dwattr DW$17, DW_AT_high_pc(0x00)
.dwattr DW$17, DW_AT_begin_file("usim.c")
.dwattr DW$17, DW_AT_begin_line(0x33)
.dwattr DW$17, DW_AT_begin_column(0x06)
.dwpsn "usim.c",52,1
.dwfde DW$CIE
;*****************************************************************************
;* FUNCTION NAME: USIM_Initialization_Test *
;* *
;* Regs Modified : A1,A2,A3,A4,V9,SP,LR,SR *
;* Regs Used : A1,A2,A3,A4,V9,SP,LR,SR *
;* Local Frame Size : 0 Args + 8 Auto + 4 Save = 12 byte *
;*****************************************************************************
_USIM_Initialization_Test:
;* --------------------------------------------------------------------------*
.dwcfa 0x0e, 0
.dwcfa 0x09, 26, 14
STMFD SP!, {A3, A4, LR}
.dwcfa 0x0e, 4
.dwcfa 0x80, 14, 1
.dwcfa 0x0e, 8
.dwcfa 0x80, 3, 2
.dwcfa 0x0e, 12
.dwcfa 0x80, 2, 3
.dwcfa 0x0e, 12
DW$18 .dwtag DW_TAG_variable, DW_AT_name("i"), DW_AT_symbol_name("_i")
.dwattr DW$18, DW_AT_type(*DW$T$10)
.dwattr DW$18, DW_AT_location[DW_OP_breg13 0]
DW$19 .dwtag DW_TAG_variable, DW_AT_name("temp"), DW_AT_symbol_name("_temp")
.dwattr DW$19, DW_AT_type(*DW$T$10)
.dwattr DW$19, DW_AT_location[DW_OP_breg13 4]
.dwpsn "usim.c",56,2
LDR A1, CON13 ; |56|
LDRH V9, [A1, #0] ; |56|
ORR V9, V9, #1 ; |56|
STRH V9, [A1, #0] ; |56|
.dwpsn "usim.c",57,6
MOV V9, #0 ; |57|
STR V9, [SP, #0] ; |57|
.dwpsn "usim.c",57,10
LDR V9, [SP, #0] ; |57|
CMP V9, #1000 ; |57|
BGE L2 ; |57|
; |57|
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L1
;*
;* Loop source line : 57
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L1:
DW$L$_USIM_Initialization_Test$2$B:
.dwpsn "usim.c",57,17
LDR V9, [SP, #0] ; |57|
ADD V9, V9, #1 ; |57|
STR V9, [SP, #0] ; |57|
.dwpsn "usim.c",57,10
LDR V9, [SP, #0] ; |57|
CMP V9, #1000 ; |57|
BLT L1 ; |57|
; |57|
DW$L$_USIM_Initialization_Test$2$E:
;* --------------------------------------------------------------------------*
L2:
.dwpsn "usim.c",58,2
LDR A1, CON13 ; |58|
LDRH V9, [A1, #0] ; |58|
ORR V9, V9, #1 ; |58|
STRH V9, [A1, #0] ; |58|
.dwpsn "usim.c",59,6
MOV V9, #0 ; |59|
STR V9, [SP, #0] ; |59|
.dwpsn "usim.c",59,10
LDR V9, [SP, #0] ; |59|
CMP V9, #1000 ; |59|
BGE L4 ; |59|
; |59|
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L3
;*
;* Loop source line : 59
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L3:
DW$L$_USIM_Initialization_Test$4$B:
.dwpsn "usim.c",59,17
LDR V9, [SP, #0] ; |59|
ADD V9, V9, #1 ; |59|
STR V9, [SP, #0] ; |59|
.dwpsn "usim.c",59,10
LDR V9, [SP, #0] ; |59|
CMP V9, #1000 ; |59|
BLT L3 ; |59|
; |59|
DW$L$_USIM_Initialization_Test$4$E:
;* --------------------------------------------------------------------------*
L4:
.dwpsn "usim.c",60,8
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L5
;*
;* Loop source line : 60
;* Loop closing brace source line : 65
;* Known Minimum Trip Count : 1
;* Known Maximum Trip Count : 4294967295
;* Known Max Trip Count Factor : 1
;* --------------------------------------------------------------------------*
L5:
DW$L$_USIM_Initialization_Test$6$B:
.dwpsn "usim.c",62,3
LDR V9, CON13 ; |62|
LDRH V9, [V9, #0] ; |62|
STR V9, [SP, #4] ; |62|
.dwpsn "usim.c",63,3
LDR V9, [SP, #4] ; |63|
MOVS V9, V9, LSL #31 ; |63|
BNE L5 ; |63|
; |63|
DW$L$_USIM_Initialization_Test$6$E:
;* --------------------------------------------------------------------------*
.dwpsn "usim.c",64,3
.dwpsn "usim.c",60,8
.dwpsn "usim.c",67,2
MOV V9, #0 ; |67|
LDR A1, CON14 ; |67|
STRH V9, [A1, #0] ; |67|
.dwpsn "usim.c",68,2
MOV V9, #0 ; |68|
LDR A1, CON15 ; |68|
STRH V9, [A1, #0] ; |68|
.dwpsn "usim.c",69,2
MOV V9, #14 ; |69|
LDR A1, CON16 ; |69|
ADD V9, V9, #512 ; |69|
STRH V9, [A1, #0] ; |69|
.dwpsn "usim.c",70,2
LDR A1, CON16 ; |70|
LDRH V9, [A1, #0] ; |70|
ORR V9, V9, #64 ; |70|
STRH V9, [A1, #0] ; |70|
.dwpsn "usim.c",71,6
MOV V9, #0 ; |71|
STR V9, [SP, #0] ; |71|
.dwpsn "usim.c",71,10
LDR V9, [SP, #0] ; |71|
CMP V9, #1000 ; |71|
BGE L7 ; |71|
; |71|
;* --------------------------------------------------------------------------*
;* BEGIN LOOP L6
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -