the cutting room mirror

Taikenban Demo

This is a sub-page of Mario Kart Wii.

This prototype is documented on Hidden Palace.

Watch on YouTubeIn late August 2025, a Japanese Kiosk Demo for Mario Kart Wii was recovered from slack data from a WIS-009 kiosk unit hard drive dump1. The hard drive was originally dumped in 2021 by Zel of Luckless Heaven, while Rairii extracted the demo build from it.

In said hard drive dump, the build's ISO starts at 0x143D00FE00. There, the update partition was fully present, but the game partition was partly overwritten by Linux updates. Rairii pieced it back into a full, working ISO, which verifies correctly against its internal checksums, thereby proving that this is indeed a correctly reconstructed ISO image.2

Its title ID is DABJ01 (for reference, the title ID for the retail Japanese version is RMCJ01), following a similar pattern to other demos found in the same hard drive. As with other kiosk demos, the game image is devsigned, so it needs to be recrypted in order to work on retail hardware.

Unfortunately no symbol maps nor any other interesting debugging leftovers are present. Build dates are not present either. However, it's likely this is a post-release build. as much of the code from its retail counterpart is present in the demo.

General Differences#

The demo is mostly identical to its retail Japanese counterpart, albeit with most of its features restricted, and a few menus added in.

Demo Introduction#

The demo requires a Wii Remote to be registered as player 2 (otherwise the game won't go past the very first screen), which is intended to be the Wii Wheel the player is supposed to use.

This is likely due to the fact that, in Wii kiosk units, the first Wii remote is attached to the unit by the Nunchuck port, which doesn't allow the player to fit the Wii Wheel in34, therefore needing to use another Wii Remote only for the Wii Wheel.

Besides, the player cannot access the Kiosk Menu / Home Menu. Attempting to access it brings up the "disabled Home Menu" icon.

After the first screen, the player can technically switch controllers by disconnecting the second Wii remote and using another controller instead, though it's unlikely this was possible to do in the actual kiosk unit. If playing using a GameCube controller, it won't vibrate when performing actions such as getting bumped, doing wheelies or selecting menu options.

The Wii remote's main pointer graphic will be invisible (but still usable) for Wii remotes that are not connected as the second one, plus only the second Wii remote is able to attempt to bring up the Home Menu interface. Unlike in the retail builds, none of the Wii remotes will automatically disconnect if idling for too long.

Strap Screen

Controls Screen

The Mario Kart Wii demo uses the Wii Wheel.
Please switch from the Wii Remote to the Wii Wheel.

Put on and tighten the wrist strap.
Hold the Wii Wheel securely and do not let go of it.

Press the A button on the Wii Wheel.

Controls

  • Use Item (Automatic Drift) / Drift (Manual Drift) (B)
  • Back (1)
  • Confirm / Accelerate (2)
  • Use Item (D-Pad)
  • Steer (Wii Wheel)

Red: in menus
White: during races

When booting up the demo, new screens explain the player how to use the Wii Wheel as well as basic controls (these screens are meant to be displayed in 16:9 aspect ratio). The controls screen features a graphic for the Wii Wheel's B button, which is not found in any other version of the game. Likewise, the strap screen shows the Wii Remote with a jacket outline (in the retail version, the Wii remote graphic doesn't have a jacket).

Title#

Demo

Retail

  • The title screen has a new icon with the word 体験版 (taikenban, meaning "Demo" or "Trial").
  • Unlike in the retail version, idling on the title screen won't bring up the opening movie nor the attract mode.
  • Pressing B on title screen returns us to the controls explanation screen again.
  • The "PRESS (A) BUTTON" text was changed to "PRESS (2) BUTTON" in the demo (with the "2" being an icon instead of text). Pressing this button in the title screen doesn't play a sound effect when transitioning to the next menu, unlike in retail builds.
  • If the player enters the main menu, the Title music will sound quieter, but unlike in the other versions, if the player goes back to the Title screen, the music's volume won't be restored back, so it will still be quiet even on the Title screen. Going to the controls screen and then entering the Title screen again fixes this.

This version is not meant to save its data, so the license selection screen doesn't show up, plus the license Mii will always be the guest Mii with the red shirt.

In fact, going to the main menu from the Title screen resets all current progress in the demo.

Demo

Retail

The bottom instruction text was changed to say "You can only play the Single Player mode in the demo version", therefore only the Single Player mode is selectable with the other buttons greyed out.

Single Player Menu#

Demo

Retail

The bottom instruction text was changed to say "You can only play the Grand Prix mode in the demo version", therefore only the Grand Prix mode can be selected with the other buttons greyed out. There is also nothing unlocked in this demo.

The loading times when entering this menu (as well as transitioning between courses during gameplay) are slightly faster in the demo, mostly due to the fact that it doesn't load the staff ghost files in the background every time the player enters those parts of the game (as those files have been removed from the demo due to Time Trial mode not being accessible).

During gameplay, the Mii audience / billboards found on some courses will always have random Miis, instead of also displaying Miis from the console.

Demo End#

Trial End Screen

The trial version ends here.
Please enjoy the rest in the full version.

The demo runs on a timer. After 10 minutes (or 2 minutes if nothing is pressed on the controller, and the player is not watching a race replay), the game shows this screen, and after 7 seconds, goes back to the Kiosk Menu / Home Menu.

(Translation: DTApple)

Technical details#

Filesystem#

Filepath

SHA-1

File size

./DATA/cert.bin

274d2037ea27ca83f533b1c8fb7979588d78f84a

C40

./DATA/disc/header.bin

ab5dbb41738e305713aa4aec76773fd6a716a78c

100

./DATA/disc/region.bin

516fb70a8f3ea3f6db69250abf2446de4a817fc2

20

./DATA/files/Boot/savebanner.tpl

621b9ef7a3af5ad1aa581f98743906e10cb458e0

7280

./DATA/files/Boot/Strap/jp/wait.szs

99dc331328f814867b4028b0cc501d5ebce54959

153DF

./DATA/files/contents/HomeButton.arc

3644384b0cfc920ef620120e8721bf53c85bda27

20E900

./DATA/files/contents/HomeButtonSe.arc

096b7bc8616329f32ec0376e438ef5438b0c247a

5A8C0

./DATA/files/contents/RFLRes01.arc

5f1bb7b02794b14e88b72269a3376d23051dad1d

A7984

./DATA/files/Demo/Award.szs

c05be709ac2f8dd48edd05b1cdc122b3554c7d26

1F703F

./DATA/files/Demo/Ending.szs

266aeeed19f3446f800a661d00381674f4af3627

40D

./DATA/files/Demo/Lose.szs

b2fba513cd3c5c43e37869e53f89ab567255259d

197

./DATA/files/Demo/Trophy/banana_trophy.brres

38a28fdd2dcf1cda3db0dea135fe74f7d9b3cf51

28180

./DATA/files/Demo/Trophy/battle_trophy.brres

1176ca1f75b8d22a16708e3f59e673d74dd46221

31F80

./DATA/files/Demo/Trophy/flower_trophy.brres

95ab1b75abe6faf5a210789eee93ab517b67aa0a

1F500

./DATA/files/Demo/Trophy/kinoko_trophy.brres

00ab99883581b573d0cef2f9043aa807b734c892

34080

./DATA/files/Demo/Trophy/konoha_trophy.brres

bdd5cbdcbb8fb8f9698f15b68bd1890562c7173b

2DB80

./DATA/files/Demo/Trophy/koura_trophy.brres

