Registrarse

[Rutinas] Rutina colorear stat para esmeralda ES

Estado
Cerrado para nuevas respuestas.

Inferno

Miembro insignia
Miembro insignia
Buenas, quisiera ayuda en que si alguien me puede compilar la rutina asm colorear stats para esmeralda https://whackahack.com/foro/t-43502/asm-emerald-esmeralda-colorear-stats-dependiendo-naturaleza

Rom: Esmeralda Español

ya que Loz vio un percance, pero ni mi thumb ni asm compiler me dejan abrirlo y compilarlo por mi mismo, Se agradece de antemano y muchas gracias. :D
Ya tienes la rutina compilada en el propio aporte, donde dice compilado, todos esos números son la rutina ya compilada, es lo que debes poner en la Rom a través de un editor hexadecimal como puede ser el HxD.

Te dejo esto por aquí, creo que te puede ser útil:
https://whackahack.com/foro/t-40032/gba-asm-insertar-rutina-asm
 
si se, pero al hacerlo todo, por que me me tome mi tiempo en hacerlo la rom como que muere literalmente, y es por que loz dijo que el offset estaba mal colocado, entonces deduje que por eso no me abria la rom
 

Inferno

Miembro insignia
Miembro insignia
Asegúrate de estar usando los offsets indicados para la ROM que usas.
Loz corrige un fallo dentro de la rutina, en concreto una dirección, con cambiar la dirección antigua por la que loz dejó debería funcionar, pero ojo, esa dirección errónea solo está en la versión española, si tu estás usando la versión inglesa eso no te afecta en nada.

Te dejo por aquí esa rutina ya compilada con la dirección corregida:
Código:
20 B4 88 B0 20 68 A3 30 01 78 36 48 8A 00 8A 18 12 18 03 32 34 4B 69 46 00 25 10 78 01 28 04 D0 FF 28 04 D1 00 F0 3F F8 01 E0 00 F0 46 F8 58 5D 48 55 01 35 03 2D FA D1 03 33 03 31 00 25 01 32 10 78 01 28 04 D0 FF 28 05 D0 00 F0 40 F8 04 E0 00 F0 33 F8 01 E0 00 F0 26 F8 58 5D 48 55 01 35 03 2D FA D1 03 33 03 31 00 25 02 3A 10 78 01 28 04 D0 FF 28 05 D0 00 F0 2A F8 04 E0 00 F0 1D F8 01 E0 00 F0 10 F8 58 5D 48 55 01 35 03 2D FA D1 03 33 03 31 15 48 69 46 15 4A 00 F0 21 F8 08 B0 20 BC 14 4A 10 47 FC 20 08 70 01 31 01 20 08 70 01 31 07 20 08 70 01 31 70 47 FC 20 08 70 01 31 01 20 08 70 01 31 05 20 08 70 01 31 70 47 FC 20 08 70 01 31 01 20 08 70 01 31 08 70 01 31 70 47 10 47 C0 46 D4 4A 32 08 AA F7 61 08 C4 1F 02 02 49 F8 1A 08 8D 34 1C 08
(En teoría debería estar bien)

Otra cosa que el menciona es la dirección en la que guardas la rutina. Una rutina debe ser insertada en un offset que acabe por una de esta serie de números: 0, 2, 4, 6 u 8

Cuando thumb no te compila es porque la rutina tiene algún fallo, y para averiguar dichos fallos siempre puedes abrirlo con cmd o con el programa .bat (lo encontrarás en este aporte).
Acabo de mirar y la rutina no te va a compilar por dos cosas, detecta como erróneas las instrucciones "summary pointer" y "nature", esto se debe a que al copiarlo directamente del post, estas palabras aparecen separadas de la linea anterior (se produjo un salto de linea), corrigiendo eso te debería de compilar perfectamente.

EDIT: Recién caigo en que ya decías que usabas la versión española. Fallo mio en eso, no me lo tengas en cuenta aquí ya son las 2:30 a.m :sleepy:'^^
 
Última edición:

Omega

For endless fight
Miembro del equipo
Moderador/a
Buenas, quisiera ayuda en que si alguien me puede compilar la rutina asm colorear stats para esmeralda https://whackahack.com/foro/t-43502/asm-emerald-esmeralda-colorear-stats-dependiendo-naturaleza
Aqui esta:
Código:
20 B4 88 B0 20 68 A3 30 01 78 2E 48 8A 00 8A 18 12 18 2D 4B 69 46 00 25 58 5D 48 55 01 35 06 2D FA D1 06 33 06 31 00 25 10 78 01 28 04 D0 FF 28 04 D1 00 F0 28 F8 01 E0 00 F0 2F F8 58 5D 48 55 01 35 03 2D FA D1 03 33 03 31 00 25 01 32 10 78 01 28 04 D0 FF 28 05 D0 00 F0 29 F8 04 E0 00 F0 1C F8 01 E0 00 F0 0F F8 58 5D 48 55 01 35 03 2D FA D1 16 48 69 46 16 4A 00 F0 22 F8 48 46 08 B0 20 BC 14 4A 1C E0 FC 20 08 70 01 31 01 20 08 70 01 31 07 20 08 70 01 31 70 47 FC 20 08 70 01 31 01 20 08 70 01 31 05 20 08 70 01 31 70 47 FC 20 08 70 01 31 01 20 08 70 01 31 08 70 01 31 70 47 10 47 C0 46 D4 4A 32 08 9E F7 61 08 C4 1F 02 02 49 F8 1A 08 C9 33 1C 08

Pegar ese código en una dirección XX YY ZZ y en 0x1C33BE poner: 00 00 00 4A 10 47 ZZ+1 YY XX 08

