📄 mci_sd.lst
字号:
##############################################################################
# #
# IAR ARM ANSI C/C++ Compiler V4.30A/W32 KICKSTART 03/Aug/2006 17:43:23 #
# Copyright 1999-2005 IAR Systems. All rights reserved. #
# #
# Cpu mode = interwork #
# Endian = little #
# Stack alignment = 4 #
# Source file = C:\Documents and Settings\yc\桌面\AT91SAM7A3(CAN_CAN #
# )(10K_5K)\BasicCAN-SAM7A3\src\MCI_SD.c #
# Command line = "C:\Documents and Settings\yc\桌面\AT91SAM7A3(CAN_CA #
# N)(10K_5K)\BasicCAN-SAM7A3\src\MCI_SD.c" -lC #
# "C:\Documents and Settings\yc\桌面\AT91SAM7A3(CAN_CA #
# N)(10K_5K)\BasicCAN-SAM7A3\compil\FLASH_Debug\List\" #
# -o "C:\Documents and Settings\yc\桌面\AT91SAM7A3(CA #
# N_CAN)(10K_5K)\BasicCAN-SAM7A3\compil\FLASH_Debug\Ob #
# j\" -z2 --no_cse --no_unroll --no_inline #
# --no_code_motion --no_tbaa --no_clustering #
# --no_scheduling --debug --cpu_mode thumb --endian #
# little --cpu ARM7TDMI --stack_align 4 --interwork #
# -e --fpu None --dlib_config "D:\IAR #
# Systems\Embedded Workbench 4.0 #
# Kickstart\arm\LIB\dl4tptinl8f.h" -I "C:\Documents #
# and Settings\yc\桌面\AT91SAM7A3(CAN_CAN)(10K_5K)\Bas #
# icCAN-SAM7A3\compil\srcIAR\" -I "C:\Documents and #
# Settings\yc\桌面\AT91SAM7A3(CAN_CAN)(10K_5K)\BasicCA #
# N-SAM7A3\compil\..\src\" -I "C:\Documents and #
# Settings\yc\桌面\AT91SAM7A3(CAN_CAN)(10K_5K)\BasicCA #
# N-SAM7A3\compil\..\..\" -I "D:\IAR Systems\Embedded #
# Workbench 4.0 Kickstart\arm\INC\" #
# List file = C:\Documents and Settings\yc\桌面\AT91SAM7A3(CAN_CAN #
# )(10K_5K)\BasicCAN-SAM7A3\compil\FLASH_Debug\List\MC #
# I_SD.lst #
# Object file = C:\Documents and Settings\yc\桌面\AT91SAM7A3(CAN_CAN #
# )(10K_5K)\BasicCAN-SAM7A3\compil\FLASH_Debug\Obj\MCI #
# _SD.r79 #
# #
# #
##############################################################################
C:\Documents and Settings\yc\桌面\AT91SAM7A3(CAN_CAN)(10K_5K)\BasicCAN-SAM7A3\src\MCI_SD.c
1 //*******************************************************************************************
2 #include "MCI_SD.h"
3 #include "string.h"
4 #include "Board.h"
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs unsigned int AT91F_AIC_ConfigureIt(AT91PS_AIC, unsigned int, unsigned int, unsigned int, void (*)())
\ AT91F_AIC_ConfigureIt:
\ 00000000 F4B4 PUSH {R2,R4-R7}
\ 00000002 021C MOV R2,R0
\ 00000004 059C LDR R4,[SP, #+0x14]
\ 00000006 0426 MOV R6,#+0x4
\ 00000008 4E43 MUL R6,R1
\ 0000000A 9619 ADD R6,R2,R6
\ 0000000C 8036 ADD R6,#+0x80
\ 0000000E 3668 LDR R6,[R6, #+0]
\ 00000010 301C MOV R0,R6
\ 00000012 0126 MOV R6,#+0x1
\ 00000014 8E40 LSL R6,R1
\ 00000016 351C MOV R5,R6
\ 00000018 9226 MOV R6,#+0x92
\ 0000001A 7600 LSL R6,R6,#+0x1 ;; #+0x124
\ 0000001C 9551 STR R5,[R2, R6]
\ 0000001E 0426 MOV R6,#+0x4
\ 00000020 4E43 MUL R6,R1
\ 00000022 9619 ADD R6,R2,R6
\ 00000024 8036 ADD R6,#+0x80
\ 00000026 3460 STR R4,[R6, #+0]
\ 00000028 0426 MOV R6,#+0x4
\ 0000002A 4E43 MUL R6,R1
\ 0000002C 009F LDR R7,[SP, #+0]
\ 0000002E 1F43 ORR R7,R3
\ 00000030 9751 STR R7,[R2, R6]
\ 00000032 9426 MOV R6,#+0x94
\ 00000034 7600 LSL R6,R6,#+0x1 ;; #+0x128
\ 00000036 9551 STR R5,[R2, R6]
\ 00000038 01B0 ADD SP,#+0x4
\ 0000003A F0BC POP {R4-R7}
\ 0000003C 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PIO_CfgPeriph(AT91PS_PIO, unsigned int, unsigned int)
\ AT91F_PIO_CfgPeriph:
\ 00000000 0167 STR R1,[R0, #+0x70]
\ 00000002 4267 STR R2,[R0, #+0x74]
\ 00000004 131C MOV R3,R2
\ 00000006 0B43 ORR R3,R1
\ 00000008 4360 STR R3,[R0, #+0x4]
\ 0000000A 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PIO_CfgOutput(AT91PS_PIO, unsigned int)
\ AT91F_PIO_CfgOutput:
\ 00000000 0160 STR R1,[R0, #+0]
\ 00000002 0161 STR R1,[R0, #+0x10]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PIO_SetOutput(AT91PS_PIO, unsigned int)
\ AT91F_PIO_SetOutput:
\ 00000000 0163 STR R1,[R0, #+0x30]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PIO_ClearOutput(AT91PS_PIO, unsigned int)
\ AT91F_PIO_ClearOutput:
\ 00000000 4163 STR R1,[R0, #+0x34]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PIO_OutputEnable(AT91PS_PIO, unsigned int)
\ AT91F_PIO_OutputEnable:
\ 00000000 0161 STR R1,[R0, #+0x10]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_PMC_EnablePeriphClock(AT91PS_PMC, unsigned int)
\ AT91F_PMC_EnablePeriphClock:
\ 00000000 0161 STR R1,[R0, #+0x10]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_MCI_Configure(AT91PS_MCI, unsigned int, unsigned int, unsigned int)
\ AT91F_MCI_Configure:
\ 00000000 10B4 PUSH {R4}
\ 00000002 0A24 MOV R4,#+0xA
\ 00000004 0460 STR R4,[R0, #+0]
\ 00000006 0024 MOV R4,#+0
\ 00000008 E443 MVN R4,R4 ;; #-1
\ 0000000A 8464 STR R4,[R0, #+0x48]
\ 0000000C 8160 STR R1,[R0, #+0x8]
\ 0000000E 4260 STR R2,[R0, #+0x4]
\ 00000010 C360 STR R3,[R0, #+0xC]
\ 00000012 0524 MOV R4,#+0x5
\ 00000014 0460 STR R4,[R0, #+0]
\ 00000016 10BC POP {R4}
\ 00000018 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_MCI_EnableIt(AT91PS_MCI, unsigned int)
\ AT91F_MCI_EnableIt:
\ 00000000 4164 STR R1,[R0, #+0x44]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_MCI_DisableIt(AT91PS_MCI, unsigned int)
\ AT91F_MCI_DisableIt:
\ 00000000 8164 STR R1,[R0, #+0x48]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs unsigned int AT91F_MCI_GetStatus(AT91PS_MCI)
\ AT91F_MCI_GetStatus:
\ 00000000 006C LDR R0,[R0, #+0x40]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_MCI_Enable(AT91PS_MCI)
\ AT91F_MCI_Enable:
\ 00000000 0121 MOV R1,#+0x1
\ 00000002 0160 STR R1,[R0, #+0]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_MCI_SW_Reset(AT91PS_MCI)
\ AT91F_MCI_SW_Reset:
\ 00000000 8021 MOV R1,#+0x80
\ 00000002 0160 STR R1,[R0, #+0]
\ 00000004 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs void AT91F_MCI_CfgFrequency(AT91PS_MCI, unsigned int, unsigned int)
\ AT91F_MCI_CfgFrequency:
\ 00000000 30B5 PUSH {R4,R5,LR}
\ 00000002 031C MOV R3,R0
\ 00000004 0C1C MOV R4,R1
\ 00000006 201C MOV R0,R4
\ 00000008 0221 MOV R1,#+0x2
\ 0000000A 5143 MUL R1,R2
\ 0000000C ........ _BLF ??divu32_t,??rT??divu32_t
\ 00000010 491E SUB R1,#+0x1
\ 00000012 0D1C MOV R5,R1
\ 00000014 5868 LDR R0,[R3, #+0x4]
\ 00000016 FF21 MOV R1,#+0xFF
\ 00000018 8843 BIC R0,R1
\ 0000001A 5860 STR R0,[R3, #+0x4]
\ 0000001C 5868 LDR R0,[R3, #+0x4]
\ 0000001E 2906 LSL R1,R5,#+0x18 ;; ZeroExt R1,R5,#+0x18,#+0x18
\ 00000020 090E LSR R1,R1,#+0x18
\ 00000022 0143 ORR R1,R0
\ 00000024 5960 STR R1,[R3, #+0x4]
\ 00000026 30BC POP {R4,R5}
\ 00000028 01BC POP {R0}
\ 0000002A 0047 BX R0 ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs unsigned int AT91F_MCI_GetRSP0Reg(AT91PS_MCI)
\ AT91F_MCI_GetRSP0Reg:
\ 00000000 006A LDR R0,[R0, #+0x20]
\ 00000002 7047 BX LR ;; return
\ In segment CODE, align 4, keep-with-next
\ __??Code16?? __code __interwork __atpcs unsigned int AT91F_MCI_GetRSP1Reg(AT91PS_MCI)
\ AT91F_MCI_GetRSP1Reg:
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -