Bueno, los nombres patch y dir1, dir2, etc. tambien son orientativos, realmente le podes poner cualquier nombre que quieras. Respecto a lo anterior, lo explique en el tuto para el BL pero voy a tratar de explicarlo mejor para tu caso que son DCD:
Cada bloque que va escribir el fasarm tiene que tener esta forma:
org (Nombre de la direccion donde empieza a escribir)
"loc o sub" (Direccion de partida):
INSTRUCCION (Nombre de la direccion de destino)
Por ejemplo esta linea:
10c67fc: 816A2045 B1556B45
Donde empieza?: 10c67fc+44140000 = 452067FC y esta es tambien la direccion de partida para el salto.
Instruccion?: para realizar un salto es "DCD"
destino?: 456B55B0+1 (fijate que son los valores invertidos de a pares)
Entonces tiene que quedar asi:
org salto2
loc_452067FC:
DCD parche+1
¿Ves que queda parecido al org patch1 del tuto, pero con DCD? Tenes que definir los nombres salto2 y parche. Asi que al comienzo del ASM pones:
salto2 equ 0x452067FC
parche equ 0x456B55B0
Tambien nota que si bien le puedo poner cualquier nombre al destino lo llame "parche" ya que si te fijas es donde comienza el codigo nuevo. Esto es importante que lo notes para luego portarlo en la fase 2.
Para seguir agregando bloques de instrucciones consecutivas volves a usar el comando "org".
Si seguis teniendo dudas, pregunta, para eso esta esta seccion. Podria haber sido mas explicativo en el tuto, pero ya esta bastante largo, no?![]()
Marcadores