We just reached 20,000 articles on this wiki!
If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Wave Race 64

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Wave Race 64

Developer: Nintendo
Publisher: Nintendo
Platforms: Nintendo 64, iQue Player
Released in JP: September 27, 1996
Released in US: November 1, 1996
Released in EU: April 29, 1997
Released in CN: November 17, 2003


DevTextIcon.png This game has hidden development-related text.
RegionIcon.png This game has regional differences.
Carts.png This game has revisional differences.


So very stubbly.
This page is rather stubbly and could use some expansion.
Are you a bad enough dude to rescue this article?
Hmmm...
To do:
Stuff from the partial source code in the 2020-07-25 Nintendo leak

Wave Race 64 is the sequel to the 1992 Game Boy Jet Ski racing game Wave Race. It was actually an impressive game for the time for its realistic water physics, which reportedly took up most of the system's processing power. It is also the first game (and one of the few first-party games) to use the Nintendo 64 Controller Pak, the system's memory card. However, it's only for transferring vehicle settings and time tables to other cartridges since the cartridge itself already has built-in EEPROM for saving. A memory manager can be accessed by holding Start during boot-up with a Controller Pak inserted.

Debugging Text

All offsets are for a compressed Wave Race (J) ROM.

000AF150

pitch %x: delaybytes %d : olddelay %d
cont %x: delaybytes %d : olddelay %d
Warning:Kill Note  %x 
Kill Voice %d (ID %d) %d
Warning: Running Sequence's data disappear!
Heap OverFlow : Not Allocate %d!
DataHeap Not Allocate
StayHeap Not Allocate %d
AutoHeap Not Allocate %d
Status ID0 : %d
ID1 : %d
id 0 is Stopping
id 0 is Stop
id 1 is Stopping
id 1 is Stop
WARNING: NO FREE AUTOSEQ AREA.
WARNING: NO STOP AUTO AREA.
AND TRY FORCE TO STOP SIDE
Check ID0  (seq ID %d) Useing ...
Check ID1  (seq ID %d) Useing ...
No Free Seq area.
CH %d: ID %d
TWO SIDES ARE LOADING...
ALLOC CANCELED.
WARNING: Before Area Overlaid After.
WARNING: After Area Overlaid Before.
MEMORY:SzHeapAlloc ERROR: sza->side %d
MEMORY:StayHeap OVERFLOW.
MEMORY:StayHeap OVERFLOW (REQ:%d)
Auto Heap Unhit for ID %d  %d     %d
Heap Reconstruct Start %x
SFrame Sample %d %d %d
AHPBASE %x
AHPCUR  %x
HeapTop %x
SynoutRate %d / %d
FXSIZE %d
FXCOMP %d
FXDOWN %d
WaveCacheLen: %d
SpecChange Finished
Romcopy %x -> %x ,size %x
Romcopyend
CAUTION:WAVE CACHE FULL %d  BASE %x %x
LOAD %x %x %x
INSTTOP    %x
INSTMAP[0] %x
already flags %d
ERR:SLOW BANK DMA BUSY
ERR:SLOW DMA BUSY
Check %d  bank %d
Cache Check
NO BANK ERROR
BANK %d LOADING START
BANK %d LOAD MISS (NO MEMORY)!
BANK %d ALREADY CACHED
BANK LOAD MISS! FOR %d
Seq %d Loading Start
Heap Overflow Error
SEQ  %d ALREADY CACHED
Ok,one bank slow load Start
Sorry,too many %d bank is none.fast load Start
Seq %d:Default Load Id is %d
Seq Loading Start
Error:Before Sequence-SlowDma remain.
Cancel Seq Start.
SEQ  %d ALREADY CACHED
Clear Workarea %x -%x size %x
AudioHeap is %x
Heap reset.Synth Change %x
Heap %x %x %x
Main Heap Initialize.
---------- Init Completed. ------------
Syndrv    :[%6d]
Seqdrv    :[%6d]
audiodata :[%6d]
Audio: setvol: volume minus %f
Audio: setvol: volume overflow %f
Audio: setpitch: pitch minus %f
Audio: voiceman: No bank error %d
Audio: voiceman: progNo. overflow %d,%d
Audio: voiceman: progNo. undefined %d,%d
Audio: voiceman: BAD Voicepointer %x,%d,%d
Audio: voiceman: Percussion Overflow %d,%d
Audio: voiceman: Percpointer NULL %d,%d
CAUTION:SUB IS SEPARATED FROM GROUP
Error:Wait Track disappear
Slow Release Batting
Audio:Wavemem: Bad voiceno (%d)
Audio: C-Alloc : Dealloc voice is NULL
Alloc Error:Dim voice-Alloc %d
Error:Same List Add
Already Cut
Audio: C-Alloc : lowerPrio is NULL
Sub Limited
Drop Voice Warning: Drop Voice
Audio:Envp: overflow  %f
Audio:Track:Warning: No Free Notetrack
SUBTRACK DIM
Audio:Track: Warning SUBTRACK PARENT CHANGED
GROUP 0:    GROUP 1:    SEQID %d,BANKID %d
ERR:SUBTRACK %d NOT ALLOCATED
Error:Same List Add
Macro Level Over Error!
WARNING: NPRG: cannot change %d
Audio:Track:NOTE:UNDEFINED NOTE COM. %x
Audio: Note:Velocity
Error %d
Error: Subtrack no prg.
Error: Your assignchannel is stolen.
Audio:Track :Call Macro Level Over Error!
Audio:Track :Loops Macro Level Over Error!
SUB:ERR:BANK %d NOT CACHED.
Audio:Track: CTBLCALL Macro Level Over Error!
[%2x]
Err :Sub %x ,address %x:Undefined SubTrack Function %x
Disappear Sequence or Bank %d
Group:Undefine upper C0h command (%x)
Group:Undefined Command

