Kodewerx

Our culture has advanced beyond all that you could possibly comprehend with one hundred percent of your brain.
It is currently Sun Jul 27, 2025 10:15 am

All times are UTC - 8 hours [ DST ]


Forum rules





Post new topic Reply to topic  [ 28 posts ] 
Author Message
PostPosted: Mon Jun 11, 2007 9:44 am 
Most by Viper. Viper and HyperHacker did the Maximum Speed modifiers.

Activator 1 P2
D00F6924 00??
Activator 2 P2
D00F6925 00??
Dual Activator P2
D10F6924 ????
Activator 1 P3
D00F6934 00??
Activator 2 P3
D00F6935 00??
Dual Activator P3
D10F6934 ????
Activator 1 P4
D00F6944 00??
Activator 2 P4
D00F6945 00??
Dual Activator P4
D10F6944 ????
Activator 1 P1 #2
D014F0F0 00??
Activator 2 P1 #2
D014F0F1 00??
Dual Activator P1 #2
D114F0F0 ????
Activator 1 P2 #2
D014F0F6 00??
Activator 2 P2 #2
D014F0F7 00??
Dual Activator P2 #2
D114F0F6 ????
Activator 1 P3 #2
D014F0FC 00??
Activator 2 P3 #2
D014F0FD 00??
Dual Activator P3 #2
D114F0FC ????
Activator 1 P4 #2
D014F102 00??
Activator 2 P4 #2
D014F103 00??
Dual Activator P4 #2
D114F102 ????
Activator 1 P1 #3
D0196504 00??
Activator 2 P1 #3
D0196505 00??
Dual Activator P1 #3
D1196504 ????
Activator 1 P2 #3
D019650C 00??
Activator 2 P2 #3
D019650D 00??
Dual Activator P2 #3
D119650C ????
Activator 1 P3 #3
D0196514 00??
Activator 2 P3 #3
D0196515 00??
Dual Activator P3 #3
D1196514 ????
Activator 1 P4 #3
D019651C 00??
Activator 2 P4 #3
D019651D 00??
Dual Activator P4 #3
D119651C ????
Control Stick Activator 1 P1
D10F691C ????
Control Stick Activator 2 P1
D10F691E ????
Control Stick Activator 1 P2
D10F692C ????
Control Stick Activator 2 P2
D10F692E ????
Control Stick Activator 1 P3
D10F693C ????
Control Stick Activator 2 P3
D10F693E ????
Control Stick Activator 1 P4
D10F694C ????
Control Stick Activator 2 P4
D10F694E ????
Control Stick Activator 1 P1 #2
D014F0F2 00??
Control Stick Activator 2 P1 #2
D014F0F3 00??
Dual Control Stick Activator P1 #2
D114F0F2 ????
Control Stick Activator 1 P2 #2
D014F0F8 00??
Control Stick Activator 2 P2 #2
D014F0F9 00??
Dual Control Stick Activator P2 #2
D114F0F8 ????
Control Stick Activator 1 P3 #2
D014F0FE 00??
Control Stick Activator 2 P3 #2
D014F0FF 00??
Dual Control Stick Activator P3 #2
D114F0FE ????
Control Stick Activator 1 P4 #2
D014F104 00??
Control Stick Activator 2 P4 #2
D014F105 00??
Dual Control Stick Activator P4 #2
D114F104 ????
Control Stick Activator 1 P1 #3
D0196506 00??
Control Stick Activator 2 P1 #3
D0196507 00??
Dual Control Stick Activator P1 #3
D1196506 ????
Control Stick Activator 1 P2 #3
D019650E 00??
Control Stick Activator 2 P2 #3
D019650F 00??
Dual Control Stick Activator P2 #3
D119650E ????
Control Stick Activator 1 P3 #3
D0196516 00??
Control Stick Activator 2 P3 #3
D0196517 00??
Dual Control Stick Activator P3 #3
D1196516 ????
Control Stick Activator 1 P4 #3
D019651E 00??
Control Stick Activator 2 P4 #3
D019651F 00??
Dual Control Stick Activator P4 #3
D119651E ????
Miscellaneous Codes
Speed Modifier
810F6A2C 4???
Maximum Speed Modifier P1
810F6BA4 ????
810F6BA6 ????
Tired of not being able to go more than 60 or 80 normally? Just up this value a bit. hehehehe
This actually seems to effect all human players. When I did versus all 4 players could go fast, but when I did Grand Prix on the human player(s) could go fast.
Some Defaults:
439B 0000 - Time Trials
4391 0000 - 50CC
43A0 0000 - 150CC
Maximum Speed Modifier P2
810F797C ????
810F797E ????
Y Coordinate (Or Something Like It) Modifier P1
810F6A00 ????
810F6A02 ????
Y Coordinate (Or Something Like It) Modifier P2
810F77D8 ????
810F77DA ????
Y Coordinate (Or Something Like It) Modifier P3
810F85B0 ????
810F85B2 ????
Y Coordinate (Or Something Like It) Modifier P4
810F9388 ????
810F938A ????
Floating Jump
8102AA86 ????
Super Acceleration From A Standing Start
810E2ED0 4500
When stopped, Press A To To Take Off.
Optional ASM Codes To Use With Super Acceleration
81031F80 2400
81031FD0 1000
81031EC4 1000
ASM Acceleration Speed Mofifiers (4500 Is Nice)
81031070 3C1B
81031070 ????
81031074 449B
81031076 9000
81031690 3C1B
81061692 ????
81031694 449B
81031696 3000
810315F0 3C1B
810315F4 ????
810315F6 2000
810313EC 3C1B
810313EE ????
810313F0 449B
810313F2 2000
8103133C 3C1B
8103133E ????
81031340 449B
81031342 5000
81031130 3C1B
81031132 ????
81031134 449B
81031136 3000
Super Acceleration/Speed Most Of The Time
50002504 0000
810E2ED0 4500
50002504 0000
810E2ED2 0000
This is like a data block of acceleration types. E2ED0 is from a stopped position, I think E2EF4 is from moving if you let off A then hit it again, etc. it's strange and I don't have time to explore it.
Item Boxes Don't Spin
812A16A8 2400
812A16AC 2400
812A16B4 2400
Lakitu Doesn't Appear When You're Going The Wrong Direction
81006704 1000
Jump Height Modifier -- All Players (Default 3F6E)
8102AA80 3C1B
8102AA82 ????
8102AAA0 AC9B
Roadkill Mode
8102CE3A 800F
8102CE3C 3463
8102CE3E 6990
8102CE40 1203
Everyone except P1 is shrunk and can be squashed.
Amount Of Time Lightning Effect Lasts (Default 01CC)
8108E302 ????
Weapons Have No Effect
8102B864 1000
Bananna Peels Have No Effect
8102B380 1000
Upside Down "?" Boxes Have No Effect
8102B4A0 1000
Green Shells Have No Effect
8102B35C 1000
Red/Blue Shells And Stars Have No Effect
8102B338 1000
Blast Height Modifier - Upside Down "?" (Default 400C)
8108E72C 3C01
8108E72E ????
8108E734 4481
8108E736 3000
Green Shell Hit Height Modifier (Default 3FB9)
8108C56C 3C01
8108C56E ????
8108C578 4481
8108C57A 4000
Red/Blue Shell And Star Hit Height Modifier (Default 400C)
8108EB40 3C01
8108EB42 ????
8108EB48 4481
8108EB4A 3000
P1 Shrink Timer Modifier
810F6A40 ????
P2/CPU1 Shrink Timer Modifier
810F7818 ????
P3/CPU2 Shrink Timer Modifier
810F85F0 ????
P4/CPU3 Shrink Timer Modifier
810F93C8 ????
CPU4 Shrink Timer Modifier
810FA1A0 ????
CPU5 Shrink Timer Modifier
810FAF78 ????
CPU6 Shrink Timer Modifier
810FBD50 ????
CPU7 Shrink Timer Modifier
810FCB28 ????
CPU Racers Just Sit There
81039658 340C
8103965A C200


