NAME

Win32API::MIDI::SysEX::Roland - Perl Module for Roland MIDI System Exclusive Message.

SYNOPSIS

  use Win32API::MIDI::SysEX::Roland;
  # SC-55mkII GS Sound Module
  $se = new Win32API::MIDI::SysEX::Roland(mdlName => 'GS'); # 'GS' can be omitted
  # GS Reset
  $d = $se->GSReset;
  # Turn General MIDI System Off
  $d = $se->turnGeneralMIDISystemOff;
  # Turn General MIDI System On
  $d = $se->turnGeneralMIDISystemOn;
  # Set Master Volume
  $d = $se->masterVolume(0xD20);
  # example 2 (manual P.104): Request the level for a drum note.
  $d = $se->RQ1(0x41024b, 0x01);
  # bulk dump: system parameter and all patch parameter
  $d = $se->RQ1(0x480000, 0x1D10);
  # bulk dump: system parameter
  $d = $se->RQ1(0x480000, 0x10);
  # bulk dump: common patch parameter
  $d = $se->RQ1(0x480010, 0x100);
  # bulk dump: drum map1 all
  $d = $se->RQ1(0x490000, 0xe18);

DESCRIPTION

Overview

Win32API::MIDI::SysEX::Roland is submodule of Win32API::MIDI::SysEX. Its object inherits his parents methods.

This module is still under development and most of function are not debugged yet. And the this module may have to be renamed as MIDI::SysEX::Roland in the future, since this module is dependent with Microsoft Windows.

Create an Object

new Win32API::MIDI::SysEX::Roland([param => value,]...)

Currently supported modelName are;

  'S-10', 'GS', 'SC-88', 'SC-55', 'SC-155',
  'JV-1010', 'VS-880', 'GR-30', 'TD-6'

This information is used by RQ1 and DT1 method to know the size of the model ID and address. By default 'GS' is used.

To access GS common parameters the 'GS' object must be used. You may have to create one or more object for a MIDI device.

Request Data

RQ1(address, size)

Data Transfer

DT1(address, data)

GS Reset

GSReset(void)

Exit GS Mode

ExitGSMode(void)

System Mode Set

SystemModeSet(mode)
  mode:
    0 : mode-1
    1 : mode-2

3 POD Errors

The following errors were encountered while parsing the POD:

Around line 200:

You forgot a '=back' before '=head2'

Around line 218:

You forgot a '=back' before '=head2'

Around line 220:

=over without closing =back