Yamaha Electone Simple SysEX-Recorder (YesXR)

YesXR (Yamaha Electone Simple SysEX-Recorder) is a free/libre and open Project (GNU GPL v.3) which targets the owners of the ‘vintage’:
Yamaha Electone Series (MIDI organs) marketed worldwide between ~ 1986 and 2001, and
– Yamaha Music Disk Recorder (MDR) device peripherals marketed worldwide between ~ 1986 and 1996.

This version of YesXR (here a shell script with GUI) ‘should run’ under any free/libre GNU/Linux operating systems such as:
– ARCH Linux & all their derivatives-flavors like Manjaro Linux, Endeavour OS and even Manjaro-Arm,
– DEBIAN & all their derivatives-flavors like Ubuntu, Linux Mint, MX Linux, Pop!_OS, Elementary, Deepin Linux, Zorin and even Raspberry Pi OS (Arm),
– RED HAT & all their derivatives-flavors like Fedora and others,
– SUSE & all their derivatives-flavors like openSUSE and others, and
– Surely much more.

◊ Table of contents

♦ Presentation

YesXR -a utility software- is handling the ‘All-RAM Data’ –i.e. Registrations & other Non-Performance data- of the compatible Yamaha Electone ‘Vintage’ Series.
It can be used as a partial replacement or substitution of the Yamaha ‘Music Disk Recorder’ peripheral devices (MDR-2 / MDR-3 / MDR-4 / MDR-10) designed exclusively for Electone use, -but their file formats are not compatible-.

