Language…
5 users online: BabaYegha, masl, Oskise, sinseiga, Tsquare07 - Guests: 231 - Bots: 291
Users: 64,795 (2,375 active)
Latest user: mathew

Title screen patch

I made a patch for you, so you could have your names in the title screen, just like this:
http://www.youtube.com/watch?v=K4uLAPwEtcI

download:
http://rapidshare.com/files/2980404928/title%20screen%20patch.ppf
you can modify texts with a simple hex editor.
text 1 position is at 3f7c
text 2 position is at 3fa8
it shortens a functions, that is 2times longer than it has to be (because compilers are shit, i guess), which produces the sounds for the title screen, and writes something new into that space.
code:
3E54:
ADDIU SP, SP, 0xFFE8 ; runs at title screen /game over (play misc sounds)
SW RA, 0x0014 (SP)
SW A0, 0x0018 (SP)
LH T6, 0x001A (SP)
ANDI T7, T6, 0x0001
BEQ T7, R0, b
NOP
LUI A0, 0x700A
BEQ R0, R0, i
NOP

b
LH T8, 0x001A (SP)
ANDI T9, T8, 0x0002
BEQ T9, R0, c
NOP
LUI A0, 0x700B
BEQ R0, R0, i
NOP

c
LH T0, 0x001A (SP)
ANDI T1, T0, 0x0004
BEQ T1, R0, d
NOP
LUI A0, 0x700C
BEQ R0, R0, i
NOP

d
LH T2, 0x001A (SP)
ANDI T3, T2, 0x0008
BEQ T3, R0, e
NOP
LUI A0, 0x7008
BEQ R0, R0, i
NOP

e
LH T4, 0x001A (SP)
ANDI T5, T4, 0x0010
BEQ T5, R0, f
NOP
LUI A0, 0x7008
BEQ R0, R0, i
NOP

f
LH T6, 0x001A (SP)
ANDI T7, T6, 0x0020
BEQ T7, R0, g
NOP
LUI A0, 0x7009
BEQ R0, R0, i
NOP

g
LH T8, 0x001A (SP)
ANDI T9, T8, 0x0040
BEQ T9, R0, h
NOP
LUI A0, 0x7006
BEQ R0, R0, i
NOP

h
LH T0, 0x001A (SP)
ANDI T1, T0, 0x0080
BEQ T1, R0, j
NOP
LUI A0, 0x7007

i
LUI A1, 0x8033
ADDIU A1, A1, 0x31F0
JAL 0x8031eb00
ORI A0, A0, 0x0081


j
LUI t2, $8024
ORI A2, t2, $8f7c
ADDIU A0, R0, 0x0096
JAL $2D66C0
ADDIU A1, R0, $00ba

addiu a2, a2, $002c
ADDIU A0, R0, 0x00C6
JAL $2D66C0
ADDIU A1, A1, $0024

LW RA, 0x0014 (SP)
ADDIU SP, SP, 0x0018
JR RA
NOP

