If you appreciate the work done within the wiki, please consider supporting The Cutting Room Floor on Patreon. Thanks for all your support!

Kazoku Minna no Nouryoku Trainer

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Kazoku Minna no Nouryoku Trainer

Developer: Metro
Publisher: Sega Toys
Platforms: Sega Beena
Released in JP: November 2005


DebugIcon.png This game has debugging material.
LevelSelectIcon.png This game has a hidden level select.


Flow Selector

SegaBeena-KazokuMinnaNoNouryokuTrainer-FlowSelector.png

This unreferenced debug menu allows the player to jump to a specific scene. However, it's missing some setup routine to restore video output after being loaded. This can be workaround by following these steps in MAME's debugger:

  • Set a breakpoint with bpset 800051ca;
  • Set the next screen index to load with do r0=0x1e;
  • Wait until the breakpoint is hit, then resume execution with "Run";
  • Open a memory view, then set 0x40000010 = 0x00003207, and 0x40000030 = 0x00000000;

MIDI Test

Another feature used for playing MIDI instruments would likely be reachable from this screen, but was disabled. We can restore it with patch 0x2cb04 = 02 80 94 d0. Afterwards, select the first NULL entry to load this test.

While there's no graphical output, we can observe its state on these memory addresses:

  • 0xc00d0508 = Work RAM variable for instrument index;
  • 0xc00d050c = Work RAM variable for note number;
  • 0x7000000c = I/O address for sending MIDI event;

Controls:

Right/Left Increment / Decrement note number, and send "note off" event 0x8cnn7F00
(where "c" is either channel 0 or 9, "nn" is the note number, and note velocity is hardcoded to 0x7F);
Up/Down Increment / Decrement instrument index, and send "program change" event 0xCcnn0000
(where "c" is either channel 0 or 9, and "nn" is the instrument);
Any Red Button Send "note on" event 0x9cnn7F00
(where "c" is either channel 0 or 9, "nn" is the note number, and note velocity is hardcoded to 0x7F);
Left + Right Red Button Return to Flow Selector screen

A list of instruments for each tested channel is stored at file offset 0x2d380. While it seems some instruments are missing on this list, they actually match all available instruments on the console's MIDI synthesizer. Attempting to play other instruments on hardware will just play the next available instrument.

; Channel 0 instruments
8002d380 00 00 00 00     ddw        0h
8002d384 80 02 d0 a0     addr       "00Piano1"
8002d388 00 00 00 01     ddw        1h
8002d38c 80 02 d0 ac     addr       "BPiano1"
8002d390 00 00 00 02     ddw        2h
8002d394 80 02 d0 b4     addr       "EGPiano1"
8002d398 00 00 00 04     ddw        4h
8002d39c 80 02 d0 c0     addr       "EP1"
8002d3a0 00 00 00 06     ddw        6h
8002d3a4 80 02 d0 c4     addr       "Harpsichord"
8002d3a8 00 00 00 0a     ddw        Ah
8002d3ac 80 02 d0 d0     addr       "MBOX"
8002d3b0 00 00 00 0c     ddw        Ch
8002d3b4 80 02 d0 d8     addr       "Marimba"
8002d3b8 00 00 00 0d     ddw        Dh
8002d3bc 80 02 d0 e0     addr       "Xylophone"
8002d3c0 00 00 00 10     ddw        10h
8002d3c4 80 02 d0 ec     addr       "DOrg"
8002d3c8 00 00 00 13     ddw        13h
8002d3cc 80 02 d0 f4     addr       "churchOrg"
8002d3d0 00 00 00 14     ddw        14h
8002d3d4 80 02 d1 00     addr       "ReedOrg"
8002d3d8 00 00 00 16     ddw        16h
8002d3dc 80 02 d1 08     addr       "Harmonica"
8002d3e0 00 00 00 18     ddw        18h
8002d3e4 80 02 d1 14     addr       "NylonGuitar"
8002d3e8 00 00 00 1b     ddw        1Bh
8002d3ec 80 02 d1 20     addr       "CleanGuitar"
8002d3f0 00 00 00 1c     ddw        1Ch
8002d3f4 80 02 d1 2c     addr       "sGuitar"
8002d3f8 00 00 00 21     ddw        21h
8002d3fc 80 02 d1 34     addr       "FingerBass"
8002d400 00 00 00 22     ddw        22h
8002d404 80 02 d1 40     addr       "PickBass"
8002d408 00 00 00 24     ddw        24h
8002d40c 80 02 d1 4c     addr       "SlapBass1"
8002d410 00 00 00 25     ddw        25h
8002d414 80 02 d1 58     addr       "SlapBass2"
8002d418 00 00 00 28     ddw        28h
8002d41c 80 02 d1 64     addr       "Violin"
8002d420 00 00 00 2a     ddw        2Ah
8002d424 80 02 d1 6c     addr       "Cello"
8002d428 00 00 00 2b     ddw        2Bh
8002d42c 80 02 d1 74     addr       "ContraB"
8002d430 00 00 00 30     ddw        30h
8002d434 80 02 d1 7c     addr       "Strings1"
8002d438 00 00 00 31     ddw        31h
8002d43c 80 02 d1 88     addr       "Strings2"
8002d440 00 00 00 32     ddw        32h
8002d444 80 02 d1 94     addr       "Syn.Strings1"
8002d448 00 00 00 33     ddw        33h
8002d44c 80 02 d1 a4     addr       "Syn.Strings2"
8002d450 00 00 00 38     ddw        38h
8002d454 80 02 d1 b4     addr       "Trumpet"
8002d458 00 00 00 39     ddw        39h
8002d45c 80 02 d1 bc     addr       "Trombone"
8002d460 00 00 00 3c     ddw        3Ch
8002d464 80 02 d1 c8     addr       "FH"
8002d468 00 00 00 41     ddw        41h
8002d46c 80 02 d1 cc     addr       "AltoSax"
8002d470 00 00 00 44     ddw        44h
8002d474 80 02 d1 d4     addr       "Oboe"
8002d478 00 00 00 45     ddw        45h
8002d47c 80 02 d1 dc     addr       "EnglishHorn"
8002d480 00 00 00 46     ddw        46h
8002d484 80 02 d1 e8     addr       "Bassoon"
8002d488 00 00 00 47     ddw        47h
8002d48c 80 02 d1 f0     addr       "Clarinet"
8002d490 00 00 00 48     ddw        48h
8002d494 80 02 d1 fc     addr       "Piccolo"
8002d498 00 00 00 49     ddw        49h
8002d49c 80 02 d2 04     addr       "Flute"
8002d4a0 00 00 00 4f     ddw        4Fh
8002d4a4 80 02 d2 0c     addr       "Ocarina"
8002d4a8 00 00 00 50     ddw        50h
8002d4ac 80 02 d2 14     addr       "SqrWave"
8002d4b0 00 00 00 51     ddw        51h
8002d4b4 80 02 d2 1c     addr       "SawWave"
8002d4b8 00 00 00 52     ddw        52h
8002d4bc 80 02 d2 24     addr       "L0"
8002d4c0 00 00 00 54     ddw        54h
8002d4c4 80 02 d2 28     addr       "L3"
8002d4c8 00 00 00 55     ddw        55h
8002d4cc 80 02 d2 2c     addr       "L4"
8002d4d0 00 00 00 56     ddw        56h
8002d4d4 80 02 d2 30     addr       "L5"
8002d4d8 00 00 00 57     ddw        57h
8002d4dc 80 02 d2 34     addr       "Svib"
8002d4e0 00 00 00 58     ddw        58h
8002d4e4 80 02 d2 3c     addr       "L880"
8002d4e8 00 00 00 61     ddw        61h
8002d4ec 80 02 d2 44     addr       "Fx2"
8002d4f0 00 00 00 62     ddw        62h
8002d4f4 80 02 d2 48     addr       "L6"
8002d4f8 00 00 00 67     ddw        67h
8002d4fc 80 02 d2 4c     addr       "Fx"
8002d500 00 00 00 75     ddw        75h
8002d504 80 02 d2 50     addr       "MT"
8002d508 00 00 00 79     ddw        79h
8002d50c 80 02 d2 54     addr       "noise"
; Channel 9 instruments
8002d510 00 00 00 23     ddw        23h
8002d514 80 02 d2 5c     addr       "BassDrum1"
8002d518 00 00 00 24     ddw        24h
8002d51c 80 02 d2 68     addr       "BassDrum2"
8002d520 00 00 00 25     ddw        25h
8002d524 80 02 d2 74     addr       "SideStick"
8002d528 00 00 00 26     ddw        26h
8002d52c 80 02 d2 80     addr       "Snare1"
8002d530 00 00 00 27     ddw        27h
8002d534 80 02 d2 88     addr       "Snare",81h,"L"
8002d538 00 00 00 28     ddw        28h
8002d53c 80 02 d2 90     addr       "Snare2"
8002d540 00 00 00 29     ddw        29h
8002d544 80 02 d2 98     addr       "FloorTom_L"
8002d548 00 00 00 2a     ddw        2Ah
8002d54c 80 02 d2 a4     addr       "Hi_Hat Closed"
8002d550 00 00 00 2b     ddw        2Bh
8002d554 80 02 d2 b4     addr       "FloorTom_H"
8002d558 00 00 00 2c     ddw        2Ch
8002d55c 80 02 d2 c0     addr       "Hi_Hat Pedal"
8002d560 00 00 00 2d     ddw        2Dh
8002d564 80 02 d2 d0     addr       "Low Tom"
8002d568 00 00 00 2e     ddw        2Eh
8002d56c 80 02 d2 d8     addr       "Hi_Hat Open"
8002d570 00 00 00 2f     ddw        2Fh
8002d574 80 02 d2 e4     addr       "Mid Tom L"
8002d578 00 00 00 30     ddw        30h
8002d57c 80 02 d2 f0     addr       "Mid Tom H"
8002d580 00 00 00 31     ddw        31h
8002d584 80 02 d2 fc     addr       "Crash Chimbal1"
8002d588 00 00 00 32     ddw        32h
8002d58c 80 02 d3 0c     addr       "High Tom"
8002d590 00 00 00 33     ddw        33h
8002d594 80 02 d3 18     addr       "Ride Cymbal"
8002d598 00 00 00 34     ddw        34h
8002d59c 80 02 d3 24     addr       "Chinese Cymbal1"
8002d5a0 00 00 00 35     ddw        35h
8002d5a4 80 02 d3 34     addr       "Ride Cymbal Cup"
8002d5a8 00 00 00 36     ddw        36h
8002d5ac 80 02 d3 44     addr       "Tambourine"
8002d5b0 00 00 00 37     ddw        37h
8002d5b4 80 02 d3 50     addr       "Splash Cymbal"
8002d5b8 00 00 00 38     ddw        38h
8002d5bc 80 02 d3 60     addr       "Cowbell"
8002d5c0 00 00 00 39     ddw        39h
8002d5c4 80 02 d3 68     addr       "Crash Cymbal 2"
8002d5c8 00 00 00 7f     ddw        7Fh
8002d5cc 80 02 d3 78     addr       "Noise"