E54P [Neo Geo] Ghosts 'N Goblins

Started by Thomas83Lin, May 02, 2011, 08:50:41 PM

Previous topic - Next topic

Thomas83Lin

Inf Credits [Thomas83Lin]
42000000 90000000
003331E3 00000004
E0000000 80008000

Inf Lives [Thomas83Lin]
42000000 90000000
00333220 00000008
E0000000 80008000

Always have Armor [Thomas83Lin]
42000000 90000000
0033326C 00000000
E0000000 80008000

Invincibility [Thomas83Lin]
42000000 90000000
0033326D 00000002
E0000000 80008000

Weapon Modifier [Thomas83Lin]
42000000 90000000
00333233 0000000x
E0000000 80008000
X=
0=Fire Ball
1=Spear
2=Axe
3=Cross
4=Knife

Inf Time [Thomas83Lin]
42000000 90000000
0233326A 00000258
E0000000 80008000

Moon Jump [Thomas83Lin]
2869657E FEFF0100
42000000 90000000
003336C4 00000001
003336DB 00000003
E0000000 80008000
*Wiimote*
*Don't Go out of Screen may get stuck*

dcx2

I think there might be a shorter way to patch the ROM's ASM.  Try this.  It uses gr0 to write the byte, so you won't need a terminator.

Inf Credits [Thomas83Lin]
80000000 00000004
84000000 903331E3

Thomas83Lin

These aren't asm, but would it still work for a ram write??

dcx2

Oh, I assumed you were patching ASM because of the MEM2 write.

Yeah, the same basic principle should work for RAM writes.

EDIT: just make sure you get the T field of the 84 code set for the size of the data you're writing.

Thomas83Lin

#4
yep works good for ram writes. I'm assuming its ok it keep using the same Gr for every code. atleast it seems to work ok.

edit:
atleast for stuff like lives, exec

dcx2

Yes, using gr0 like this is okay so long as no other code expects the value of gr0 to be persistent across frames.

If someone else makes a code, and it uses gr0 to store some value for the long-term, your code could interfere with it.

Thomas83Lin

gotcha, I'll try this on the next game that uses 90mem