TEXT 1 AT 248F7c
TEXT 2 AT 248FA8
a1=ycoord
a0=x coord
a2=text position+5000 (in hex)
text 1 position is at 3f7c
text 2 position is at 3f7c+2c=3fa8
if you want to modify positions or text lengths, you can edit the ORI or ADDIU instructions in lem ASM. try a bit with them, i dont want to explain everything
--------------------------------------------------
Original shit code, written by a 7 year old with down syndrome or a C compiler:
80248E54: ADDIU SP, SP, 0xFFE8 ; runs at title screen /game over (play misc sounds)
80248E58: SW RA, 0x0014 (SP)
80248E5C: SW A0, 0x0018 (SP)
80248E60: LH T6, 0x001A (SP)
80248E64: ANDI T7, T6, 0x0001
80248E68: BEQ T7, R0, 0x80248E8C
80248E6C: NOP
80248E70: LUI A0, 0x700A
80248E74: LUI A1, 0x8033
80248E78: ADDIU A1, A1, 0x31F0
80248E7C: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248E80: ORI A0, A0, 0x0081
80248E84: BEQ R0, R0, 0x80248FB8
80248E88: NOP
80248E8C: LH T8, 0x001A (SP)
80248E90: ANDI T9, T8, 0x0002
80248E94: BEQ T9, R0, 0x80248EB8
80248E98: NOP
80248E9C: LUI A0, 0x700B
80248EA0: LUI A1, 0x8033
80248EA4: ADDIU A1, A1, 0x31F0
80248EA8: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248EAC: ORI A0, A0, 0x0081
80248EB0: BEQ R0, R0, 0x80248FB8
80248EB4: NOP
80248EB8: LH T0, 0x001A (SP)
80248EBC: ANDI T1, T0, 0x0004
80248EC0: BEQ T1, R0, 0x80248EE4
80248EC4: NOP
80248EC8: LUI A0, 0x700C
80248ECC: LUI A1, 0x8033
80248ED0: ADDIU A1, A1, 0x31F0
80248ED4: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248ED8: ORI A0, A0, 0x0081
80248EDC: BEQ R0, R0, 0x80248FB8
80248EE0: NOP
80248EE4: LH T2, 0x001A (SP)
80248EE8: ANDI T3, T2, 0x0008
80248EEC: BEQ T3, R0, 0x80248F10
80248EF0: NOP
80248EF4: LUI A0, 0x7008
80248EF8: LUI A1, 0x8033
80248EFC: ADDIU A1, A1, 0x31F0
80248F00: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248F04: ORI A0, A0, 0x0081
80248F08: BEQ R0, R0, 0x80248FB8
80248F0C: NOP
80248F10: LH T4, 0x001A (SP)
80248F14: ANDI T5, T4, 0x0010
80248F18: BEQ T5, R0, 0x80248F3C
80248F1C: NOP
80248F20: LUI A0, 0x7008
80248F24: LUI A1, 0x8033
80248F28: ADDIU A1, A1, 0x31F0
80248F2C: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248F30: ORI A0, A0, 0x0081
80248F34: BEQ R0, R0, 0x80248FB8
80248F38: NOP
80248F3C: LH T6, 0x001A (SP)
80248F40: ANDI T7, T6, 0x0020
80248F44: BEQ T7, R0, 0x80248F68
80248F48: NOP
80248F4C: LUI A0, 0x7009
80248F50: LUI A1, 0x8033
80248F54: ADDIU A1, A1, 0x31F0
80248F58: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248F5C: ORI A0, A0, 0x0081
80248F60: BEQ R0, R0, 0x80248FB8
80248F64: NOP
80248F68: LH T8, 0x001A (SP)
80248F6C: ANDI T9, T8, 0x0040
80248F70: BEQ T9, R0, 0x80248F94
80248F74: NOP
80248F78: LUI A0, 0x7006
80248F7C: LUI A1, 0x8033
80248F80: ADDIU A1, A1, 0x31F0
80248F84: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248F88: ORI A0, A0, 0x0081
80248F8C: BEQ R0, R0, 0x80248FB8
80248F90: NOP
80248F94: LH T0, 0x001A (SP)
80248F98: ANDI T1, T0, 0x0080
80248F9C: BEQ T1, R0, 0x80248FB8
80248FA0: NOP
80248FA4: LUI A0, 0x7007
80248FA8: LUI A1, 0x8033
80248FAC: ADDIU A1, A1, 0x31F0
80248FB0: JAL 0x8031eb00 ; SetSound function (plays a sound)
80248FB4: ORI A0, A0, 0x0081
80248FB8: LH T2, 0x001A (SP)
80248FBC: ANDI T3, T2, 0x0100
80248FC0: BEQ T3, R0, 0x80248FD4
80248FC4: NOP
80248FC8: ADDIU A0, R0, 0x0014
80248FCC: JAL 0x80249494
80248FD0: OR A1, R0, R0
80248FD4: BEQ R0, R0, 0x80248FDC
80248FD8: NOP
80248FDC: LW RA, 0x0014 (SP)
80248FE0: ADDIU SP, SP, 0x0018
80248FE4: JR RA
80248FE8: NOP
Good job but how about changing the "©1996Nintendo" rasterized text instead, this texture is at AF8BB4 in the ROM ( 128 x 16 with 16bpp )

( The funny thing is I recognized it through Notepad++, A TEXT EDITOR, not an image viewer )

Originally posted by Kazeshin
Original shit code, written by a 7 year old with down syndrome or a C compiler:


xD ROFL, indeed! I probably could make this code 5 times shorter... possibly with a LUT.
Uber Mario 64 Demo released, 16 awesomely challenging stars awaits YOU!