WT588D binary format - Kyuchumimo/Micro-Joy-Home-Video-Computer GitHub Wiki

  • All integer values are unsigned and written in "Intel" byte order (Little-Endian), so for example 0x12345678 is written as 0x78 0x56 0x34 0x12.
0x00002 : Control Mode
            0x02: One wire serial mode
            0x03: Three wire serial mode
            0x04: MP3 Mode
            0x05: Button mode
            0x06: Two line serial mode (WT588S only)
            0x08: 3 x 8 Matrix button mode
            0x0B: Parallel port mode
0x00004 : Sound Output
            0x00: DAC
            0x01: PWM
0x00006 : BUSY Mode
            0x00: LOW
            0x01: HIGH
0x00007 : Pull High Resistor
            0x00: NO Pull High Resistor
            0x01: Pull High Resistor
0x00008 : One Line / Key / Parallel control mode Key1 function
            0x00: No Function
            0x01: Edge retrigger
            0x02: Edge no retrigger
            0x03: level hold loop
            0x04: level loop
            0x05: on/off
            0x06: next unloop
            0x07: prev unloop
            0x08: next loop
            0x09: prev loop
            0x0A: level unloop
            0x0B: Pause
            0x0C: VOL +
            0x0D: Vol -
            0x0E: Stop
0x00009 : One Line / Three Line / Key / Parallel control mode Key1 voice address
            0x00~0xDB
0x0000A : One Line / Key control mode Key2 function
0x0000B : One Line / Key control mode Key2 voice address
0x0000C : One Line / Key control mode Key3 function
0x0000D : One Line / Key control mode Key3 voice address
0x0000E : Key control mode Key4 function
0x0000F : Key control mode Key4 voice address
0x00010 : One Line / Key control mode Key5 function
0x00011 : One Line / Three Line / Key control mode Key5 voice address
0x00012 : One Line / Key control mode Key6 function
0x00013 : One Line / Three Line / Key control mode Key6 voice address
0x00014 : One Line / Key control mode Key7 function
0x00015 : One Line / Three Line / Mp3 / Key control mode Key7 voice address
0x00016 : One Line / Key control mode Key8 function
0x00017 : One Line / Three Line / Mp3 / Key control mode Key8 voice address
0x00018 : One Line / Key control mode Key9 function
0x00019 : One Line / Three Line / Mp3 / Key control mode Key9 voice address
0x0001A : One Line / Key control mode Key10 function
0x0001B : One Line / Three Line / Mp3 / Key control mode Key10 voice address
0x0001C : Off by one most significant voice address
0x0001E : FLASH memory density
            0x02: 2 Mbit
            0x03: 4 Mbit
            0x04: 8 Mbit
            0x05: 16 Mbit
            0x06: 32 Mbit
            0x07: 64 Mbit (WT588S only)
            0x08: 128 Mbit (WT588S only)
0x0010A : 3 x 8 Matrix control mode Key1 voice address
            0x00~0xDB
...
0x00121 : 3 x 8 Matrix control mode Key24 voice address
0x00130~0x0022F : Voice 00H group
            Each voice group will occupy 3 bytes here, so you can assign up to 85 voices.

            44 00 aa

            aa: 0x00~0xDB
...
0x15D10~0x15E0F : Voice dbH group
0x17000~0x17007 : Loaded Wav No. 001 data stream offset
            Each data stream offset will occupy 8 bytes here, so you can load up to 510 voices.
            The WT588D microcontroller can only access up to 32 MBit (0x3FFFFF) of memory due to the range
            of supported values.

            XX XX ab cd ef 88 01 FF

            brief explanation:
            * Nibbles c and e are always greater than or equal to 8.
            * c becomes c minus 8 if bit 0 of f is equal to 0.
            * f becomes (f >> 1) and, in turn, becomes (f >> 1) plus 8 if bit 0 of e is equal to 1.
            * e becomes (e - 8) >> 1

            ((e - 8) >> 1) << 20 | (((f>>1) + (8 * ((e) & 0x01))) & 0x0F) << 16 | (((c) - (8 * (1 - ((f) & 0x01)))) & 0x0F) << 12 | d << 8 | a << 4 | b
...
0x17FE8~0x17FEF : Loaded Wav No. 510 data stream offset
0x17FF0~0x17FF3 : "WMdM" ident
0x17FF4~0x17FF5 : Loaded Wav No. 001 sample rate
            0x7017: 6kHz
            0x401F: 8kHz
            0x1027: 10kHz
            0xE02E: 12kHz
            0xB036: 14kHz
            0x803E: 16kHz
            0x5046: 18kHz
            0xF055: 22kHz
⚠️ **GitHub.com Fallback** ⚠️