bf1e6954361b9c48fc8ecc9c1e5d7c185c367429

2B080

./DATA/files/Demo/Trophy/special_trophy.brres

e7a101bc7101977f0f242ba0cc8c5b4cf487f2b1

2C280

./DATA/files/Demo/Trophy/star_trophy.brres

db5baa1ecc89f602d4a412809ad141b7b9823cdd

31780

./DATA/files/Demo/Trophy/thunder_trophy.brres

d74a33db22aaa1ace4e8b5e36d29da29c2711d05

2CA80

./DATA/files/hbm/config.txt

4bd46627fbd285280b5370d3af500c7abc112465

23

./DATA/files/hbm/home.csv

cecc7df00879695bb062c858947429586c3c40de

E1A

./DATA/files/hbm/homeBtn.szs

b531b8a74c40acfd1a0785959a4c3c5b21feeffb

1051C

./DATA/files/hbm/homeBtnIcon.tpl

f80044fa5d104cbcb56e1de5f846252976cc168e

18C0

./DATA/files/hbm/homeBtn_ENG.szs

188faca841a649d2bde4c723c9142df35f5038e4

104C1

./DATA/files/hbm/homeBtn_FRA.szs

8dca9be9db4a1831b7f38130fc855d564597bca6

105BE

./DATA/files/hbm/homeBtn_GER.szs

b0caf5394ea0c0837ee78487ef0b8f6a631325f6

10A35

./DATA/files/hbm/homeBtn_ITA.szs

232dca525f7a366d8b311655bd23a2ecd04e6484

104D5

./DATA/files/hbm/homeBtn_NED.szs

befdd2617bdf6933f8730cf9c1505e4837f03fac

107F1

./DATA/files/hbm/homeBtn_SPA.szs

b5b83114d77b1ca8745b614b97c4ed96ef73d72c

105E0

./DATA/files/hbm/HomeButtonSe.arc

5abb98345a812c336f426b308a26f6c48451564a

59BB6

./DATA/files/hbm/HomeButtonSe.brsar

f0092c9921af1fe7be9e96d77d0307f294e18374

5DF60

./DATA/files/hbm/SpeakerSe.arc

56ed00596a46b78a2854a597a395a1f5e48a7727

E820

./DATA/files/opening.bnr

b747b4ea8a0a6f8bd7e4126cc1fff5f95f563229

7CE48

./DATA/files/Race/Common.szs

5518fe02782e1f7fd01185df5f83ac3c427a271d

12036F

./DATA/files/Race/Common_J.szs

6282a410b5e88962ef7d820ce4a0b145da3b9b49

87E0

./DATA/files/Race/Course/beginner_course.szs

3517b7113a2476b6b745f80c2b76538202c48be6

1F7BC1

./DATA/files/Race/Course/beginner_course_d.szs

2b67a8fe20db4470447322dd7d04234df16f4a05

1AD61F

./DATA/files/Race/Course/boardcross_course.szs

c807de04f6630e3953ba1fb074ac5fea2f925b20

1C919A

./DATA/files/Race/Course/boardcross_course_d.szs

c807de04f6630e3953ba1fb074ac5fea2f925b20

1C919A

./DATA/files/Race/Course/castle_course.szs

32f5dadd83f83e4fa73e8cc5022d20d6b5ba772d

275649

./DATA/files/Race/Course/castle_course_d.szs

85fef312b65728fef26f4f83959da59042bc8637

1CBC9C

./DATA/files/Race/Course/factory_course.szs

0645f2a986522cdd017ca25b6d2f61e0bc216942

2A5408

./DATA/files/Race/Course/factory_course_d.szs

eedf96f0925e419d1d6839638659beccb2e68269

26560F

./DATA/files/Race/Course/farm_course.szs

7a4099ee03fbe7e1109de82d699f31dc5bbb2297

2BD612

./DATA/files/Race/Course/farm_course_d.szs

21f153e3e3a547935d1a5f52c606973cb233021e

28ED85

./DATA/files/Race/Course/kinoko_course.szs

1ae281b0061207b8583f30320dfef3514537ccb8

2F4F88

./DATA/files/Race/Course/kinoko_course_d.szs

4a81a70859ad920740cfa8d8286df92a752bb0c0

2A5003

./DATA/files/Race/Course/loser_demo.szs

cdea6bcbf75c6529d3dd994ca73caa21352b02ae

246490

./DATA/files/Race/Course/loser_demo_d.szs

a14ffe537161feb7d14bb1522ba8e14e2a9fdf4f

192F00

./DATA/files/Race/Course/Object/castle_tree1.brres

f5e8640c24c1f3a28036f70ea0cf29d405ee3359

21780

./DATA/files/Race/Course/Object/castle_tree2.brres

4a1530322107724efc8213e35fb32b5ed6eca25e

8F00

./DATA/files/Race/Course/Object/choropu.brres

55e680b612da1caaee6dbe809ea74f35dc248f04

5080

./DATA/files/Race/Course/Object/kinoko_lift1.brres

bd5d391a576f5fcc7e959d966c21daae2a65b312

21500

./DATA/files/Race/Course/Object/kuribo.brres

c39b1edbb0dc42fb0cc9ef2aefd90a29bcf85b38

C080

./DATA/files/Race/Course/Object/npc_mii_a.brres

c544cf2b1d6507527502addbe1bac45dd9037518

7B00

./DATA/files/Race/Course/Object/pakkun_f.brres

80ef45e652fdf8f9a589cc994f5dcb147b338c0d

7500

./DATA/files/Race/Course/Object/pendulum.brres

86b77fdad8e0734637f90b191e81d8c5579f0c04

21280

./DATA/files/Race/Course/old_falls_ds.szs

bcb796818a3159ffa9cd160baa3703e11c4c2d2e

F2C60

./DATA/files/Race/Course/old_falls_ds_d.szs

bcb796818a3159ffa9cd160baa3703e11c4c2d2e

F2C60

./DATA/files/Race/Course/old_heyho_gba.szs

a4fe9eced8add3e2c546acda3fe21543ac906551

E8BE2

./DATA/files/Race/Course/old_heyho_gba_d.szs

a4fe9eced8add3e2c546acda3fe21543ac906551

E8BE2

./DATA/files/Race/Course/old_mario_64.szs

3b099b58492bcf3565120585af2505cab8220ab5

1525F0

./DATA/files/Race/Course/old_mario_64_d.szs

3b099b58492bcf3565120585af2505cab8220ab5

1525F0

./DATA/files/Race/Course/old_obake_sfc.szs

2a778fc4e208269cdf31ae0b0fd3c4da6958a260

6B611

./DATA/files/Race/Course/old_obake_sfc_d.szs

2a778fc4e208269cdf31ae0b0fd3c4da6958a260

6B611

./DATA/files/Race/Course/old_peach_gc.szs

eefe67be639774fa982e4673f7c84a50e4be9dc4

1AE4DA

./DATA/files/Race/Course/old_peach_gc_d.szs

eefe67be639774fa982e4673f7c84a50e4be9dc4

1AE4DA

./DATA/files/Race/Course/old_sherbet_64.szs

4782535436a4903d50ee71b83ebb75989bf6a482

18239C

./DATA/files/Race/Course/old_sherbet_64_d.szs

4782535436a4903d50ee71b83ebb75989bf6a482

18239C

./DATA/files/Race/Course/old_town_ds.szs

82cf4d4dbee72d6ea384603753a1f1e4ba0c6928

23724E

./DATA/files/Race/Course/old_town_ds_d.szs