Código:
.text
.thumb
.thumb_func
.align 2

main:
    push {r5}
    sub sp, sp, #0x20
    ldr r0, [r4]  [MENTION=12671]pokemon[/MENTION] summary pointer
    add r0, #0xA3  [MENTION=19050]poke[/MENTION] nature
    ldrb r1, [r0]
    ldr r0, nature_stat_table
    lsl r2, r1, #2
    add r2, r1, r2 @multiply by 5
    add r2, r2, r0 @r2 contains nature info
    add r2, #3 @r2 contains beg of spatk stat
    ldr r3, right_stats_string
    mov r1, sp
    mov r5, #0

handle_spatk:
    ldrb r0, [r2]
    cmp r0, #1
    beq red_font_spatk
    cmp r0, #0xFF
    bne copy_spatk
    bl blue_font
    b copy_spatk
    
red_font_spatk:
    bl red_font
    
copy_spatk:
    ldrb r0, [r3, r5]
    strb r0, [r1, r5]
    add r5, #1
    cmp r5, #3
    bne copy_spatk
    add r3, #3
    add r1, #3
    mov r5, #0
    
handle_spdef:
    add r2, #1
    ldrb r0, [r2]
    cmp r0, #1
    beq red_font_spdef
    cmp r0, #0xFF
    beq blue_font_spdef
    bl default_font
    b copy_spdef
    
red_font_spdef:
    bl red_font
    b copy_spdef
    
blue_font_spdef:
    bl blue_font
    
copy_spdef:
    ldrb r0, [r3, r5]
    strb r0, [r1, r5]
    add r5, #1
    cmp r5, #3
    bne copy_spdef
    add r3, #3
    add r1, #3
    mov r5, #0
    
handle_spd:
    sub r2, #2
    ldrb r0, [r2]
    cmp r0, #1
    beq red_font_spd
    cmp r0, #0xFF
    beq blue_font_spd
    bl default_font
    b copy_spd
    
red_font_spd:
    bl red_font
    b copy_spd
    
blue_font_spd:
    bl blue_font
    
copy_spd:
    ldrb r0, [r3, r5]
    strb r0, [r1, r5]
    add r5, #1
    cmp r5, #3
    bne copy_spd
    add r3, #3
    add r1, #3
    
return:
    ldr r0, displayed_string
    mov r1, sp
    ldr r2, special_f7_string_fct
    bl callvia_r2
    add sp, sp, #0x20
    pop {r5}
    ldr r2, =(0x081C348C + 1)
    bx r2
    
blue_font: @FC 01 07
    mov r0, #0xFC
    strb r0, [r1]
    add r1, #1
    mov r0, #1
    strb r0, [r1]
    add r1, #1
    mov r0, #7 @color of the lowered stat
    strb r0, [r1]
    add r1, #1
    bx lr
    
red_font: @FC 01 05
    mov r0, #0xFC
    strb r0, [r1]
    add r1, #1
    mov r0, #1
    strb r0, [r1]
    add r1, #1
    mov r0, #5 @color of the raised stat
    strb r0, [r1]
    add r1, #1
    bx lr
    
default_font: @FC 01 01
    mov r0, #0xFC
    strb r0, [r1]
    add r1, #1
    mov r0, #1
    strb r0, [r1]
    add r1, #1
    strb r0, [r1]
    add r1, #1
    bx lr
    
callvia_r2:
    bx r2    
    
.align 2

nature_stat_table: .word 0x08324AD4
right_stats_string: .word 0x0861F79E
displayed_string: .word 0x02021FC4
special_f7_string_fct: .word 0x081AF849


Código:
20 B4 88 B0 20 68 A3 30 01 78 36 48 8A 00 8A 18 12 18 03 32 34 4B 69 46 00 25 10 78 01 28 04 D0 FF 28 04 D1 00 F0 3F F8 01 E0 00 F0 46 F8 58 5D 48 55 01 35 03 2D FA D1 03 33 03 31 00 25 01 32 10 78 01 28 04 D0 FF 28 05 D0 00 F0 40 F8 04 E0 00 F0 33 F8 01 E0 00 F0 26 F8 58 5D 48 55 01 35 03 2D FA D1 03 33 03 31 00 25 02 3A 10 78 01 28 04 D0 FF 28 05 D0 00 F0 2A F8 04 E0 00 F0 1D F8 01 E0 00 F0 10 F8 58 5D 48 55 01 35 03 2D FA D1 03 33 03 31 15 48 69 46 15 4A 00 F0 21 F8 08 B0 20 BC 14 4A 10 47 FC 20 08 70 01 31 01 20 08 70 01 31 07 20 08 70 01 31 70 47 FC 20 08 70 01 31 01 20 08 70 01 31 05 20 08 70 01 31 70 47 FC 20 08 70 01 31 01 20 08 70 01 31 08 70 01 31 70 47 10 47 C0 46 D4 4A 32 08 9E F7 61 08 C4 1F 02 02 49 F8 1A 08 8D 34 1C 08

Pegar ese código en una dirección XX YY ZZ y en 0x1C3484 poner 00 4A 10 47 ZZ+1 YY XX 08


@Nyu Itsuki espero que te sirva!
La probe y me ha funcionado, pero si a ti no...
si se, pero al hacerlo todo, por que me me tome mi tiempo en hacerlo la rom como que muere literalmente, y es por que loz dijo que el offset estaba mal colocado, entonces deduje que por eso no me abria la rom
Esto ya es una duda, el pedido era la rutina compilada para Esmeralda, si no te funciona abre un tema en "Dudas del RH".

Saludos!!!

PD: Pedido Completado, Cierro Tema.
 
Estado
Cerrado para nuevas respuestas.
Arriba