Top
  
Reply with quote  
PostPosted: Mon Jun 18, 2007 12:08 am 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
81001760 3C03
81001762 800E
81001794 3C0B
81001796 800E
810017C4 240C
810017C6 0000
Enable Frame-By-Frame Advance (Debug Mode must be on)

This code unlocks a well-hidden debug feature; several instructions had been changed to forced branches and had to be restored. It allows you

to advance the game frame-by-frame using the following steps:
1) Hold A and B
2) Pause the game, don't let go of A+B
3) Press L to advance a frame

Technically you only need to hold A+B and press L while paused, but pressing A unpauses the game! (Duh!) So a few more codes to help with

this:
81001774 2400 Don't need to hold L (holding A+B while paused will keep the game running)

81001784 2400 Don't need to hold A (just hold B and press L while paused)

81001772 ???? Which button needs to be pressed instead of L (use dual activator values)

8100178A ???? Which buttons need to be held instead of B (use dual activator values)

810AE126 ???? Which buttons need to be pressed to activate options on the pause menu (use dual activator values, any button specified will do

it)

You'll notice also while holding A+B (even while not paused), the HUD and sky change. O_o

On an unrelated note:
800DC53F 000? Game Mode (0=Mario GP, 1=Time Trial, 2=VS, 3=battle)
This is actually a 32-bit value at 800DC53C, lolz.

Also, fuck Nemu.

Code:
80001760:
LUI $V1, 800E ;enable

80001774:
nop ;remove L reuqirement because nemu sucks

80001784:
nop ;remove A requirement

80001788:
ANDI $T1, $V0, 0002 ;change B to C Left

80001794:
lui $T3, 800E ;gets HUD/sky change

800017C4:
addiu $T4, $zero, 0000 ;game keeps going when paused

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Wed Jun 20, 2007 3:26 am 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Since I doubt anyone even saw this before it got buried in dlong's threads, and since Zeld gets to have his own MPH topic, I'm making one for all the awesome Mario Kart 64 hacks I'm doing. For starters, I hunted down some nice routines in memory:
Code:
80057710 Loads font or something (no params). Not calling this first gets you gibberish.
80057484 Print text (A0=Points to xpos word, A1=Points to ypos word, A2=Text ptr)
800577B8 Print text (A0=Xpos, A1=Ypos, A2=Text ptr) - X/Y pos aren't pointers here
8005762C Print unsigned int (A0=*Xpos, A1=*Ypos, A2=Number, A3=Base)
80057524 Same but signed
800577D0 Print text & signed int (A0=Xpos, A1=Ypos, A2=Text ptr, A3=Number)
80057814 Same but unsigned