82cf4d4dbee72d6ea384603753a1f1e4ba0c6928

23724E

./DATA/files/Race/Course/old_waluigi_gc.szs

3219a5f848b3c7682d8e7a7b766b636bb979fc1d

128832

./DATA/files/Race/Course/old_waluigi_gc_d.szs

3219a5f848b3c7682d8e7a7b766b636bb979fc1d

128832

./DATA/files/Race/Course/shopping_course.szs

5deff4572cdc5a8a1286122834969a430387bfaf

28BFBC

./DATA/files/Race/Course/shopping_course_d.szs

f507bf8b5b66d7ac56749f5c99d5a9487f9ed4f8

1FE3BC

./DATA/files/Race/Course/truck_course.szs

75fc78b9e46f9e518b41a0b6ac15b94b97566189

1EFDBE

./DATA/files/Race/Course/truck_course_d.szs

6954cbdc80d3b96680bfd0b7320f669afbdc140f

1BD9A7

./DATA/files/Race/Course/winningrun_demo.szs

37a5d009973457a077a40e71e4c83b8d272fd142

2B8675

./DATA/files/Race/Course/winningrun_demo_d.szs

a4d48066271cf7a0e92e4c843175d40b312f5291

20ECDE

./DATA/files/Race/Kart/la_bike-dk.szs

ac414ec0b3c7eea38795ef07bf4fdfb629e57dc1

25C6F

./DATA/files/Race/Kart/la_bike-kp.szs

ca211716ef81fde28fe95a0afe204217cf11389b

2A31F

./DATA/files/Race/Kart/la_bike-wl.szs

6545ebce4f018eb0bc15213b944c2a9165ca00fd

27518

./DATA/files/Race/Kart/la_bike-wr.szs

fc8f6da639d28d8f3f2e92889e2983d942c1670f

2796B

./DATA/files/Race/Kart/la_kart-dk.szs

ab908fbea97bb17aa0fd595b784b78f987bbdf4f

26BAA

./DATA/files/Race/Kart/la_kart-kp.szs

8006329b0964bccc586faf98943b8fe74b60d235

2484D

./DATA/files/Race/Kart/la_kart-wl.szs

4fe392831e020876372fa5531c278f9bed7b0f5d

1ED35

./DATA/files/Race/Kart/la_kart-wr.szs

f4af0d77e59c7c257627170c9f888a68006892c7

23BE3

./DATA/files/Race/Kart/lb_bike-dk.szs

2a3ecb96abd04d36a144367d379941237daa3167

24D16

./DATA/files/Race/Kart/lb_bike-kp.szs

b43bd1b3ca22cd8bad2afc916f092d340a6b4a4d

2AD08

./DATA/files/Race/Kart/lb_bike-wl.szs

27b69697adc2a0232b7c50c4525a22570af64822

2312B

./DATA/files/Race/Kart/lb_bike-wr.szs

c65ca4d32d7a8156769b58eadf9855228f5fcfba

26F8D

./DATA/files/Race/Kart/lb_kart-dk.szs

d3204bc3e19002a7ec94a975168850ba76354d1d

265A9

./DATA/files/Race/Kart/lb_kart-kp.szs

9dc8fdd3f095ea6cf4cc04b03ed8649e06fd84c2

240E8

./DATA/files/Race/Kart/lb_kart-wl.szs

e9b4abbade8ac836b82b1ed155b4bafa5eb916e3

1E6B3

./DATA/files/Race/Kart/lb_kart-wr.szs

8dba210fd12e4a02f94751ad3f02b118e7ee4150

2352E

./DATA/files/Race/Kart/ldf_bike-dk.szs

5ed68cb42be40c9a23d45141a0871adc8e087cee

24E63

./DATA/files/Race/Kart/ldf_bike-kp.szs

a56d980aa3f7ccf10515c4e271bde053ac06599e

2956B

./DATA/files/Race/Kart/ldf_bike-wl.szs

e48709581858e960b57efd88df455de687a6afab

26544

./DATA/files/Race/Kart/ldf_bike-wr.szs

50d1ef4700aeec1260cb1470d4246e4ac5b7a395

26A2B

./DATA/files/Race/Kart/ldf_kart-dk.szs

a9519279991cadba6ff1462b779017093fdd705f

23AF2

./DATA/files/Race/Kart/ldf_kart-kp.szs

ed2a01b1a0793a23abc0eb8bb31f92bca626b706

2173C

./DATA/files/Race/Kart/ldf_kart-wl.szs

3124b593ad2df3f78345827f03f32d702b9417f5

1BBC8

./DATA/files/Race/Kart/ldf_kart-wr.szs

a4e34c848f47c6368b8c0352659a623561fb09b2

20B13

./DATA/files/Race/Kart/ma_bike-lg.szs

82f89b89584976b989fad1b1de4a46ec6d3cb17d

274D4

./DATA/files/Race/Kart/ma_bike-mr.szs

65210bab7e6feee1ec623bd22872ca17408b5a1d

283A9

./DATA/files/Race/Kart/ma_bike-pc.szs

35be6293b88913eb9708757abc4cfb040d5f3f93

29BC5

./DATA/files/Race/Kart/ma_bike-ys.szs

beb02941856a90b2a13cfffa1fb2cb09e60d6670

29A3B

./DATA/files/Race/Kart/ma_kart-lg.szs

42c68c0702b4d6e68be63c8a62d0cacf857d8ea4

1CAA7

./DATA/files/Race/Kart/ma_kart-mr.szs

c0acb4217c0ef1c4f36d8b8586e7831e1098dad3

1C1D2

./DATA/files/Race/Kart/ma_kart-pc.szs

780bedc507e94b48badf30ed21059ed47e103068

22F6F

./DATA/files/Race/Kart/ma_kart-ys.szs

8ce52492f31f403d29ffa4efabb629802fd7db2e

21B8C

./DATA/files/Race/Kart/mb_bike-lg.szs

30ce2012d9898bca8ab5985de57397f8b2df87c1

29760

./DATA/files/Race/Kart/mb_bike-mr.szs

67041c83e65548a8a7f40d83a049c373fab4b335

29A4F

./DATA/files/Race/Kart/mb_bike-pc.szs

7652d6c4266bbfb1994edf003ca6c0831b7a7f1a

2C0FD

./DATA/files/Race/Kart/mb_bike-ys.szs

8e1dc895c44602905a24aaf384969e0d01920dd0

2AC65

./DATA/files/Race/Kart/mb_kart-lg.szs

f7d5e32ed1290de6b31913e23c751ea5ba4dc78c

1E726

./DATA/files/Race/Kart/mb_kart-mr.szs

b13f96fd273ac7373c6e5b0b2ad9062abd838df2

1E210

./DATA/files/Race/Kart/mb_kart-pc.szs

ea8cfa28cd51755635287d17079d71e96f0b1c02

24C84

./DATA/files/Race/Kart/mb_kart-ys.szs

37087bb1e0da9a68c8101567823614ab85d0da4c

23E41

./DATA/files/Race/Kart/mdf_bike-lg.szs

a44b74caf668a7d7153ca9313b99d2cb9e28c15d

295CD

./DATA/files/Race/Kart/mdf_bike-mr.szs

412c262063f5bb60d458a94ea89a2212178c1e3a

29A86

./DATA/files/Race/Kart/mdf_bike-pc.szs

a3b0356281c0d928ec20ee6cec31db46a9030e57

2BD3E

./DATA/files/Race/Kart/mdf_bike-ys.szs

d442dbeb3fa1ccec8ca0b120063056e44b89d584

2AD2F

./DATA/files/Race/Kart/mdf_kart-lg.szs

de8c6738a0988aa046cac2d301210bb3ac598604

1D466

./DATA/files/Race/Kart/mdf_kart-mr.szs

e284957437b16b3cdc5dd15b9efa2d0b959158bd

1CD43

./DATA/files/Race/Kart/mdf_kart-pc.szs

6d3313ce209b005c0266046217949d883b9bf593

23706

./DATA/files/Race/Kart/mdf_kart-ys.szs

3c94df152ad2c23e26ab2a428f4c99a8aa6adc50

22524

./DATA/files/Race/Kart/sa_bike-bmr.szs

6240a814084e9f7e9eebc9f8d32e04660b0bfb59

272BB

./DATA/files/Race/Kart/sa_bike-bpc.szs

c09b4a8ee59f4845e351fcf6033ada5c1a96ea9d

2B690

./DATA/files/Race/Kart/sa_bike-ko.szs

032d5fac4ae9decd5b775aabf2ef34a6def2b1e1

25ECB

./DATA/files/Race/Kart/sa_bike-nk.szs

640c557a71accc375b4c897da88b6073c099f615

28D5B

./DATA/files/Race/Kart/sa_kart-bmr.szs

bbe23f391901401dc61f1a02908c6530ca2d3d5e

1E0E7

./DATA/files/Race/Kart/sa_kart-bpc.szs

79ab500a260b7333a3e498a2b6f453b5348e43a2

21A89

./DATA/files/Race/Kart/sa_kart-ko.szs

27daa16c904dd7a2a429c806de4d2bfb6348e85e

1C49E

./DATA/files/Race/Kart/sa_kart-nk.szs

ba28bd91d7437caa29f9e6eae2042194070676d4

228D7

./DATA/files/Race/Kart/sb_bike-bmr.szs

89b10005d663e09b25ba76d144166dc1a93d5a6b

271CB

./DATA/files/Race/Kart/sb_bike-bpc.szs

aac46679a9945855db287fb9a0442220d94932a3

2B4CD

./DATA/files/Race/Kart/sb_bike-ko.szs

9efdb99e04ad408ed4413c8654d0f8aa1beccc65

25DFA

./DATA/files/Race/Kart/sb_bike-nk.szs

a639c4cabb34614b37706dee1a2d55873f7ba4eb

28D7F

./DATA/files/Race/Kart/sb_kart-bmr.szs

51e74090f8359e7aa5ff20862a523650ea0e9bf7

1E741

./DATA/files/Race/Kart/sb_kart-bpc.szs

34713daba6c0367d4b00d1291407169f2c3622fe

21E72

./DATA/files/Race/Kart/sb_kart-ko.szs

d6a779509b5ebffdd71c2f53b8a6f1895f64a9c7

1C9B2

./DATA/files/Race/Kart/sb_kart-nk.szs

df5a2f63ffbe37ee03b4b4f281e1372ded8a6e2e

22FFB

./DATA/files/Race/Kart/sdf_bike-bmr.szs

0ab2322b2d68174be03e19fd24d204de5c2a5f7e

27D46

./DATA/files/Race/Kart/sdf_bike-bpc.szs

401c9aa5f19d9a24e53ef0e8238e681c209720dd

2C030

./DATA/files/Race/Kart/sdf_bike-ko.szs

f8aa210cef04e997a36b7e85f9295117f49164fb

26A86

./DATA/files/Race/Kart/sdf_bike-nk.szs

59cd9bfa8eaa2588425a2d409eeb6ec0dd436566

2982D

./DATA/files/Race/Kart/sdf_kart-bmr.szs

e6bfc0b9f24870d05ef018f45bd958b4531fba1c

1D449

./DATA/files/Race/Kart/sdf_kart-bpc.szs

7cea0601e201e0c799048c46add3a269adf07d71

20B07

./DATA/files/Race/Kart/sdf_kart-ko.szs

1179c1038b23ad67d79309987c31a7648bd27b2a

1B74E

./DATA/files/Race/Kart/sdf_kart-nk.szs

c8bc692af68cfeb7b9062b1bbe467eb98dffbff1

21B9F

./DATA/files/rel/StaticR.rel

136ad61f244192bcdcccf5b094e72486f41e8204

4AE5AC

./DATA/files/Scene/Model/BackModel.szs

08177faff57db3a74d111ff0b51dea451fb572eb

3A3F7

./DATA/files/Scene/Model/Driver.szs

dff585eb5e50ab46d53b0a379a7da14de49c2b29

15EDE2

./DATA/files/Scene/Model/Earth.szs

8b1c38e2d99706835fc7dedf4561e81da73e7f60

26250

./DATA/files/Scene/Model/Kart/bmr-allkart.szs

de0fea976a4929675b64176623f3155a23b125fd

7D50D

./DATA/files/Scene/Model/Kart/bpc-allkart.szs

0905ffa37e76f69563da398c7e0294439a9d2336

7DD23

./DATA/files/Scene/Model/Kart/dk-allkart.szs

720ee57575d6169b9193866581a531215904403a

80C11

./DATA/files/Scene/Model/Kart/ko-allkart.szs

994d63670b2954230e526f56ba67c03eac8b6a47

7DA1C

./DATA/files/Scene/Model/Kart/kp-allkart.szs

83c14df5a63fc14d419c0d2dd52c938016f8c879

7FD6B

./DATA/files/Scene/Model/Kart/lg-allkart.szs

ba02d24e8aa7173ba455d664424aa60757a139cd

76822

./DATA/files/Scene/Model/Kart/mr-allkart.szs

789ea812a0764bff55d4e26a475fd104d50adcd8

76BBB

./DATA/files/Scene/Model/Kart/nk-allkart.szs

80e62e061412cba7cf1395f166e10a3ef9c5ef46

7E0EA

./DATA/files/Scene/Model/Kart/pc-allkart.szs

9b078803cb753450363800503bd6260e20e1820a

7813E

./DATA/files/Scene/Model/Kart/wl-allkart.szs

255e4ede519600078f4532d4678d68162b3e4f64

7FF17

./DATA/files/Scene/Model/Kart/wr-allkart.szs

91bf020c01231765286dc9c746a0bf59887abff9

80EE9

./DATA/files/Scene/Model/Kart/ys-allkart.szs

e635a0498ff51057455048dcbd1ca0884120dc1e

77B93

./DATA/files/Scene/Model/MiiBody.szs

bbe32d6a11c668182a914971aa0e7f83d6e9675c

30379

./DATA/files/Scene/UI/Award.szs

a1b1985d16fc184722f23fd59ff5d27f23a3bf71

69F16

./DATA/files/Scene/UI/Award_J.szs

63e7c50cbdd346326fc413b45a87f9b6ed16ab45

6825

./DATA/files/Scene/UI/Font.szs

1a633c45b0ffd6936ac2b8a35ded766f76ba1411

7B57A

./DATA/files/Scene/UI/MenuSingle.szs

3f537d753746006d351833d9fa1a2430397f3fed

145064

./DATA/files/Scene/UI/MenuSingle_J.szs

f5f7275f37f33d99d7b09c614b1831aea9cf567a

5ED6

./DATA/files/Scene/UI/Race.szs

d3da20558040b9699af9a59bdadbef7ea6f3153c

F3F07

./DATA/files/Scene/UI/Race_J.szs

def2fc6e7ad1c878f6611d76934e5f1879cc6a23

3969E

./DATA/files/Scene/UI/Trial.szs

8bed3ccb86a28ae1a786d214bcd6247e9aa69594

1A180A

./DATA/files/Scene/UI/Trial_J.szs

1f4725defb6b178a7d58ac270714c4a600d3bbfd

4ACBD

./DATA/files/sound/revo_kart.brsar

93d5c0c61d4fe47d730915be0ea451e45e9be4e1

6689580

./DATA/files/sound/strm/n_Circuit32_f.brstm

e7c4973a7305341c8e8421e6a584b39a9fdff190

1C7A00

./DATA/files/sound/strm/n_Circuit32_n.brstm

68baacf82a31a59177cbbed53431b014ca815f42

23EAC0

./DATA/files/sound/strm/n_Farm_F.brstm

1f2277125bf2e66ef72fe830b4014556bface340

1B2960

./DATA/files/sound/strm/n_Farm_n.brstm

aa720c3e53734b0ec0e0f60a22b4c074a79f4f30

227580

./DATA/files/sound/strm/n_Kinoko_F.brstm

39558329cd493ddb9225130ba4861ef4abea5338

173DA0

./DATA/files/sound/strm/n_Kinoko_n.brstm

19274d4fb95e71d7ed4beff478bde21b53df34e1

1E36C0

./DATA/files/sound/strm/n_Shopping32_f.brstm

e3115c49c50cf5570967687822395a17b5b0aeb7

1D3FA0

./DATA/files/sound/strm/n_Shopping32_n.brstm

e496f86ebb24f1d2d902be828d61880e1009f2b9

28FE60

./DATA/files/sound/strm/n_Snowboard32_F.brstm

edcfed175e0777408a33154674dde1904917f225

1CDBA0

./DATA/files/sound/strm/n_Snowboard32_n.brstm

662fb5b09b7c9d73acb686ccd022d28cab964d2f

2A8840

./DATA/files/sound/strm/o_Crs_In_Fan.brstm

01b85c4ad94b5a35454b93ee2bc8b315f92340fb

1BC180

./DATA/files/sound/strm/o_FanfareGP1_32.brstm

ccffabec4993ff75d0413c31a93fcc5cb72d2398

617E00

./DATA/files/sound/strm/o_FanfareGP1_only32.brstm

3821a6c4ecc3b48afb4c559b67292569b4c66715

AB340

./DATA/files/sound/strm/o_FanfareGP2_32.brstm

93c147fb1abd16b328042d727a2b473bd51bfea0

623E00

./DATA/files/sound/strm/o_FanfareGP2_only32.brstm

8ddd7b4a54eb0f751b23f00e200506137abedba4

BFB40

./DATA/files/sound/strm/o_FanfareGPdame_32.brstm

9ec1462daf49d996829e928bbb673fb2bff4a249

4CF500

./DATA/files/sound/strm/o_FanfareGPdame_only32.brstm

f0f9ae7b819e0283bcc07477e4fd2d609988407f

EF600

./DATA/files/sound/strm/o_hyousyou_cut.brstm

ceb3227c072df32bc4026058d970f0b1bdd4edbd

1796E0

./DATA/files/sound/strm/o_hyousyou_lose.brstm

175f80480a04881247f68d69354a834d732b0655

1831C0

./DATA/files/sound/strm/o_hyousyou_winningrun.brstm

e24570fd5a77007c5ac90d01a0338be5c18cdc37

2A9940

./DATA/files/sound/strm/o_Start32_fan.brstm

912e4211baa03486f71dedfc51994be8772803be

6F680

./DATA/files/sound/strm/r_64_Circuit32_f.brstm

fbf8094e0f78d4dc24551b55b976aed1ba5e58c7

237860

./DATA/files/sound/strm/r_64_Circuit32_n.brstm

4a52455117c6748d88f1334b2bfda38f1002d9fe

2C73C0

./DATA/files/sound/strm/r_64_Sherbet32_f.brstm

ffe62b370db42259607fe8569d2123b6f37e02dd

1E0180

./DATA/files/sound/strm/r_64_Sherbet32_n.brstm

38547ca4e0d707f9f0ffa4eec65e1c4a035ccafe

281680

./DATA/files/sound/strm/r_AGB_Beach32_f.brstm

84675db23026a596259f178cd5a64706d642c88f

1EF9E0

./DATA/files/sound/strm/r_AGB_Beach32_n.brstm

b045f03b4e19a3e35f9d9e84c5a7469b5215f5f9

25FD80

./DATA/files/sound/strm/r_DS_Jungle32_f.brstm

e600ded4b00661317ee9de4e66e5a3a5f989d5ed

188040

./DATA/files/sound/strm/r_DS_Jungle32_n.brstm

b06843fe109bdd290753936cbffa8529d470d018

1F1E20

./DATA/files/sound/strm/r_DS_Town32_f.brstm

d0bd3b8288920c52b4a8af3e004490562d19d583

1FE380

./DATA/files/sound/strm/r_DS_Town32_n.brstm

71f248e08e071bbe783fe24015645796eb1cf0d4

2BEFC0

./DATA/files/sound/strm/r_GC_Beach32_f.brstm

61f1646895d5fb0afbf5b0fc527a310b48491032

1EC6A0

./DATA/files/sound/strm/r_GC_Beach32_n.brstm

ca6dd63fa883860acef8f85908b7c6b790ebf294

28CFE0

./DATA/files/sound/strm/r_GC_Stadium32_f.brstm

79dd9c2f4a4b17581a678b262375d479d7815cdd

22B900

./DATA/files/sound/strm/r_GC_Stadium32_n.brstm

55f8fc67ceabd908e16c22dd7b0a93662e76afdc

2C3800

./DATA/files/sound/strm/r_SFC_Obake32_f.brstm

48f02fe4c7bf5034f8585ab5ad42b8aea671581c

134F60

./DATA/files/sound/strm/r_SFC_Obake32_n.brstm

18cebd08ff9ddaefcf865f69234e958782f282ef

27A860

./DATA/files/sound/strm/STRM_N_FACTORY_F.brstm

f39992c88d6d11ca6fc9f2940e7dc1a0892d4262

108A4C0

./DATA/files/sound/strm/STRM_N_FACTORY_N.brstm

f50a82c74ed70257a3db5f23df50331d75f6106e

1486D40

./DATA/files/sound/strm/STRM_N_TRUCK_F.brstm

7a5d95811ead5274ae272d30d41ec9e70f95a9a3

3CB540

./DATA/files/sound/strm/STRM_N_TRUCK_N.brstm

3f6911b9145f3434798578405cab3249435a42d8

578400

./DATA/files/thp/button/class_top.thp

9a3cac5fb011b6e0161d098408b68f005d125dbf

151C690

./DATA/files/thp/button/drift_select.thp

29364951a5d6385c325b6f698bfe73cda664f587

864830

./DATA/files/thp/button/single_top.thp

68bd524d8c2fa3ce2c7d80d3a927aff62c0ea78b

1D18AD0

./DATA/files/thp/course/cup_select.thp

87bc45c4004301a836d346d47981a20ce93d6caf

2783890

./DATA/files/thp/title/title.thp

f8d919d4e553a528963147e03b5c0f66a86d15f5

8D85C40

./DATA/files/thp/title/top_menu.thp

b6960e26781e1abbeceb05d09aa2f9dd5dc4e694

1BBDE10

./DATA/h3.bin

0aeb72e33863f03fbc3c03eb43952fc42107c434

18000

./DATA/sys/apploader.img

9af6302d15b21e140e8a43afd511f3e4897a1eeb

3B7DC

./DATA/sys/bi2.bin

9fc165ff06803716fd6fcf275caad9939a7d2455

2000

./DATA/sys/boot.bin

851f760f0fb3110d1b82a09469f7eb2a8c5dd874

440

./DATA/sys/fst.bin

f39c17fe7f8f9e5a192240860ee4ef48681d0706

1CE8

./DATA/sys/main.dol

01b382a71e4c5da9abb05040f6406fa7c27b2c90

2A2D20

./DATA/ticket.bin

228bbbd2884058a189f34b9b39b11004b0ead17f

2A4

./DATA/tmd.bin

30f3303d20763bed3a4f566bc4297d0a8c60cdef

208

./UPDATE/cert.bin

274d2037ea27ca83f533b1c8fb7979588d78f84a

C40

./UPDATE/disc/header.bin

ab5dbb41738e305713aa4aec76773fd6a716a78c

100

./UPDATE/disc/region.bin

516fb70a8f3ea3f6db69250abf2446de4a817fc2

20

./UPDATE/files/_sys/BOOT2-v2-64.wad.out.wad

92f16979b3e10e58da8f1052f3f7fc01ddb5b8fb

24E40

./UPDATE/files/_sys/firmware.64.11.0.10.viper.wad

a6c667a62a940b46f1d8d6c87bba8dabb9feb138

1897C0

./UPDATE/files/_sys/firmware.64.12.0.6.viper.wad

5d31f28fff9e625c6f65f183450172bb0257292b

189380

./UPDATE/files/_sys/firmware.64.13.0.10.viper.wad

6414f168eb0b7c2d290c078c96943767e874a8b6

1897C0

./UPDATE/files/_sys/firmware.64.14.1.1.viper.wad

cae12aa6dbd3f14bd7dd7ac9d3b72d590d71302b

189E00

./UPDATE/files/_sys/firmware.64.15.1.1.viper.wad

ae09c95437876b70f28981a0c51945b266de5f42

189E00

./UPDATE/files/_sys/firmware.64.17.2.0.viper.wad

153d612fa921a75c6270126efea82468c0297081

18A340

./UPDATE/files/_sys/firmware.64.20.0.12.viper.wad

cad6a199948512736d25e97b5642d97d9c2204d1

1898C0

./UPDATE/files/_sys/firmware.64.21.2.2.wad

15865a3d38be16150627410205e14e913c2776e2

18A500

./UPDATE/files/_sys/firmware.64.22.3.4.wad

6ca28b4eedfbfbe8c6048e4f92a4d5d742ca2724

18BF00

./UPDATE/files/_sys/firmware.64.28.5.8.wad

e649cb7e61c497e894c0be7b77891fd7003260d2

192000

./UPDATE/files/_sys/firmware.64.30.4.16.wad

c61f4dbd5147e402c5a3327a30b528a7f4621c7d

1B0C40

./UPDATE/files/_sys/firmware.64.31.4.16.wad

9bb2e8024ddc4bc8f7e4fc1d0f36b2316a37ceaa

1B0C40

./UPDATE/files/_sys/firmware.64.33.4.16.wad

40f31f361a79a374a6a309ccb4efc5d34b06c1cd

1B0C00

./UPDATE/files/_sys/firmware.64.34.4.15.wad

187a7cc8a75ee479c41a64d8b3d93143fa0bef2e

1B0800

./UPDATE/files/_sys/firmware.64.35.4.16.wad

2460d23c19ef769ee291d9d945fa040b8f9162cb

1B0C40

./UPDATE/files/_sys/firmware.64.36.4.18.wad

9328839c3b1cd781d66645b9fd0d9344fd12ba25

1B0C80

./UPDATE/files/__update.inf

448bb30abfd1a958be4a924263fda47ad145fa87

2220

./UPDATE/h3.bin

980465d169e20d10bef6764eccaa01dcc8faa0e8

18000

./UPDATE/sys/apploader.img

39ddb78f3670c6a74901bad0385db6ee064b9f4c

3B81C

./UPDATE/sys/bi2.bin

fc5de123dd51525e27479d29f2a37ca3aadaf7bb

2000

./UPDATE/sys/boot.bin

81f182feff737d749c0d1b6500a93cdb70eae492

440

./UPDATE/sys/fst.bin

b49466870adec055d9186b04fff7963aebb14cab

2C0

./UPDATE/sys/main.dol

b136d5f35909e682b1a15352f429edb412f0b247

140

./UPDATE/ticket.bin

bf1dc357f2c2cc821cb07b961307eca5ea23fab8

2A4

./UPDATE/tmd.bin

6f882471ae3b40d8babb9cf9de47d0c7c750d302

208

File differences#

Several files, which are in the release version, are missing from the demo version due to being unused there. For example, assets for all the unlockable courses, their music and unlockable characters are missing, as the demo doesn't allow the player to unlock new content.

The following files from the disc are either exclusively found in the demo (NEW), or are present in both the retail Japanese version and the demo, but their contents differ across builds (MODIFIED):

/Boot/Strap/jp/wait.szs                        (NEW)
/Scene/UI/Font.szs                             (MODIFIED)
/Scene/UI/MenuSingle_J.szs                     (MODIFIED)
/Scene/UI/Trial_J.szs                          (NEW)
/Scene/UI/Trial.szs                            (NEW)
/rel/StaticR.rel                               (MODIFIED)

The files present in both versions of the game but not mentioned above are identical between both versions. Much like with the Starlight build of the game, this version has different firmware WAD files inside the UPDATE partition, needed for it to work on kiosk units.
The demo version is also lacking the channel partition, meaning the channel's WAD is not present. Because of this, it's not possible to deduce a possible build date for this version, unlike with the other builds of the game.

Code differences#

Overview#

The following table shows the RAM address start-end ranges where the code is mostly identical between the retail Japanese version (left) and the demo version (right) in main.dol
The end of these ranges is where code differences can be found:

80004000 800063cc => 80004000 800063cc
80008d68 8000a610 => 80008c0c 8000a4b4
8000c098 80021acc => 8000b488 80020ebc
80021acc 801a80d8 => 8002197c 801a7f88
801a866c 801ab8c0 => 801a82c4 801ab518
801ab8f8 801ad720 => 801ab4d8 801ad300
801ad920 801c08b0 => 801ad300 801c0290
801c08b0 8020f54c => 801c02c4 8020ef60
8020f54c 80244cfc => 8020f1b0 80244960

Likewise for the StaticR.rel file:

8050fd34 8051aec0 => 8050fa54 8051abe0
8051af14 8051c7a0 => 8051ac34 8051c4c0
805243a0 8052e768 => 8052423c 8052e604
8052eee4 80532e18 => 8052ed80 80532cb4
80534284 8053650c => 80534120 805363a8
80536658 8054243c => 805364f4 805422d8
805443b4 80553ce0 => 80544068 80553994
80554c64 805a2264 => 8055490c 805a1f0c
805a2268 805a5fc8 => 805a1f10 805a5c70
805a5fcc 805b8cc4 => 805a5c74 805b896c
805ba478 805bbf20 => 805b955c 805bb004
805bc9fc 805c00f4 => 805bb98c 805bf084
805c1140 805c5618 => 805c00d0 805c45a8
805c65cc 805c79b4 => 805c555c 805c6944
805c9050 805cba28 => 805c7ff8 805ca9d0
805cbb34 805cea68 => 805caa38 805cd96c
805cfb48 805d0bcc => 805cec3c 805cfcc0
805d0be0 805d3328 => 805cfce8 805d2430
805d84bc 805d9a90 => 805d75c4 805d8b98
805da400 805dc2ec => 805d9508 805db3f4
805dc944 805e0314 => 805dba4c 805df41c
805e0438 805e3a38 => 805df540 805e2b40
805e50e0 805e7d24 => 805e41f8 805e6e3c
805e9a00 805f19c8 => 805e8b18 805f0ae0
805f1f90 805f4ca0 => 805f10a8 805f3db8
805f578c 805f9cbc => 805f48c8 805f8df8
805fb51c 805fde78 => 805fa658 805fcfb4
8060094c 80604444 => 805ff920 80603418
8060458c 8060a4d0 => 80603560 806094a4
8060b8a0 8060e620 => 8060a874 8060d5f4
8060f2b0 80612ebc => 8060e284 80611e90
806147cc 806172a8 => 806137a0 8061627c
80617480 806190d0 => 80616454 806180a4
806190d4 8061a974 => 806180a8 80619948
8061e4d4 806205dc => 8061d4a8 8061f5b0
80623fe8 80625484 => 80622f18 806243b4
8062bd44 8062fa00 => 8062ac74 8062e930
8062fa34 80630ef4 => 8062f54c 80630a0c
80631d38 80634404 => 80631bb0 8063427c
80635764 806373a4 => 806355c8 80637208
80637400 8063b018 => 80637204 8063ae1c
8063d364 806463f4 => 8063df18 80646fa8
8064956c 8064ae6c => 8064a120 8064ba20
8064ae98 8064ca50 => 8064ba4c 8064d604
8064d76c 8064f194 => 8064e320 8064fd48
8064f330 80650f84 => 8064fee4 80651b38
80651a00 806f6548 => 806525c4 806f710c
806f6888 8070707c => 806f7454 80707c48
807070a8 80710650 => 80707c7c 80711224
80711d84 807131a0 => 80712970 80713d8c
807131a8 807159fc => 80713d9c 807165f0
80715c80 80717178 => 80716884 80717d7c
8071718c 8074c8b0 => 80717da0 8074d4c4
8074c8b4 80783260 => 8074d4c8 80783e74
807838b4 807e0a80 => 807844c8 807e1694
807e0a84 807e4b08 => 807e1698 807e571c
807e4b0c 807e5c04 => 807e5720 807e6818
807e5c08 807eacb0 => 807e681c 807eb8c4
807eacb4 807ebd3c => 807eb8c8 807ec950
807ebdb8 807ee7b0 => 807ec9cc 807ef3c4
807ee7b4 807f00d0 => 807ef3c8 807f0ce4
807f00d4 807f115c => 807f0ce8 807f1d70
807f1c88 807f2df0 => 807f289c 807f3a04
807f46e0 807f58b0 => 807f52f4 807f64c4
807f58e8 807f7c00 => 807f6514 807f882c
807f7c04 80832530 => 807f8830 8083315c
80832534 80838218 => 80833160 80838e44
80838230 8083d414 => 80838e5c 8083e040
8083d43c 8083fc98 => 8083e070 808408cc
8084198c 80844ed8 => 808425c0 80845b0c
80844ee8 80846e2c => 80845b24 80847a68
80846e34 8084ebf4 => 80847a78 8084f838
8084f4c8 80850908 => 8085018c 808515cc
80851034 80854b98 => 80851df4 80855958
808573f4 80858790 => 808581d8 80859574
808589f8 80859b24 => 808597fc 8085a928
8085c5e4 8085f498 => 8085d598 8086044c
8085fe2c 8088ed80 => 80860f38 8088fe8c

Demo-only menus5#

The RAM addresses below are for the demo version of the game, unless stated otherwise.

Pages (screens)
Trial Usage

This is the controls screen seen after boot.

  • Constructor: 0x8063b9b0
  • Real name: TrialUsagePage
  • Page ID: 0xD3
Trial Title

This is the demo's specific title screen. Unlike its retail counterpart, this one loads the 体験版 icon and directly accesses the restricted main menu.

  • Constructor: 0x8063be80
  • Real name: TrialTitlePage
  • Page ID: 0xD4
Trial End

This is the demo's end screen.

  • Constructor: 0x8063c428
  • Page ID: 0xD5
Trial Time Check

This page is in charge of checking the demo time, in order to boot the player out of the demo when the time is over.

  • Constructor: 0x8063c604
  • Time check function: 0x8063c710
  • Page ID: 0xD6
Sections (menus)

The following section IDs were added in the demo. Since these section IDs are located after the disc section IDs and before the channel section IDs, this causes the aforementioned section IDs to be shifted.

  • 0x95: Trial Usage
  • 0x96: Trial End
  • 0x97: Trial Title (from Trial Usage)
  • 0x98: Trial Title (from Single Player menu or after ending a Grand Prix)
  • 0x99: Trial Single Player menu
  • 0x9A: Trial Grand Prix course introduction cutscene
  • 0x9B: Trial Grand Prix gameplay
  • 0x9C: Trial Grand Prix replay
  • 0x9D: Trial Grand Prix award ceremony
  • 0x9E: Unused test section exclusively found in the demo.
Section 0x9E

Section 0x9E is a test section introduced in this demo build of the game. Like the unused test sections 0x06 to 0x0C in the retail builds, this section is supposed to load its resources from "Scene/UI/Test.szs", which is not present on this or any other build of the game.

Curiously, unlike the other test sections (which only load a single test page), section 0x9E loads every single page (screen) in the entire game, except for the four newly added trial pages. It's unknown what the purpose of this section is. Loading it crashes the game.

Save code#

  • Some save-related initialization code (such as 0x8054484c) has been partially stubbed, as this demo is not supposed to save its data.
  • The "Section" class (constructor at 0x80621d0c) has larger size in the demo due to the newly-added pages, which increased an array within said class.
  • The code associated to some menus was changed so that the player can only traverse the demo menus, and not any other part that would belong to the full game.
  • A function associated to the Title screen (0x8063ae1c) was changed to make it so that only the Mario and Luigi title screen image appears, and not the unlockable ones.
  • A function associated to the Main menu (0x808513f4) and the Single Player menu (0x8084f6d4) respectively was changed to disable most of the buttons, as well as changing the button message IDs to point to the trial-exclusive messages.
  • At 0x8051d8c4, a check was changed in the demo version so that only the second Wii remote can bring up the Home Menu interface (instead of all Wii remotes), which is not normally possible to do in the demo.

Other#

  • Functions __OSReboot, __OSShutdownToSBY and __OSRelaunchTitle are missing in the demo, since it's not meant to be restarted itself nor to shutdown the console at any time.
  • Function WPADSetAutoSleepTime was added in the demo at 0x801c0290. This is used to avoid automatically disconnecting the Wii remotes if idling for too long.
  • A singleton known as "Nwc24Manager" (instance at 0x809c2144 in the PAL version) is not initialized in the demo build, since the demo doesn't use any online nor WiiConnect24 features.
  • A function that usually parses string arguments passed to the executable (0x805b896c) was simplified. In the demo, it only parses the option "-p", which forces a specific controller on boot.
  • Extra code was added at 0x80520c4c to increase the idle time in the controller, used to boot the player out of the demo after not pressing anything in the controller for 2 minutes.
  • Code was added at 0x8000a588 to obtain the demo's start time. This is used to determine if 10 minutes have passed ever since the demo was booted.
  • The context identifier for this demo is 3.

