EasyManua.ls Logo

Roland RD-600 - Examples of Actual MIDI Messages; Calculating MIDI Checksums

Roland RD-600
82 pages
To Next Page IconTo Next Page
To Next Page IconTo Next Page
To Previous Page IconTo Previous Page
To Previous Page IconTo Previous Page
Loading...
@
Examples
of
actual
MIDI
messages
<Example
1> 92
3
SF
9n
is
the
Note-on
status,
and
nis
the
MIDI
channel
number.
Since
2H
=
2,
3EH
=
62,
and
5FH
=
95,
this
is
a
Note-on
message
with
MIDI
CH
=
3,
note
number
62
(note
name
is
D4),
and
velocity
95.
<Example
2>
CE
49
CnH
is
the
Program
Change
status,
and
n
is
the
MIDI
channel!
number,
Since
FH
=
14
and
73,
this
is
a
Program
Change
message
with
MIDI
CH
=
15,
program
number
74
SA
E.Grand
2
in
RD-600).
<Example
3>
EA
00
28
EnH
is
the
Pitch
Bend
Change
status,
and
n
is
the
MIDI
channel
number.
The
2nd
byte
(OOH
=
0)
is
the
LSB
and
the
3rd
byte
(28H
=
40)
is
the
MSB,
but
Pitch
Bend
Value
is
a
signed
number
in
which
40
OOH
(=
64x
128
~
0
=
8192)
is
0,
so
this
Pitch
Bend
Value
is
28
NOH
-
40
GOH
=
40x
128
+
0+
(64x
128
+
0)
=
5120
-
8192
=
-3072
If
the
Pitch
Bend
Sensitivity
is
set
to
2
semitones,
-8192
(00
OOH)
will
cause
the
pitch
to
change
-200
cents,
so
in
this
case
-200
x
(-3072)
/
(-8192)
=
-75
vents
of
Pitch
Bend
is
being
applied
to
MIDI
channel
11.
<Example
4>
83
64
00
65
00
06
0C
26
00
64
7F
65
7F
BnH
is
the
Control
Change
status,
and
n
is
the
MIDI
channel
number.
For
Control
Changes,
the
2nd
byte
is
the
control
number,
and
the
3rd
byte
is
the
value.
fn
a
case
in
which
two
or
more
messages
consecutive
messages
have
the
same
status,
MIDI
has
a
pro-
vision
called
“running
status”
which
allows
the
status
byte
of
the
second
and
following
messages
to
be
omitted.
Thus,
the
above
messages
have
the
following
meaning
BI
64.00
MIDI
cha,
lower
byte
of
RPN
parameter
number:
00H
(B3)
65.00
(MIDI
ch.4)
upper
byte
of
RPN
parameter
number:
OOH
(B3)
060C
(MIDI
ch)
upper
byte
of
parameter
value:
OCH
(B3)
2600)
(MIDI
ch.4)
lower
byte
of
paraineter
value:
OH
(B3)
64.
7F
(MIDI
ch.4)
lower
byte
of
RPN
parameter
number:
7FH
(B3)
65
7F
(MIDI
ch.4)
upper
byte
of
RPN
parameter
number:
7FH
In
other
wards,
the
above
messages
specify
a
value
of
OC
OOH
for
RPN
parameter
number
00
OOH
on
MIDI
channel
4,
and
then
set
the
RPN
parameter
number
to
7F
7FH.
RPN
parameter
number
00
00H
is
Pitch
Bend
Sensitivity,
and
the
MSB
of
the
value
indi-
cates
semitone
units,
so
a
value
of
OCH
=
12
sets
the
maximum
pitch
bend
range
to
+12
semitones
(1
octave).
(On
RD-600
sound
sources
the
LSB
of
Pitch
Bend
Sensitivity
is
ignored,
but
the
LSB
should
be
transmitted
anyway
(with
a
value
of
0)
so
that
operation
will
be
correct
on
any
device.)
Once
the
parameter
number
has
been
specified
for
KPN
or
NRPN,
all
Data
Entry
mes-
sages
transmitted
on
that
same
channel
will
be
valid,
so
atter
the
desired
value
has
been
transmitted,
it
is
a
good
idea
to
sct
the
parameter
number
to
7F
7FH
to
prevent
accidents.
This
is
the
reason
for
the
(B3)
64
7F
(B3)
65
7F
at
the
end.
ft
is
not
desirable
for
performance
data
(such
as
Standard
MIDI
File
data)
to
contain
many
events
with
running
status
as
given
in
<Example
4>.
This
is
because
if
playback
is
halted
during
the
song
and
then
rewound
or
fast-forwarded,
the
sequencer
may
not
be
able
to
transmit
the
correct
status,
and
the
sound
source
will
then
misinterpret
the
data.
Take
care
to
give
each
event
its
own
status.
it
is
also
necessary
that
the
RPN
or
NRPN
parameter
number
setting
and
the
value
setting
be
done
in
the
proper
order.
On
sume
sequencers,
events
occurring
in
the
same
(or
consec-
utive)
clock
may
be
transmitted
in
an
order
different
than
the
order
in
which
they
were
received.
Por
this
reason
il
is
a
good
idea
to
slightly
skew
the
time
of
each
event
(about
1
tick
lar
TPQN
=
96,
and
about
§
ticks
for
FPQN
=
481).
*
FPON:
Ticks
Per
Quarter
Note
72
@Exampie
of
an
Exciusive
message
and
calculating
a
Checksum
Roland
Exclusive
messages
(ROV,
DTI}
are
transmitted
with
a
checksum
at
the
end
(before
F7}
ta
make
sure
that
the
messape
was
correctly
received.
The
value
of
the
check-
sum
is
determined
by
the
address
and
data
(or
size)
of
the
transmitted
exclusive
message.
~
How
to
calculate
the
checksum
(hexadecimal
numbers
are
indicated
by
‘H')
The
checksum
is
a
value
derived
by
adding
the
address,
size
and
checksum
itself
and
inverting
the
lower
7
bits.
Here’s
an
example
of
how
the
checksum
is
calculated.
We
will
assume
thal
in
the
exclu-
sive
message
we
are
transmitting,
the
address
is
aa
bb
cc
ddl
and
the
data
or
size
is
ee
ff
yg
hhH.
aat
bb
coe
dd
+
ee
4
ff
+
ge
+
hh
=sum
sum
/
128
=
quotient
...
remainder
128
-
remainder
=
checksum
<Example
1>
Setting
“Effect
Reverb
type”
of
“Tempotary”
to
“ROOM1"
(DT1).
The
“Parameter
address
map”
indicates
that
the
starting
address
of
the
Temporary
is
4
00 00
OOH,
that
the
Effect
Parameter
offset
address
is
30
00H,
and
that
the
“Reverb
type”
type
address
is
OOH.
Thus,
the
address
is:
Since
“ROOM1”
is
parameter
value
00H,
FO
4)
10
0009
12
01003000
OG
2?
F7
a) 2)
@
(4)
(5)
address
data
checksum
(6)
(1)
Exclusive
status
(2)
{1D
number
(Roland)
(3)
device
ID(17)
(4)
model
[D
(RD-600)
{5)
command
[ID
(DT1}
{b)
EOX
Next
we
calculate
the
checksum.
OH
+
OOH
+
301]
+
OOH
+
OOH
=
1+
04
48-0
+
0
=
49(sum)
49
(total)
+
128
=
0
(quotient)...
49
(remainder)
checksum
=
128
-
49
(quotient)
=
79
=
4FH
This
means
that
the
message
transmilted
will
be
FO
41
10.00.09
£2.01
00-30
0000
4F
F7.
<Example
2>
Retrieving
data
for
Temporary
Rx.Part2
Parameter
(RQ1)
The
“Parameter
address
map”
indicates
that
the
starting
address
of
Temporary
is
01
00.00
OOLL
and
that
the
offset
address
of
Rx.Part2
Parameter
is
20
01H.
Thus,
the
address
is:
Since
the
size
of
the
Performance
Part
is
00.00
00
09H,
FO
4h
1
00098
iT
Ob
0e2001
0800
0009
2?
F7
{t) (2)
@)
(4) (3)
address
size
checksum
(6)
(EL)
Exclusive
status
(2)
1D
number
(Roland)
(3)
Device
117)
(4)
Model
[D
(RD-600)
(5)
Command
ID
(RQ)
(6)
EOX
Next
we
calculate
the
checksum.
OTH
=
00H
+
20H
+
01H
+
00H
+
O01
+
QOH
+
09H
=
1+0+324140-0+
0+
9=43(sum)
43(total)
+
128
=
Oproduct)
...
43(remainder}
checksum
=
128
-
43{remainder)
=
85
=
55H
Thus,
a
message
of
Fo
41
£0
04.09
11701
00
20.41
00-00.00
09
55
F7
would
be
transmitted.

Other manuals for Roland RD-600

Related product manuals