- 7
- Posts
- 7
- Years
- Seen Mar 22, 2020
So I recently compiled the asm code for a dawn stone into my fire red hack. I expanded the evolution table, extended the tables limiter from 15 to 17, and added in 2 more slots for a female and male, dawn stone induced, evolution. After adding them into PGE and having Kirlia evolve into Gallade via the Male dawn stone method, the game reads as no evolution for a male Kirlia. As you can see in the code below, I placed the male stone evolution into 0x16 slot and the female one into 0x17 on the evolution method table but no evolution occurs. I've even added an ASM branch at 4318E but it doesn't seem to help either. Any ideas? Here's the code courtesy of DoesntKnowHowToPlay.
.org 0x4318e
lsl r0, r0, #0x0
ldr r2, .MethodAddr
bx r2
.MethodAddr: .word 0x08780241
.org 0x780240
cmp r0, #0x7
beq StandardStone
cmp r0, #0x16
beq MaleStone
cmp r0, #0x17
beq FemaleStone
b NoEvo
MaleStone:
push {r1-r3}
mov r0, r7
mov r1, r8
ldr r1, [r1, #0x0]
bl DetermineGender
pop {r1-r3}
cmp r0, #0x0
beq StandardStone
b NoEvo
FemaleStone:
push {r1-r3}
mov r0, r7
mov r1, r8
ldr r1, [r1, #0x0]
bl DetermineGender
pop {r1-r3}
cmp r0, #0xFE
beq StandardStone
b NoEvo
StandardStone:
ldrh r0, [r1, #0x2]
cmp r0, r9
beq Finish
NoEvo:
ldr r2, .NoEvoReturn
bx r2
DetermineGender:
ldr r2, .DetermineGenderFunc
bx r2
Finish:
ldr r2, .EvoReturn
bx r2
.NoEvoReturn: .word 0x08043199
.EvoReturn: .word 0x0804317d
.DetermineGenderFunc: .word 0x0803f78d
.org 0x4318e
lsl r0, r0, #0x0
ldr r2, .MethodAddr
bx r2
.MethodAddr: .word 0x08780241
.org 0x780240
cmp r0, #0x7
beq StandardStone
cmp r0, #0x16
beq MaleStone
cmp r0, #0x17
beq FemaleStone
b NoEvo
MaleStone:
push {r1-r3}
mov r0, r7
mov r1, r8
ldr r1, [r1, #0x0]
bl DetermineGender
pop {r1-r3}
cmp r0, #0x0
beq StandardStone
b NoEvo
FemaleStone:
push {r1-r3}
mov r0, r7
mov r1, r8
ldr r1, [r1, #0x0]
bl DetermineGender
pop {r1-r3}
cmp r0, #0xFE
beq StandardStone
b NoEvo
StandardStone:
ldrh r0, [r1, #0x2]
cmp r0, r9
beq Finish
NoEvo:
ldr r2, .NoEvoReturn
bx r2
DetermineGender:
ldr r2, .DetermineGenderFunc
bx r2
Finish:
ldr r2, .EvoReturn
bx r2
.NoEvoReturn: .word 0x08043199
.EvoReturn: .word 0x0804317d
.DetermineGenderFunc: .word 0x0803f78d