Then I used one of those routines to make a more accurate lap counter. This code will add a display "LAP x OF y" in place of the normal lap counter. It's more accurate in two ways:
1) It displays numbers outside the range 1-3. (Just try doing a lap backward!)
2) It accounts for changing the starting lap.
Attachment:
File comment: Ignore my terrible time. The game is hard to play when Nemu won't run it at less than 300FPS. :( Also, "WEST 9" is part of an existing debug code you can find at BSFree.
mk64 lap counter.jpg
mk64 lap counter.jpg [ 41.85 KiB | Viewed 20375 times ]

See, quite some time ago I made a code, 8100F94A ????, that changes what lap you start on. (BSFree probably already has it.) Normally you start on -1 (FFFF) which changes to 0 as soon as you cross the line. By changing this you can have more or less laps (e.g. start on lap -3 to have 5 laps). Problem is, you don't get any indication of how many are left to go. So I decided to remedy that with this:
Code:
81001614 0810
81001616 0040
81400100 3C1B
81400102 8040
81400104 FF64
81400106 0000
81400108 FF65
8140010A 0008
8140010C FF66
8140010E 0010
81400110 0C01
81400112 5DC4
81400114 FF67
81400116 0018
81400118 2766
8140011A 0020
8140011C 3C04
8140011E 8016
81400120 8C87
81400122 4390
81400124 3C04
81400126 8001
81400128 8485
8140012A F94A
8140012C 00A0
8140012E D825
81400130 00E5
81400132 3823
81400134 2404
81400136 0028
81400138 0C01
8140013A 5DF4
8140013C 2405
8140013E 0000
81400140 2404
81400142 0002
81400144 009B
81400146 3823
81400148 3C1B
8140014A 8040
8140014C 2766
8140014E 0024
81400150 2404
81400152 0028
81400154 0C01
81400156 5DF4
81400158 2405
8140015A 0009
8140015C DF64
8140015E 0000
81400160 DF65
81400162 0008
81400164 DF66
81400166 0010
81400168 DF67
8140016A 0018
8140016C 0800
8140016E 0587
81400170 9484
81400172 C520
81400020 4C41
81400022 5000
81400024 4F46
81400026 0000


Code:
80001614:
j 80400100

80400100:
;save regs
LUI $K1, 8040
SD $A0, 0000($K1)
SD $A1, 0008($K1)
SD $A2, 0010($K1)
JAL 80057710 ;load font
SD $A3, 0018($K1)

ADDIU $A2, $K1, 0020 ;text ptr

;read P1 lap count
LUI $A0, 8016
LW $A3, 4390($A0)

;read starting lap
LUI $A0, 8001
LH $A1, F94A($A0)
OR $K1, $A1, $zero ;copy to K1

SUBU $A3, $A3, $A1

;print "LAP x"
ADDIU $A0, $zero, 0028 ;xpos
JAL 800577D0
ADDIU $A1, $zero, 0000 ;ypos

;calculate # of laps
ADDIU $A0, $zero, 0002
SUBU $A3, $A0, $K1

;print "OF x"
LUI $K1, 8040
ADDIU $A2, $K1, 0024
ADDIU $A0, $zero, 0028 ;xpos
JAL 800577D0
ADDIU $A1, $zero, 0009 ;ypos

;restore regs
LD $A0, 0000($K1)
LD $A1, 0008($K1)
LD $A2, 0010($K1)
LD $A3, 0018($K1)

j 8000161C
LHU $A0, C520($A0)

The last 4 lines are the actual text; if you just assemble this source they won't be included, so remember to add them.

Unfortunately this version only works in 1-player mode, I'll have to find a better hook for multiplayer.

I also did some other hacks, modifying the "coord display", a debug function you can activate using the codes at BSFree.

Y Position of debug coord text when facing North (default 64, C8 is better)
81001706 ????

Y Position of debug coord text when facing East (default 64, C8 is better)
810016DA ????

Y Position of debug coord text when facing Southeast (default 64, C8 is better)
810016B2 ????

Y Position of debug coord text when facing Southwest (default 64, C8 is better)
81001752 ????

Y Position of debug coord text when facing West (default 64, C8 is better)
81001736 ????

X Position of debug coord text when facing North (default 28, 00 is better)
810016FA ????

X Position of debug coord text when facing East (default 28, 00 is better)
810016CE ????

X Position of debug coord text when facing Southeast (default 28, 00 is better)
81001662 ????

X Position of debug coord text when facing Southwest (default 28, 00 is better)
81001726 ????

X Position of debug coord text when facing West (default 28, 00 is better)
81001732 ????

Disable debug coord text when facing North
81001708 2400

Disable debug coord text when facing East
810016DC 2400

Disable debug coord text when facing Southeast
810016B4 2400

Disable debug coord text when facing Southwest
81001754 2400

Disable debug coord text when facing West
81001738 2400

Base to print coord display in (default 000A)
81057A8E ????


I'll post the debug codes too so you can actually use it, but note that they're probably already in BSFree and Para made the first two ages ago.

Enable coord display when debug mode is on
810DC515 0001

Debug menu at title (modified to not require GS Button)
D018EDEF 0001
8018EDEF 0002

Coord display can be enabled when debug mode is off
81001630 2400
81001634 2400

k, sleep now, more hax later.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Wed Jun 20, 2007 8:44 am 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
Hey, I DID see your other post before dlong buried it. I always look to see what kind of beans HH is dishing out.

