ROM:4553B978
ROM:4553B978 ; ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦ S U B R O U T I N E ¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦¦
ROM:4553B978
ROM:4553B978
ROM:4553B978 sub_4553B978 ; CODE XREF: ROM:456D8984p
ROM:4553B978
ROM:4553B978 var_1C = -0x1C
ROM:4553B978
ROM:4553B978 ; FUNCTION CHUNK AT ROM:4519654C SIZE 00000084 BYTES
ROM:4553B978
ROM:4553B978 00 4B LDR R3, off_4553B97C
ROM:4553B97A 18 47 BX R3
ROM:4553B97A ; End of function sub_4553B978
ROM:4553B97A
ROM:4553B97A ; ---------------------------------------------------------------------------
ROM:4553B97C 4D 65 19 45 off_4553B97C DCD loc_4519654C+1 ; DATA XREF: sub_4553B978r
aqui esta como debe quedar tu asm.
te recomiendo que primero analices los hooks para que se analize automaticamente la mayoria de tu codigo nuevo y asi ya no tengas tantos problemas.
Código:
include "x.inc"
;======================Hooks==================================
org 0x450A7A1C ; direccion a portar
MOV R2, 0xFF
org 0x450A7A3C; direccion a portar
DCD aSonyEricssonRo
edito:
ya vi cual es tu problema.
esto deberia solucionar tu problema de fuera de rango.
si te das cuenta solo copie lo que habia en esta direccion
0x4553B978
y en esta
0x45534008
y lo puse al final del parche para evitar lo de fuera de rango. Agregue align 4 por si las dudas :D
todo deberia funcionar bien y ya puedes redireccionar a tu gusto sin problema de fuera de rango
Código:
include "x"
;======================Hooks==================================
org 0x450A7A1C ; direccion a portar
MOV R2, 0xFF
org 0x450A7A3C; direccion a portar
DCD aSonyEricssonRo
ese align 4 no debe ir ahi esta mal mira aqui analize yo el asm y me compila tal cual esta como yo lo arme te lo dejo y te dejo el parche que yo compile para que veas que es igual al que porto MNS81
este es el asm:
Código:
include "x.inc"
;W810 SW-R4EA031
;Change Sony Ericsson ROCKS! message to Sony Ericsson ROCKS!!! Nokia SUCKS!!!
;Usage: (ServiceMenu -> Model Info -> Press 2,4,6,8)
;Ability to set icon
;(c) jasiek
;(r) D-Man
;(e) jamesbond22
;(p) MNS81
;(A) albertnet3
org 0x450A7A1C;este es el primer hook y se debe portar a tu modelo y firm
MOV R2, 0xFF;este es el lenght para que entre mas texto al mensaje
org 0x450A7A3C;este es el segundo hook y se debe portar a tu modelo y firm
off_450A7A3C dw aSonyEricssonRo;esto es el link al texto del nuevo codigo del parche
org 0x450A7A28;este es el tercer hook y se debe portar a tu modelo y firm
LDR R1, off_450A7A2C
BX R1
off_450A7A2C dw loc_456D8980+1 ;este es el link al nuevo codigo del parche
org 0x456D8980;este es el espacio libre en donde se escribira el parche en tu main tambien se debe cambiar si es que este ya esta ocupado
;Nuevo codigo
loc_456D8980:
ADD R1, R0, 0
LDR R0, [R4,0x18];esto es el gui de deja como esta
BL 0x4553B978;este tambien se porta es la funsion para que sepueda agergar mas texto al mensaje
LDR R1, dword_456D89C0;este no se porta es parte del nuevo codigo es el link al icono
LDR R0, [R4,0x18];esto es el gui de deja como esta
BL 0x45534008; este tambien se porta es la funsion para poder poner el icono
LDR R0, off_456D89BC;este no se porta este es el link al retorno del parche
BX R0
aSonyEricssonRo db "Sony Ericsson",0xA ;aqui comienza el texto
db "ROCKS!!!",0xA
db 0xA
db "Nokia",0xA
db "SUCKS!!!",0
db 0xFF
off_456D89BC dw 0x450A7A30+1 ;este tambien se porta es el retorno del parche
dword_456D89C0 dw 0xE9A3;este es el icono
y este es el parche que compile :
05/12/2010, 17:19:50
bill_kevin
Respuesta: [DISCUSION] Archivos Assembling (ASM)
Gracias , ya esta porteado, una pregunta en esto me confundo mucho.
Que tal, aqui lo correcto seria analizar con C y con D ya que
450A71F4: 004B184701926C45
004B = Creo que deberia ser un LDR Rx
1847 = BX Rx
01926C45 = DCD 0x456C9200+1
Al igual que en los otros 2 hooks
Pero comúnmente cuando analizas con C desde 004B la parte que deberia analizarse con D, se analiza sola.
Espero no confundirte bro.
Saludos.
05/12/2010, 23:10:16
bill_kevin
Respuesta: [DISCUSION] Archivos Assembling (ASM)
Si si entendi bueno eso creo Primero lo analizo con C y despues Analizo ese codigo con D,este es el parche que quiero Portear.
Código:
;W810 SW-R4EA031
;Add the ability to show IMEI or Show the message "Private IMEI" when you press *#06# and in
;Service -> Service Info -> Configuration.
;(!) To show IMEI or Show Message, you need press right softkey in the GUI of IMEI (*#06#)
;v. Beta Test
;(c) anarkes
;(p) MaxxxS
450A71F4: 30B50C1C01F062FB 004B184701926C45
450A8718: 0C1C002700F0D0F8 004B184765926C45
450A723A: A0692A1C0B49F4F0F0FA 014A1047FFFF23926C45
456C9200: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 30B50C1C002000F03EF8002806D05BA0
456C9210: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 06210C2200F08FF8414B184700F098F8
456C9220: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FAE7A0692A1C0D4900F094F80A49A069
456C9230: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 0B4A00F08FF8354AA069074900F08CF8
456C9240: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 002000F020F8002801D0024A10470120
456C9250: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FBE7FFFF45720A45B90F0000AF0F0000
456C9260: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF CF926C450C1C0027002000F00CF80028
456C9270: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 06D042A006250C2200F05DF8294B1847
456C9280: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00F066F8FAE730B5244C27A501280BD0
456C9290: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 022816D0201C291C002200F057F801D4
456C92A0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 012030BD002030BD002001B4201C291C
456C92B0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 0422FF23813300F040F800F043F801B0
456C92C0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 30BD201C291C002200F03EF830BD1FB5
456C92D0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 00200F4A03B40020FFF7D5FF071C012F
456C92E0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 10D02DA006210C2200F025F8011C0948
456C92F0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 0123094CA047002F06D00220FFF7C3FF
456C9300: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 02B01FBD28A0EDE70120F7E740010000
456C9310: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 37E80000FFFFFF6F953C53454C184A44
456C9320: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF FD710A4521870A456E006F0049004D00
456C9330: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 450049000000094B184708B4084B9C46
456C9340: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 08BC6047074B1847074B1847074B1847
456C9350: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 074B1847074B1847074B18479DE62F45
456C9360: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 69425B45A1545B45F54B5B45DD4A5B45
456C9370: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF C1880A4525B819450DB9194550726976
456C9380: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 61746520494D454950726F746563743A
456C9390: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 204F6E0000FFFFFF50726F746563743A
456C93A0: FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 204F6E0000FFFFFF50726F746563743A
456C93B0: FFFFFFFFFFFF 204F66660000
Aqui esta el asm pero a la hora de Compilar me da este error:
No se encuentra C:\Armpc\test.asm.vkp
flat assembler for ARM version 1.67.22 (1260409 kilobytes memory)
test.asm [164]:
adr R0, loc_456C9398
x.inc [80] adr [4]:
add reg,pc,(offs-($ and 0xFFFFFFFC)-4)
error: Constant not aligned.
Eso es lo mas que llego a hacer en el asm, me podrian decir cual es el error y Cuales son las Rutas que tengo que portar, Espero que lo demas este Bien Gracias de antemano.