000AFFDC

Delay AnnVoice Start: %d
Audio:Camera Change %d
Audio:Hericopter Auto Stopped.
Audio:1st corner Ranking: %d
Kyori %f -> Pow %d
Audio:OrcaIn : Kyori %f -> Pow %f

000B02B0

Engine2 Start
Retire Drop player %d
Uso Boost(First) Player %d
Eng Boost(Start) Player %d
Break Ice
Audio:Crash player %d
Dolphin In
Dolphin Out
Dolphin Cry
Error : Queue is not empty ( %x )
specchg error
End SpecChange
AudioSyncFadeO: Now %d  -> %d
AudioSceneSetup: Now %d  -> %d
Audio: Scene : Title
Audio: Scene : M-Select (%d)
Audio: Scene : C-Select (%d)
Audio: Scene : Demo
Audio: Scene : Result (RANK %d)
Audio: Scene : Retire
Audio: Scene : Game Over
Audio: Scene : Tour (%d)
Audio: Scene : VS (%d)
Audio: Scene : TimeAttack (%d)
Audio: Scene : ScoreAttack (%d)
Audio: Scene : Mode-undefined[%d]
Audio : ATTACK or SCORE : NEW RECORD.
Audio : ATTACK : NORMAL RECORD.
Audio Nice! You got dolphin.
Audio:VSGOAL: 1P rank %d,2P rank %d
Audio:VSGOAL: 1P miss %d,2P miss %d
Audio: Scene : Goal (%d)
Audio: Scene : ENDING
Audio: Scene : Scene-undefined [%d]
Audio: Voice %d is ejected by Voice %d:(prio %d)
Audio: Voice Start %d (prio %d, time %d)
NiceAction rand=%d
NiceJump rand=%d

000B06D4

Audio:TimeAttack Fastest Lap!!
Audio:TimeAttack Faster than BestTime!!
NA_RANDOM %d,Nums %d,rand %d
Audio:VS:Final Lap!!
Audio:Tour:Final Lap!!
Final & Fastest Lap!!
Fastest Lap!!
Turbo Down!!
voice=%d
Audio NearLap: (VS only)
Audio: VsVoice Cancel
Audio: VsVoice Start
Audio: DemoScene : Tour (%d)
Audio: DemoScene : VS (%d)
Audio: DemoScene : ScoreAttack (%d)
Audio: DemoScene : Mode-undefined[%d]

000B0889

AC:Lost 1 Frame.
DMA: Request queue over.( %d )
Audio:now-max tasklen is %d / %d
Audio:Warning:ABI Tasklist length over (%d)
AudioSend: %d -> %d (%d)
Undefined Port Command %d

000B1DA0

Error: number of buoy2
Error: number of buoy3

000B1F80

dolphin condition full at goal
dolphin condition full rank value adjust
simultaneously goal !!

000B2070

EEPROM read error 1 (%d)
EEPROM check code error 1
EEPROM check sum error %d %d
EEPROM write error 1 (%d)
no EEPROM
PfsisPlug: %02x %d
no PFS in controller 1
PFS corrupted
bad PFS %d
PFS find file
PFS file not exists
PFS find file error %d
PFS free size %d
PFS check free error %d
file_no: %d
PFS check sum error %d %d
PFS read error
PFS no data
making PFS data full
PFS allocate file error %d
PFS write file error %d
PFS read error (write)
PFS check code error
PFS write error
PFS no delete file
PFS delete error %d

0x000B3D90

COURSE OUT %d
BEST TIME
BEST LAP
LAP %d
FINAL
LAP TIME
EXTEND
%04d

0x001B8590

%s
LOST
%s
WON %s
WON %s
LOST
%s
RETIRE
%s
RETIRE
%s
DRAW
%s
DRAW
%s
R
%d
%d
%d
%d-%d

0x001C1470

%s
R
%d
%d
%d
%d-%d

0x001C3680

1P
2P
-
%d

0x001C96B0

>
%d
%d

0x001CA070

>
%d

0x001CFA00

Feel Mie

0x001CFAC0

-'--@---
%d
%d

Regional Differences

Hmmm...
To do:
Document the iQue Player differences.

Title Screen

Japan USA Europe
WR64-titlejp.png WaveRace64Title.png WR64-titleeu.png
  • The Kawasaki trademark statement on the title screen is absent from the Japanese version. This was added to the international versions which resulted in the Nintendo copyright being moved up slightly.
  • The "Kawasaki JetSki" banner on the title screen was removed from the European version.
  • The game's title call is different in the Japanese version.

Course Names

Some names of the courses were changed between the Japanese, and International releases of the game.

International Japan Translation
Dolphin Park ドルフィン パーク Dolphin Park
Sunny Beach サンディービチ Sandy Beach
Sunset Bay サンセット ベイ Sunset Bay
Drake Lake ミルキーレイク Milky Lake
Marine Fortress マリン フォートレス Marine Fortress
Port Blue ポート パイレーツ Port Pirate
Twilight City キャッスル シティ Castle City
Glacier Coast クール ウェーブ Cool Wave
Southern Island サザン アエランド Southern Island

Texture Changes

Japan International
WR64-fantabillboard.png WR64-n64billboard.png
  • The Japanese version featured Fanta ads which were replaced with Nintendo 64 ads in the international versions.

Other

  • To make up for the timing differences between PAL and NTSC consoles, the times have all been raised.


(Source: The Obscure Gamer)

Shindou Pak Taiou Version

Hmmm...
To do:
Rip the audio.

WR64-titlerumble.png

Similar to Super Mario 64, some changes took place with the Shindou Pak Taiou Version. Aside from adding rumble pak support...

  • The in-game announcer has re-recorded dialogue.

WR64-dolphinghost.png

  • Ghosts are now present in Time Trial mode, with the ghosts being represented as dolphins.
  • The songs for Sunny/Sandy Beach, Port Pirates, and Southern Island got new mixes.
  • Some sound effects were changed.
    • Menu confirm sound.
    • Splash sound when you select "END" in the name entry.
    • Passing a buoy correctly.


(Source: The Obscure Gamer)

Revision Differences

JP Version 1.1

  • The movement of the AI for Sunset Bay changed in Expert difficulty.
  • Fixed a bug regarding the displayed race time being off by 0.001 seconds.

Virtual Console Differences

Hmmm...
To do:
  • Wii U Virtual Console release has a directory called /content/Patch/UNWRE1.009 which has 6 files, "highlight_a.rpt", "highlight_cup.rpt", hl_stage1and2.rpt", "hl_stage6.rpt", hl_stage7.rpt", and "hl_stage8.rpt".
    • Figure out specifically what each patch covers and explain it clearly along with any differences from the Wii Virtual Console release, if any.

The Nintendo 64 version featured product placement for Kawasaki jet skis in the form of banners throughout the game. Because the license expired long ago, the Wii Virtual Console version replaces these with advertisements for the Wii and Nintendo DS. The license was renewed in time for the Wii U version, where the Kawasaki ad placements are back. However, the Fanta ads were replaced with Nintendo 64 logos in all regions.

Nintendo 64 Wii Virtual Console
WR64-banner1n64.png
WR64-banner2n64.png
WR64-banner3n64.png
WR64-banner4n64.png
WR64-banner5n64.png
WR64-banner6n64.png
WR64-banner1wii.png
WR64-banner2wii.png
WR64-banner3wii.png
WR64-banner4wii.png
WR64-banner5wii.png
WR64-banner6wii.png
  • All of the Kawasaki banners were replaced with advertisements for the Wii, Nintendo DS and Nintendo 64.
Nintendo 64 Wii Virtual Console
WR64-jetski1n64.png
WR64-jetski2n64.png
WR64-jetski3n64.png
WR64-jetski4n64.png
WR64-jetski5n64.png
WR64-jetski6n64.png
WR64-jetski7n64.png
WR64-jetski8n64.png
WR64-jetski1wii.png
WR64-jetski2wii.png
WR64-jetski3wii.png
WR64-jetski4wii.png
WR64-jetski5wii.png
WR64-jetski6wii.png
WR64-jetski7wii.png
WR64-jetski8wii.png
  • All of the Kawasaki branding on the Jet Skis was removed.