Good shit, man. I like that lap counter. DKR needs something like that; I got a few lap fiddling addresses logged, if you recall.

I also need a thing to kill the 2nd and 3rd place numbers that appear over peoples' heads >.>

_________________
Image


Top
 Profile  
Reply with quote  
PostPosted: Wed Jun 20, 2007 10:36 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Mar 26, 2007 7:23 am
Posts: 344
I'm pretty sure that by using David Wonn's glitches you're still going to do better than by cheating. :P


Top
 Profile  
Reply with quote  
PostPosted: Wed Jun 20, 2007 8:18 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Not if you use an instant win code. It may not be fun but you'll never lose! :P

Here's today's hack:
Attachment:
File comment: FTW
mk64 hex dump hack.jpg
mk64 hex dump hack.jpg [ 49.98 KiB | Viewed 20327 times ]

I added a bigass realtime memory viewer routine. :D Still only works in 1-player mode though. Above the hex dump is two numbers, the first is the address you're viewing and the second is how much the address will change by when you press up or down on the D-pad. Left or right changes this amount. Be careful, going outside of RAM crashes the game.

This doesn't seem to work in Mupen64, probably because I don't see a way to force it to use the Expansion Pak.

Code:
D2400000 0080
81400000 8000
81001614 0810
81001616 0040
81400100 3C1B
81400102 8040
50001004 0004
81400106 1000
50000804 0001
81400104 AF61
50000604 0001
81400124 AF6D
8140013C AF6B
81400140 AF79
81400144 0C01
81400146 5DC4
81400148 AF7F
8140014A 1040
8140014C 2419
8140014E 0040
81400150 AF79
81400152 0004
81400154 AF79
81400156 000C
81400158 2404
8140015A 00B8
8140015C AF64
8140015E 0008
81400160 8F72
81400162 0000
81400164 3C0D
81400166 800F
81400168 85AD
8140016A 6916
8140016C 8F6F
8140016E 0010
81400170 31AE
81400172 0200
81400174 540E
81400176 000A
81400178 000F
8140017A 7840
8140017C 31AE
8140017E 0100
81400180 540E
81400182 0007
81400184 000F
81400186 7843
81400188 31AE
8140018A 0800
8140018C 540E
8140018E 0004
81400190 024F
81400192 9022
81400194 31AE
81400196 0400
81400198 540E
8140019A 0001
8140019C 024F
8140019E 9020
814001A0 3C0E
814001A2 8000
814001A4 024E
814001A6 9025
814001A8 AF72
814001AA 0000
814001AC 500F
814001AE 0001
814001B0 240F
814001B2 0001
814001B4 AF6F
814001B6 0010
814001B8 2764
814001BA 0004
814001BC 2485
814001BE 0004
814001C0 2411
814001C2 0003
814001C4 2407
814001C6 0010
814001C8 0C01
814001CA 5D8B
814001CC 0240
814001CE 3025
814001D0 2407
814001D2 0010
814001D4 0C01
814001D6 5D8B
814001D8 8F66
814001DA 0010
814001DC 8F70
814001DE 0008
814001E0 2610
814001E2 0009
814001E4 AF70
814001E6 0008
814001E8 8F79
814001EA 000C
814001EC AF79
814001EE 0004
814001F0 2410
814001F2 0007
814001F4 9246
814001F6 0000
814001F8 0006
814001FA 3103
814001FC 0C01
814001FE 5D8B
81400200 2407
81400202 0010
81400204 8F66
81400206 0004
81400208 24C6
8140020A FFF8
8140020C AF66
8140020E 0004
81400210 9246
81400212 0000
81400214 30C6
81400216 000F
81400218 0C01
8140021A 5D8B
8140021C 2407
8140021E 0010
81400220 2610
81400222 FFFF
81400224 0601
81400226 FFF3
81400228 2652
8140022A 0001
8140022C 8F70
8140022E 0008
81400230 2610
81400232 0009
81400234 2631
81400236 FFFF
81400238 0623
8140023A FFEB
8140023C AF70
8140023E 0008
50000804 0001
81400240 8F61
50000604 0001
81400260 8F6D
50001104 0004
81400242 1000
81400278 8F6B
8140027C 8F79
81400280 8F7F
81400284 0800
81400286 0587
81400288 9484
8140028A C520


Code:
80001614:
j 80400100

80400100:
;save regs
LUI $K1, 8040
SW $AT, 1000($K1) ;yes, the text/number routines
SW $V0, 1004($K1) ;appear to use all of these. @_@
SW $V1, 1008($K1) ;fortunately we can shrink this
SW $A0, 100C($K1) ;block using 50-type codes, because
SW $A1, 1010($K1) ;the output is largely sequential.
SW $A2, 1014($K1)
SW $A3, 1018($K1)
SW $T0, 101C($K1)

SW $T5, 1020($K1)
SW $T6, 1024($K1)
SW $T7, 1028($K1)
SW $S0, 102C($K1)
SW $S1, 1030($K1)
SW $S2, 1034($K1)

SW $T3, 1038($K1)
SW $T9, 103C($K1)

JAL 80057710 ;load font
SW $RA, 1040($K1)

;set coords
ADDIU $T9, $zero, 0040
SW $T9, 0004($K1) ;xpos
SW $T9, 000C($K1) ;init xpos
ADDIU $A0, $zero, 00B8
SW $A0, 0008($K1) ;ypos
LW $S2, 0000($K1) ;start addr

