📄 gpx_serial.cod
字号:
00000 AREA |.pdata$$?GPX_Init@@YAKK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_Init@@YAKK@Z| } ; comdat associative
|$T30963| DCD |$L30962|
DCD 0x40002801
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_Init@@YAKK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_Init@@YAKK@Z| PROC ; GPX_Init
; 191 : {
00000 |$L30962|
00000 e92d4010 stmdb sp!, {r4, lr}
00004 |$M30960|
; 192 :
; 193 :
; 194 : PHYSICAL_ADDRESS ioPhysicalBase1 = { BULVERDE_BASE_REG_PA_STUART, 0 };
00004 e3a00101 mov r0, #1, 2
00008 e3800607 orr r0, r0, #7, 12
0000c e3a01000 mov r1, #0
; 195 :
; 196 : g_pDebugUARTPort = (volatile BULVERDE_UART_REG *) MmMapIoSpace(ioPhysicalBase1,sizeof(BULVERDE_UART_REG), FALSE);
00010 e3a03000 mov r3, #0
00014 e3a02030 mov r2, #0x30
00018 eb000000 bl MmMapIoSpace
0001c e59f4078 ldr r4, [pc, #0x78]
00020 e1a0e000 mov lr, r0
; 197 : PHYSICAL_ADDRESS ioPhysicalBase2 = { BULVERDE_BASE_REG_PA_GPIO, 0 };
00024 e3a00101 mov r0, #1, 2
00028 e380060e orr r0, r0, #0xE, 12
0002c e3a01000 mov r1, #0
; 198 : pGPIO_REGS = (volatile BULVERDE_GPIO_REG *) MmMapIoSpace(ioPhysicalBase2, sizeof(BULVERDE_GPIO_REG),FALSE);
00030 e3a03000 mov r3, #0
00034 e3a02f53 mov r2, #0x53, 30
00038 e584e008 str lr, [r4, #8]
0003c eb000000 bl MmMapIoSpace
00040 e1a0e000 mov lr, r0
; 199 : PHYSICAL_ADDRESS ioPhysicalBase3 = { BULVERDE_BASE_REG_PA_CLKMGR, 0 };
00044 e3a00441 mov r0, #0x41, 8
00048 e3800603 orr r0, r0, #3, 12
0004c e3a01000 mov r1, #0
; 200 : pCLKMGR_REGS = (volatile BULVERDE_CLKMGR_REG *) MmMapIoSpace(ioPhysicalBase3,sizeof(BULVERDE_CLKMGR_REG) ,FALSE);
00050 e3a03000 mov r3, #0
00054 e3a02010 mov r2, #0x10
00058 e584e004 str lr, [r4, #4]
0005c eb000000 bl MmMapIoSpace
00060 e1a03000 mov r3, r0
; 201 :
; 202 : PHYSICAL_ADDRESS ioPhysicalBase4={0x10000000,0};
00064 e5843000 str r3, [r4]
; 203 : unsigned char *temp =(unsigned char *)MmMapIoSpace(ioPhysicalBase4,sizeof(unsigned char),FALSE);
00068 e3a03000 mov r3, #0
0006c e3a00201 mov r0, #1, 4
00070 e3a01000 mov r1, #0
00074 e3a02001 mov r2, #1
00078 eb000000 bl MmMapIoSpace
0007c e1a03000 mov r3, r0
; 204 : temp=temp+0x114;
; 205 : *temp=0xc1;
00080 e3a020c1 mov r2, #0xC1
; 206 :
; 207 : // Map the Mainstone board-level registers which are used in the OEMWriteDebugLED routine.
; 208 : //
; 209 : // g_pBLRegs = (volatile MAINSTONEII_BLR_REGS *) OALPAtoVA(MAINSTONEII_BASE_REG_PA_FPGA, FALSE);
; 210 :
; 211 :
; 212 : PreInit(DEBUG_BAUD_115200);
00084 e3a00008 mov r0, #8
00088 e5c32114 strb r2, [r3, #0x114]
0008c eb000000 bl |?PreInit@@YAXI@Z|
; 213 :
; 214 :
; 215 : return 1;
00090 e3a00001 mov r0, #1
; 216 : }
00094 e8bd4010 ldmia sp!, {r4, lr}
00098 e12fff1e bx lr
0009c |$L30965|
0009c 00000000 DCD |pCLKMGR_REGS|
000a0 |$M30961|
ENDP ; |?GPX_Init@@YAKK@Z|, GPX_Init
EXPORT |?GPX_IOControl@@YAKKKPAEK0KPAK@Z| ; GPX_IOControl
00000 AREA |.text| { |?GPX_IOControl@@YAKKKPAEK0KPAK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$?GPX_IOControl@@YAKKKPAEK0KPAK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_IOControl@@YAKKKPAEK0KPAK@Z| } ; comdat associative
|$T30975| DCD |$L30974|
DCD 0x40000c01
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_IOControl@@YAKKKPAEK0KPAK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_IOControl@@YAKKKPAEK0KPAK@Z| PROC ; GPX_IOControl
; 227 : {
00000 |$L30974|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M30972|
; 228 : switch(dwIoControlCode)
00004 e3510001 cmp r1, #1
00008 0a000003 beq |$L30779|
0000c e3510002 cmp r1, #2
00010 1a000003 bne |$L30776|
; 232 :
; 233 : break;
; 234 : case MODE_GPRS:
; 235 : PreInit(DEBUG_BAUD_115200);
00014 e3a00008 mov r0, #8
; 236 :
; 237 : break;
00018 ea000000 b |$L30971|
0001c |$L30779|
; 229 : {
; 230 : case MODE_GPS:
; 231 : PreInit(DEBUG_BAUD_4800);
0001c e3a000c0 mov r0, #0xC0
00020 |$L30971|
00020 eb000000 bl |?PreInit@@YAXI@Z|
00024 |$L30776|
; 238 :
; 239 : default:
; 240 : break;
; 241 :
; 242 : }
; 243 :
; 244 :
; 245 :
; 246 : return 1;
00024 e3a00001 mov r0, #1
; 247 : }
00028 e49de004 ldr lr, [sp], #4
0002c e12fff1e bx lr
00030 |$M30973|
ENDP ; |?GPX_IOControl@@YAKKKPAEK0KPAK@Z|, GPX_IOControl
EXPORT |?GPX_Open@@YAKKKK@Z| ; GPX_Open
00000 AREA |.text| { |?GPX_Open@@YAKKKK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$?GPX_Open@@YAKKKK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_Open@@YAKKKK@Z| } ; comdat associative
|$T30984| DCD |$L30983|
DCD 0x40000200
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_Open@@YAKKKK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_Open@@YAKKKK@Z| PROC ; GPX_Open
; 250 : {
00000 |$L30983|
00000 |$M30981|
; 251 : DWORD dwret=0;
; 252 : dwret=1;
; 253 : return dwret;
00000 e3a00001 mov r0, #1
; 254 : }
00004 e12fff1e bx lr
00008 |$M30982|
ENDP ; |?GPX_Open@@YAKKKK@Z|, GPX_Open
EXPORT |?GPX_PowerDown@@YAXK@Z| ; GPX_PowerDown
00000 AREA |.text| { |?GPX_PowerDown@@YAXK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$?GPX_PowerDown@@YAXK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_PowerDown@@YAXK@Z| } ; comdat associative
|$T30991| DCD |$L30990|
DCD 0x40000100
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_PowerDown@@YAXK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_PowerDown@@YAXK@Z| PROC ; GPX_PowerDown
; 257 : {
00000 |$L30990|
00000 |$M30988|
; 258 :
; 259 : }
00000 e12fff1e bx lr
00004 |$M30989|
ENDP ; |?GPX_PowerDown@@YAXK@Z|, GPX_PowerDown
EXPORT |?GPX_PowerUp@@YAXK@Z| ; GPX_PowerUp
00000 AREA |.text| { |?GPX_PowerUp@@YAXK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$?GPX_PowerUp@@YAXK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_PowerUp@@YAXK@Z| } ; comdat associative
|$T30998| DCD |$L30997|
DCD 0x40000100
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_PowerUp@@YAXK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_PowerUp@@YAXK@Z| PROC ; GPX_PowerUp
; 262 : {
00000 |$L30997|
00000 |$M30995|
; 263 :
; 264 : }
00000 e12fff1e bx lr
00004 |$M30996|
ENDP ; |?GPX_PowerUp@@YAXK@Z|, GPX_PowerUp
EXPORT |?GPX_Read@@YAKKPAXKK@Z| ; GPX_Read
00000 AREA |.text| { |?GPX_Read@@YAKKPAXKK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$?GPX_Read@@YAKKPAXKK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_Read@@YAKKPAXKK@Z| } ; comdat associative
|$T31015| DCD |$L31014|
DCD 0x40000f01
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_Read@@YAKKPAXKK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_Read@@YAKKPAXKK@Z| PROC ; GPX_Read
; 267 : {
00000 |$L31014|
00000 e92d4070 stmdb sp!, {r4 - r6, lr}
00004 |$M31012|
00004 e1b05002 movs r5, r2
00008 e1a06001 mov r6, r1
; 268 : DWORD dwret=0;
; 269 : unsigned int i=0;
; 270 : int c;
; 271 : unsigned char *pReciveBuf=(unsigned char *)pbuffer;
; 272 : for(i=0;i<count;i++)
0000c e3a04000 mov r4, #0
00010 0a000006 beq |$L31006|
00014 |$L30805|
; 273 : {
; 274 : c=GPXReadByte();
00014 eb000000 bl |?GPXReadByte@@YAHXZ|
; 275 : if(c==READ_NODATA)break;
00018 e3700001 cmn r0, #1
0001c 0a000003 beq |$L31006|
; 276 : *pReciveBuf=(unsigned char)c;
00020 e7c40006 strb r0, [r4, +r6]
00024 e2844001 add r4, r4, #1
00028 e1540005 cmp r4, r5
0002c 3afffff8 bcc |$L30805|
00030 |$L31006|
; 277 : pReciveBuf++;
; 278 : }
; 279 : nReadBytes=i;
; 280 : return i;
00030 e1a00004 mov r0, r4
; 281 :
; 282 : }
00034 e8bd4070 ldmia sp!, {r4 - r6, lr}
00038 e12fff1e bx lr
0003c |$M31013|
ENDP ; |?GPX_Read@@YAKKPAXKK@Z|, GPX_Read
EXPORT |?GPX_Seek@@YAKKJK@Z| ; GPX_Seek
00000 AREA |.text| { |?GPX_Seek@@YAKKJK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$?GPX_Seek@@YAKKJK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_Seek@@YAKKJK@Z| } ; comdat associative
|$T31024| DCD |$L31023|
DCD 0x40000200
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_Seek@@YAKKJK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_Seek@@YAKKJK@Z| PROC ; GPX_Seek
; 285 : {
00000 |$L31023|
00000 |$M31021|
; 286 : DWORD dwret=0;
; 287 : return dwret;
00000 e3a00000 mov r0, #0
; 288 : }
00004 e12fff1e bx lr
00008 |$M31022|
ENDP ; |?GPX_Seek@@YAKKJK@Z|, GPX_Seek
EXPORT |?GPX_Write@@YAKKPAXK@Z| ; GPX_Write
00000 AREA |.text| { |?GPX_Write@@YAKKPAXK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 AREA |.pdata$$?GPX_Write@@YAKKPAXK@Z|, PDATA, SELECTION=5, ASSOC=|.text| { |?GPX_Write@@YAKKPAXK@Z| } ; comdat associative
|$T31047| DCD |$L31046|
DCD 0x40001301
; Function compile flags: /Ogsy
00000 AREA |.text| { |?GPX_Write@@YAKKPAXK@Z| }, CODE, ARM, SELECTION=1 ; comdat noduplicate
00000 |?GPX_Write@@YAKKPAXK@Z| PROC ; GPX_Write
; 291 : {
00000 |$L31046|
00000 e52de004 str lr, [sp, #-4]!
00004 |$M31044|
00004 e3520000 cmp r2, #0
; 292 : unsigned char *pWriteBuf=(unsigned char *)psourcebytes;
; 293 : DWORD i=0;
; 294 : for(i=0;i<numberofbytes;i++)
00008 0a00000b beq |$L30826|
0000c e59f3034 ldr r3, [pc, #0x34]
00010 e5930000 ldr r0, [r3]
00014 |$L30824|
; 295 : {
; 296 : GPXWriteByte(*pWriteBuf);
00014 e5d1e000 ldrb lr, [r1]
00018 e3500000 cmp r0, #0
0001c 0a000003 beq |$L31029|
00020 |$L31031|
00020 e5903014 ldr r3, [r0, #0x14]
00024 e3130020 tst r3, #0x20
00028 0afffffc beq |$L31031|
0002c e580e000 str lr, [r0]
00030 |$L31029|
; 297 : pWriteBuf++;
00030 e2811001 add r1, r1, #1
00034 e2522001 subs r2, r2, #1
00038 1afffff5 bne |$L30824|
0003c |$L30826|
; 298 : }
; 299 : return 1;
0003c e3a00001 mov r0, #1
; 300 : }
00040 e49de004 ldr lr, [sp], #4
00044 e12fff1e bx lr
00048 |$L31049|
00048 00000000 DCD |g_pDebugUARTPort|
0004c |$M31045|
ENDP ; |?GPX_Write@@YAKKPAXK@Z|, GPX_Write
END
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -