Happy 303-Day! Get 30% off ABL3 or any plug-in (including bundles). Valid until March 30!
From the TR-909 service manual:
F0 41 51 F7 F0 Exclusive status 41 Roland ID # 51 Operation Code F7 EOX (End of Exclusive)
F0 41 52 01 4n [DATA...] ss F7 F0 Exclusive status 41 Roland ID # 52 Operation code 01 Format type 4n Block n (n = 0..15) 0x Low nibble of byte 0 0y High nibble of byte 0 ... 0x Low nibble of byte 255 0y High nibble of byte 255 ss Checksum (7 bits, high bit is 0) F7 EOX (End of Exclusive)
F0 41 53 F7 F0 Exclusive status 41 Roland ID # 53 Operation code F7 EOX (End of Exclusive)
4. Repeat (2) and (3) increasing Block # until n = 15.
All the nibbles can be collected into a linear chunk of data of size 4096 bytes, which makes up the whole memory for the bank.
A bank has 48 patterns split into three groups (that is 16 patterns per group).
Each pattern has 32 bytes of rhythm data (PATTERN DATA) and 2 bytes of timing (PATTERN TIMING).
The rhythm data controls which instrument will sound on each step encoded into bitfields as described below.
Two bytes are needed for each step, and these are found for group (0-2), pattern (0-15) and step (0-15):
mmllssbb
zyxxcrhh
????tttt
For bb, ss, ll, mm, hh:
01: Accent 10: Normal 00: Off 11: Flam
For xx (HiHat):
01: Accent Closed 10: Normal Closed 11: Open Hihat 00: Off
Pattern timing info starts at 3968 (F80) and uses two bytes for each pattern, which can be found at:
| Byte | Bitfield | Parameters |
|---|---|---|
| Byte 1 | ?cssxxxx |
xxxx: Length (0-15 for lengths 1-16) ss: Prescale (0-3) c: Chain (1=On, 0=Off) - determines if pattern is chained to next |
| Byte 2 | ?bbb?aaa |
aaa: Shuffle (0-6 for amount 1-7) bbb: Flam (0-7 for amount 1-8) ?: Unknown or not used |
| Offset (Dec) | Hex | Content |
|---|---|---|
| 0 | (0) | pattern 1 (group 1) |
| 16 | (10) | pattern 2 (group 1) |
| 32 | (20) | pattern 3 (group 1) |
| 48 | (30) | pattern 4 (group 1) |
| 64 | (40) | pattern 5 (group 1) |
| ... | ... | ... |
| 240 | (F0) | pattern 16 (group 1) |
| 1024 | (400) | pattern 1 (group 2) |
| ... | ... | ... |
| 1264 | (4F0) | pattern 16 (group 2) |
| 2048 | (800) | pattern 1 (group 3) |
| ... | ... | ... |
| 2288 | (8F0) | pattern 16 (group 3) |
| Offset (Dec) | Hex | Content |
|---|---|---|
| 3968 | (F80) | ssssxxxx pattern 1 length |
| 3969 | (F81) | bbbbaaaa pattern 1 flam/shuffle |
| 3970 | (F82) | ssssxxxx pattern 2 |
| 3971 | (F83) | bbbbaaaa pattern 2 |
| ... | ... | ... |
| 4062 | (FDE) | ssssxxxx pattern 48 |
| 4063 | (FDF) | bbbbaaaa pattern 48 |
| Offset (Dec) | Hex | Content |
|---|---|---|
| 3072 | (C00) | hhhh???? (hhhh = pattern 0-15, ???? = don't care) |
| ... | ... | ... |
| 3967 | (F7F) | End of Track Data |
This site uses cookies. Privacy Policy
©audiorealism 2013-2026. All Rights Reserved
Tools for Techno, House, Rave and Hardcore producers