把FW.S下面的
; WinCE 3.00 assembler has some problem about ALIGN instruction.
; Sometimes it is not working in cache mode. So I modify to jump to ROM area.
; If the rom is EBOOT, the target address is 0x92001004.
; Else if the rom is NAND, the target address is 0x92000004.
; ldr r8, =0xEA000000
; add r8, r8, #0x3f0
; add r8, r8, #0xe ; make value to 0xEA0003FE
; ldr r6, =0x92000000 ; make address to 0x9200 1004 or 0x9200 0004
; ldr r7, [r6] ; Check ROM Address data, if 0xEA0003FE, it is EBOOT
; cmp r7, r8
; bne %f50
; add r6, r6, #0x1000 ; Because eboot startup code is located at 0x1000.
;50
; add r6, r6, #0x4 ;
; mov pc, r6 ; jump to Power off code in ROM
或类似功能的段注释掉就可以的,之后进入休眠态
详情回复
发表于 2010-3-15 19:06
把FW.S下面的
; WinCE 3.00 assembler has some problem about ALIGN instruction.
; Sometimes it is not working in cache mode. So I modify to jump to ROM area.
; If the rom is EBOOT, the target address is 0x92001004.
; Else if the rom is NAND, the target address is 0x92000004.
; ldr r8, =0xEA000000
; add r8, r8, #0x3f0
; add r8, r8, #0xe ; make value to 0xEA0003FE
; ldr r6, =0x92000000 ; make address to 0x9200 1004 or 0x9200 0004
; ldr r7, [r6] ; Check ROM Address data, if 0xEA0003FE, it is EBOOT
; cmp r7, r8
; bne %f50
; add r6, r6, #0x1000 ; Because eboot startup code is located at 0x1000.
;50
; add r6, r6, #0x4 ;
; mov pc, r6 ; jump to Power off code in ROM