Rad Racer

From NES Hacker Wiki
Revision as of 17:41, 13 April 2014 by TheAlmightyGuru (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search

Rad Racer is a simple racing game where you drive a 328 Twin Turbo or an F1 Machine through several stretches of road through major cities. Each area features a new car you have to race around and dodge. The further you get in the game the more difficult it becomes.

Easy Cheats

Icon Addr Val Cmp Description
Icon-Time.png DE38 7F 3F Slower Timer
Icon-Time.png DE38 FF 3F Much Slower Timer
Icon-Time.png DE3B 45 C6 Infinite Time
Icon-Speed.png C581 02 00 Fast Acceleration
Icon-Warp.png CEC5 E3 E5 Start On Course X (Part 1)
Icon-Warp.png C029 01 00 Start On Course 2 (Use with part 1)
Icon-Warp.png C029 02 00 Start On Course 3 (Use with part 1)
Icon-Warp.png C029 03 00 Start On Course 4 (Use with part 1)
Icon-Warp.png C029 04 00 Start On Course 5 (Use with part 1)
Icon-Warp.png C029 05 00 Start On Course 6 (Use with part 1)
Icon-Warp.png C029 06 00 Start On Course 7 (Use with part 1)
Icon-Warp.png C029 07 00 Start On Course 8 (Use with part 1)
How do I use these?

North America

Rad Racer.png

Memory Addresses

0029 - Program Counter x1
002A - Program Counter x 256
002E - Controller 1 Poll
0038 - Speed (00-FF)
003A - Affects road scrolling
0056 - Controller 1 Poll
0062 - Time (00-FF)
0066 - Location On Map (0F-FF)
0067 - Location On Map (80-FF)
0069 - Smoke Behind Car (00 - None, 12 - Right, 13 - Left, 14 - Center 1, 15 - Center 2)
006E - Music Playing Variable (00 - nothing, 01-03 - switching between music, 81 - not playing)
006F - Changes when music is changed
0070 - Music Number (00-03)
0071 - Moves from 00 to 04 when music is changed
0090-00BF - Sound Memory
00E0 - 3D Flag (00 - Off, FF - On)
00E4 - Pause Flag (00 - Playing, FF - Paused)
00E5 - Track (00-07)
00FF - Car Selection (00 - 328 Twin Turbo - 01 - F1 Machine)
0100-01FF - Memory
0200-02FF - Sprite Memory
0300-03FF - Tile Memory
0450-04AF - Palette Memory
0563 - Score: 9xxxx (30=0, 31=1, 32=2, etc.)
0564 - Score: x9xxx
0565 - Score: xx9xx
0566 - Score: xxx9x
0567 - Score: xxxx9
0573 - Display Speed: 9xx (30=0, 31=1, 32=2, etc.)
0574 - Display Speed: x9x
0575 - Display Speed: xx9
0583 - Display Time: 9xx (30=0, 31=1, 32=2, etc.)
0584 - Display Time: x9x
0585 - Display Time: xx9
05A3-05A8 - "HIGH  " message
05A9 - High Score: 9xxxx (30=0, 31=1, 32=2, etc.)
05AA - High Score: x9xxx
05AB - High Score: xx9xx
05AC - High Score: xxx9x
05AD - High Score: xxxx9
064A - HUD Y offset

Code

Acceleration Code

C580:A9 00     LDA #$00         ; Clear A
C582:65 38     ADC $0038        ; Add Current Speed with A
C584:B0 2A     BCS $C5B0
C586:85 38     STA $0038        ; Store A Into Current Speed

Decrease Time

DE27:A5 65     LDA $0065
DE29:D0 1C     BNE $DE47
DE2B:A5 E4     LDA $00E4
DE2D:05 6D     ORA $006D
DE2F:D0 2F     BNE $DE60
DE31:A5 62     LDA $0062
DE33:F0 2C     BEQ $DE61
DE35:A5 29     LDA $0029        ; Load program counter into A.
DE37:29 3F     AND #$3F         ; AND program counter with #3F
DE39:D0 25     BNE $DE60        ; If program counter != #3F Goto DE60
DE3B:C6 62     DEC $0062        ; Decrement Time
DE3D:D0 08     BNE $DE47        ; If Time != 0 Goto DE47
DE3F:A5 E3     LDA $00E3        ; 
DE41:D0 04     BNE $DE47
DE43:A9 44     LDA #$44
DE45:85 6E     STA $006E
DE47:A6 62     LDX $0062
DE49:BD BC E0  LDA $E0BC,X
DE4C:8D 85 05  STA $0585
DE4F:BD BC E1  LDA $E1BC,X
DE52:8D 84 05  STA $0584
DE55:BD BC E2  LDA $E2BC,X
DE58:8D 83 05  STA $0583
DE5B:A9 01     LDA #$01
DE5D:8D 80 05  STA $0580
DE60:60        RTS

Text

Title

00= 
03=©
30=9
36=Q
3C=R
50=1
80=7
8C=A
D3=S
E0=8
E6=U
F0=E


Japan

Highway Star.png

The original title was Highway Star.


PC10