;handle dpad
LUI $T5, 800F
LH $T5, 6916($T5) ;buttons pressed
LW $T7, 0010($K1) ;addr adjust

ANDI $T6, $T5, 0200 ;left?
BNEL $T6, $zero, .update
SLL $T7, $T7, 0001 ;double amount

ANDI $T6, $T5, 0100 ;right?
BNEL $T6, $zero, .update
SRA $T7, $T7, 0001 ;halve amount

ANDI $T6, $T5, 0800 ;up?
BNEL $T6, $zero, .update
SUB $S2, $S2, $T7 ;decrease address

ANDI $T6, $T5, 0400 ;down?
BNEL $T6, $zero, .update
ADD $S2, $S2, $T7 ;increase address

.update:
LUI $T6, 8000
OR $S2, $S2, $T6
SW $S2, 0000($K1) ;update addr
BEQL $T7, $zero, .write
ADDIU $T7, $zero, 0001 ;set to 1 if 0

.write:
SW $T7, 0010($K1) ;update amount

;point to coords
ADDIU $A0, $K1, 0004
ADDIU $A1, $A0, 0004
ADDIU $S1, $zero, 0003 ;# rows (zero-based)

;print address
ADDIU $A3, $zero, 0010 ;base 16
JAL 8005762C ;Print addr
OR $A2, $S2, $zero ;copy address to A2

;print adjustment amount
ADDIU $A3, $zero, 0010 ;base 16
JAL 8005762C ;Print amount
LW $A2, 0010($K1)

;advance Y pos
LW $S0, 0008($K1)
ADDIU $S0, $S0, 0009
SW $S0, 0008($K1)

.loop:
LW $T9, 000C($K1) ;init xpos
SW $T9, 0004($K1) ;reset X pos

;print row
ADDIU $S0, $zero, 0007 ;bytes/row (zero-based)

.row:
LBU $A2, 0000($S2)
SRA $A2, $A2, 4
JAL 8005762C ;Print high digit
ADDIU $A3, $zero, 0010 ;base 16

LW $A2, 0004($K1) ;bring the X pos back 8 pixels,
ADDIU $A2, $A2, FFF8 ;since the number routine puts
SW $A2, 0004($K1) ;a space after the number.

LBU $A2, 0000($S2)
ANDI $A2, $A2, 000F
JAL 8005762C ;Print low digit
ADDIU $A3, $zero, 0010 ;base 16

ADDIU $S0, $S0, FFFF ;decrement byte count
BGEZ $S0, .row
ADDIU $S2, $S2, 0001 ;increment address

;done row, advance Y pos
LW $S0, 0008($K1)
ADDIU $S0, $S0, 0009

ADDIU $S1, $S1, FFFF ;decrement row count
BGEZL $S1, .loop
SW $S0, 0008($K1)

;restore regs
LW $AT, 1000($K1)
LW $V0, 1004($K1)
LW $V1, 1008($K1)
LW $A0, 100C($K1)
LW $A1, 1010($K1)
LW $A2, 1014($K1)
LW $A3, 1018($K1)
LW $T0, 101C($K1)

LW $T5, 1020($K1)
LW $T6, 1024($K1)
LW $T7, 1028($K1)
LW $S0, 102C($K1)
LW $S1, 1030($K1)
LW $S2, 1034($K1)

LW $T3, 1038($K1)
LW $T9, 103C($K1)
LW $RA, 1040($K1)

j 8000161C
LHU $A0, C520($A0)
Yeah, fucking long code, even after I shrunk all that register saving/restoring with 50-type codes. (Hm, Enhacklopdia article? I don't think I've seen anyone do that before...)

Oh yeah and I forgot to mention last time these codes are not to be hosted on GSCentral or any site or work run by Rune or his associates, DIAF, etc etc etc.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Wed Jun 20, 2007 10:31 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Mon Mar 26, 2007 7:23 am
Posts: 344
HyperHacker wrote:
Not if you use an instant win code. It may not be fun but you'll never lose! :P


By 9 seconds. :P

Or at least, that's what I remember Wonn's Frappe Snowland glitch as doing, winning in nine seconds.


Top
 Profile  
Reply with quote  
PostPosted: Wed Jun 20, 2007 11:49 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
You must have driven pretty fast then. You still had to back up to the bridge, jump onto the snow, drive back past the line, and go out of bounds. 9 seconds per lap sounds more believable.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Thu Jun 21, 2007 7:23 am 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
HypaHacka, what what! wrote:
Oh yeah and I forgot to mention last time these codes are not to be hosted on GSCentral or any site or work run by Rune or his associates, DIAF, etc etc etc.


Do you actually think that will make a difference? I don't bother adding those little messages because I don't believe the ass wipe will take it into consideration.

_________________
Image


Top
 Profile  
Reply with quote  
PostPosted: Thu Jun 21, 2007 9:51 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
I think it may actually be illegal to host a work (in this case, assembly programs, and the other codes may count too) when the author has specifically said you can't. If nothing else, for him to copy them despite that notice would be further evidence that he steals codes.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
 Post subject:
PostPosted: Fri Jun 22, 2007 11:21 am 
Offline
Komrade
Komrade

Joined: Tue Mar 27, 2007 10:18 am
Posts: 1328
My aim bot, except for the arctan function, was entirely by me, and modifies the game's original code in no way whatsoever. So if anything, I have legal authority over that piece of work.