Overview of Electone’s All-RAM = Registration & other Non-Performance Data
This applies to both  Electone <==> YesXR  -and-  MDR ==> YesXR  transmissions
  • Data memorized at the Registration Memory (#1-to-8 or #1-to-16)
  • Data of the current Registration
  • Internal Sequencer (iSEQ) data or Full Music Programmer (F.M.P.) data
  • Data of the Chord Sequence Programmer (C.S.P.) / Rhythm Sequence Programmer (R.S.P.)
  • Data of the User Rhythm Patterns (U.R.P.1) or User Rhythmic Patterns (U.R.P.2)
  • Data of User defined Voices (U.V.)
  • For the Specific List of All-RAM data which can be recorded, please consult the User’s Guide or Owner’s Manual of your Yamaha Electone Series / Model.

Note: ‘Yes-XR’ is not recording Electone (Live) Performance data -but- future ‘Yes-MDR’ will do it!

YesXR — Yamaha Electone Simple SysEX Recorder — Control Panel (Yad version)

• YesXR -a GNU/Linux utility software- allows you to easily

  • Record/Save ‘All-RAM’ Data from your Yamaha Electone’s RAM to your GNU/Linux PC’s Disk.
  • Load/Send back these ‘All-RAM’ Data from your PC’s Disk to your Yamaha Electone MIDI organ.
  • Backup/Save ‘All-RAM’ Data stored on your Yamaha MDR’s floppy disk (song by song) to PC’s Disk.
  • Display ‘MIDI Traffic’ in HEXAdecimal for System Exclusive (SysEx F0h, …, F7h) Data and even any MIDI Messages.
  • YesXR is compatible with at least the Yamaha Electone CHX / HX / HS / US / HE / HC / EL Series. See the complete list of the ~ 40 Organ Models at the bottom of this article.
  • This is achieved by handling dedicated MIDI (Musical Instrument Digital Interface) System Exclusive Messages (Electone / MDR common messages — BULK DUMP related messages (F0h, 43h, …, …, …, …, …, F7h):
    • Request-ELECTONE-to-Send All-RAM-data,
    • Request-ELECTONE-to-Receive All-RAM-data, and
    • Request-MDR-to-Send All-RAM-data (floppy disk).

YesXR is +/- a portable software, thus it can be used from either an internal disk (HDD or SSD) and/or an external one (USB stick, USB storage or SD Card).

• To run successfully YesXR

  • The following 3 software packages must be installed in your GNU/Linux operating system:
    • Alsa-utils v. ≥ 1.2.2 used for the communication between the MIDI Devices; i.e. Yamaha Electone organ – Yamaha MDR peripheral – MIDI/USB Interface & PC,
    • Yad v. = 0.40.x or ≥ 10.1.0 used for the GUI (graphical user interface), and
    • Gnome-terminal v. ≥ 3.36.2 which is only needed for the [MIDI MONITOR] operation.
  • If they are not installed yet, depending of your GNU/Linux experience, this can be done from:
    • the Software Center / Manager – a GUI utility for easily exploring, installing and removing software in your preferred distribution (see below screen capture), or
    • the Command Line in a Terminal; e.g.:
      – Debian & derivatives (Linux Mint, Pop!_OS, Ubuntu, etc.): sudo apt install <application_name>
      – Arch Linux & derivatives (Manjaro, Endeavour OS, etc.): sudo pacman -Syu <application_name>
  • The script’s GUI is using the Theme of your Desktop environment. Make sure to use a ‘Dark’ system Theme for allowing a good readability of the messages.
  • The Testing Terminal is now only used on-demand for displaying potential issues when using YesXR.
Yad‘ / Display GTK+ dialogs in shell script — An improved fork of Zenity program
  • YAD is a program that will display GTK+ dialogs, and return (either in the return code or on standard output) the users input.
‘Alsa-utils’ / Advanced Linux Sound Architecture – Utilities
  • This package contains the command line utilities for the ALSA project.

YESXR — Installation of Yad & Alsa-utils from the Software Manager (GNU/Linux)

Gnome-terminal‘ / A Terminal emulator for GNOME and All UNIX compatible Desktop Environments.
  • This package contains the program that emulates a console in a graphical interface, it allows you to launch commands.

♦ Future versions (shell script with GUI)

Note: Currently there are no release dates planned for these future versions.

• YesXR — Yamaha Electone Simple SysEx Recorder

  • Future releases only for maintenance purpose.

YesMDR — Yamaha Electone Simple Music Disk Recorder

  • YesMDR will be an upgrade of YesXR (All-RAM Bulk Dump; i.e. Registrations & other Non-Performance data).
  • Add a MIDI Monitor — Capture/Display the MIDI In/Out traffic as text (documented and human readable MIDI messages).
  • Add Live Record / Playback Electone Performance data management — SMF ‘Type 0’ -everything is merged into a single track within the sequence- & ‘Type 1’ -individual parts are saved on different tracks within the sequence- for compatibility with other MIDI programs.
  • Add Backup MDR Performance data management; i.e. similar to MDR’s Custom Playback.
  • YesMDR could replace (more or less) the Yamaha Music Disk Recorder peripheral devices (MDR-2 / MDR-3 / MDR-4 / MDR-10) designed exclusively for Electone use, -but- their file formats will not be compatible neither for the Bulk Dump (here Binary file) nor for the Live Performance (here Standard Midi File).

♦ YesXR OPERATION — New ‘Yad’ version

To make the use of YesXR (Yamaha Electone Simple SysEX-Recorder) as easy as possible its operation is automated as much as doable.

• CONNECTING your MIDI DEVICES together
  • FIRST: You must properly connect your compatible Yamaha ELECTONE and/or your Yamaha MDR to your MIDI/USB Interface·s (much better and easier if Class Compliant I/F) to your GNU/Linux PC.
  • NOTE: Without at least one MIDI/USB I/F connected to and recognized by your PC, you will not be able to use – explore the functionalities of YesXR!
YAMAHA Device
Communication
INTERFACE Communication
Personal Computer
ELECTONE Organ <– Command MIDI / USBa <– Command GNU/Linux YesXR
Send/Receive <— MIDI DATA —>   <— MIDI DATA —> Receive/Send
M.D.R. Peripheral <– Command MIDI / USBb <– Command GNU/Linux YesXR
Send MIDI DATA —>   MIDI DATA —> Receive
Note: Since YesXR v.0.1.40, you can now freely select the connected MIDI/USB Interface of your choice !

Yamaha Electone Organ connected to PC thru MIDI/USB I/F

• RUNNING ‘YesXR-0.x.yy.sh’ script (0.x.yy = version number)
  • From within your File Manager, double-click on YesXR-0.x.yy.sh file, a window opens and then click on the Run button.
  • This will launch the script and open its GUI Control Panel.
    Since YesXR v.0.1.33, the Script Terminal is not used anymore, except if needed for testing and debugging purpose of the [too] many (dozens – hundreds) available GNU/Linux distributions.
• [QUITTING] the Utility software (Script)
  • Click on the [– QUIT –] button.
  • The QUIT — YesXR window is displayed and the program is quitting after a 2 seconds countdown progress bar.
• 1- [SELECTING] MIDI/USB I/F
  • Note: Without at least one MIDI/USB Interface connected to and recognized by your PC, you will not be able to explore the functionalities of YesXR and appropriate Error windows will show up when necessary.
  • Click on the [MIDI/USB I/F] button for scanning all available ALSA MIDI/USB Interfaces to YesXR.
  • The MIDI/USB I/F Choice — YesXR window appears.
  • Select/Click ONE among the available I/O Ports which connects your Electone ([Record-eRam] – [Send-eRam]) or MDR ([Backup-mRam]) or MIDI Device ([MIDI MONITOR]) to your PC. Close this window by clicking on the [Confirm I/F Selection] button.
  • You are back to the Control Panel window which is now displaying two updated lines:
    – Last ACTION done: [ MIDI/USB I/F Selection ] = Status, and
    – Current MIDI/USB I/F Selection = the Name of the I/F you have just chosen.

An example with ‘M-Audio MidiSport’ and ‘Roland UM-ONE mk2’ MIDI/USB Interfaces which are Class Compliant (no need for driver) and compatible with GNU/Linux Operating Systems & MIDI Messages including System Exclusive (SysEx) Bulk Dump (F0h, 43h, …, …, …, …, …, F7h).
Note: Devices numbering could/will change depending of the Interfaces connection order, how many Interfaces are connected to the PC, and the distribution which is used.

MIDI/USB INTERFACE
DIR. DEVICE ALSA NAME  (Individual Port) Comment
M-Audio UNO (1×1) I/O hw:0,0,0 USB Uno MIDI Interface MIDI 1  
M-Audio 2×2 Anniversary
I/O hw:1,0,0 MIDISPORT 2×2 Anniv MIDI 1 Switch = USB/Merge
  I/O hw:1,0,1 MIDISPORT 2×2 Anniv MIDI 2  
M-Audio 4×4 Anniversary
I/O hw:2,0,0 MIDISPORT 4×4 Anniv MIDI 1  
  I/O hw:2,0,1 MIDISPORT 4×4 Anniv MIDI 2  
  I/O hw:2,0,2 MIDISPORT 4×4 Anniv MIDI 3  
  I/O hw:2,0,3 MIDISPORT 4×4 Anniv MIDI 4  
Roland UM-ONE mk2 (1×1) I/O hw:3,0,0 UM-ONE MIDI 1 Switch = TAB
– And so on… I/O hw:x,y,z    
• MANAGING -Bulk Dump- Files
  • Since v.0.1.33: YesXR integrates the System File Manager for both [Record-eRam] and [Send-eRam] operations.
  • Since v.0.1.52: YesXR is also using the System File Manager for [Backup-mRam] operation.
  • Since v.0.1.70: YesXR is now properly handling ‘white spaces’ in both directory/folder and file names.
  • The name of File.ext (binary file) can be freely chosen by the performer.
    For the .ext, it’s best to use specific extension dedicated to YesXR; e.g. .eram/.mram or .xram/.yram. This will allow you to easily handle different versions of your recorded / backed-up files for building your Electone’s / MDR’s ‘All-RAM’ library with YesXR.

* YesXR v.0.1.80 — Quick presentation — ‘Yad’ version *

• 2- [RECORDING] -All-RAM Bulk Dump- from Yamaha Electone-to-PC
  • Make sure you have previously selected the right MIDI/USB I/F connected to your Yamaha Electone organ!
  • On the Control Panel window, click on the [RECORD-eRAM] button.
  • The RECORD All-eRAM / Electone-to-File — YesXR window appears (System File Manager), Choose the Folder and Type a new NAME.ext -or- Select a FILE.ext previously recorded with YesXR.
  • Once done, click on the [Confirm SAVE File / RECORD All-eRAM] button (at the bottom).
  • The RECORDing All-eRAM — YesXR window appears with a pulsing elapse time bar (in seconds). This window will close automatically once All-eRAM will have been recorded.
  • Then, you are back to the Control Panel window which is now displaying two updated lines:
    – Last ACTION done: [ RECORD All-eRAM / ELECTONE-to-PC ] = Status, and
    – Last FILE used: Path/Filename.ext of xyz bytes.

Note: The time required to record All-RAM data will vary with the Electone model / series and the type of data currently memorized at the Electone. This can take from just few seconds up to several tens of seconds or even more.

• 3- [SENDING] -All-RAM Bulk Dump- from PC-to-Electone
  • Make sure you have previously selected the right MIDI/USB I/F connected to your Yamaha Electone organ!
  • On the Control Panel window, click on the [SEND-eRAM] button.
  • The SEND All-eRAM / PC-to-Electone — YesXR windows appears (System File Manager), Choose the Folder and Select an existing FILE.ext recorded with YesXR.
  • Once done, click on the [Confirm LOAD File / SEND All-eRAM] button (at the bottom).
  • The SENDing All-eRAM — YesXR windows appears with a countdown progress bar (its timing is proportional to the size of the chosen file). This window will close automatically once All-eRAM will have been sent.
  • Then, you are back to the Control Panel window which is now displaying two updated lines:
    – Last ACTION done: [ SEND All-eRAM / PC-to-ELECTONE ] = Status, and
    – Last FILE used: Path/Filename.ext of xyz bytes.

Note: The time required to transmit All-RAM data will be identical to the time that was required during recording from the Electone or backing up from the MDR.

• 4- [BACKING UP] -All-RAM Bulk Dump- from Yamaha MDR-to-PC
  • Make sure you have previously selected the right MIDI/USB I/F connected to your Yamaha Music Disk Recorder (MDR) peripheral!
    – A recorded Floppy disk is introduced into your M.D.R. -and- the desired Song number to be red is selected too! YesXR is automatically managing the PLAY/STOP commands of your MDR device.
  • On the Control Panel window, click on the [BACKUP-mRAM] button.
  • The BACKUP All-mRAM / MDR-to-PC — YesXR window appears (System File Manager), Choose the Folder and Type a new NAME.ext -or- Select a FILE.ext previously recorded with YesXR.
  • Once done, click on the [Confirm SAVE File / RECORD All-mRAM] the button (at the bottom).
  • The BACKUPing All-mRAM — YesXR window appears with a pulsing elapse time bar (in seconds). This window will close automatically once All-mRAM will have been recorded.
  • Then, you are back to the Control Panel window which is now displaying two updated lines:
    – Last ACTION done: [ BACKUP All-mRAM / MDR-to-PC ] = Status, and
    – Last FILE used: Path/Filename.ext of xyz bytes.

Note: The time required to backup All-RAM data will vary with the type of data which was recorded by the MDR model from the Electone model / series. This can take from just few seconds up to several tens of seconds or even more.

• 5- [MONITORING] – MIDI Traffic (in Hexadecimal bytes)
  • Available since v.0.1.80.
  • Make sure you have previously selected the right MIDI/USB I/F connected to the MIDI Device you want to monitor! These devices could be of course a Yamaha Electone or a Yamaha MDR, but also any other MIDI peripherals from any brands.
  • On the Control Panel window, click on the [MIDI MONITOR] button.
  • 2 windows appear: MIDI TRAFFIC MONITORing — YesXR -and- MIDI TRAFFIC (hexa) / MONITORing Terminal — YesXR. Their utilization is self-explanatory.
  • The MONITORing Terminal (a dedicated Gnome Terminal) prints/displays the MIDI Data (System Exclusive and/or Any MIDI messages) received from the selected ALSA MIDI port as HEXAdecimal bytes.
  • If needed, you can Copy/Paste its output to a text editor for an easy reuse.
    If the length (beginning) of the output is truncated, change in the Terminal’s Preferences the number of lines value of the history.

Note: You can use this MIDI Monitor as a learning / debugging tool. It can display large Manufacturer System Exclusive data (F0h, IDh, …, …, …, F7h) as well as help you to discover Yamaha small SysEx messages (F0h, 43h, …, …, …, F7h) sent by the Electone when pressing on any specific buttons on the organ. For Electone’s buttons and commands which are part of the MIDI specifications, e.g. Notes (channel, number, velocity, aftertouch), Program Change (PC) and Control Change (CC), this Monitor will display their MIDI values (in Hexa).

• ERRORs Handling

YESXR — Yamaha Electone Simple SysEx Recorder — Errors windows (Yad version)

  • No MIDI/USB Interface ‘Detected’ or ‘Selected’!
    The above YesXR — Errors! windows can be displayed after having clicked on the [MIDI/USB I/F], [RECORD-eRAM], [SEND-eRAM], [BACKUP-mRAM] or [MIDI MONITOR] button. See above 1- [SELECTING] MIDI/USB I/F.
  • No CHOICE -or- Unexpected ERROR!
    If No CHOICE was confirmed by the Performer on the Control Panel window or a Dysfunction has occurred, the above YesXR — Oops! window is displayed and the program is quitting after a 5 seconds countdown progress bar.
* YesXR v.0.1.80 — Errors & Warnings windows — ‘Yad’ version *

Since v.0.1.80: YesXR is now warning the Performer when No File.ext was typed or selected and when the File.ext size is 0 KB (i.e. empty). This is applying for all three [RECORD-eRAM], [SEND-eRAM] and [BACKUP-mRAM] operations.

• DEBUGGING / TESTING YesXR
  • From within your File Manager, double-click on YesXR-0.x.yy.sh file, a system window opens and then click on [Run in a Terminal] button (instead of just [Run] for normal operation).
  • This is opening a dedicated Debugging Terminal (its window is maximized by default) indicating YesXR’s version as well as the script’s GUI Control Panel on top of it.
  • Proceed as per above for [MIDI/USB I/F], [RECORD-eRAM], [SEND-eRAM], [BACKUP-mRAM] or [MIDI MONITOR] operation.
  • Report any issue (well documented) you could face to when using YesXR with your preferred GNU/Linux distribution.

YESXR — Yamaha Electone Simple SysEX Recorder — Testing & Debugging Terminal (Yad version)

⇒ For reporting Bugs:
  • In the Control Panel window, click on the Contact URL under ⇒ About YesXR under GNU GPL 3 and fill in the Contact form on the web site.

♦ Download YesXR — ‘αlpha version’ (GNU/Linux)

• 2021/05/16  -for-  ‘Yad’ versions either = 0.40.x or ≥ 10.1.0 (GTK+ v.3.24.20/29)
   Download: ==>  YESXR v.0.1.80  (~ 13 KB zipped archive)

  • MIDI MONITOR: functionality added. It prints MIDI Data (System Exclusive and/or Any MIDI messages) received from the selected ALSA MIDI port as HEXAdecimal bytes in a dedicated Monitor (Gnome Terminal).
  • Many improvements and some cosmetic changes.

NOTE: After a successful download on your GNU/Linux PC, unzip this zipped archive and extract its 2 files YesXR-0.1.80.sh (script) and yesxr_logo-small.png (image) in the folder of your choice somewhere under your /home/user directory.
YesXR being +/- a portable software, you can also put its 2 files on a USB stick and plug it into one of the USB ports (≥ v.2) of your GNU/Linux PC, as long as both ‘Yad’ and ‘Alsa-Utils’ are installed on the host PC.

IMPORTANT: With your System File Manager, verify/change if necessary the ‘Properties’ of ‘YesXR-0xyz.sh’ under the ‘Permissions’ tab (on your distribution the content of this window could look different):
  • Proprietary: Yourself with full access (read/write)
  • Group: Yourself with full access (read/write)
  • Execution: √ Allow the execution of this file as a program!

• Change Log History

– 2021/05/08  -for-  ‘Yad’ versions either = 0.40.x -or- ≥ 9.3.0 (GTK+ v.3.24.20/28)
    Download: ==>  YESXR v.0.1.70  (~ 12 KB zipped archive)
  • ‘White Space’: Now all authorized characters, including white spaces, in the System File Manager are properly handle by YesXR for both Directory/Folder and File names.
  • Minor tweaks and improved embedded source code documentation.
– 2021/05/03  -for-  ‘Yad’ versions either = 0.40.x -or- ≥ 9.3.0 (GTK+ v.3.24.20/28)
    Download: ==>  YESXR v.0.1.68  (~ 12 KB zipped archive)
  • Maintenance release: Fixed some error detection regressions, reordered the action buttons and made few cosmetic adjustments.
  • Known issue: Currently YesXR cannot handle neither Directory/Folder nor File names containing ‘WhiteSpace’!
    This annoying problem will be fixed with the next release of YesXR.
– 2021/04/28  -for-  ‘Yad’ versions either = 0.40.x -or- ≥ 9.3.0 (GTK+ v.3.24.20/28)
    Download: ==>  YESXR v.0.1.66  (~ 12 KB zipped archive)
  • Control Panel: Now displays the last Action done with the File.ext used and its size.
  • Technical tweaks for a better compatibility between the Yad versions and across the different GNU/Linux distributions.

YESXR v.0.1.66 — Control Panel with YAD v.0.40.0 (Linux Mint v.20) & v.9.3.0 (Manjaro Linux v.21)

– 2021/04/23  -for-  ‘Yad’ versions either = 0.40.x -or- ≥ 9.3.0 (GTK+ v.3.24.20/28)
    Download: ==>  YESXR v.0.1.63  (~ 11 KB zipped archive)
  • Control Panel: now displays the MIDI/USB I/F which was selected by the Performer.
  • Additional Errors Windows: display messages when No file typed or No file selected in the File selection windows during [Backup-Mdr] – [Record-Ram] & [Send-Ram] operations.
  • Countdown Bar: added back a Work in Progress indication for both [Backup-Mdr] and [Record-Ram] operations.
  • Minor technical tweaks & bugs fix.
– 2021/04/18  -for-  ‘Yad’ versions either = 0.40.x -or- ≥ 9.1.0 (GTK+ v.3.24.20/28)
    Download: ==>  YESXR v.0.1.60  (~ 11 KB zipped archive)
  • Fixed YAD versions compatibility issue between them and across distributions.
    Now YesXR can be used with Yad versions between at least 0.40.0 (released in November 2017) & 9.1.0 (released in March 2021). This fix is a ‘compromise’ until the number of active YAD versions in circulation will be lesser and only closer to the latest releases. The look of YesXR can be slightly different from one distribution to an other one.
– 2021/04/15  -for-  ‘Yad’ version = 0.40.x (GTK+ v.3.24.20)
    Download: ==>  YESXR v.0.1.52  (~ 11 KB zipped archive)
  • Added the capability to Backup/Record All-RAM (Bulk Dump data) directly from the Floppy disks of the physical Yamaha MDR (Music Disk Recorder) ‘vintage’ devices (MDR-2 / MDR-3 / MDR-4 / MDR-10). This is allowing the performer to reuse his/her existing Electone All-RAM library with YESXR.
    – Today: MDR ⇒ MIDI/USB I/F ⇒ YESXR / YESXR ⇔ USB/MIDI I/F ⇔ ELECTONE
    – Yesterday: MDR ⇔ MIDI I/F ⇔ ELECTONE / ELECTONE ⇔ MIDI/USB I/F ⇔ YESXR
  • Very Hot Issue: Too many active YAD versions in circulation among the distributions!
    YESXR is not fully compatible with YAD versions ≥ 1.0 up to today v.9.x! The Yad & Distributions developers are just getting me totally crazy!
    Investigations are in progress
    to try to find a viable and medium term solution…
– 2021/04/12  -for-  ‘Yad’ version = 0.40.x (GTK+ v.3.24.20)
    Download: ==>  YESXR v.0.1.43  (~ 10 KB zipped archive)
  • Improved Errors messages for the MIDI/USB Interfaces; i.e. Not detected & Not selected
  • Minor technical and cosmetic tweaks
– 2021/04/08  -for-  ‘Yad’ version = 0.40.x (GTK+ v.3.24.20)
    Download: ==>  YESXR v.0.1.40  (~ 10 KB zipped archive)
  • Added a MIDI/USB I/F Selection window — Choose a specific pair of In/Out ports among multiple MIDI/USB Interfaces/Ports (rather than being limited to the 1st listed one)
  • Fine tuned Progress Bar/Window for both Recording and Sending
  • Fine tuned the program reactivity
– 2021/04/01  -for-  ‘Yad’ version = 0.40.x (GTK+ v.3.24.20)
    Download: ==> YESXR v.0.1.33 (~ 23 KB zipped archive)
  • Major change from GxMessage to Yad dialogs
  • Terminal is not used anymore for normal operation (just for testing and debugging purpose)
  • Added File Selection Window for both Recording and Sending
  • Added Progress Bars for both Recording and Sending
  • Fine tuned the errors handling
– 2021/03/21  -for-  ‘Gxmsg’ version / POC (Proof of Concept)
    Download: ==> YESXR v.0.1.24 (~ 2.1 KB zipped archive)
  • Minor GUI and names updates
  • Minor technical tweaks
  • Timing adjustments for older MIDI/USB I/Fs

♦ It’s MANDATORY!

For reliable MIDI Messages Transfer including System Exclusive (SysEx) Data:
 – Choose modern Class Compliant devices versus Legacy ones which need dedicated drivers.
 – Use only very good quality MIDI/USB Interfaces from well-known brands.
 – If using USB 3 ports, make sure they are compatible with USB 2 mode.
 – Avoid all CHEAP and DIRTY Interfaces!

MIDI Tutorial — to learn more about this magical music thing.

♦ Compatible YAMAHA ELECTONE
‘Vintage’ Series: ~ 40 Models (1986-to-2001)

Accordingly to their technical specifications, the Yamaha Electone ‘Vintage’ Series hereafter should be fully compatible with YESXR.
This MIDI utility software has been fully tested under Linux MINT 20 (Ubuntu 20.04 LTS base) and MANJARO Linux 21 (Arch rolling release base) -but only- with the Yamaha Electone HX, HS & US Series and the Yamaha MDR-3 device peripheral.
Please, consult the User’s Guide or Owner’s Manual of your Yamaha Electone Series and Music Disk Recorder for the detail of the recordable All-RAM Bulk Dump.
⇒ Should you have any question, feedback and/or suggestion, please feel free to contact me through the Contact Form.

Note: Not All Yamaha Electone Series/Models were marketed in All Countries.
The (Date) is the date of the 1st Release accordingly to Yamaha’s official documentation.

– ELECTONE ‘CHX’ Series (no GM mode): CHX-1 (1986)

– ELECTONE ‘HX’ Series (no GM mode): HX-1 / HX-3 / HX-5 (1986)

– ELECTONE ‘HS’ Series (no GM mode): HS-8 / HS-7 /HS-6 / HS-5 / HS-4 (1987)

– ELECTONE ‘US’ Series (no GM mode): US-1 / US-xyz (1988/89)

– ELECTONE ‘HE’ Series (no GM mode): HE8 / HE6 / HE4 / HE3 (1989)

– ELECTONE ‘HC’ Series (no GM mode): HC4 / HC2 (1989)

– ELECTONE ‘ELxx’ Series (specific GM mode):
  • EL-90 / EL-70 (1991) ⇒ EL-87 (1995)
  • EL-60 / EL-40 (1991)
  • EL-50 (1991) ⇒ EL-57 / EL-37 (1998/96)
  • EL-28 / EL-25 (1993/92)
  • EL-27 / EL-20 (1993/92)
  • EL-15 / EL-7 (1992)
– ELECTONE ‘ELxxx’ Series (specific GM & GX modes):
  • EL-900 / EL-900m (1998/2000)
  • EL-700 / EL-500 (1999)
  • EL-400 / EL-200 / EL-100 (2000/2001)

– ELECTONE ‘OTHER’ Series: To Be Confirmed…

One example: YESXR (Yamaha Electone Simple SysEx Recorder) is fully compatible with the Electone HS Series

♦ YESXR.sh OPERATION — Old ‘Gxmsg’ version

NOTE: This ‘GxMessage’ version of YesXR is now ‘OBSOLETE’!
It was used as a POC (Proof of Concept) for the project.

Nevertheless, if you want to run it successfully:

  • The Gxmessage v. ≥ 3.4.3 and Alsa-utils v. ≥ 1.2.2 software packages must be installed in your GNU/Linux operating system.
• RUNNING ‘yesxr-0xyy.sh’ file (0.x.yy = version number)
  • From within your File Manager, double-click on YESXR-0xxx.SH file and then click on Run in a Terminal button.
  • This will open a dedicated Terminal as well as the script GUI on top of it.
  • In this article I’m using a Terminal with width = 90 x height = 30. Feel free to change these dimensions as you want.
• QUITTING the Script or CANCELLING Record/Send (before Start)
  • Click on the QUIT-Test button.
  • Confirm your choice by clicking again on QUIT-Test.
  • You can also cancel your RECORD or SEND choice by clicking on QUIT-Test when on the second screen you are asked to confirm your Previous CHOICE.

Note: QUIT-Test is also useful for testing the connected MIDI/USB Interfaces to your PC without having to use neither the RECORD-Bulk-Dump nor the SEND-Bulk-Dump buttons. The recognized MIDI/USB I/Fs will be displayed after having clicked twice on QUIT-Test or when on the second screen you are asked to confirm your Previous CHOICE.

• MANAGING Files

The default used file is ‘electone.xram’ (binary file) and it’s automatically saved in the same ‘folder’ than the YESXR.sh script. As its ‘name.ext’ and ‘folder’ are hard-coded into the script, they cannot be changed with YESXR.sh. You will have to use your System File Manager for handling different versions of your *.xram files and for building your Electone ‘All-RAM’ library.

• RECORDING -Bulk Dump- from your Electone
  • Click on the RECORD-Bulk-Dump button.
  • Confirm your choice by clicking again on this button (or on QUIT-Test to exit).

YESXR — Yamaha Electone Simple SysEx Recorder — ‘RECORD’ All-RAM Bulk Dump (animated)

– Your are DONE!
• SENDING -Bulk Dump- to your Electone
  • Click on the SEND-Bulk-Dump button.
  • Confirm your choice by clicking again on this button (or on QUIT-Test).

YESXR — Yamaha Electone Simple SysEx Recorder — ‘SEND’ All-RAM Bulk Dump (animated)

– Your are DONE!
• Managing ERRORS
  • YESXR.sh is able to detect blocking issues.
  • Note: Each time you connect or disconnect MIDI/USB Interface·s to/from your GNU/Linux computer, you will have to run YESXR.sh again.
    Keep in mind that the Device MIDI ports numbers (hw:x,y,z) could/will change from one user’s session to an other one.

YESXR — Yamaha Electone Simple SysEx Recorder — ‘RECORD/SEND’ Error – NO MIDI/USB I/F! (animated)

– If NO MIDI/USB I/F is connected to your PC or recognized by YES-XR either during RECORDING or SENDING or QUITTING
  • The Terminal will display:

    • => ERROR! NO MIDI/USB I/F detected!
      Please, verify All your MIDI connections!
      Now, press [Enter] to QUIT!
– If during RECORDING the received ‘ALL-RAM Bulk Dump’ flow is empty:
  • The Terminal will display under:
    • >>>>>>>>>>>> PLEASE…. WAIT….. >>>>>>>>>>>>
      The MIDI Bulk Dump transfer can take a while…
      ⇒ ‘0 bytes read’
– If during SENDING the ‘electone.xram’ file is not present in the YESXR.sh folder:
  • The Terminal will display under:
    • >>>>>>>>>>>> PLEASE…. WAIT….. >>>>>>>>>>>>
      The MIDI Bulk Dump transfer can take a while…
      ⇒ ‘cannot open electone.xram – No such file or directory’