john-peterson / bin-patch

Binary patches for Sega Model 2 and 3 and other systems
16 stars 7 forks source link

GameCube #2

Open john-peterson opened 11 years ago

john-peterson commented 11 years ago

F-Zero GX [GFZE01]

Reference

Code

This code is located by me

Comment

These abbreviations are used in the code comment

Shared credit

"infinite energy" has a shared credit because it's a merge of two codes to one

Test

Variable memory map

This game complicate patching because it loads the .rel code to different address depending on f.e.

A story mode address patches in the code in the topic "Code" has been observed at these addresses

80c9d620
80c9d720
80c9d800
80c9d820

The complication is limited to require one pointer because

Pointers

This table contain pointers use to compensate for the variable memory map described in the topic "Variable memory map"

The order is from lower to higher address because

            menu        gp          story
801b7574    00000001
            801a66b4
800030c8    801ba880
801a66e8*   801bb590
801b617c    00000000                80c9cb5c
801b61ac    00000000    803e330e
                        80c4663c
801a66dc    802728a4

The pointer marked with "*" isn't previously published, the other code is in the topic "Reference"

The pointer address 801ba880 is low enough to

because

Location

The pointer address 801a66e8 is located by

Stop time

Behavior

The time is 1 instead of 0 because

Motivation

The motivation for creating

a stop time patch is

Selected mode

The selected mode address is useful because

It's not previously published

Location

The code is located in ArtMoney by

Tools

These tools are used to locate the address

john-peterson commented 11 years ago

Lap time

Reference

This reference contain examples of lap time cheats that patch the code rather than only the variable

Code patch

This is the

benefit with patching the code that update the lap time variable (rather than only the time variable)

disadvantage