- 积分
- 117
- 实力分
- 点
- 金钱数
- 两
- 技术分
- 分
- 贡献分
- 分
|
马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
本帖最后由 mengdie 于 2010-12-27 13:52 编辑
- Editing the memory, inclu由于非常钦佩楼主,不得不说声好! flash area (using
replacement of flash-page content, flash does not change) 附件是cx75 lg3的 ,不要轻易尝试
Would you like to change the firmware, put the patches with right from your phone without using a cable?
At the same time without changing the flash is real?
Then this is for you, namely, forwar由于非常钦佩楼主,不得不说声好! addresses. Substitution of physical addresses to virtual.
MMU (memory management unit) in charge of forwar由于非常钦佩楼主,不得不说声好! table changing virtual addresses to physical,
Physically, this is real addresses are on the bus on the device.
Our flash (ie, firmware, FS, EEPROM), located at 0xA0000000-0xA2000000 (-0xA4000000)
But change it we can not, and then:
1) will punish MMU (fly Data Abort)
2) Just physically, it's not very easy (I must use special commands for each flash)
But since there is a forwar由于非常钦佩楼主,不得不说声好! table, we can load the firmware (of it) into RAM, and and give the address for this, and when the processor is so broaching to Use Code, it will not and users of the flash, and from the RAM.
A RAM is easy to change, in the table (and they may be 2 (table of the first and second levels)) can be mounted read / write
In short, the flight of fancy.
But yet, the developers Siemens blocked access read / write this translation table,
so there is nothing to catch. But for the occasion, made a patch unlock this area for change / read (attached):
- ; TRANSLATEBASE_UNLOCK (CX75v25)
- ;--------------------------
- . Equ vrezka 0x0B18394
- . Equ body 0x0A554F4
- . Equ tbasem 0x0094240
- . Arm
- . Org vrezka
- . Patchcoment ["VREZKA"]
- BL unlock
- . Org body
- . Patchcoment ["BODY"]
- unlock:
- MOV R0, # 1
- PUSH {R0-R2, LR}
- MOV R2, # 0
- LDR R0, = tbasem
- u_loop:
- LDR R1, [R0, R2, LSL # 2]
- ORR R1, R1, 0xFF0
- STR R1, [R0, R2, LSL # 2]
- CMP R2, # 7
- ADDCC R2, R2, # 1
- BCC u_loop
- POP {R0-R2, PC}
复制代码 So let's begin developing a method of "virtual patch".
Here's an example, an elf , he already has a patch
;------------------------------------------------- ---
; CX75v25
; Joke CPU Overclock 208 MHz
; Comic patch dispersal
; (C) Dimadze
08EE928: 68 D0
;------------------------------------------------- ----
When it is run, it is virtually zapatchit phone (until reboot)
Since I have not yet fully examined the documents for translation table
This patch should take you about 2 MB of RAM (1 MB per partition flash and 1 MB - for a possible alignment)
But it is possible to do (4 KB, I just do not know how)
And you will see 208 instead of 104 in Dev. Setup
Despite that the patch virtual, it does not mean that it will not conflict already installed
patches, so that the test patches to repeal any of acceleration and control CPU, and the result is known.
Need to put a patch unlock
He is harmless, such as unlock EEPROM blocks or hidden drives
Without it, the manipulation of the table is not possible, will not have access.
Elf for CX75v25 (not only because of the patch, but due to the sewn addresses procedures)
UNLOCK TBASE CX75v25
tbase_unlock_cx75v25_729.rar
(463 Bytes, 下载次数: 0)
|
|