Mail has been fixed; you should now be able to confirm your e-mail address, watch pages, and the like.
Please report any issues on Discord.

Notes:Final Fight Guy

From The Cutting Room Floor
Jump to navigation Jump to search

This page contains notes for the game Final Fight Guy.


Addresses correspond to the USA version unless noted otherwise.

RAM Addresses

7E0CB6 - Game Level (DifficultyA) 04=Easy, 0A=Normal, 12=Hard, 18=Expert

7E0CB8 - Unused, a copy of the Game Level value (also present in Final Fight for DifficultyA). Set when demo or game is started but never read

7E0CC6 - Unused, formerly initial DifficultyA. Set when demo or game started but never read as it's not required - the current Game Level (7E0CB6) never changes

7E0CCC - Unused, formerly counter for number of credits used. Set to $00 when demo or game started but never read as Game Level (DifficultyA) is permanent in Final Fight Guy

7EFFF1 - Unused, formerly counter for number of times a new game has been started. The Easy DifficultyA bonus is missing in Final Fight Guy

7EFFF4 - Option Mode Game Level: 00=Easy, 01=Normal, 02=Hard, 03=Expert. Formerly DifficultyA
7EFFF5 - Option Mode DifficultyB. Unused, doesn't appear in Option Mode in Final Fight Guy.  Set when demo or game started but is never read

Programming and Data

$01A208

$01/A208 9C C8 0C    STZ $0CC8  [$00:0CC8]
$01/A20B 9C C9 0C    STZ $0CC9  [$00:0CC9]
$01/A20E A9 00       LDA #$00
$01/A210 EB          XBA
$01/A211 AD CC 00    LDA $00CC  [$00:00CC]   //Demo mode
$01/A214 F0 0B       BEQ $0B    [$A221]      //Skip to $A221 if in demo mode
$01/A216 AF F4 FF 7E LDA $7EFFF4[$7E:FFF4]   //Game Level set in Option Mode (formerly DifficultyA)
$01/A21A AA          TAX
$01/A21B BF 4E A2 01 LDA $01A24E,x           //Game Level difficulty table
$01/A21F 80 07       BRA $07    [$A228]
$01/A221 A9 01       LDA #$01                //Normal difficulty
$01/A223 AA          TAX
$01/A224 BF 4E A2 01 LDA $01A24E,x           //Normal difficulty = DifficultyA $0A
$01/A228 8D B6 0C    STA $0CB6  [$00:0CB6]   //Game Level (DifficultyA)
$01/A22B 8D B8 0C    STA $0CB8  [$00:0CB8]   //Game Level (unused)
$01/A22E 8D C6 0C    STA $0CC6  [$00:0CC6]   //Game Level (initial DifficultyA - unused)
$01/A231 9C B7 0C    STZ $0CB7  [$00:0CB7]
$01/A234 9C B9 0C    STZ $0CB9  [$00:0CB9]
$01/A237 9C C7 0C    STZ $0CC7  [$00:0CC7]
$01/A23A AD CC 00    LDA $00CC  [$00:00CC]   //Demo mode
$01/A23D F0 06       BEQ $06    [$A245]      //Skip to $A245 if in demo mode
$01/A23F AF F5 FF 7E LDA $7EFFF5[$7E:FFF5]   //DifficultyB (unused)
$01/A243 80 02       BRA $02    [$A247]
$01/A245 A9 00       LDA #$00                //Lowest DifficultyB
$01/A247 8D BA 0C    STA $0CBA  [$00:0CBA]   //DifficultyB (value is set but never read)
$01/A24A 9C BB 0C    STZ $0CBB  [$00:0CBB]
$01/A24D 60          RTS

Game Level Difficulty Table

01A24E 04
01A42F 0A
01A430 12
01A431 18