📄 main.asm
字号:
;***************************************************************
;* TMS320C54x C/C++ Codegen PC v4.1.0 *
;* Date/Time created: Sat May 02 20:48:30 2009 *
;***************************************************************
.compiler_opts --mem_model:code=near --mem_model:data=flat --quiet
.mmregs
FP .set AR7
.c_mode
DW$CU .dwtag DW_TAG_compile_unit
.dwattr DW$CU, DW_AT_name("main.c")
.dwattr DW$CU, DW_AT_producer("TMS320C54x C/C++ Codegen PC v4.1.0 Copyright (c) 1996-2005 Texas Instruments Incorporated")
.dwattr DW$CU, DW_AT_stmt_list(0x00)
.dwattr DW$CU, DW_AT_TI_VERSION(0x01)
DW$1 .dwtag DW_TAG_subprogram, DW_AT_name("lcd_init"), DW_AT_symbol_name("_lcd_init")
.dwattr DW$1, DW_AT_type(*DW$T$10)
.dwattr DW$1, DW_AT_declaration(0x01)
.dwattr DW$1, DW_AT_external(0x01)
DW$2 .dwtag DW_TAG_subprogram, DW_AT_name("clearscr1"), DW_AT_symbol_name("_clearscr1")
.dwattr DW$2, DW_AT_type(*DW$T$10)
.dwattr DW$2, DW_AT_declaration(0x01)
.dwattr DW$2, DW_AT_external(0x01)
DW$3 .dwtag DW_TAG_subprogram, DW_AT_name("clearscr2"), DW_AT_symbol_name("_clearscr2")
.dwattr DW$3, DW_AT_type(*DW$T$10)
.dwattr DW$3, DW_AT_declaration(0x01)
.dwattr DW$3, DW_AT_external(0x01)
DW$4 .dwtag DW_TAG_subprogram, DW_AT_name("clearscr3"), DW_AT_symbol_name("_clearscr3")
.dwattr DW$4, DW_AT_type(*DW$T$10)
.dwattr DW$4, DW_AT_declaration(0x01)
.dwattr DW$4, DW_AT_external(0x01)
DW$5 .dwtag DW_TAG_subprogram, DW_AT_name("Smenu"), DW_AT_symbol_name("_Smenu")
.dwattr DW$5, DW_AT_type(*DW$T$10)
.dwattr DW$5, DW_AT_declaration(0x01)
.dwattr DW$5, DW_AT_external(0x01)
DW$6 .dwtag DW_TAG_variable, DW_AT_name("portbfff"), DW_AT_symbol_name("_portbfff")
.dwattr DW$6, DW_AT_location[DW_OP_addr 0xbfff]
.dwattr DW$6, DW_AT_type(*DW$T$23)
.dwattr DW$6, DW_AT_external(0x01)
DW$7 .dwtag DW_TAG_variable, DW_AT_name("portbffe"), DW_AT_symbol_name("_portbffe")
.dwattr DW$7, DW_AT_location[DW_OP_addr 0xbffe]
.dwattr DW$7, DW_AT_type(*DW$T$23)
.dwattr DW$7, DW_AT_external(0x01)
.global _ms
.bss _ms,1,0,0
DW$8 .dwtag DW_TAG_variable, DW_AT_name("ms"), DW_AT_symbol_name("_ms")
.dwattr DW$8, DW_AT_location[DW_OP_addr _ms]
.dwattr DW$8, DW_AT_type(*DW$T$10)
.dwattr DW$8, DW_AT_external(0x01)
.global _f
.bss _f,1,0,0
DW$9 .dwtag DW_TAG_variable, DW_AT_name("f"), DW_AT_symbol_name("_f")
.dwattr DW$9, DW_AT_location[DW_OP_addr _f]
.dwattr DW$9, DW_AT_type(*DW$T$10)
.dwattr DW$9, DW_AT_external(0x01)
; E:\CCStudio_v3.3\C5400\cgtools\bin\acp500.exe -@C:\DOCUME~1\ADMINI~1\LOCALS~1\Temp\TI51612
.sect ".text"
.global _main
DW$10 .dwtag DW_TAG_subprogram, DW_AT_name("main"), DW_AT_symbol_name("_main")
.dwattr DW$10, DW_AT_low_pc(_main)
.dwattr DW$10, DW_AT_high_pc(0x00)
.dwattr DW$10, DW_AT_begin_file("main.c")
.dwattr DW$10, DW_AT_begin_line(0x06)
.dwattr DW$10, DW_AT_begin_column(0x06)
.dwpsn "main.c",7,1
.dwfde DW$CIE
;***************************************************************
;* FUNCTION DEF: _main *
;***************************************************************
_main:
.dwcfa 0x0e, 1
.dwcfa 0x80, 34, 1
PSHM AR1
.dwcfa 0x0e, 2
.dwcfa 0x80, 10, 2
.dwcfa 0x0e, 2
STM #0000h,CLKMD
STM #88,AR2
.dwpsn "main.c",9,6
BIT *AR2,15 ; |9|
BC L2,NTC ; |9|
; branchcc occurs ; |9|
L1:
DW$L$_main$2$B:
BIT *AR2,15 ; |9|
BC L1,TC ; |9|
; branchcc occurs ; |9|
DW$L$_main$2$E:
L2:
STM #0802h,CLKMD
STM #43,AR1
.dwpsn "main.c",12,2
ST #1,*AR1 ; |12|
NOP
stm #7240h, SWWSR
stm #00A0h, PMST
stm #0802h, BSCR
STM #0h,IMR
STM #0010h,TCR
STM #0186ah,PRD
STM #0C2fh,TCR
STM #0008h,IFR
ORM #0008h,*(IMR)
RSBX INTM
.dwpsn "main.c",27,6
CALL #_lcd_init ; |27|
; call occurs [#_lcd_init] ; |27|
.dwpsn "main.c",28,6
CALL #_clearscr1 ; |28|
; call occurs [#_clearscr1] ; |28|
.dwpsn "main.c",29,6
CALL #_clearscr2 ; |29|
; call occurs [#_clearscr2] ; |29|
.dwpsn "main.c",30,6
CALL #_clearscr3 ; |30|
; call occurs [#_clearscr3] ; |30|
.dwpsn "main.c",31,6
CALL #_Smenu ; |31|
; call occurs [#_Smenu] ; |31|
.dwpsn "main.c",33,6
ST #0,*(_ms) ; |33|
.dwpsn "main.c",32,6
ST #1,*(_f) ; |32|
.dwcfa 0x0e, 2
POPM AR1
.dwcfa 0xc0, 10
.dwcfa 0x0e, 1
RET
; return occurs
DW$11 .dwtag DW_TAG_loop
.dwattr DW$11, DW_AT_name("E:\CCStudio_v3.3\MyProjects\lcd\main.asm:L1:1:1241268510")
.dwattr DW$11, DW_AT_begin_file("main.c")
.dwattr DW$11, DW_AT_begin_line(0x09)
.dwattr DW$11, DW_AT_end_line(0x09)
DW$12 .dwtag DW_TAG_loop_range
.dwattr DW$12, DW_AT_low_pc(DW$L$_main$2$B)
.dwattr DW$12, DW_AT_high_pc(DW$L$_main$2$E)
.dwendtag DW$11
.dwattr DW$10, DW_AT_end_file("main.c")
.dwattr DW$10, DW_AT_end_line(0x2c)
.dwattr DW$10, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$10
.sect ".text"
.global _timer0
DW$13 .dwtag DW_TAG_subprogram, DW_AT_name("timer0"), DW_AT_symbol_name("_timer0")
.dwattr DW$13, DW_AT_low_pc(_timer0)
.dwattr DW$13, DW_AT_high_pc(0x00)
.dwattr DW$13, DW_AT_begin_file("main.c")
.dwattr DW$13, DW_AT_begin_line(0x2e)
.dwattr DW$13, DW_AT_begin_column(0x11)
.dwpsn "main.c",47,1
.dwfde DW$CIE
;***************************************************************
;* FUNCTION DEF: _timer0 *
;***************************************************************
_timer0:
.dwcfa 0x0e, 1
.dwcfa 0x80, 34, 1
PSHM ST1
NOP
.dwcfa 0x0e, 2
.dwcfa 0x80, 24, 2
PSHM PMST
NOP
.dwcfa 0x0e, 3
.dwcfa 0x80, 29, 3
ANDM #32063,*(ST1)
ORM #16384,*(ST1)
ANDM #-4,*(PMST)
NOP
.dwcfa 0x0e, 3
.dwcfa 0x0e, 3
POPM PMST
NOP
.dwcfa 0xc0, 29
.dwcfa 0x0e, 2
POPM ST1
NOP
.dwcfa 0xc0, 24
.dwcfa 0x0e, 1
RETE
; branch occurs
.dwattr DW$13, DW_AT_end_file("main.c")
.dwattr DW$13, DW_AT_end_line(0x31)
.dwattr DW$13, DW_AT_end_column(0x01)
.dwendentry
.dwendtag DW$13
;***************************************************************
;* UNDEFINED EXTERNAL REFERENCES *
;***************************************************************
.global _lcd_init
.global _clearscr1
.global _clearscr2
.global _clearscr3
.global _Smenu
;***************************************************************
;* TYPE INFORMATION *
;***************************************************************
DW$T$19 .dwtag DW_TAG_subroutine_type
.dwattr DW$T$19, DW_AT_language(DW_LANG_C)
DW$T$10 .dwtag DW_TAG_base_type, DW_AT_name("int")
.dwattr DW$T$10, DW_AT_encoding(DW_ATE_signed)
.dwattr DW$T$10, DW_AT_byte_size(0x01)
DW$T$20 .dwtag DW_TAG_subroutine_type, DW_AT_type(*DW$T$10)
.dwattr DW$T$20, DW_AT_language(DW_LANG_C)
DW$14 .dwtag DW_TAG_ioport_type
.dwattr DW$14, DW_AT_type(*DW$T$22)
DW$T$23 .dwtag DW_TAG_volatile_type
.dwattr DW$T$23, DW_AT_type(*DW$14)
DW$T$22 .dwtag DW_TAG_typedef, DW_AT_name("Uint16"), DW_AT_type(*DW$T$11)
.dwattr DW$T$22, DW_AT_language(DW_LANG_C)
DW$T$11 .dwtag DW_TAG_base_type, DW_AT_name("unsigned int")
.dwattr DW$T$11, DW_AT_encoding(DW_ATE_unsigned)
.dwattr DW$T$11, DW_AT_byte_size(0x01)
.dwattr DW$10, DW_AT_external(0x01)
.dwattr DW$13, DW_AT_external(0x01)
.dwattr DW$CU, DW_AT_language(DW_LANG_C)
;***************************************************************
;* DWARF CIE ENTRIES *
;***************************************************************
DW$CIE .dwcie 1, 34
.dwcfa 0x0c, 17, 0
.dwcfa 0x07, 0
.dwcfa 0x07, 1
.dwcfa 0x07, 2
.dwcfa 0x07, 3
.dwcfa 0x07, 4
.dwcfa 0x07, 5
.dwcfa 0x07, 6
.dwcfa 0x07, 7
.dwcfa 0x07, 8
.dwcfa 0x07, 9
.dwcfa 0x08, 10
.dwcfa 0x07, 11
.dwcfa 0x07, 12
.dwcfa 0x07, 13
.dwcfa 0x07, 14
.dwcfa 0x08, 15
.dwcfa 0x08, 16
.dwcfa 0x07, 17
.dwcfa 0x07, 18
.dwcfa 0x07, 19
.dwcfa 0x07, 20
.dwcfa 0x07, 21
.dwcfa 0x07, 22
.dwcfa 0x07, 23
.dwcfa 0x07, 24
.dwcfa 0x07, 25
.dwcfa 0x07, 26
.dwcfa 0x07, 27
.dwcfa 0x07, 28
.dwcfa 0x07, 29
.dwcfa 0x07, 30
.dwcfa 0x07, 31
.dwcfa 0x07, 32
.dwcfa 0x07, 33
.dwcfa 0x07, 34
;***************************************************************
;* DWARF REGISTER MAP *
;***************************************************************
DW$15 .dwtag DW_TAG_assign_register, DW_AT_name("A")
.dwattr DW$15, DW_AT_location[DW_OP_reg0]
DW$16 .dwtag DW_TAG_assign_register, DW_AT_name("AH")
.dwattr DW$16, DW_AT_location[DW_OP_reg1]
DW$17 .dwtag DW_TAG_assign_register, DW_AT_name("AG")
.dwattr DW$17, DW_AT_location[DW_OP_reg2]
DW$18 .dwtag DW_TAG_assign_register, DW_AT_name("")
.dwattr DW$18, DW_AT_location[DW_OP_reg3]
DW$19 .dwtag DW_TAG_assign_register, DW_AT_name("")
.dwattr DW$19, DW_AT_location[DW_OP_reg4]
DW$20 .dwtag DW_TAG_assign_register, DW_AT_name("")
.dwattr DW$20, DW_AT_location[DW_OP_reg5]
DW$21 .dwtag DW_TAG_assign_register, DW_AT_name("B")
.dwattr DW$21, DW_AT_location[DW_OP_reg6]
DW$22 .dwtag DW_TAG_assign_register, DW_AT_name("BH")
.dwattr DW$22, DW_AT_location[DW_OP_reg7]
DW$23 .dwtag DW_TAG_assign_register, DW_AT_name("BG")
.dwattr DW$23, DW_AT_location[DW_OP_reg8]
DW$24 .dwtag DW_TAG_assign_register, DW_AT_name("AR0")
.dwattr DW$24, DW_AT_location[DW_OP_reg9]
DW$25 .dwtag DW_TAG_assign_register, DW_AT_name("AR1")
.dwattr DW$25, DW_AT_location[DW_OP_reg10]
DW$26 .dwtag DW_TAG_assign_register, DW_AT_name("AR2")
.dwattr DW$26, DW_AT_location[DW_OP_reg11]
DW$27 .dwtag DW_TAG_assign_register, DW_AT_name("AR3")
.dwattr DW$27, DW_AT_location[DW_OP_reg12]
DW$28 .dwtag DW_TAG_assign_register, DW_AT_name("AR4")
.dwattr DW$28, DW_AT_location[DW_OP_reg13]
DW$29 .dwtag DW_TAG_assign_register, DW_AT_name("AR5")
.dwattr DW$29, DW_AT_location[DW_OP_reg14]
DW$30 .dwtag DW_TAG_assign_register, DW_AT_name("AR6")
.dwattr DW$30, DW_AT_location[DW_OP_reg15]
DW$31 .dwtag DW_TAG_assign_register, DW_AT_name("AR7")
.dwattr DW$31, DW_AT_location[DW_OP_reg16]
DW$32 .dwtag DW_TAG_assign_register, DW_AT_name("SP")
.dwattr DW$32, DW_AT_location[DW_OP_reg17]
DW$33 .dwtag DW_TAG_assign_register, DW_AT_name("FP")
.dwattr DW$33, DW_AT_location[DW_OP_reg18]
DW$34 .dwtag DW_TAG_assign_register, DW_AT_name("BK")
.dwattr DW$34, DW_AT_location[DW_OP_reg19]
DW$35 .dwtag DW_TAG_assign_register, DW_AT_name("T")
.dwattr DW$35, DW_AT_location[DW_OP_reg20]
DW$36 .dwtag DW_TAG_assign_register, DW_AT_name("ASM")
.dwattr DW$36, DW_AT_location[DW_OP_reg21]
DW$37 .dwtag DW_TAG_assign_register, DW_AT_name("SXM")
.dwattr DW$37, DW_AT_location[DW_OP_reg22]
DW$38 .dwtag DW_TAG_assign_register, DW_AT_name("ST0")
.dwattr DW$38, DW_AT_location[DW_OP_reg23]
DW$39 .dwtag DW_TAG_assign_register, DW_AT_name("ST1")
.dwattr DW$39, DW_AT_location[DW_OP_reg24]
DW$40 .dwtag DW_TAG_assign_register, DW_AT_name("BRC")
.dwattr DW$40, DW_AT_location[DW_OP_reg25]
DW$41 .dwtag DW_TAG_assign_register, DW_AT_name("TC")
.dwattr DW$41, DW_AT_location[DW_OP_reg26]
DW$42 .dwtag DW_TAG_assign_register, DW_AT_name("PC")
.dwattr DW$42, DW_AT_location[DW_OP_reg27]
DW$43 .dwtag DW_TAG_assign_register, DW_AT_name("DB")
.dwattr DW$43, DW_AT_location[DW_OP_reg28]
DW$44 .dwtag DW_TAG_assign_register, DW_AT_name("PMST")
.dwattr DW$44, DW_AT_location[DW_OP_reg29]
DW$45 .dwtag DW_TAG_assign_register, DW_AT_name("RSA")
.dwattr DW$45, DW_AT_location[DW_OP_reg30]
DW$46 .dwtag DW_TAG_assign_register, DW_AT_name("REA")
.dwattr DW$46, DW_AT_location[DW_OP_reg31]
DW$47 .dwtag DW_TAG_assign_register, DW_AT_name("OVM")
.dwattr DW$47, DW_AT_location[DW_OP_regx 0x20]
DW$48 .dwtag DW_TAG_assign_register, DW_AT_name("FRCT")
.dwattr DW$48, DW_AT_location[DW_OP_regx 0x21]
DW$49 .dwtag DW_TAG_assign_register, DW_AT_name("CIE_RETA")
.dwattr DW$49, DW_AT_location[DW_OP_regx 0x22]
.dwendtag DW$CU
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -