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

Keyboard Pico: Kantan Waku Waku Keyboard

From The Cutting Room Floor
Jump to navigation Jump to search

Title Screen

Keyboard Pico: Kantan Waku Waku Keyboard

Developer: Sega
Publisher: Sega
Platform: Sega Pico
Released in JP: 1997


DebugIcon.png This game has debugging material.


An educational game for teaching the player how to type, using the Keyboard Pico.

Test Mode

A debug mode exists to read metadata and key presses from the keyboard.

Elementary, my dear Cactus.
This needs some investigation.
Discuss ideas and findings on the talk page.
Specifically: Needs to be verified in real hardware

To activate this debug mode, the Storyware must be set to page 6, and the keyboard needs to be connected to it. Then, power on the game while holding down the red button in the pad.

The game checks the read page 6 value against 0x2a (bits 0b00101010) on the compare instruction at address 000006e4, instead of the usual value 0x3f (bits 0b00111111). The bits for 0x2a cannot be set by flipping pages, since those pages will only cover page sensors in a sequential manner. Presumably, this masked value is set by manually covering page sensors with other objects.

The following sets of 4 bits of data are read by this test mode:

Index Data Notes
0x0 M5ID Always 0b0001
0x1 M6ID Always 0b0011
0x2 Data size Always 0b0100
0x3 Pad 1 RLDU This and the 2 sets below seem to be for a Mega Drive 6-button joypad. Although the Pico pad has a joystick and 2 buttons, these aren't mapped to this data
0x4 Pad 2 SACB See Pad 1 notes
0x5 Pad 3 RXYZ See Pad 1 notes
0x6 L& Keyboard type Unknown, there's logic to check for value 0b111 but without any observable effect
0x7 Caps / Num / Scroll Lock 1 of 3 least significant bits is set when the corresponding lock is active
0x8 Make / Break code Either 0b1110 or 0b0111 is set to register key down or key up
0x9 Data 7654 Most significant 4 bits of key code
0xa Data 3210 Least significant 4 bits of key code
0xb Unknown
0xc Unknown

Alternatively, for emulators without support for the Keyboard Pico, the page check can be modified to instead test for the Storyware closed (page 0), using patch 000006e6 = 0000. Likewise, the red button needs to be held down during power on. However, this causes the test to fail after loading, since the fixed bits will not be matched.

(Source: QUFB)