Music System
Found on:
Encoding:
Data/Song Loader
Encoding:
"Music System"
Loader files:
ROM Header
Only Filename
ROM Data
Turbo loader
Application LoaderOnly Filename
ROM Data
Turbo loader
Encoding:
Endianess:MSbF
Threshold:0x01A9
Lead-in:7 x 0x0F
Sync:0xB0
Byte:8 bits
0-bit:Short
Structure:Threshold:0x01A9
Lead-in:7 x 0x0F
Sync:0xB0
Byte:8 bits
0-bit:Short
Header:No
Checksum:Yes
Checksum:Yes
Data/Song Loader
Encoding:
Endianess:LSbF
Threshold:0x01A2
Lead-in:256 x 0x01
Sync:None
Byte:8-16 bits
0-bit:Long
Structure:Threshold:0x01A2
Lead-in:256 x 0x01
Sync:None
Byte:8-16 bits
0-bit:Long
Header:Yes
Checksum:Yes
Checksum:Yes
Application Loader:
Checksum:
EOR of all data bytes including checksum byte afer data should cancel out to 0x00.
Data/Song Loader:
Data:
0-bits are long and 1-bits are short. All short bits are duplicated.
So a 0x00 byte will be 8 pulses, while a 0xff byte will be 16 pulses.
Structure:
- Lead-in
- Header
- Lead-in
- Data header
- Data area #1
- Lead-in
- Data header
- Data area #2
Header:
00-06 Signature "CMSTAPE"
07-0d Song name
0e " " (Single space)
0f-16 Artist name(?)
Data header:
00-04 Signature "BYTES"
Data area #1:
Always loads to 0xc600 - 0xc7ac (exclusive).
Last two bytes of this data are the end address of the next part, low/high order, exclusive.
Data area #2:
Load address is always 0x5400.
Checksum:
Sum of all data bytes within a data area, excluding data header.
When adding the bytes they should all be +1.
Checksum:
EOR of all data bytes including checksum byte afer data should cancel out to 0x00.
Data/Song Loader:
Data:
0-bits are long and 1-bits are short. All short bits are duplicated.
So a 0x00 byte will be 8 pulses, while a 0xff byte will be 16 pulses.
Structure:
- Lead-in
- Header
- Lead-in
- Data header
- Data area #1
- Lead-in
- Data header
- Data area #2
Header:
00-06 Signature "CMSTAPE"
07-0d Song name
0e " " (Single space)
0f-16 Artist name(?)
Data header:
00-04 Signature "BYTES"
Data area #1:
Always loads to 0xc600 - 0xc7ac (exclusive).
Last two bytes of this data are the end address of the next part, low/high order, exclusive.
Data area #2:
Load address is always 0x5400.
Checksum:
Sum of all data bytes within a data area, excluding data header.
When adding the bytes they should all be +1.