?? extract.lst
字號:
00000010 1C0C MOV R4,R1 ; offset
00000012 3403 ADD R4,#0x3
00000014 1C18 MOV R0,R3 ; buf
00000016 5D00 LDRB R0,[R0,R4]
00000018 0600 LSL R0,R0,#0x18
0000001A 1880 ADD R0,R2
0000001C 1C0C MOV R4,R1 ; offset
0000001E 3401 ADD R4,#0x1
00000020 1C1A MOV R2,R3 ; buf
00000022 5D12 LDRB R2,[R2,R4]
00000024 0212 LSL R2,R2,#0x8
00000026 1880 ADD R0,R2
00000028 1C0A MOV R2,R1 ; offset
0000002A 1C19 MOV R1,R3 ; buf
0000002C 5C89 LDRB R1,[R1,R2]
0000002E 1840 ADD R0,R1
90: }
00000030 BC10 POP {R4}
00000032 4770 BX R14
00000034 ENDP ; 'ex_getb32?T'
ARM COMPILER V2.42, extract 27/03/06 10:45:49 PAGE 5
*** CODE SEGMENT '?PR?ex_setb16?T?extract':
93: void ex_setb16(euint8* buf,euint32 offset,euint16 data)
00000000 B430 PUSH {R4-R5}
00000002 ---- Variable 'data' assigned to Register 'R2' ----
00000002 1C0C MOV R4,R1 ; offset
00000004 ---- Variable 'offset' assigned to Register 'R4' ----
00000004 1C03 MOV R3,R0 ; buf
00000006 ---- Variable 'buf' assigned to Register 'R3' ----
99: *(buf+offset+0) = data>>0;
00000006 1C10 MOV R0,R2 ; data
00000008 0405 LSL R5,R0,#0x10 ; data
0000000A 0C2D LSR R5,R5,#0x10
0000000C 062D LSL R5,R5,#0x18
0000000E 0E2D LSR R5,R5,#0x18
00000010 1C21 MOV R1,R4 ; offset
00000012 1C18 MOV R0,R3 ; buf
00000014 5445 STRB R5,[R0,R1]
100: *(buf+offset+1) = data>>8;
00000016 1C10 MOV R0,R2 ; data
00000018 0402 LSL R2,R0,#0x10 ; data
0000001A 0C12 LSR R2,R2,#0x10
0000001C 0A12 LSR R2,R2,#0x8
0000001E 0612 LSL R2,R2,#0x18
00000020 0E12 LSR R2,R2,#0x18
00000022 1C21 MOV R1,R4 ; offset
00000024 1C18 MOV R0,R3 ; buf
00000026 1840 ADD R0,R1 ; buf
00000028 7042 STRB R2,[R0,#0x1]
102: }
0000002A BC30 POP {R4-R5}
0000002C 4770 BX R14
0000002E ENDP ; 'ex_setb16?T'
*** CODE SEGMENT '?PR?ex_setb32?T?extract':
105: void ex_setb32(euint8* buf,euint32 offset,euint32 data)
00000000 B430 PUSH {R4-R5}
00000002 1C15 MOV R5,R2 ; data
00000004 ---- Variable 'data' assigned to Register 'R5' ----
00000004 1C0C MOV R4,R1 ; offset
00000006 ---- Variable 'offset' assigned to Register 'R4' ----
00000006 1C03 MOV R3,R0 ; buf
00000008 ---- Variable 'buf' assigned to Register 'R3' ----
113: *(buf+offset+0) = data>> 0;
00000008 1C2A MOV R2,R5 ; data
0000000A 0612 LSL R2,R2,#0x18 ; data
0000000C 0E12 LSR R2,R2,#0x18
0000000E 1C21 MOV R1,R4 ; offset
00000010 1C18 MOV R0,R3 ; buf
00000012 5442 STRB R2,[R0,R1]
114: *(buf+offset+1) = data>> 8;
00000014 1C2A MOV R2,R5 ; data
00000016 0A12 LSR R2,R2,#0x8 ; data
00000018 0612 LSL R2,R2,#0x18
0000001A 0E12 LSR R2,R2,#0x18
0000001C 1C21 MOV R1,R4 ; offset
0000001E 1C18 MOV R0,R3 ; buf
00000020 1840 ADD R0,R1 ; buf
00000022 7042 STRB R2,[R0,#0x1]
115: *(buf+offset+2) = data>>16;
00000024 1C2A MOV R2,R5 ; data
00000026 0C12 LSR R2,R2,#0x10 ; data
00000028 0612 LSL R2,R2,#0x18
0000002A 0E12 LSR R2,R2,#0x18
0000002C 1C21 MOV R1,R4 ; offset
0000002E 1C18 MOV R0,R3 ; buf
00000030 1840 ADD R0,R1 ; buf
00000032 7082 STRB R2,[R0,#0x2]
ARM COMPILER V2.42, extract 27/03/06 10:45:49 PAGE 6
116: *(buf+offset+3) = data>>24;
00000034 1C2A MOV R2,R5 ; data
00000036 0E12 LSR R2,R2,#0x18 ; data
00000038 0612 LSL R2,R2,#0x18
0000003A 0E12 LSR R2,R2,#0x18
0000003C 1C21 MOV R1,R4 ; offset
0000003E 1C18 MOV R0,R3 ; buf
00000040 1840 ADD R0,R1 ; buf
00000042 70C2 STRB R2,[R0,#0x3]
118: }
00000044 BC30 POP {R4-R5}
00000046 4770 BX R14
00000048 ENDP ; 'ex_setb32?T'
*** CODE SEGMENT '?PR?ex_getPartitionField?T?extract':
121: void ex_getPartitionField(euint8* buf,PartitionField* pf, euint32 offset)
00000000 B570 PUSH {R4-R6,LR}
00000002 1C16 MOV R6,R2 ; offset
00000004 ---- Variable 'offset' assigned to Register 'R6' ----
00000004 1C0C MOV R4,R1 ; pf
00000006 ---- Variable 'pf' assigned to Register 'R4' ----
00000006 1C05 MOV R5,R0 ; buf
00000008 ---- Variable 'buf' assigned to Register 'R5' ----
123: pf->bootFlag = *(buf + offset);
00000008 1C31 MOV R1,R6 ; offset
0000000A 1C28 MOV R0,R5 ; buf
0000000C 5C42 LDRB R2,[R0,R1]
0000000E 1C20 MOV R0,R4 ; pf
00000010 7002 STRB R2,[R0,#0x0] ; pf
124: pf->CHS_begin[0] = *(buf + offset + 1);
00000012 1C31 MOV R1,R6 ; offset
00000014 1C28 MOV R0,R5 ; buf
00000016 1840 ADD R0,R1 ; buf
00000018 7840 LDRB R0,[R0,#0x1]
0000001A 1C21 MOV R1,R4 ; pf
0000001C 7048 STRB R0,[R1,#0x1]
125: pf->CHS_begin[1] = *(buf + offset + 2);
0000001E 1C31 MOV R1,R6 ; offset
00000020 1C28 MOV R0,R5 ; buf
00000022 1840 ADD R0,R1 ; buf
00000024 7880 LDRB R0,[R0,#0x2]
00000026 1C21 MOV R1,R4 ; pf
00000028 7088 STRB R0,[R1,#0x2]
126: pf->CHS_begin[2] = *(buf + offset + 3);
0000002A 1C31 MOV R1,R6 ; offset
0000002C 1C28 MOV R0,R5 ; buf
0000002E 1840 ADD R0,R1 ; buf
00000030 78C0 LDRB R0,[R0,#0x3]
00000032 1C21 MOV R1,R4 ; pf
00000034 70C8 STRB R0,[R1,#0x3]
127: pf->type = *(buf + offset + 4);
00000036 1C31 MOV R1,R6 ; offset
00000038 1C28 MOV R0,R5 ; buf
0000003A 1840 ADD R0,R1 ; buf
0000003C 7900 LDRB R0,[R0,#0x4]
0000003E 1C21 MOV R1,R4 ; pf
00000040 7108 STRB R0,[R1,#0x4]
128: pf->CHS_end[0] = *(buf + offset + 5);
00000042 1C31 MOV R1,R6 ; offset
00000044 1C28 MOV R0,R5 ; buf
00000046 1840 ADD R0,R1 ; buf
00000048 7940 LDRB R0,[R0,#0x5]
0000004A 1C21 MOV R1,R4 ; pf
0000004C 7148 STRB R0,[R1,#0x5]
129: pf->CHS_end[1] = *(buf + offset + 6);
0000004E 1C31 MOV R1,R6 ; offset
00000050 1C28 MOV R0,R5 ; buf
ARM COMPILER V2.42, extract 27/03/06 10:45:49 PAGE 7
00000052 1840 ADD R0,R1 ; buf
00000054 7980 LDRB R0,[R0,#0x6]
00000056 1C21 MOV R1,R4 ; pf
00000058 7188 STRB R0,[R1,#0x6]
130: pf->CHS_end[2] = *(buf + offset + 7);
0000005A 1C31 MOV R1,R6 ; offset
0000005C 1C28 MOV R0,R5 ; buf
0000005E 1840 ADD R0,R1 ; buf
00000060 79C0 LDRB R0,[R0,#0x7]
00000062 1C21 MOV R1,R4 ; pf
00000064 71C8 STRB R0,[R1,#0x7]
131: pf->LBA_begin = ex_getb32(buf + offset,8);
00000066 1C31 MOV R1,R6 ; offset
00000068 1C28 MOV R0,R5 ; buf
0000006A 1840 ADD R0,R1 ; buf
0000006C 2108 MOV R1,#0x8
0000006E F7FF BL ex_getb32?T ; T=0x0001 (1)
00000070 FFC7 BL ex_getb32?T ; T=0x0001 (2)
00000072 1C21 MOV R1,R4 ; pf
00000074 6088 STR R0,[R1,#0x8]
132: pf->numSectors = ex_getb32(buf + offset,12);
00000076 1C31 MOV R1,R6 ; offset
00000078 1C28 MOV R0,R5 ; buf
0000007A 1840 ADD R0,R1 ; buf
0000007C 210C MOV R1,#0xC
0000007E F7FF BL ex_getb32?T ; T=0x0001 (1)
00000080 FFBF BL ex_getb32?T ; T=0x0001 (2)
00000082 1C21 MOV R1,R4 ; pf
00000084 60C8 STR R0,[R1,#0xC]
133: }
00000086 BC70 POP {R4-R6}
00000088 BC08 POP {R3}
0000008A 4718 BX R3
0000008C ENDP ; 'ex_getPartitionField?T'
*** CODE SEGMENT '?PR?ex_setPartitionField?T?extract':
139: }
00000000 4770 BX R14
00000002 ENDP ; 'ex_setPartitionField?T'
Module Information Static
----------------------------------
code size = ------
data size = ------
const size = ------
End of Module Information.
ARM COMPILATION COMPLETE. 3 WARNING(S), 0 ERROR(S)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -