VOGONS


First post, by Snover

User metadata
Rank l33t++
Rank
l33t++

Operating Manual and Schematics have been ordered, should ship out Monday or Tuesday and be here by the end of next week.

Yes, it’s my fault.

Reply 2 of 17, by vladr

User metadata
Rank Oldbie
Rank
Oldbie
Nicht Sehr Gut wrote:

...and...? What are your intentions? Send it to Vlad?

Scan it, I assume, *then* send it to me. 😜

Snover: I don't think it should be posted anywhere, but should circulate internally, or else Mark Glinsky will hate you forever, and ever, and ever.

redrum ... redrum ... redrum

V.

Reply 3 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++

Received these today. It's kind of annoying I can't find a decent program to stitch the images together with without leaving a watermark, but oh well.

And anyway, Operating Manual == User Manual. (Told ya so, 😉)

Yes, it’s my fault.

Reply 6 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++

The schematics are 11"x17". That's why I need to stitch them together.

Canadacow, you make me laugh. But anyway, it does look like there's some info here that'll do you good. I'll OCR it (we'll see how good ScanSoft really is, this shit is tough to read).

Yes, it’s my fault.

Reply 8 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++

No no, just because you're like "PCM PARTIALS! PCM PARTIALS! PCM PAARRRTTTIIAALLSSSSSSS!!!" and it's kinda amusing.

Notes: Copied verbatim, all errors are actually in the documentation and not me copying it
Note2: ScanSoft sucks, had to do this all manually, blah

Anyway, here's page 1 of 3 (note: OEM/DOS codepage):

MT-32   MIDI IMPLEMENTATION     Version 1.00     Jul. 9 1987

--- MT-32 MIDI IMPLEMENTATION ---
Version 1.00
Jul. 9 1987

1. TRANSMITTED DATA
-- ----------------

þ Bypassed message

In Overflow Assign mode, the following MIDI In messages are
sent to MIDI Out as

ù Channel Voice messages except Note On
ù System Exclusive message whose manufacturer ID# is 41H
ù Odd Note On(s) left unassigned any voice because
all assignable voices are engaged.

þ Created message

System exclsive

Status
------
F0H :System Exclusive
F7H :EOX(End of System Exclusive)


See "3.EXCLUSIVE COMMUNICATIONS" for details.

2. RECOGNIZED DATA
-- ---------------

þ Note event

Note off

Status Second Third
------ ------ -----
8nH kkH vvH
9nH kkH 00H

kkH : Note number 0CH - 6CH ( 12 - 108 )
vvH : ignored

Note on

Status Second Third
------ ------ -----
9nH kkH vvH

kkH : Note number 0CH - 6CH ( 12 - 108 )
vvH : Velocity 1H - 7FH ( 1 - 127)

þ Control change

Continuous controller (14 bits)

Status Second Third
Show last 284 lines
       ------          ------          -----
BnH mmH vvH

Modulation mmH = 01H vvH = 0H - 7FH ( 0 - 127)

Volume mmH = 07H vvH = 0H - 7FH ( 0 - 127)

Panpot mmH = 0AH vvH = 0H - 7FH ( 0 - 127)

Expression mmH = 0BH vvH = 0H - 7FH ( 0 - 127)

Continuous controller (7 bits)

Status Second Third
------ ------ -----
BnH mmH vvH

Hold 1 mmH = 40H vvH = 0H - 3FH ( 0 - 63) OFF
40H - 7FH ( 64 - 127) ON

Resets all controllers
mmH = 79h vvH = 0

þ Program change

Status Second
------ ------
CnH ppH

ppH : Program number 0H - 7FH (0 - 127)

Program Change changes Patch.

þ Pitch bender

Status Second Third
------ ------ -----
EnH llH mmH // could be 11H

llH : 0H - 7FH (0 - 127) // could be 11H
maH : 0H - 7FH (0 - 127)

þ Channel mode message

Status Second Third
------ ------ -----
BnH mmH 00H

mmH : All Notes Off 7BH (123)
Omni Off 7CH (124)
// photocopier cut this off

þ Active sensing

Status
------
FEH

þ System exclusive

Status
------
F0H :System Exclusive
F7H :EOX(End of System Exclusive)

3. EXCLUSIVE COMMUNICATIONS
-- ------------------------

Model-ID# of MT-32 is 16H.

MT-32 can receive/send some of the EXCLUSIVE MESSAGEs in
the D-50(Roland synthesizer) format.

Model-ID# of D-50 is 14H.

Device-ID# is the basic channels of the each part of Units of
the MT-32

Units can be changed in "UNIT# SETUP MODE".
Device ID numbers, 0-31, are displayed on the LCD as 1-32,
respectively.

þ One way communication

Request RQ1 11H

When the RQ1 received contains a start address listed in
Parameter base address, and address size is 1 or more,
MT-32 sends the corresponding data.

In Overflow Assign mode, MT-32 does not recognize RQ1,
but passes the message to MIDI OUT.

MT-32 won't transmit RQ1 in the default mode.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H(14H) Model - ID ( MT-32(D-50) )
11H Command - ID ( RQ1 ) ù3-1
aaH Address MSB
aaH Address ù3-2
aaH Address LSB
ssH Size MSB
ssH Size
ssH Size LSB
sum Checksum
F7H EOX ( End of Exclusive )

Data set DT1 12H

When the DT1 contains a start address as defined in RQ1 above,
MT-32 stores the data into that memory location.

MT-32 sends this message upon receiving RQ1 in the default mode.

Additional functions in Overflow Assign mode:
MT-32 retransmits DT1 while it processes the DT1 data
as necessary.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H(14H) Model - ID ( MT-32(D-50) )
12H Command - ID ( DT1 ) ù3-1
aaH Address MSB
aaH Address ù3-2
aaH Address LSB
ddH Data ù3-3
:
sum Checksum
F7H EOX ( End of Exclusive )

þ Handshaking communication

Want to send data WSD 40H

Upon receiving WSD, MT-32 sends ACE and waits for DATA SET message.
However, if any part is reproducing sound, MT-32 sends RJC.

In Overflow Assign mode, MT-32 relays this message to downstream.

In the default mode, MT-32 won't send this message.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H Model - ID ( MT-32 )
// photocopier cut this off

Request data RQD 41H

When the RQD contains a start address as defined in RQ1 above,
MT-32 stores the data into that memory location. However, if
any part is reproducing sound, MT-32 sends RJC.

In Overflow Assign mode, MT-32 relays this message to downstream
without recognizing it.

In the default mode, MT-32 won't send this message.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H Model - ID ( MT-32 )
aaH Address MSB
aaH Address ù3-2
aaH Address LSB
ssH Size MSB
ssH Size
ssH Size LSB
sum Checksum
F7H EOX ( End of Exclusive )

Data set DAT 42H

When the DAT contains a start address as defined in RQ1 above,
MT-32 stores the data into that memory location.However, if
any part is reproducing sound, MT-32 sends RJC.

In the default mode, MT-32 sends this data upon receipt of RQD.

In Overflow Assign mode, MT-32 relays this message to downstream
without recognizing it.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H Model - ID ( MT-32 )
aaH Address MSB
aaH Address ù3-2
aaH Address LSB
ddH Data ù3-3
:
sum Checksum
F7H EOX ( End of Exclusive )

Acknowledge ACE 43H

When MT-32 receives this message after sending DAT, it sends the
next data.
When MT-32 receives this message after sending EOD, it ends the
current handshaking.

MT-32 sends ACE when it receives WSD, RQD or DAT in the default
mode with no part reproducing sound and with data checksum proves
correct.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H Model - ID ( MT-32 )
43H Command - ID ( ACE )
F7H EOX ( End of Exclusive )

End of data EOD 45H

Upon receiving this message, it sends ACE and ends the current
handshaking.

After finishing the data set(DAT) transmission in the default
mode, MT-32 sends this message.

In Overflow Assign mode, MT-32 relays this message to downstream
without recognizing the contents.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H Model - ID ( MT-32 )
45H Command - ID ( EOD )
F7H EOX ( End of Exclusive )

Communication error ERR 4EH

If checksum doesn't agree ( failure in data reception), MT-32
sends this message.

When MT-32 receives this message in the default mode, it sends
the latest message again.

In Overflow Assign mode, MT-32 relays this message to downstream
without recognizing it.
// photocopier cut this off

Rejection RJC 4FH

If MT-32 receives WSD while it is reproducing sound, it sends RJC.

When MT-32 receives this message, it ends the current handshaking.

In Overflow Assign mode, MT-32 relays this message to downstream
without recognizing it.

Byte Description
------ --------------------------
F0H Exclusive status
41H Roland - ID
DEV Device - ID
16H Model - ID ( MT-32 )
4FH Command - ID ( RJC )
F7H EOX ( End of Exclusive )

Notes :
ù3-1 Both model-IDs are supported. Addresses & parameters are described
in section 4 for model-ID 16H(MT-32) and in section 5 for model-ID
14H(D-50,PG-1000).
ù3-2 Address & Size should be the address where data exist.
ù3-3 If the data is Partial Reserve Parameter, received data must
comprise all the parameters for being recognized.

Yes, it’s my fault.

Reply 9 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++

page 2 of 3

4.     Address mapping of parameters
-- -----------------------------

Addresses are shown in Hexa-decimal, while numbers are given
in 7 bits.

Address | MSB | | LSB
==========+===========+===========+===========
binary | 0aaa aaaa | 0bbb bbbb | 0ccc cccc
7 bit Hex | AA | BB | CC

The actual address of a parameter in a block is the sum of the
start addresses of each block and one or more offset address.
That is, prameters marked by ù4-1 have two offset addresses :
one in the table under NOTE ù4-1 and the other in Common parameter
table or in Partial parameter table.

þ Parameter base address

Temporary area ( Accessible on each basic channel )

+---------------------------------------------------------------+
| Start | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00 00 | Patch Temp Area (part) |
| 01 00 00 | Setup Temp Area (rhythm part) |
| 02 00 00 | Timbre Temp Area(part) ù4-1 |
+---------------------------------------------------------------+

Whole part ( Accessible on UNIT# )

+---------------------------------------------------------------+
| Start | |
| address | Description |
|-----------+---------------------------------------------------|
| 03 00 00 | Patch Temp Area ( part 1 ) |
| 03 00 10 | Patch Temp Area ( part 2 ) |
| : | |
| 03 00 60 | Patch Temp Area ( part 7 ) |
| 03 00 70 | Patch Temp Area ( part 8 ) |
| 03 01 00 | Patch Temp Area ( rhytm part ) |
| 03 01 10 | Setup Temp Area (rhythm part) |
|-----------+---------------------------------------------------|
| 04 00 00 | Timbre Temp Area( part 1 ) ù4-1 |
| 04 01 75 | Timbre Temp Area( part 2 ) ù4-1 |
| : | |
| 04 0b 44 | Timbre Temp Area( part 7 ) ù4-1 |
| 04 0d 3a | Timbre Temp Area( part 8 ) ù4-1 |
|-----------+---------------------------------------------------|
| 05 00 00 | Patch Memory #1 |
| 05 00 08 | Patch Memory #2 |
| : | |
| 05 07 70 | Patch Memory #127 |
| 05 07 78 | Patch Memory #128 |
|-----------+---------------------------------------------------|
| 08 00 00 | Timbre Memory #1 ù4-1 |
| 08 02 00 | Timbre Memory #2 ù4-1 |
| : | |
| 08 7C 00 | Timbre Memory #63 ù4-1 |
Show last 292 lines
       | 08 7E 00  |   Timbre Memory #64                ù4-1           |
|-----------+---------------------------------------------------|
| 10 00 00 | System area |
|-----------+---------------------------------------------------|
| 20 00 00 | Display ù4-2 |
|-----------+---------------------------------------------------|
| 7F xx xx | All parameter reset ù4-3 |
+---------------------------------------------------------------+

Notes :
ù4-1
Structure of "Timbre Temp/Memory" area is as follows.
+---------------------------------------------------------------+
| Sub start | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00 00 | Common parameter |
| 00 00 0E | Partial parameter (for Partial# 1) |
| 00 00 48 | Partial parameter (for Partial# 2) |
| 00 01 02 | Partial parameter (for Partial# 3) |
| 00 01 3C | Partial parameter (for Partial# 4) |
+---------------------------------------------------------------+

ù4-2 The data sent to this address are recognized as the string
of letters in ASCII CODE, and displayed on MT-32 LCD. '
// photocopier cut this off?

þ Common parameter ù4-4

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00H | 0aaa aaaa | TONE NAME 1 32 - 127 |
| : | | (ASCII) |
| 09H | 0aaa aaaa | TONE NAME 10 |
|-----------+-------------+-------------------------------------|
| 0AH | 0000 aaaa | Structure of Partial# 1 & 2 0 - 12 |
| | | (1 - 13)|
| 0BH | 0000 aaaa | Structure of Partial# 3 & 4 0 - 12 |
| | | (1 - 13)|
|-----------+-------------+-------------------------------------|
| 0CH | 0000 aaaa | PARTIAL NOTE 0 - 15 |
| | | (0000 - 1111) |
|-----------+-------------+-------------------------------------|
| 0DH | 0000 000a | ENV MODE 0 - 1 |
| | | (Normal,No sustain)|
|-----------+-------------+-------------------------------------|
| Total size | 00 00 0EH |
+---------------------------------------------------------------+

þ Partial parameter ù4-4

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0aaa aaaa | WG PITCH COARSE 0 - 96 |
| | | (C1,C2, - C9) |
| 00 01H | 0aaa aaaa | WG PITCH FINE 0 - 100 |
| | | (-50 - +50) |
| 00 02H | 0000 aaaa | WG PITCH KEYFOLLOW 0 - 16 |
| | | (-1,-1/2,-1/4,0,|
| | | 1/8,1/4,3/8,1/2,|
| | | 5/8,3/4,7/8,1, |
| | | 5/4,3/2,2,s1,s2)|
| 00 03H | 0000 000a | WG PITCH BENDER SW 0 - 1 |
| | | (OFF, ON) |
| 00 04H | 0000 000a | WG WAVEFORM 0 - 1 |
| | | (SQU, SAW) |
| 00 05H | 0aaa aaaa | WG PCM WAVE # 0 - 127 |
| | | (1 - 128) |
| 00 06H | 0aaa aaaa | WG PULSE WIDTH 0 - 100 |
| 00 07H | 0000 aaaa | WG PW VELO SENS 0 - 14 |
| | | (-7 - +7) |
|-----------+-------------+-------------------------------------|
| 00 08H | 0000 aaaa | P-ENV DEPTH 0 - 10 |
| 00 09H | 0aaa aaaa | P-ENV VELO SENS 0 - 100 |
| 00 0AH | 0000 0aaa | P-ENV TIME KEYF 0 - 100 |
| 00 0BH | 0aaa aaaa | P-ENV TIME 1 0 - 100 |
| 00 0CH | 0aaa aaaa | P-ENV TIME 2 0 - 100 |
| 00 0DH | 0aaa aaaa | P-ENV TIME 3 0 - 100 |
| 00 0EH | 0aaa aaaa | P-ENV TIME 4 0 - 100 |
| 00 0FH | 0aaa aaaa | P-ENV LEVEL 0 0 - 100 |
| | | (-50 - +50) |
| 00 10H | 0aaa aaaa | P-ENV LEVEL 1 0 - 100 |
| | | (-50 - +50) |
| 00 11H | 0aaa aaaa | P-ENV LEVEL 2 0 - 100 |
| | | (-50 - +50) |
| 00 12H | 0aaa aaaa | P-ENV SUSTAIN LEVEL 0 - 100 |
| | | (-50 - +50) |
| 00 13H | 0aaa aaaa | END LEVEL 0 - 100 |
| | | (-50 - +50) |
|-----------+-------------+-------------------------------------|
| 00 14H | 0aaa aaaa | P-LFO RATE 0 - 100 |
| 00 15H | 0aaa aaaa | P-LFO DEPTH 0 - 100 |
| 00 16H | 0aaa aaaa | P-LFO MOD SENS 0 - 100 |
|-----------+-------------+-------------------------------------|
| 00 17H | 0aaa aaaa | TVF CUTOFF FREQ 0 - 100 |
| 00 18H | 000a aaaa | TVF RESONANCE 0 - 30 |
| 00 19H | 0000 aaaa | TVF KEYFOLLOW 0 - 14 |
| | | (-1,-1/2,-1/4,0,|
| | | 1/8,1/4,3/8,1/2,|
| | | 5/8,3/4,7/8,1, |
| | | 5/4,3/2,2) |
| 00 1AH | 0aaa aaaa | TVF BIAS POINT/DIR 0 - 127 |
| | | (<1A - <7C >1A - >7C)|
| 00 1BH | 0000 aaaa | TVF BIAS LEVEL 0 - 14 |
| | | (-7 - +7) |
|-----------+-------------+-------------------------------------|
| 00 1CH | 0aaa aaaa | TVF ENV DEPTH 0 - 100 |
| 00 1DH | 0aaa aaaa | TVF ENV VELO SENS 0 - 100 |
| 00 1EH | 0000 0aaa | TVF ENV DEPTH KEYF 0 - 4 |
| 00 1FH | 0000 0aaa | TVF ENV TIME KEYF 0 - 4 |
| 00 20H | 0aaa aaaa | TVF ENV TIME 1 0 - 100 |
| 00 21H | 0aaa aaaa | TVF ENV TIME 2 0 - 100 |
| 00 22H | 0aaa aaaa | TVF ENV TIME 3 0 - 100 |
| 00 23H | 0aaa aaaa | TVF ENV TIME 4 0 - 100 |
| 00 24H | 0aaa aaaa | TVF ENV TIME 5 0 - 100 |
| 00 25H | 0aaa aaaa | TVF ENV LEVEL 1 0 - 100 |
| 00 26H | 0aaa aaaa | TVF ENV LEVEL 2 0 - 100 |
| 00 27H | 0aaa aaaa | TVF ENV LEVEL 3 0 - 100 |
| 00 28H | 0aaa aaaa | TVF ENV SUSTAIN LEVEL 0 - 100 |
|-----------+-------------+-------------------------------------|
| 00 29H | 0aaa aaaa | TVA LEVEL 0 - 100 |
| 00 2AH | 0aaa aaaa | TVA VELO SENS 0 - 100 |
| 00 2BH | 0aaa aaaa | TVA BIAS POINT 1 0 - 127 |
| | | (<1A - <7C >1A - >7C)|
| 00 2CH | 0000 aaaa | TVA BIAS LEVEL 1 0 - 12 |
| | | (-12 - 0) |
| 00 2DH | 0aaa aaaa | TVA BIAS POINT 2 0 - 127 |
| | | (<1A - <7C >1A - >7C)|
| 00 2EH | 0000 aaaa | TVA BIAS LEVEL 2 0 - 12 |
| | | (-12 - 0) |
|-----------+-------------+-------------------------------------|
| 00 2FH | 0000 0aaa | TVA ENV TIME KEYF 0 - 4 |
| 00 30H | 0000 0aaa | TVA ENV TIME V_FOLLOW 0 - 4 |
| 00 31H | 0aaa aaaa | TVA ENV TIME 1 0 - 100 |
| 00 32H | 0aaa aaaa | TVA ENV TIME 2 0 - 100 |
| 00 33H | 0aaa aaaa | TVA ENV TIME 3 0 - 100 |
| 00 34H | 0aaa aaaa | TVA ENV TIME 4 0 - 100 |
| 00 35H | 0aaa aaaa | TVA ENV TIME 5 0 - 100 |
| 00 36H | 0aaa aaaa | TVA ENV LEVEL 1 0 - 100 |
| 00 37H | 0aaa aaaa | TVA ENV LEVEL 2 0 - 100 |
| 00 38H | 0aaa aaaa | TVA ENV LEVEL 3 0 - 100 |
| 00 39H | 0aaa aaaa | TVA ENV SUSTAIN LEVEL 0 - 100 |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 3AH |
+---------------------------------------------------------------+

þ System area

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0aaa aaaa | MASTER TUNE 0 - 127 |
| | | (432.1Hz - 457.6Hz)|
|-----------+-------------+-------------------------------------|
| 00 01H | 0000 00aa | REVERB MODE 0 - 3 |
| | | (Room, Hall, Plate,|
| | | Tap delay) |
| 00 02H | 0000 0aaa | REVERB TIME 0 - 7 |
| | | (1 - 8) |
| 00 03H | 0000 0aaa | REVERB LEVEL 0 - 7 |
|-----------+-------------+-------------------------------------|
| 00 04H | 00aa aaaa | PARTIAL RESERVE (Part 1) 0 - 32 |
| 00 05H | 00aa aaaa | PARTIAL RESERVE (Part 2) 0 - 32 |
| 00 06H | 00aa aaaa | PARTIAL RESERVE (Part 3) 0 - 32 |
| 00 07H | 00aa aaaa | PARTIAL RESERVE (Part 4) 0 - 32 |
| 00 08H | 00aa aaaa | PARTIAL RESERVE (Part 5) 0 - 32 |
| 00 09H | 00aa aaaa | PARTIAL RESERVE (Part 6) 0 - 32 |
| 00 0AH | 00aa aaaa | PARTIAL RESERVE (Part 7) 0 - 32 |
| 00 0BH | 00aa aaaa | PARTIAL RESERVE (Part 8) 0 - 32 |
| 00 0CH | 00aa aaaa | PARTIAL RESERVE (Part R) 0 - 32 |
|-----------+-------------+-------------------------------------|
| 00 0DH | 000a aaaa | MIDI CHANNEL(Part 1) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 0EH | 000a aaaa | MIDI CHANNEL(Part 2) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 0FH | 000a aaaa | MIDI CHANNEL(Part 3) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 10H | 000a aaaa | MIDI CHANNEL(Part 4) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 11H | 000a aaaa | MIDI CHANNEL(Part 5) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 12H | 000a aaaa | MIDI CHANNEL(Part 6) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 13H | 000a aaaa | MIDI CHANNEL(Part 7) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 14H | 000a aaaa | MIDI CHANNEL(Part 8) 0 - 16 |
| | | (1 - 16,OFF)|
| 00 15H | 000a aaaa | MIDI CHANNEL(Part R) 0 - 16 |
| | | (1 - 16,OFF)|
|-----------+-------------+-------------------------------------|
| 00 16H | 0aaa aaaa | MASTER VOLUME 0 - 100 |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 17H |
+---------------------------------------------------------------+

þ Rhythm part setup

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0aaa aaaa | TIMBRE 0 - 94 |
| | | (M1-M64,R1-R30,OFF)|
| 00 01H | 0aaa aaaa | OUTPUT LEVEL 0 - 100 |
| 00 02H | 0000 aaaa | PANPOT 0 - 14 |
| | | (R - L) |
| 00 03H | 0000 000a | REVERB SWITCH 0 - 1 |
| | | (OFF, ON) |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 04H |
+---------------------------------------------------------------+

þ Patch temp

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0000 00aa | TIMBRE GROUP 0 - 3 |
| | | (GROUP A,GROUP B, |
| | | MEMORY,RHYTHM) |
| 00 01H | 00aa aaaa | TIMBRE NUMBER 0 - 63 |
| | | (1 - 64) |
| 00 02H | 00aa aaaa | KEY SHIFT 0 - 48 |
| | | (-24 - +24) |
| 00 03H | 0aaa aaaa | FINE TUNE 0 - 100 |
| | | (-50 - +50) |
| 00 04H | 000a aaaa | BENDER RANGE 0 - 24 |
| 00 05H | 0000 00aa | ASSIGN MODE 0 - 3 |
| | | (POLY 1,POLY 2, |
| | | POLY 3,POLY 4) |
| 00 06H | 0000 000a | REVERB SWITCH 0 - 1 |
| | | (OFF, ON) |
| 00 07H | 0xxx xxxx | dummy |
| 00 08H | 0aaa aaaa | OUTPUT LEVEL 0 - 100 |
| 00 09H | 0000 aaaa | PANPOT 0 - 14 |
| | | (R - L) |
| 00 0AH | 0xxx xxxx | dummy |
| : | | |
| 00 0FH | 0xxx xxxx | |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 10H |
+---------------------------------------------------------------+

þ Patch memory

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0000 00aa | TIMBRE GROUP 0 - 3 |
| | | (GROUP A,GROUP B, |
| | | MEMORY,RHYTHM) |
| 00 01H | 00aa aaaa | TIMBRE NUMBER 0 - 63 |
| 00 02H | 00aa aaaa | KEY SHIFT 0 - 48 |
| | | (-24 - +24) |
| 00 03H | 0aaa aaaa | FINE TUNE 0 - 100 |
| | | (-50 - +50) |
| 00 04H | 000a aaaa | BENDER RANGE 0 - 24 |
| 00 05H | 0000 00aa | ASSIGN MODE 0 - 3 |
| | | (POLY 1,POLY 2, |
| | | POLY 3,POLY 4) |
| 00 06H | 0000 000a | REVERB SWITCH 0 - 1 |
| | | (OFF, ON) |
| 00 07H | 0xxx xxxx | dummy |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 08H |
+---------------------------------------------------------------+

þ DISPLAY

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00H | 0aaa aaaa | DISPLAYED LETTER 32 - 127 |
| : | | (ASCII) |
| 13H | 0aaa aaaa | DISPLAYED LETTER |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 14H |
+---------------------------------------------------------------+

Note :
ù4-4
This parameter can be modified from D-50(PG-1000) and results
in accessing the address "02-00-80(Timbre Temp Area(part))"
of MT-32

Yes, it’s my fault.

Reply 10 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++

page 3 of 3

5.     ADDRESS MAPPING OF PARAMETERS (compatible with D-50(PG1000))
-- ------------------------------------------------------------

þ Parameter base address

+---------------------------------------------------------------+
| Start | |
| address | Description |
|-----------+---------------------------------------------------|
| 00-00-00 | Partial 3 ( 0 - 53 ) |
| 00-00-40 | Partial 4 ( 64 - 117 ) |
| 00-01-0A | Upper Common ( 138 - 175 ) |
| 00-01-40 | Partial 1 ( 192 - 245 ) |
| 00-02-00 | Partial 2 ( 256 - 309 ) |
| 00-02-4A | Lower Common ( 330 - 367 ) |
+---------------------------------------------------------------+

þ Partial parameters

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0aaa aaaa | WG PITCH COARSE 0 - 96 |
| | | (C1,C2, - C9) |
| 00 01H | 0aaa aaaa | WG PITCH FINE 0 - 100 |
| | | (-50 - +50) |
| 00 02H | 0000 aaaa | WG PITCH KEYFOLLOW 0 - 16 |
| | | (-1,-1/2,-1/4,0,|
| | | 1/8,1/4,3/8,1/2,|
| | | 5/8,3/4,7/8,1, |
| | | 5/4,3/2,2,s1,s2)|
| 00 03H | 0xxx xxxx | dummy |
| 00 04H | 0xxx xxxx | dummy |
| 00 05H | 0000 000a | WG PITCH BENDER SW 0 - 1 |
| | | (OFF, ON) |
| 00 06H | 0000 000a | WG WAVEFORM 0 - 1 |
| | | (SQU, SAW) |
| 00 07H | 0aaa aaaa | WG PCM WAVE # 0 - 127 |
| | | (1 - 128) |
| 00 08H | 0aaa aaaa | WG PULSE WIDTH 0 - 100 |
| 00 09H | 0000 aaaa | WG PW VELO SENS 0 - 14 |
| | | (-7 - +7) |
// photocopier cut this off
| 00 0DH | 0aaa aaaa | TVF CUTOFF FREQ 0 - 100 |
| 00 0EH | 000a aaaa | TVF RESONANCE 0 - 30 |
| 00 0FH | 0000 aaaa | TVF KEYFOLLOW 0 - 14 |
| | | (-1,-1/2,-1/4,0,|
| | | 1/8,1/4,3/8,1/2,|
| | | 5/8,3/4,7/8,1, |
| | | 5/4,3/2,2) |
| 00 10H | 0aaa aaaa | TVF BIAS POINT/DIR 0 - 127 |
| | | (<1A - <7C >1A - >7C)|
| 00 11H | 0000 aaaa | TVF BIAS LEVEL 0 - 14 |
| | | (-7 - +7) |
|-----------+-------------+-------------------------------------|
| 00 12H | 0aaa aaaa | TVF ENV DEPTH 0 - 100 |
| 00 13H | 0aaa aaaa | TVF ENV VELO SENS 0 - 100 |
| 00 14H | 0000 0aaa | TVF ENV DEPTH KEYF 0 - 4 |
| 00 15H | 0000 0aaa | TVF ENV TIME KEYF 0 - 4 |
Show last 190 lines
       |    00 16H |  0aaa aaaa  | TVF ENV TIME 1      0 - 100         |
| 00 17H | 0aaa aaaa | TVF ENV TIME 2 0 - 100 |
| 00 18H | 0aaa aaaa | TVF ENV TIME 3 0 - 100 |
| 00 19H | 0aaa aaaa | TVF ENV TIME 4 0 - 100 |
| 00 1AH | 0aaa aaaa | TVF ENV TIME 5 0 - 100 |
| 00 1BH | 0aaa aaaa | TVF ENV LEVEL 1 0 - 100 |
| 00 1CH | 0aaa aaaa | TVF ENV LEVEL 2 0 - 100 |
| 00 1DH | 0aaa aaaa | TVF ENV LEVEL 3 0 - 100 |
| 00 1EH | 0aaa aaaa | TVF ENV SUSTAIN LEVEL 0 - 100 |
| 00 1FH | 0xxx xxxx | dummy |
| : | | |
| 00 22H | 0xxx xxxx | dummy |
|-----------+-------------+-------------------------------------|
| 00 23H | 0aaa aaaa | TVA LEVEL 0 - 100 |
| 00 24H | 0aaa aaaa | TVA VELO SENS 0 - 100 |
| 00 25H | 0aaa aaaa | TVA BIAS POINT 1 0 - 127 |
| | | (<1A - <7C >1A - >7C)|
| 00 26H | 0000 aaaa | TVA BIAS LEVEL 1 0 - 12 |
| | | (-12 - 0) |
|-----------+-------------+-------------------------------------|
| 00 27H | 0aaa aaaa | TVA ENV TIME 1 0 - 100 |
| 00 28H | 0aaa aaaa | TVA ENV TIME 2 0 - 100 |
| 00 29H | 0aaa aaaa | TVA ENV TIME 3 0 - 100 |
| 00 2AH | 0aaa aaaa | TVA ENV TIME 4 0 - 100 |
| 00 2BH | 0aaa aaaa | TVA ENV TIME 5 0 - 100 |
| 00 2CH | 0aaa aaaa | TVA ENV LEVEL 1 0 - 100 |
| 00 2DH | 0aaa aaaa | TVA ENV LEVEL 2 0 - 100 |
| 00 2EH | 0aaa aaaa | TVA ENV LEVEL 3 0 - 100 |
| 00 2FH | 0aaa aaaa | TVA ENV SUSTAIN LEVEL 0 - 100 |
| 00 30H | 0xxx xxxx | dummy |
| 00 31H | 0000 0aaa | TVA ENV TIME V_FOLLOW 0 - 4 |
| 00 32H | 0000 0aaa | TVA ENV TIME KEYF 0 - 4 |
| 00 33H | 0xxx xxxx | dummy |
| 00 34H | 0xxx xxxx | dummy |
| 00 35H | 0xxx xxxx | dummy |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 36H |
+---------------------------------------------------------------+

þ Lower common parameter

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0000 aaaa | Structure of Partial# 1 & 2 0 - 12 |
| | | (1 - 13)|
| 00 01H | 0aaa aaaa | P-ENV VELO SENS(Partial#1) 0 - 100|
| 00 02H | 0000 0aaa | P-ENV TIME KEYF(Partial#1) 0 - 4 |
| 00 03H | 0aaa aaaa | P-ENV TIME 1(Partial#1) 0 - 100|
| 00 04H | 0aaa aaaa | P-ENV TIME 2(Partial#1) 0 - 100|
| 00 05H | 0aaa aaaa | P-ENV TIME 3(Partial#1) 0 - 100|
| 00 06H | 0aaa aaaa | P-ENV TIME 4(Partial#1) 0 - 100|
| 00 07H | 0aaa aaaa | P-ENV LEVEL 0(Partial#1) 0 - 100|
| | | (-50 - +50)|
| 00 08H | 0aaa aaaa | P-ENV LEVEL 0(Partial#1) 0 - 100|
| | | (-50 - +50)|
| 00 09H | 0aaa aaaa | P-ENV LEVEL 0(Partial#1) 0 - 100|
| | | (-50 - +50)|
| 00 0AH | 0aaa aaaa | P-ENV SUS LEVEL(Partial#1) 0 - 100|
| | | (-50 - +50)|
| 00 0BH | 0aaa aaaa | END LEVEL(Partial#1) 0 - 100|
| | | (-50 - +50)|
|-----------+-------------+-------------------------------------|
| 00 0CH | 0xxx xxxx | dummy |
| 00 0DH | 0aaa aaaa | P-LFO MOD SENS(Partial#1) 0 - 100|
| 00 0EH | 0aaa aaaa | P-LFO MOD SENS(Partial#2) 0 - 100|
| 00 0FH | 0xxx xxxx | dummy |
| 00 10H | 0aaa aaaa | P-LFO RATE(Partial#1) 0 - 100|
| 00 11H | 0aaa aaaa | P-LFO DEPTH(Partial#1) 0 - 100|
| 00 12H | 0xxx xxxx | dummy |
| 00 13H | 0xxx xxxx | dummy |
| 00 14H | 0aaa aaaa | P-LFO RATE(Partial#2) 0 - 100|
| 00 15H | 0aaa aaaa | P-LFO DEPTH(Partial#2) 0 - 100|
| 00 16H | 0xxx xxxx | dummy |
| : | | |
| 00 23H | 0xxx xxxx | dummy |
| 00 24H | 0000 00aa | PARTIAL MUTE(Partial# 1&2) 0 - 3 |
| | | (00 - 11)|
| 00 25H | 0xxx xxxx | dummy |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 26H |
+---------------------------------------------------------------+

þ Upper common parameter

+---------------------------------------------------------------+
| Offset | |
| address | Description |
|-----------+---------------------------------------------------|
| 00 00H | 0000 aaaa | Structure of Partial# 1 & 2 0 - 12 | // typo in docs?
| | | (1 - 13)|
| 00 01H | 0aaa aaaa | P-ENV VELO SENS(Partial#3) 0 - 100|
| 00 02H | 0000 0aaa | P-ENV TIME KEYF(Partial#3) 0 - 4 |
| 00 03H | 0aaa aaaa | P-ENV TIME 1(Partial#3) 0 - 100|
| 00 04H | 0aaa aaaa | P-ENV TIME 2(Partial#3) 0 - 100|
| 00 05H | 0aaa aaaa | P-ENV TIME 3(Partial#3) 0 - 100|
| 00 06H | 0aaa aaaa | P-ENV TIME 4(Partial#3) 0 - 100|
| 00 07H | 0aaa aaaa | P-ENV LEVEL 0(Partial#3) 0 - 100|
| | | (-50 - +50)|
| 00 08H | 0aaa aaaa | P-ENV LEVEL 0(Partial#3) 0 - 100|
| | | (-50 - +50)|
| 00 09H | 0aaa aaaa | P-ENV LEVEL 0(Partial#3) 0 - 100|
| | | (-50 - +50)|
| 00 0AH | 0aaa aaaa | P-ENV SUS LEVEL(Partial#3) 0 - 100|
| | | (-50 - +50)|
| 00 0BH | 0aaa aaaa | END LEVEL(Partial#3) 0 - 100|
| | | (-50 - +50)|
|-----------+-------------+-------------------------------------|
| 00 0CH | 0xxx xxxx | dummy |
| 00 0DH | 0aaa aaaa | P-LFO MOD SENS(Partial#3) 0 - 100|
| 00 0EH | 0aaa aaaa | P-LFO MOD SENS(Partial#4) 0 - 100|
| 00 0FH | 0xxx xxxx | dummy |
| 00 10H | 0aaa aaaa | P-LFO RATE(Partial#3) 0 - 100|
| 00 11H | 0aaa aaaa | P-LFO DEPTH(Partial#3) 0 - 100|
| 00 12H | 0xxx xxxx | dummy |
| 00 13H | 0xxx xxxx | dummy |
| 00 14H | 0aaa aaaa | P-LFO RATE(Partial#4) 0 - 100|
| 00 15H | 0aaa aaaa | P-LFO DEPTH(Partial#4) 0 - 100|
| 00 16H | 0xxx xxxx | dummy |
| : | | |
| 00 23H | 0xxx xxxx | dummy |
| 00 24H | 0000 00aa | PARTIAL MUTE(Partial# 3&4) 0 - 3 |
| | | (00 - 11)|
| 00 25H | 0xxx xxxx | dummy |
|-----------+-------------+-------------------------------------|
| Total size | 00 00 26H |
+---------------------------------------------------------------+

MIDI Implementation Chart

[ Multi Timbre Soud Module ] Date : Jun.19 1987
Model MT-32 MIDI Implementation Chart Version : 1.00
+----------------------------------------------------------------------+
: : Transmitted : Recognized : Remarks :
: Function ... : : : :
:-------------------+----------------+----------------+----------------:
:Basic Default : : 1 - 16 : Memorized :
:Channel Changed : : 1 - 16 : :
:-------------------+----------------+----------------+----------------:
: Default : : Mode 3 : :
:Mode Messages : : : :
: Altered : ************** : : :
:-------------------+----------------+----------------+----------------:
:Note : * 0 - 127 : 0 - 127 : :
:Number : True voice: ************** : 12 - 108 : :
:-------------------+----------------+----------------+----------------:
:Velocity Note ON : * : o vx 1 - 127 : :
: Note OFF : * : x : :
:-------------------+----------------+----------------+----------------:
:After Key's : * : x : :
:Touch Ch's : * : x : :
:-------------------+----------------+----------------+----------------:
:Pitch Bender : * : o 0 - 24 semi : :
:-------------------+----------------+----------------+----------------:
: 1: * : o : Modulation :
: 7: * : o : Port Volume :
:Control 10: * : o : Panpot :
: 11: * : o : Expression :
:Change 12: : : :
: :: * : x : :
: 63: : : :
: 64: * : o : Hold1 :
: 65: : : :
: :: * : x : :
: 120: : : :
: 121: * : o : Reset all con- :
: : : : trollers :
:-------------------+----------------+----------------+----------------:
:Prog : * : o 0 - 127 : :
:Change : True # : : 0 - 127 : :
:-------------------+----------------+----------------+----------------:
:System Exclusive : o * : o : :
:-------------------+----------------+----------------+----------------:
:System : Song Pos : x : x : :
: : Song Sel : x : x : :
:Common : Tune : x : x : :
:-------------------+----------------+----------------+----------------:
:System :Clock : x : x : :
:Real Time :Commands: x : x : :
:-------------------+----------------+----------------+----------------:
:Aux :Local ON/OFF : x : x : :
: :All Notes OFF: x : o (123-127) : :
:Mes- :Active Sense : x : o : :
:sages:Reset : x : x : :
:-------------------+----------------+----------------+----------------:
:Notes : * in OVERFLOW MODE, received message goes thru :
: : MIDI OUT :
// photocopier cut this off
+----------------------------------------------------------------------+ // assumed

Now get to it, bitchizzzz! ;)

Yes, it’s my fault.

Reply 11 of 17, by canadacow

User metadata
Rank Member
Rank
Member

Snover... I hope this isn't too disappointing, but this is information already available. If you look at my source code on my webpage, you'll find that this SysEx address map was one of the first few things that I implemented in my emulator. This information is pretty easy to come by. (See: http://www.queststudios.com/roland/docs/mt32-2.txt ) What I need to know, however, is the interpretation of a lot the parameters listed.

Take for example, the envelopes. The time for each section can be 0-100? But 0-100 what? Milliseconds, microseconds? Is it some function of LFO? I was hoping such pertinent information would be contained in the schematics manual.

As for my PCM fascination... it simply bothers me because its one of the most easily researched problems (one has to simply record all unmodified 54 partials in order) that I could solve that would see a very large improvement in sound quality.

Last edited by canadacow on 2003-05-25, 01:31. Edited 1 time in total.

Reply 12 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++

That's all the data that was included. Hardware schematics and other stuff are online at the site now, apparently voiding warranties is the only way we're going to be able to figure out that information.

I was pretty much positive that all the information I received was Quest Studios from the moment I opened the envelope to discover the USER MANUAL.

My thought about the 0-100 arbitrary shit is that it is n clock cycles, though I'm not sure about the actual hardware timing stuff.

Tell you what though, my write-up is better than the one you linked to, since I actually paid attention to how the document was laid out. 😜

Yes, it’s my fault.

Reply 13 of 17, by canadacow

User metadata
Rank Member
Rank
Member

DooohH!! Major typo, I hope you noticed that I changed " Snover... I hope this is disappointing" to "Snover... I hope this isn't too disappointing" I wasn't trying to sound rude. Oops. Please accept my apolgy.

Reply 14 of 17, by canadacow

User metadata
Rank Member
Rank
Member
Snover wrote:

My thought about the 0-100 arbitrary shit is that it is n clock cycles, though I'm not sure about the actual hardware timing stuff.

That's a good guess, but I have just as much reason to believe that is some sort of note based measure (i.e. sixteenth notes or what-not), or timer based (based on some sort of lapsed microsecond timer), or sample based (based on how many individual samples have passed). Now I hope you're getting a feeling for what I'm up against. On this coefficient alone, I have four different (maybe more) possibilities... and which one do I implement? Which one do I document?

Reply 15 of 17, by Snover

User metadata
Rank l33t++
Rank
l33t++
canadacow wrote:

DooohH!! Major typo, I hope you noticed that I changed " Snover... I hope this is disappointing" to "Snover... I hope this isn't too disappointing" I wasn't trying to sound rude. Oops. Please accept my apolgy.

I gathered that's what you meant. (I've only met one or two people that are actually this callous, and you didn't seem to fix the stereotype. 😀)

That's a good guess, but I have just as much reason to believe that is some sort of note based measure (i.e. sixteenth notes or what-not), or timer based (based on some sort of lapsed microsecond timer), or sample based (based on how many individual samples have passed). Now I hope you're getting a feeling for what I'm up against. On this coefficient alone, I have four different (maybe more) possibilities... and which one do I implement? Which one do I document?

Which one sounds the best? 😁
Seriously though, you might consider looking at the MPU-401 specs for vibrato and such if you haven't already. Much more documented, and I imagine that the GM/GS are very much similar, if not identical, to the MT-32 ones.

In any case, we'll have to wait for Vlad to take a look at the schematics I posted and do some RE on the actual hardware to unlock some of the secrets anyway.

OH, ALSO, the documentation that is at Quest is significantly different from the one that I typed. (Memory addresses are different, which is rather worrysome. The Quest version is missing lots of information, too, so you might want to go through mine.)

Yes, it’s my fault.

Reply 17 of 17, by Nicht Sehr Gut

User metadata
Rank l33t
Rank
l33t

Originally posted by Snover I gathered that's what you meant. (I've only met one or two people that are actually this callous, and you didn't seem to fix the stereotype.

*cough*
*cough*
*cough*
...must...suppress...sarcastic...remark...