The MDR disk format is very close to a standard MS-DOS format. Some OS or computers refuse to read these disks when they have been formatted on the MDR, because the format is not exactly one of the standard DOS formats. This is not a problem: format a floppy disk on your computer and then record it with your MDR. Such a floppy disk is readable on your computer.
The 40 songs are recorded in files named MDR_00 to MDR_39. Each song has two data files (or only one of them) with this name:
The B00 file is written on the floppy disk when you press "M" and "Record" keys. It is also written when you record your performance with "Record" and then "Play" (not "Custom Play").
When the B00 file is read, the MDR displays a dash moving from rightto left. The dash moves from left to right when the file is written.
When you use the "Custom Play" button to read a song, the B00 file of the song is not read, only the EVT file is read.
The EVT file IS NOT A MIDI file, you can't read it with your MIDI software.I'm writing a program to convert EVT file to MIDI file, I hope it will be ready soon.
I spend a lot of hours on my hex editor to discover this information. I only examined files from EL40 (my Electone) and EL60/EL70/EL90 (at my Yamaha music school). The files have the same format, some part of them are simply not used on the "small" models.
The BOO file contains all the settings of the Electone:
The file contains a MIDI message called System Exclusive (SysEx) which begins with the hex bytes : "F0 43 70 78 00" or "F0 43 70 70 00" and ends with "F7". This message is listed at the end of the Electone manual as "BULK DUMP DATA".
The MIDI SysEx messages are just containers for data. The structure of the data inside these messages is not described in the MIDI standards, it depends on the MIDI instrument that sends it.
Structure of a BULK DUMP DATA:
All the data blocks have the same layout:
The block header bytes are:
It always contains 16 registrations. It also contains the registration sequence that you can use with the "User shift" mode.
For each registration, the following settings are recorded:
Depending on the Electone model, 4 or 16 user voices are recorded. All the settings you can do are recorded, a voice name is also recorded.
All settings of 16 user flutes are recorded here.
All settings of the user patterns: U1A, U1B, U1C, U1D, U2A, U2B ... U8D, U1F, U2F ... U8F
This block contains 4 sequences of rhythm. Each steps of a sequence refers to a user or preset rhythm, in normal or fill-in mode.
****************************************************************************** ***** FORMAT DES FICHIERS .B00 ***** ****************************************************************************** FORMAT GENERAL DU FICHIER: 0000 ENTETE MIDI: 0xf0 0x43 0x70 0x78 0x00 (Bulk Dump Data) 0005 MODELE: 0x3b-EL40 0x3e-EL60 0x35-EL70 0x36-EL90 0006 BLOC TYPE 0 (REGISTRATIONS) 0D01 BLOC TYPE 1 (USER VOICES) 29C8 BLOC TYPE 2 (USER FLUTES) (sauf EL40/60) 2ACF BLOC TYPE 4 (SEQUENCES) (sauf EL40) 2E96 BLOC TYPE 3 (USER PATTERNS) (sauf EL40) .... FIN MESSAGE MIDI: 0xf7 ------------------------------------------------------------------------------ FORMAT D'UN BLOC: ------------------------------------------------------------------------------ +0000 Entete de bloc X0=type de bloc X1=0x?? X2,X3= taille des donnees du bloc ( X2 + 128*X3 ) X4=0x00 X5=0x00 +0006 Donnees du bloc +.... Checksum des donnees du bloc (complement a 7F de la somme modulo 128) ------------------------------------------------------------------------------ FORMAT BLOC TYPE 0: REGISTRATIONS ------------------------------------------------------------------------------ +0000 16 REGISTRATIONS UK1,LK1,UK2,LK2,LEAD,PED1,PED2: X0=T???SSSS : Tone Vib + Section X1=?VVVVVVV : volume 0x7f- 0 0x2c- 1 0x28- 2 0x24- 3 0x20- 4 0x1d- 5 0x1a- 6 0x17- 7 0x14- 8 0x12- 9 0x10-10 0x0e-11 0x0c-12 0x0b-13 0x0a-14 0x09-15 0x08-16 0x07-17 0x06-18 0x05-19 0x04-20 0x03-21 0x02-22 0x01-23 0x00-24 X2=??EEEEFF : Effet + Feet 0x0-PRE 0x0-PRE 0x1-OFF 0x1-16' 0x2-TRM 0x2-8' 0x3-CEL 0x3-4' X3=VL???DDD : user Vib + to Lower + vib Depth X4=?????TTT : Tone 0x0- 0 0x1-+1 0x2-+2 0x3-+3 0x4-?? 0x5--3 0x6--2 0x7--1 X5=??SSSDDD : vib Speed + vib Delay (sauf PED1 et PED2) X6=???????? (LEAD seulement): ? RYTH: X0=PL??SSSS : perc Ped + perc Lower + Section X1=?VVVVVVV : volume X2=AVVVVVVV : Auto var. + Volume accomp. X3=?VVVVVVV : ? X4=??TT???? : Type accomp (1,2,3 ou 4) X5=TTTTTTTT : Tempo - 40 X6=S??????? : Solostyle X7=K?MMAAPL : Knee + MOC (OFF,1,2,3) + ABC (OFF,single,fing.,cust.) + mem SUSTAIN: X0=ULP?UUUU : on/off U,L,P + U.sustain X1=PPPPLLLL : P.sustain + L.sustain X2=???????? : ? FOOT SWITCH: X0=???RR?FF : Rythm + Foot swtich 0x0-???? 0x0-OFF 0x1-STOP 0x1-RYTHM 0x2-END 0x2-GLIDE 0x3-FILL 0x3-???? X1=???D?L?U : Foot switch Glide: Lead + Lower + Upper X2=???????? : ? REVERB: X0=?RRRRRRR : reverb generale (volume) TREMOLO:X0=T???????: FAST ON/OFF YY2: (24 octets) UPPER FLUTE, LOWER FLUTE: X0=?FXXXYYY : ON/OFF + 8' + 16' X1=??XXXYYY : 4' + 5'1/3 X2=??XXXYYY : 2' + 2'2/3 X3=??XXXYYY : 1' + 1'3/5 X4=??XXXYYY : attack 2'2/3 + 4' X5=??CCCYYY : click + attack 2' X6=??RRRLLL : Rsp (6,5,...,1,0) + Lng X7=TVVVVVVV : TRM + Volume SECTIONS UK1, LK1, UK2, LK2: 14 * IIIIIIII : instrument de chacune des 14 sections section 0: (2) section 1: (1) section ... section D: Strings SECTIONS LEAD: 5 * IIIIIIII : instrument de chacune des 5 sections section 0: (1) section 1: Trumpet section 2: Oboe section 3: Flute section 4: Violin SECTIONS PED1, PED2: 5 * IIIIIIII : instrument de chacune des 5 sections section 0: (1) section 1: Tuba section 2: OrganBass section 3: E.Bass section 4: ContBass SECTIONS RYTHME: 12 * RRRRRRRR : rythme de chacune des 12 sections section 0: (2) section 1: (1) section 2: section 3: section 4: section 5: section 6: section 7: section 8: section 9: section A: March section B: Waltz YY3: (23 octets) +0CA0 YY4: (3 octets) +0CA3 REG SEQUENCE : 80 * RRRRRRRR : liste des registration (numero - 1) +0CF3 YY5: (1 octet) ------------------------------------------------------------------------------ FORMAT BLOC TYPE 1: USER VOICES ------------------------------------------------------------------------------ +0000 USER 1 a 4 (16 pour EL70/90): (0x1cc=460 octets) X0= numero X1-X17: nom ------------------------------------------------------------------------------ FORMAT BLOC TYPE 2: USER FLUTES ------------------------------------------------------------------------------ +0000 USER FLUTE 1 a 8 +0040 +0080 USER FLUTE 9 a 16 +00C0 ------------------------------------------------------------------------------ FORMAT BLOC TYPE 4: SEQUENCES ------------------------------------------------------------------------------ +0000 SEQUENCES 1 a 4: 120 * ( XX YY ) XX : PNNNNNNN: user/Preset, Numero YY : ???SSSSF: Section Preset, Fill ------------------------------------------------------------------------------ FORMAT BLOC TYPE 3: USER PATTERN ------------------------------------------------------------------------------ +0000 Description des instruments (pistes) des pattern: U1A, U1B, U1C, U1D, U2A, U2B ... U8D, U1F, U2F ... U8F: TTTTTTTT : nombre de temps (-1) dans la mesure 16 * ?IIIIIII : instrument par piste X0=OFFSETLO : offset premiere mesure par rapport au debut X1=OFFSETHI : de la zone USER PATTERN X2=OFFSETM2 : offset mesure 2 par rapport au debut de la 1 X3=???????? : ? LONG: X0,X1= taille de la description des mesures (X0+256*X1) YY10: (0x28 octets) MESURES: [temps] [instrument] [instrument] ... 0xff temps: 0x80=1er temps 0x81=1er temps + 1/24 temps ... 0x98=2eme temps ... 0xb0=3eme temps ... 0xc8=4eme temps ... 0xff=fin de la mesure instrument: 0AAAPPPP = Accent + Piste Y11: (2 octets)
<<< I have to write this section >>>
B00.EXE is a program that can read .B00 file. It generates a text listing of all the settings: registrations, flutes, patterns, sequences,...
For EL40/EL28 users (and other models which don't have the rhythm programmer): Most of the songs on Yamaha disks joined with score books can't be used on your Electone because they use programmed rhythm. With B00.EXE, you can convert these songs and play them on your Electone ! --> see bellow "Converting programmed rhythm"
B00.EXE is a very old DOS program that I wrote in 1994, but I'm still using it under Windows 95. It has no graphical user interface, you have to use it at the MS-DOS prompt. Experienced windows users can create a .BAT command file calling B00.EXE with correct parameters, and then create a registry entry for the .B00 files. --> see bellow "Using B00.EXE from Windows Explorer"
The exact syntax is:
B00 -xxx b00_file1 b00_file2 ...
where xxx are one or more of the following options:
There are two ways of playing drums on the Electone:
When recording on a floppy disk:
The user defined drum patterns and sequences are recorded with the registrations in the B00 file. When you use on of these user rhythms, you record only the buttons you press to start the rhythm, not each key.
The EL40 and other ELs without the rhythm programmer ignore the drum patterns and sequences recorded in the B00 files. Then they play the song with a standard "March1" rhythm instead of the programmed rhythm. But these ELs can play percussion on keyboard and record them.
The B00.EXE program can convert the drum patterns and sequences of a B00 file to an EVT file playing keyboard percussion. You just have to start the song on your MDR and play melody and chords on the keyboards.
The program is not very easy to use, so follow carefully the steps:
CD \ELSOFT
COPY A:MDR_02.B00 MYSONG.B00
b00 -o MYSONG.B00 > MYSONG.TXT
notepad MYSONG.TXT
notepad START.TXT
COPY START.TXT+MYSONG.SQ1+MYSONG.SQ2+END.TXT MYSONG.GEN
GEN MYSONG.GEN
COPY MYSONG.EVT A:MDR_01.EVT
COPY MYSONG.B00 A:MDR_01.B00
EXIT
The song is now ready ! Before playing you had to do an additional setting (do it each time you switch your Electone on):
After a lead-in measure with 4 clicks, the rhythm starts.
If you want to slow down the tempo, don't use the tempo knob, it has no effect. Use instead the tempo adjustment of the MDR:
With an initial tempo of 120, set the MDR to 80(%) and you'll get a playing tempo of 120*0.8 = 96.
If you are working on a very long piece with two or more sequences, you can build one song per sequence for training, and a song with all sequences for playing.
Example of a song with 3 sequences, use the following DOS commands:
COPY START.TXT+MYSONG.SQ1+END.TXT MYSONG1.GEN COPY START.TXT+MYSONG.SQ2+END.TXT MYSONG2.GEN COPY START.TXT+MYSONG.SQ3+END.TXT MYSONG3.GEN COPY START.TXT+MYSONG.SQ1+MYSONG.SQ2+MYSONG.SQ3+END.TXT MYSONG.GEN GEN MYSONG1.GEN GEN MYSONG2.GEN GEN MYSONG3.GEN GEN MYSONG.GEN COPY MYSONG1.EVT A:MDR_01.EVT COPY MYSONG1.B00 A:MDR_01.B00 COPY MYSONG2.EVT A:MDR_02.EVT COPY MYSONG2.B00 A:MDR_02.B00 COPY MYSONG3.EVT A:MDR_03.EVT COPY MYSONG3.B00 A:MDR_03.B00 COPY MYSONG.EVT A:MDR_04.EVT COPY MYSONG.B00 A:MDR_04.B00
The EVT files created here are very simples, you can add a lot a things in the GEN file to enhance the EVT file:
See the description of the EVT.EXE and GEN.EXE programs !
Put the files B00WIN.BAT and B00.REG in the C:\ELSOFT directory
EVT.EXE |
<<< I have to write it >>>
GEN.EXE |
<<< I have to write it >>>
MEVT.EXE |
This program is easier to use !
CD \ELSOFT
COPY A:MDR_02.B00 MYSONG.B00
MEVT MYSONG.EVT
Please notice: