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

📄 mkfs.lst

📁 Philips LPC2138 Demo Application with Keil C
💻 LST
📖 第 1 页 / 共 2 页
字号:
 00000050  3A20      SUB         R2,#0x20
 00000052  1A12      SUB         R2,R0
   52:             fs = ((ds/c)+127)/128; 
 00000054  1C21      MOV         R1,R4 ; c
 00000056  1C10      MOV         R0,R2 ; ds
 00000058  F7FF      BL          ?C?UDIV?T  ; T=0x0001  (1) ; ?C?UDIV?T
 0000005A  FFD2      BL          ?C?UDIV?T  ; T=0x0001  (2) ; ?C?UDIV?T
 0000005C  1C08      MOV         R0,R1
 0000005E  1C06      MOV         R6,R0
 00000060  367F      ADD         R6,#0x7F
 00000062  09F6      LSR         R6,R6,#0x7
   56:             ds = ns - 32 - 2*fs;
 00000064  1C30      MOV         R0,R6 ; fs
 00000066  0040      LSL         R0,R0,#0x1 ; fs
 00000068  1C3A      MOV         R2,R7 ; ns
 0000006A  3A20      SUB         R2,#0x20
 0000006C  1A12      SUB         R2,R0
   57:             fs = ((ds/c)+127)/128; 
 0000006E  1C21      MOV         R1,R4 ; c
 00000070  1C10      MOV         R0,R2 ; ds
 00000072  F7FF      BL          ?C?UDIV?T  ; T=0x0001  (1) ; ?C?UDIV?T
 00000074  FFC5      BL          ?C?UDIV?T  ; T=0x0001  (2) ; ?C?UDIV?T
 00000076  1C08      MOV         R0,R1
 00000078  1C06      MOV         R6,R0
 0000007A  367F      ADD         R6,#0x7F
 0000007C  09F6      LSR         R6,R6,#0x7
   60:         }
 0000007E  3301      ADD         R3,#0x1
 00000080  1C18      MOV         R0,R3 ; cc
 00000082  2802      CMP         R0,#0x2 ; cc
 00000084  D3E1      BCC         L_11  ; T=0x0000004A
   63:         ds = ns - 32 - 2*fs; 
 00000086  1C30      MOV         R0,R6 ; fs
 00000088  0040      LSL         R0,R0,#0x1 ; fs
 0000008A  1C3A      MOV         R2,R7 ; ns
 0000008C  3A20      SUB         R2,#0x20
 0000008E  1A12      SUB         R2,R0
   65:         dc = ds / c;
 00000090  1C21      MOV         R1,R4 ; c
 00000092  1C10      MOV         R0,R2 ; ds
 00000094  F7FF      BL          ?C?UDIV?T  ; T=0x0001  (1) ; ?C?UDIV?T
 00000096  FFB4      BL          ?C?UDIV?T  ; T=0x0001  (2) ; ?C?UDIV?T
 00000098  1C08      MOV         R0,R1
 0000009A  1C02      MOV         R2,R0 ; dc
 0000009C  ---- Variable 'dc' assigned to Register 'R2' ----
ARM COMPILER V2.42,  mkfs                                                                  27/03/06  10:45:51  PAGE 6   

   66:         if(ret<(fs*128-dc)/128)ret=(fs*128-dc)/128;
 0000009C  1C30      MOV         R0,R6 ; fs
 0000009E  01C0      LSL         R0,R0,#0x7 ; fs
 000000A0  1C11      MOV         R1,R2 ; dc
 000000A2  1A43      SUB         R3,R0,R1 ; dc
 000000A4  09DB      LSR         R3,R3,#0x7
 000000A6  9900      LDR         R1,[R13,#0x0] ; ret
 000000A8  4299      CMP         R1,R3
 000000AA  D203      BCS         L_13  ; T=0x000000B4
 000000AC  1C11      MOV         R1,R2 ; dc
 000000AE  1A40      SUB         R0,R1 ; dc
 000000B0  09C0      LSR         R0,R0,#0x7
 000000B2  9000      STR         R0,[R13,#0x0] ; ret
 000000B4          L_13:
   70:         if(dc >= 65525 + 16){
 000000B4  1C10      MOV         R0,R2 ; dc
 000000B6  4800      LDR         R1,=0x10005
 000000B8  4288      CMP         R0,R1 ; dc
 000000BA  D203      BCS         L_4  ; T=0x000000C4
   73:     }
 000000BC  0864      LSR         R4,R4,#0x1 ; c
 000000BE  1C20      MOV         R0,R4 ; c
 000000C0  2801      CMP         R0,#0x1 ; c
 000000C2  D2B7      BCS         L_6  ; T=0x00000034
 000000C4          L_4:
   76:     memClr(buf,512);
 000000C4  A801      ADD         R0,R13,#0x4
 000000C6  4980      LDR         R1,=0x200
 000000C8  F7FF      BL          memClr?T  ; T=0x0001  (1)
 000000CA  FF9A      BL          memClr?T  ; T=0x0001  (2)
   79:     *(buf+0)=0xE9;  *(buf+1)=0x00;  *(buf+2)=0x00; /* RESET */
 000000CC  21E9      MOV         R1,#0xE9
 000000CE  A801      ADD         R0,R13,#0x4
 000000D0  7001      STRB        R1,[R0,#0x0] ; buf
 000000D2  2100      MOV         R1,#0x0
 000000D4  2005      MOV         R0,#0x5
 000000D6  4468      ADD         R0,R13
 000000D8  7001      STRB        R1,[R0,#0x0] ; buf+1
 000000DA  2100      MOV         R1,#0x0
 000000DC  2006      MOV         R0,#0x6
 000000DE  4468      ADD         R0,R13
 000000E0  7001      STRB        R1,[R0,#0x0] ; buf+2
   82:     memCpy("DSCOSMSH",buf+3,8);
 000000E2  4800      LDR         R0,=??S_2 ; ??S_2
 000000E4  2107      MOV         R1,#0x7
 000000E6  4469      ADD         R1,R13
 000000E8  2208      MOV         R2,#0x8
 000000EA  F7FF      BL          memCpy?T  ; T=0x0001  (1)
 000000EC  FF89      BL          memCpy?T  ; T=0x0001  (2)
   85:     *((unsigned short*)(buf+11)) = 512;
 000000EE  4980      LDRH        R1,=0x200
 000000F0  200F      MOV         R0,#0xF
 000000F2  4468      ADD         R0,R13
 000000F4  8001      STRH        R1,[R0,#0x0] ; buf+11
   88:     *(buf+13) = c;
 000000F6  1C21      MOV         R1,R4 ; c
 000000F8  0609      LSL         R1,R1,#0x18 ; c
 000000FA  0E09      LSR         R1,R1,#0x18
 000000FC  2011      MOV         R0,#0x11
 000000FE  4468      ADD         R0,R13
 00000100  7001      STRB        R1,[R0,#0x0] ; buf+13
   91:     *((unsigned short*)(buf+14)) = 32;
 00000102  2120      MOV         R1,#0x20
 00000104  2012      MOV         R0,#0x12
 00000106  4468      ADD         R0,R13
 00000108  8001      STRH        R1,[R0,#0x0] ; buf+14
ARM COMPILER V2.42,  mkfs                                                                  27/03/06  10:45:51  PAGE 7   

   94:     *(buf+16) = 2;
 0000010A  2102      MOV         R1,#0x2
 0000010C  A805      ADD         R0,R13,#0x14
 0000010E  7001      STRB        R1,[R0,#0x0] ; buf+16
   97:     *((unsigned short*)(buf+17)) = 0;
 00000110  2100      MOV         R1,#0x0
 00000112  2015      MOV         R0,#0x15
 00000114  4468      ADD         R0,R13
 00000116  8001      STRH        R1,[R0,#0x0] ; buf+17
  100:     *((unsigned short*)(buf+19)) = 0;
 00000118  2100      MOV         R1,#0x0
 0000011A  2017      MOV         R0,#0x17
 0000011C  4468      ADD         R0,R13
 0000011E  8001      STRH        R1,[R0,#0x0] ; buf+19
  103:     *(buf+21) = 0xF8;
 00000120  21F8      MOV         R1,#0xF8
 00000122  2019      MOV         R0,#0x19
 00000124  4468      ADD         R0,R13
 00000126  7001      STRB        R1,[R0,#0x0] ; buf+21
  106:     *((unsigned short*)(buf+22)) = 0;
 00000128  2100      MOV         R1,#0x0
 0000012A  201A      MOV         R0,#0x1A
 0000012C  4468      ADD         R0,R13
 0000012E  8001      STRH        R1,[R0,#0x0] ; buf+22
  109:     *((unsigned long*)(buf+32)) = ns;
 00000130  1C38      MOV         R0,R7 ; ns
 00000132  9009      STR         R0,[R13,#0x24] ; buf
  112:     *((unsigned long*)(buf+36)) = fs;
 00000134  1C30      MOV         R0,R6 ; fs
 00000136  900A      STR         R0,[R13,#0x28] ; buf
  115:     *((unsigned long*)(buf+44)) = 2;
 00000138  2002      MOV         R0,#0x2
 0000013A  900C      STR         R0,[R13,#0x30] ; buf
  118:     *((unsigned long*)(buf+67)) = 0x13371337;
 0000013C  4800      LDR         R0,=0x13371337
 0000013E  9000      STR         R0,[R13,#0x47] ; buf
  121:     memCpy("DISCOSMASH!",buf+71,11);
 00000140  4800      LDR         R0,=??S_3 ; ??S_3
 00000142  214B      MOV         R1,#0x4B
 00000144  4469      ADD         R1,R13
 00000146  220B      MOV         R2,#0xB
 00000148  F7FF      BL          memCpy?T  ; T=0x0001  (1)
 0000014A  FF5A      BL          memCpy?T  ; T=0x0001  (2)
  124:     memCpy("FAT32   ",buf+82,8);
 0000014C  4800      LDR         R0,=??S_4 ; ??S_4
 0000014E  2156      MOV         R1,#0x56
 00000150  4469      ADD         R1,R13
 00000152  2208      MOV         R2,#0x8
 00000154  F7FF      BL          memCpy?T  ; T=0x0001  (1)
 00000156  FF54      BL          memCpy?T  ; T=0x0001  (2)
  127:     *(buf+510) = 0x55; *(buf+511) = 0xAA;
 00000158  2155      MOV         R1,#0x55
 0000015A  4800      LDR         R0,=0x202
 0000015C  4468      ADD         R0,R13
 0000015E  7001      STRB        R1,[R0,#0x0] ; buf+510
 00000160  21AA      MOV         R1,#0xAA
 00000162  4800      LDR         R0,=0x203
 00000164  4468      ADD         R0,R13
 00000166  7001      STRB        R1,[R0,#0x0] ; buf+511
  129:     part_writeBuf(part,0,buf);
 00000168  1C28      MOV         R0,R5 ; part
 0000016A  AA01      ADD         R2,R13,#0x4
 0000016C  2100      MOV         R1,#0x0
 0000016E  F7FF      BL          part_writeBuf?T  ; T=0x0001  (1)
 00000170  FF47      BL          part_writeBuf?T  ; T=0x0001  (2)
  131:     memClr(buf,512);
ARM COMPILER V2.42,  mkfs                                                                  27/03/06  10:45:51  PAGE 8   

 00000172  A801      ADD         R0,R13,#0x4
 00000174  4980      LDR         R1,=0x200
 00000176  F7FF      BL          memClr?T  ; T=0x0001  (1)
 00000178  FF43      BL          memClr?T  ; T=0x0001  (2)
  132:     for(c=32;c<(32+2*fs);c++){
 0000017A  2420      MOV         R4,#0x20
 0000017C  E005      B           L_17  ; T=0x0000018A
 0000017E          L_18:
  133:         part_writeBuf(part,c,buf);
 0000017E  1C28      MOV         R0,R5 ; part
 00000180  1C21      MOV         R1,R4 ; c
 00000182  AA01      ADD         R2,R13,#0x4
 00000184  F7FF      BL          part_writeBuf?T  ; T=0x0001  (1)
 00000186  FF3C      BL          part_writeBuf?T  ; T=0x0001  (2)
  134:     }
 00000188  3401      ADD         R4,#0x1
 0000018A          L_17:
 0000018A  1C31      MOV         R1,R6 ; fs
 0000018C  0049      LSL         R1,R1,#0x1 ; fs
 0000018E  3120      ADD         R1,#0x20
 00000190  1C20      MOV         R0,R4 ; c
 00000192  4288      CMP         R0,R1 ; c
 00000194  D3F3      BCC         L_18  ; T=0x0000017E
  135:     *(((unsigned long*)buf)  )=0x0FFFFFF8;
 00000196  4800      LDR         R0,=0xFFFFFF8
 00000198  9001      STR         R0,[R13,#0x4] ; buf
  136:     *(((unsigned long*)buf)+1)=0x0FFFFFFF;
 0000019A  4800      LDR         R0,=0xFFFFFFF
 0000019C  9002      STR         R0,[R13,#0x8] ; buf
  137:     *(((unsigned long*)buf)+2)=0x0FFFFFF8;
 0000019E  4800      LDR         R0,=0xFFFFFF8
 000001A0  9003      STR         R0,[R13,#0xC] ; buf
  138:     part_writeBuf(part,32,buf);
 000001A2  1C28      MOV         R0,R5 ; part
 000001A4  AA01      ADD         R2,R13,#0x4
 000001A6  2120      MOV         R1,#0x20
 000001A8  F7FF      BL          part_writeBuf?T  ; T=0x0001  (1)
 000001AA  FF2A      BL          part_writeBuf?T  ; T=0x0001  (2)
  139:     part_writeBuf(part,32+fs,buf);
 000001AC  1C31      MOV         R1,R6 ; fs
 000001AE  3120      ADD         R1,#0x20
 000001B0  1C28      MOV         R0,R5 ; part
 000001B2  AA01      ADD         R2,R13,#0x4
 000001B4  F7FF      BL          part_writeBuf?T  ; T=0x0001  (1)
 000001B6  FF24      BL          part_writeBuf?T  ; T=0x0001  (2)
  141:     return(0);
 000001B8  2000      MOV         R0,#0x0
 000001BA            ; SCOPE-END
  142: }
 000001BA          L_2:
 000001BA  4981      LDR         R1,=0x204
 000001BC  448D      ADD         R13,R13,R1
 000001BE  BCF0      POP         {R4-R7}
 000001C0  BC08      POP         {R3}
 000001C2  4718      BX          R3
 000001C4          ENDP ; 'mkfs_makevfat?T'



Module Information          Static
----------------------------------
  code size            =    ------
  data size            =    ------
  const size           =        87
End of Module Information.


ARM COMPILATION COMPLETE.  0 WARNING(S),  0 ERROR(S)

⌨️ 快捷键说明

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