Makes me feel all tingly inside <3

I don't suppose it matters if we restrict use of our work after it's already been taken? Just because we didn't warn them not to use it doesn't mean they can...it's implied that the author can submit users of their code to their conditions, is it not?

_________________
Image


Top
 Profile  
Reply with quote  
PostPosted: Fri Aug 03, 2007 11:57 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
8129D830 080A
8129D832 7561
8129D834 2400 All item boxes become shrubbery
Note: On tracks without shrubbery (including Koopa Troopa Beach and DK's Jungle Parkway, which use a different set of trees), the item boxes are simply removed. Special item boxes, such as the one above the rock in Koopa Troopa Beach, are not affected.

8129D584 080A
8129D586 760C
8129D588 2400 All shrubbery becomes item boxes
Using both at once will crash the game.

"Shrubbery" is trees, cacti, bushes, etc. They're all the same object, just with different graphics.

I might be able to swap other things around such as piranha plants and palm trees too. We'll see.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Sat Aug 04, 2007 10:06 am 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Some oldies, but goodies(?)

CPU Racers Never Use Items
8101ACF0 1000

Music Modifier
810C34C0 3C04
810C34C2 0001
810C34C4 2484
810C34C6 FF??

All Players Can Choose The Same Character
810B3924 2400
810B3936 7FFF
810B39A4 2400
810B39B6 7FFF
810B3A38 2400
810B3A4E 7FFF

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
PostPosted: Sat Aug 04, 2007 1:02 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
8129DCF6 ????
8129DD02 ????
Yoshi Valley giant egg X coord modifier (default C50F C000)

8129DD0C 3C06
8129DD0E ????
Yoshi Valley giant egg Y coord modifier (high 2 bytes only, default 0000; 4200 puts it just high enough that you can't get squished)

8129DCFA ????
8129DCFE ????
Yoshi Valley giant egg Z coord modifier (default 441E 8000)

8129DD08 2400
Yoshi Valley giant egg is invisible and located at the finish line.

8129E118 2400
No coconuts are thrown in DK's Jungle Parkway

8129DE5A ????
Kalimari Desert 1st train crossing signal X coord (default C4D2)
Note: Moves the right-side signal from the first intersection.

8129DE5E ????
Kalimari Desert 1st train crossing signal Y coord (default 4000)

8129DE66 ????
Kalimari Desert 1st train crossing signal Z coord (default 420C)

8129DE60 2400
Kalimari Desert 1st train crossing signal is right in front of the finish line

8129DE88 2400
Kalimari Desert 1st train crossing signal is removed

8029DEA7 0000
Kalimari Desert 1st train crossing signal goes off when the train is at the second intersection

8129DBEE ????
Mario Raceway giant Mario sign X coord (high 2 bytes only, default 4316)

8129DBF6 ????
Mario Raceway giant Mario sign Y coord (high 2 bytes only, default 4220)

8129DBE2 ????
8129DBE6 ????
Mario Raceway giant Mario sign Z coord (default C4A2 8000)

8129DBF0 2400
Mario Raceway giant Mario sign is right behind the finish line

Stay tuned, there's more where that came from, but I have to go to work. :(

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Tue Jan 29, 2008 11:19 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Well, better late than never. :P

812ABD3C 2402
812ABD3E 00?? Everything is...
01: Pavement (00, 07, 08, 10), walls/floor of tunnel (06), rainbow track (13)
02: Dirt track (01, 04, 09, 11, 14, 18), edge of pools (07)
03: Dirt track (06, 07), out-of-bounds beach sand (06)
04: Concrete (track, walls, Bowser statue) (02, 03, 07 (castle))
05: Snow track (05), ice cave floor/walls/ceiliing (not pillars) (12)
06: Track and guardrails; wood? (03), bridges near/into castle (07), wood holding up boost ramp (18)
07: Dirt (00, 08)
08: Grass (both in and out of bounds) (00, 02, 04, 07, 08, 09, 18) (try this in DK Jungle :lol: )
09: Ice track (both in and out of bounds) (12)
0A: Beach sand (06)
0B: Off-track snow (05)
0C: Chocolate walls (01), rock walls (06)
0D: Off-track dirt (11)
0E: Train tracks and dirt surrounding them (11)
0F: Cave interior (18)
10: Rickety wood/rope bridge (02, 18)
11: Solid wooden bridge (02, 05)
FC Weaker boost ramp used in DK's Jungle Parkway (keeps you at ~60km/h)
FD Forbidden (Lakitu picks you up)
FE Boost ramp used in Royal Raceway :D
FF Solid
(level numbers in brackets in decimal)

The Royal Raceway boost ramp is fun because it locks you at well over max speed and severely reduces gravity. This is awesome in Wario Stadium. Sherbet Land breaks somehow. O_o The intro demos also end up looking pretty funny.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Mon Feb 04, 2008 1:02 am 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Small variation on that:

812ABD38 080F
812ABD3A FFFB
813FFFEC 241B
813FFFEE 00xx
813FFFF0 5362
813FFFF2 0001
813FFFF4 2402
813FFFF6 00yy
813FFFF8 03E0
813FFFFA 0008
813FFFFC 2400
Surface Remap - all surfaces of type xx become type yy

Uses the same list as above, which I updated. (The level numbers are just noting which levels they're used in; you can use them anywhere.)

Word of warning, if you choose a boost ramp and wind up in a corner, you're fucked. :P
Code:
802ABD38
j 803FFFEC

803FFFEC
ADDIU $K1, $zero, 00xx
BEQL $V0, $K1, hax
ADDIU $V0, $zero, 00yy
hax:
JR $RA
NOP

I wrote the actual assembly on paper on the toilet. Also, for once I kept it all in the lower 4MB! :D

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Mon Feb 04, 2008 9:22 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
And one more:
812ABD34 3C03
812ABD36 8040
812ABD3C 8062
812ABD3E FFFF
803FFFFF 00??
Basically does the same thing as the "Everything is..." code above, except you can use activators to change the value on the fly without breaking emulators. For example:

812ABD34 3C03
812ABD36 8040
812ABD3C 8062
812ABD3E FFFF
803FFFFF 00FE
D0196504 0040
803FFFFF 0001
D0196505 0002
803FFFFF 00FD
When holding B, everything is pavement. When holding C-Left, everything is out of bounds (=press C-Left to be towed). Otherwise, everything is a boost ramp. This way you can use stars and mushrooms and shit (hold B and use with C-Down) and get a tow if you get stuck in a corner.

Interesting side effect, this affects everyone, so when you press C-Left, everyone gets towed. :P

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Fri Mar 21, 2008 8:49 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Have these really not been done yet?

81090F78 2400 Don't Lose Balloons When Falling Off Course
8108CD44 2400 +
8108CBE4 2400 Don't Lose Balloons When Hitting Bananas Or Fast-Moving Players
8108E5BC 2400 Don't Lose Balloons When Hitting Fake Items Or Bomb Karts
8108E9F4 2400 Don't Lose Balloons When Hitting Red Shells, Spiny Shells, Or Invincible Players
8108C6B8 2400 Don't Lose Balloons When Hitting Green Shells
8108E0FC 2400 Don't Lose Balloons When Hit By Lightning

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Sat Mar 22, 2008 1:55 pm 
Offline
Kommunist
Kommunist
User avatar

Joined: Wed Oct 11, 2006 9:49 pm
Posts: 344
Location: Cybertron
Title: Click Here <------
r those codes 4 battle mode?

_________________
Image
Image


Top
 Profile  
Reply with quote  
PostPosted: Sat Mar 22, 2008 2:53 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
No, they're for that other mode where you have balloons. :roll:

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Wed Apr 23, 2008 1:23 am 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
Finally.

8107AFD8 0C0F
8107AFDA FFC0
813FFF00 3C1B
813FFF02 8019
813FFF04 8F7B
813FFF06 D3FC
813FFF08 001B
813FFF0A D903
813FFF0C 03E0
813FFF0E 0008
813FFF10 3362
813FFF12 000F
Truly random items, but sometimes you get no item
Code:
8007AFD8
JAL 803FFF00

803FFF00
LUI $K1, 8019
LW $K1, D3FC($K1)
SRA $K1, $K1, 4

JR $RA
ANDI $V0, $K1, 000F


8107AFD8 0C0F
8107AFDA FFC0
813FFF00 3C1B
813FFF02 8019
813FFF04 8F7B
813FFF06 D3FC
813FFF08 001B
813FFF0A D903
813FFF0C 3362
813FFF0E 000F
813FFF10 1002
813FFF12 FFFD
813FFF14 2400
813FFF18 03E0
813FFF1A 0008
813FFF1C 2400
Truly random items (always get an item)
Code:
8007AFD8
JAL 803FFF00

803FFF00
LUI $K1, 8019
LW $K1, D3FC($K1)

notzero:
SRA $K1, $K1, 4
ANDI $V0, $K1, 000F
BEQ $V0, $zero, notzero
NOP

JR $RA
NOP


8018D3FC is a frame counter, good for random numbers like this (as long as you don't need a constant supply), but I found the low 4 bits tended to be biased toward certain values.

This is fun in Battle Mode where you can get Mushrooms, or lightning which makes all other players lose a balloon. :D (If this is a problem, look up.)

Nemu and Renegade actually run in WINE. :D I may never have to use Windows again.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Fri Jun 27, 2008 6:05 am 
Offline
Kommunist
Kommunist

Joined: Wed Mar 12, 2008 11:46 am
Posts: 3
Title: Poregon
I suppose I will make my first contribution..

The following were found and written on a real N64 by me, Poregon.

Code:
Vertical Split Screen in 2-Player Mode:
D00DC533 0001
800DC533 0002

Track Progress Meter Around Screen (Like 1-Player Mode)*:
D00DC53B 0002
800DC53B 0001
* Careful, this will easily halt the game in 3-Player or 4-Player Mode.


These two work nicely together to give a sexy split-screen for a widescreen TV. Works perfect on my HD plasma, I just wish I could boost the graphics to 640x480 :( Zoom out immediately because it narrows your FOV immensely. I'll poke around tomorrow for the address to do it automatically.

Vertical Split works for all 2-Player modes. The activator is on because it will force Player-2 in all Player-1 modes (GP and TT) and will only allow 2 players in 3-Player and 4-Player modes. If you try to force 3-Player mode or 4-Player mode in other settings it will give weird results, sometimes adding a dead-CPU player to battle or versus but still show them on the score screen.

Cheers!

Image Image


Top
 Profile  
Reply with quote  
PostPosted: Fri Jun 27, 2008 2:01 pm 
Offline
Komrade
Komrade
User avatar

Joined: Tue Mar 27, 2007 6:23 pm
Posts: 1354
Location: Mario Raceway, 1509.831, 217.198, -564.429
Title: Mario Kart 64 Hacker
That's been known for a while (see debug menu) but I'm not sure if anyone made a code out of it. It's probably possible to increase the resolution, but I wouldn't know how, and the game might not look very nice because it's designed with the assumption that the FOV is a certain size. Although I believe most early emulators forced a certain resolution (and current ones still have the option) and it worked, so it's hard to be sure. The hardware might not be able to keep up with the higher fill rate required.

_________________
Image 143
HyperNova Software is now live (but may take a few tries to load) currently down; check out my PSP/DS/Game Boy/Windows/Linux homebrew, ROM hacks, and Gameshark codes!


Top
 Profile  
Reply with quote  
PostPosted: Fri Jun 27, 2008 2:51 pm 
Offline
Kommunist
Kommunist

Joined: Wed Mar 12, 2008 11:46 am
Posts: 3
Title: Poregon
Only Player-1 can select their player with the debug menu. Code lets all 4 choose.


Top
 Profile  
Reply with quote  
PostPosted: Fri Jun 27, 2008 6:48 pm 
Offline
Kommunist
Kommunist

Joined: Wed Mar 12, 2008 11:46 am
Posts: 3
Title: Poregon
Adding on to the Maximum Speed modifiers by HyperHacker:

Code:
Speed Modifiers:
800F6BA5 00??   Player-1
800F797D 00??   Player-2
800F8755 00??   Player-3
800F952D 00??   Player-4
800FA305 00??   Player-5
800FB0DD 00??   Player-6
800FBEB5 00??   Player-7
800FCC8D 00??   Player-8

Defaults (depends on character used):
Time Trials:   9B, 9D
50CC:   91, 93
100CC:   9B, 9D
150CC:   A0, A2
Extra:   A0, A2
Battle:   75

Suggested: CD through FF :)


Cheers!

Oh, you can hop from platform to platform in block fort with a high enough speed :) it'll scare your opponents quite a bit.


Top
 Profile  
Reply with quote  
PostPosted: Sun May 03, 2009 11:43 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Sun May 03, 2009 8:11 am
Posts: 17
Location: somewhere over the rainbow
Title: pwntendoer
I've been doing a little N64 asm hacking and I thought I'd make some GS codes from some of the interesting things I've come across. This is my first time making GS codes, so let me know if I fucked something up / mistyped something / posted something that's already been posted. If anybody has any requests, let me know. All of these codes work in PJ64 1.6 using Mario Kart 64 (U) [!].z64.

Special Bolt
Instead of making racers tiny when a lightning bolt is used, all players explode like they were hit by a green shell. Pretty dramatic effect.
Code:
802B2F43 0004
802B2F57 0004
802B2F6B 0004
802B2F7F 0004

Poison Mushrooms
Using mushrooms electrocutes you instead of giving you a boost.
Code:
802B3042 0040
802B3052 0040
802B3062 0040
802B3072 0040

Green Shells Only
Only get green shells from boxes. Only applies to human players.
Code:
8007B000 003C
8007B001 0005
8007B002 0000
8007B003 0003

Lightning Bolts Only
Code:
8007B000 003C
8007B001 0005
8007B002 0000
8007B003 0008

Mushrooms Only
Code:
8007B000 003C
8007B001 0005
8007B002 0000
8007B003 000C


Last edited by orbitaldecay on Sun May 03, 2009 1:30 pm, edited 11 times in total.

Top
 Profile  
Reply with quote  
PostPosted: Sun May 03, 2009 11:46 am 
Offline
Krew (Admin)
Krew (Admin)
User avatar

Joined: Sun Oct 01, 2006 9:26 pm
Posts: 3768
Title: All in a day's work.
Not a fuck up, but you can use 16-bit writes to make the final codes smaller. (Sort of like compression, I suppose.)

I will use your green shells code, as an example. Note that N64 is big endian, so the GS codes are as well (PSX on the other hand is little endian, and again, so are its GS codes)

Green Shells Only - by orbitaldecay
Code:
8107B000 3C05
8107B002 0003

_________________
I have to return some video tapes.

Feed me a stray cat.


Top
 Profile  
Reply with quote  
PostPosted: Sun May 03, 2009 11:55 am 
Offline
Kommunist
Kommunist
User avatar

Joined: Sun May 03, 2009 8:11 am
Posts: 17
Location: somewhere over the rainbow
Title: pwntendoer
Thanks for the tip. :)

Edit:
Parasyte wrote:
Not a fuck up, but you can use 16-bit writes to make the final codes smaller. (Sort of like compression, I suppose.)

I will use your green shells code, as an example. Note that N64 is big endian, so the GS codes are as well (PSX on the other hand is little endian, and again, so are its GS codes)

Green Shells Only - by orbitaldecay
Code:
8107B000 3C05
8107B002 0003


This code doesn't work on PJ64 on winxp, though it does work on Mupen64Plus on my Linux box. Posted another thread about it here as to avoid further polluting this thread with my noobness http://www.kodewerx.org/forum/viewtopic.php?f=5&t=6738&p=73803#p73803


Top
 Profile  
Reply with quote  
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 28 posts ] 

All times are UTC - 8 hours [ DST ]


Who is online

Users browsing this forum: No registered users and 654 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB® Forum Software © phpBB Group