DVD Error checking code#

The demo changed parts of the code related to checking for any DVD errors. If a DVD error occurs, the game won't bring up the "An error has occurred" screen anymore. Instead, it will return to the Kiosk menu / Home menu the moment it detects a DVD error. This is handled by the functions at 0x8020f0c8 and 0x8020ef60, unique to this build.

In the background, the moment the game detects a DVD error, it will print the following to a debug console:

Disk Error %d Trial Error %d => OSReturnToMenu

The disc error correspond to the error code returned by function DVDGetDriveStatus6 (at 0x80162920). The trial error codes are explained below.

After this happens, the demo will attempt to write an error message to the file named error_file__, located at /title/00010000/52414241/data/ in the Wii's NAND filesystem. Said error message would contain the game's ID (DABJ) alongside the disc error from above:

   game id    : %s\n
   error code : %d

Finally, a trial error code would be returned depending on how the error message write attempt went:

  • 0 = The error message was written successfully.
  • 3 = The error message couldn't be written to the NAND.
  • 4 = The error message memory buffer couldn't be allocated properly.

While it's unknown what title corresponds to the aforementioned title ID, it's likely to be the Kiosk menu's title. The slack data from the hard drive the demo was found on also contained a build of a title with the title ID of RABAZZ (usually a default title ID for Wii titles), which when booted, creates the aforementioned NAND directory (without the error_file__ file).

Asset differences#

The following assets differ from the retail Japanese version:

Trial.szs#

The file Trial.szs was added in the demo, essentially replacing the Title.szs file from retail. It contains the assets found in the demo-exclusive screens.

Subdirectory

Explanation

press_start/ctrl/PressStart.brctr

The demo added an extra UI element for displaying the "PRESS (2) BUTTON" in the controls explanation screen.

title/blyt/logo.brlyt
title/ctrl/TrialIcon.brctr
title/timg/oh_expLogo_00.tpl

Assets for the 体験版 icon from the Title screen.

trial_end/blyt/thanks.brlyt
trial_end/ctrl/TrialEnd.brctr
trial_end/timg/oh_thanksBG_00.tpl

Assets for the trial end screen.

usage/blyt/control.brlyt
usage/ctrl/Usage.brctr
usage/timg/oh_controlBG_00.tpl

Assets for the controls screen.

Trial_J.szs / MenuSingle_J.szs#

The file Trial_J.szs was added in the demo, essentially replacing the Title_J.szs file from retail. It contains the text messages in the demo-exclusive screens. Said messages are the same as the ones found in the MenuSingle_J.szs file, which contains the text messages for the single player menu.

Inside both files, the only difference present is the addition of the following strings in the demo, inside the message/Menu.bmg file:

String (BMG ID = Message)

Explanation

2260 =

2261 =

2262 =

2263 = /

2274 = PRESS \u{f030} BUTTON

"PRESS (2) BUTTON"

2275 = /

227e = \c{51}マルチプレイ

Multiplayer (grayed out)

227f = \c{51}Wi-Fi

Wi-Fi (grayed out)

2280 = \c{51}マリオカートチャンネル

Mario Kart Channel (grayed out)

2281 = \c{50}ライセンス設定

License Settings (grayed out)

2282 = \c{50}1\z{800,3c}人

1 Player

2283 = \c{50}2\z{800,3c}人

2 Players (grayed out)

2284 = \c{50}3\z{800,3c}人

3 Players (grayed out)

2285 = \c{50}4\z{800,3c}人

4 Players (grayed out)

2286 = 体験版ではシングルプレイのみプレイできます

You can only play the Single Player mode in the demo version.

2287 = /

2292 = \c{50}タイムアタック

Time Trials (grayed out)

2293 = \c{50}VS

VS (grayed out)

2294 = \c{50}バトル

Battle (grayed out)

2295 = 体験版ではグランプリのみプレイできます

You can only play the Grand Prix mode in the demo version.

2296 = /

229c =

229d = /

Font.szs#

This file contains the different fonts used by the game. The following fonts were changed between the retail Japanese and demo versions:

kart_kanji_font.brfnt

This font is used for most of the game's text.

Demo

Retail

In the demo, the kanji characters 版 and 験 were added, which are needed to display a few of the demo-exclusive text strings.

tt_kart_font_rodan_ntlg_pro_b.brfnt

This font is used for the in-race countdown, finish, and new record messages.

Demo

Retail

In the demo, some lowercase characters were added, though it's unknown if these are used anywhere in the demo.

Useful codes#

The following Gecko codes can be used to deal with some of the quirks of this version.

Disable time limit#

Demo

Gecko Code

0463c710 4e800020

This code disables the demo's time limit.

No second Wii remote needed to play#

Demo

Gecko Code

040079D4 48000010

This code allows the player to go past the first screen of the demo even if they don't have a second Wii remote connected.

Re-enable disabled buttons#

Demo

Gecko Code

04851728 60000000
04851734 60000000
04851740 60000000
0485174c 60000000
04851758 60000000
04851764 60000000
04851770 60000000
0484f844 60000000
0484f854 60000000
0484f864 60000000

This code allows the player to select the normally-disabled buttons, for the sake of exploration. Most of the disabled menus won't work though, since their assets are not present in this build.

Access Home Menu interface#

Demo

Gecko Code

04634f40 38800001

This code allows the player to access the Home Menu interface by pressing the Home button in the controller. The restart button will take the player back to the Kiosk Menu / Home Menu, due to the fact that the developers replaced all the restart and shutdown functionality with going back to that menu.
Note that, as stated above, only the second Wii remote can be used to bring up the Home Menu interface.

Trial End takes the player back to the controls screen#

Demo

Gecko Code

0063c5d7 00000095
C263C5E0 00000006
3C80801A 6084A8D4
7C8903A6 4E800421
3CA08038 60A55680
80A50000 90651100
90851104 807F26B8
60000000 00000000

This code makes it so that, after the trial ends and the ending screen appears, the game will take the player back to the controls screen instead of returning to the Kiosk Menu / Home Menu.

Force DVD error#

Demo

Gecko Code

2834539A 00001000
04008af0 3860XXXX
E0000000 80008000

When this code is enabled, press the - (minus) button only in the second Wii remote to forcefully trigger a DVD error code, for testing purposes (see above for more information). The XXXX values correspond to the error code in question (for example, 0004 is the error code for "No Disk").

Access any menu from the Main menu#

Demo

Gecko Code

008518f7 000000XX

This code allows the player to traverse to a specific menu when clicking on the "1 Player" option in the main menu, for the sake of exploration. Most of the menus won't work though, since their assets are not present in this build.

XX corresponds to the ID of the section (menu) to go to (see the links below for a list of all possible sections).

Sources and references#


  1. WIS-009 hard drive dump information↩︎
  2. For a Wii disc partition, every sector (0x4000 bytes) is hashed (save for the disc header), and signed.
    Those hashes are placed into their own hash tables, which are then hashed and placed before the actual start of the data.
    Then, that entire area is hashed and the hash placed in the TMD, which is signed.

    If any sector is tampered with, the DI driver in IOS will return an error when trying to read it.
    ↩︎
  3. Example Wii kiosk↩︎
  4. Wii kiosk hardware↩︎
  5. List of section (menu) and page (screen) identifiers in the retail builds, for comparison.↩︎
  6. List of values returned by DVDGetDriveStatus.↩︎

Sources#

Information and metadata per build

References#