MDR Emulator+ Alpha v.0.3 – L’émulateur de MDR-3 pour Yamaha Electone

MDR Emulator+ = Projet d’émulation libre et multi-plateforme de l’expandeur MDR-3 (Music Disk Recorder) de Yamaha réalisé avec Purr Data

•En• MDR Emulator+ = Free/libre and multi-platform emulation project of the Yamaha MDR-3 (Music Disk Recorder) expander built with Purr Data (an improved version of Pure Data Vanilla)

Pour avoir une vison globale du projet, consultez les deux précédents articles sur le MDR-E+ :

Contenu de cet article / Content of this article :

  • Avant-propos / Foreword
  • Alpha v.0.3 – Améliorations apportées / Enhancements
  • Nouveau Panneau de Contrôle / New Control Panel
  • Zoom du Panneau de Contrôle / Control Panel zoom
  • MDR-E+ βêta v.0.4 / MDR-E+ βeta v.0.4

♦ Avant-propos / Foreword

•Fr• L’Alpha v.0.3 est la 3ème version fonctionnelle du projet MDR-E+.

Nous lui avons ajouté un + (plus) car maintenant le projet fait bien plus qu’émuler sur ordinateur le fonctionnement de l’expandeur MDR-3 de Yamaha. En fait, MDR-E+ étend les caractéristiques du MDR-3 tout en intégrant certaines fonctionnalités disponibles que sur le tableau de bord de l’Electone, et s’affranchit bien entendu de l’antique lecteur de disquettes.

De par sa conception modulaire combinée à l’utilisation d’objets graphiques Purr Data / Pure Data + extensions, le projet MRD-E+ – qui est un logiciel libre et gratuit – pourra être facilement adapté aux besoins en M.A.O. (Musique assistée par ordinateur) de chacun·e avec un minimum d’effort et de temps.

Rappel : Afin d’assurer un maximum de compatibilité du Projet MDR Emulator+ entre Purr Data (PRD) et Pure Data Vanilla (PDV), nous avons utilisé des bibliothèques d’objets (externals) qui sont disponibles dans ces deux environnements de programmation libres. Ce sont Cyclone, Maxlib et Zexy. Ces 3 bibliothèques sont intégrées par défaut dans PRD. Pour PDV, il faudra les importer en utilisant le plugin Deken (Help -> Find externals), intégré par défaut depuis la version 0.47.

•En• Alpha v.0.3 is the 3rd functional version of the MDR-E+ project.

We added a + (plus) because now the project does more than just emulating the operation of the MDR-3 expander. In fact, MDR-E+ extends the features of the MDR-3 while incorporating some features available on the dashboard of the Electone, and of course eliminates the need of the old floppy disk drive.

Thanks to its modular design combined with the use of Purr Data / Pure Data + extensions graphical objects, the MRD-E+ project – which is a free and libre software – can be easily adapted to the requirements of Computer-assisted music of each performer with a minimum effort and time.

Reminder: In order to ensure maximum compatibility of the MDR Emulator+ Project between Purr Data (PRD) and Pure Data Vanilla (PDV), we used object libraries (externals) that are available in these two free programming environments. These are Cyclone, Maxlib and Zexy. These 3 libraries are integrated by default in PRD. For PDV, it will be necessary to import them using the Deken plugin, integrated by default since version 0.47.

♦ Alpha v.0.3 – Améliorations apportées / Enhancements

Liste des principales évolutions / List of main developments :

  • Introduction d’un nouveau Panneau de Contrôle (Control Panel) complet, modulable, zoomable ainsi que plein écran
  • Utilisation de Modules (sous-programmes / sous-patches) afin de séparer l’interface utilisateur des modules de programmation Purr Data / Pure Data
  • Ajout de la fonction Lecture en boucle pour les modules ‘Performance Sequencer’ et ‘In/out Sequencer’
  • Ajout du module Get (Obtenir) le modèle de l’Electone HS Series (HS-8/7/6/5/4)
  • Ajout du module Memorized Registration on Electone = Changement mémoire de registration sur l’Electone HS
  • Ajout du module Expression Pedal = Contrôle du volume audio de l’Electone HS
  • Ajout du module Full Music Programmer (F.M.P.) du panneau de l’Electone HS
  • Amélioration des possibilités du module Electone HS-Series ‘Pseudo’ Keyboards
  • Ajout d’une Documentation d’utilisation
  • Correction de bogues connus
  • Optimisation du fonctionnement des différents modules
  • Amélioration de la documentation des différents modules

♦ Nouveau Panneau de Contrôle / New Control Panel

•Fr• Le Panneau de Contrôle de l’Alpha v.0.3 du MDR-E+ a été à nouveau étoffé, il intègre aussi de nouvelles fonctions, et maintenant il utilise GOP. Il est entièrement en anglais afin de rendre son utilisation internationale plus aisée.

GOP : Graph-on-Parent est une propriété des éléments d’interface graphique des sous-patches et des abstractions visibles dans le patch principal de Purr Data / Pure Data Vanilla. Cela facilite grandement l’utilisation des patchs plus compliqués.

•En• The MDR-E+ Control Panel Alpha v.0.3 has been expanded again, it also incorporates new features, and now it uses GOP. It is entirely in English in order to make its international use easier.

GOP: Graph-on-Parent is a property of the GUI elements of sub-patches and abstractions visible in the main Purr Data / Pure Data Vanilla patch. This greatly facilitates the use of more complicated patches.

Yamaha MDR Emulator+ – Alpha v.0.3 | Le nouveau Panneau de Contrôle amélioré et enrichi

•Fr• Ce nouveau Panneau de contrôle est constitué de 21 [canevas] principaux qui sont en fait des GOP (Graph-On-Parent) permis par l’utilisation de modules (sous-patches Purr Data / Pure Data Vanilla) /
•En• This new Control Panel consists of 21 main [canvases] that are actually GOP (Graph-On-Parent) enabled by the use of modules (Purr Data / Pure Data Vanilla subpatches) :
  • [pd tka-seq] = Module de commande du ‘Performance Sequencer’ en mode Toutes Les Pistes ensemble – [seq T1-T16] dans [pd sequencers]
  • [pd tk-reg] = Module de commande du ‘Current Register Sequencer’ – [seq TREG] dans [pd sequencers] — Mode SysEx (System Exclusive messages)
  • [pd id-get] = Module d’interrogation de l’Electone pour obtenir le modèle de l’orgue HS-Series — Mode SysEx
  • [pd id-mod] = Module d’affichage supplémentaire de l’ID de l’Electone
  • [pd tk-tpi] = Module de commande du TEMPO – [seq T1-T16] dans [pd sequencers]
  • [pd tk-chrono] = Module d’affichage du Chronomètre REC/PLAY – [seq T1-T16] dans [pd sequencers]
  • [pd mem-reg] = Module de commande et d’affichage des 8/16 Mémoires de Registration de l’Electone — Mode PC – Program Change
  • [pd tki-rec] = Module de commande RECORD du ‘Performance Sequencer’ en Mode Pistes Individuelles – [seq T1-T16] dans [pd sequencers]
  • [pd tki-play] = Module de commande PLAYBACK du ‘Performance Sequencer’ en Mode Pistes Individuelles – [seq T1-T16] dans [pd sequencers]
  • [pd exp-ped] = Module de contrôle de la Pédale d’Expression de l’Electone — Mode CC – Control Change
  • [pd keyboards] = Module d’affichage et de contrôle MIDI des 6 Canaux Notes de l’Electone HS-Series
  • [pd nt-display] = Module de sélection de la Source des Notes MIDI et de leur affichage Notes / Octave / Vélocité
  • [pd f-seq] = Module de commande du ‘In/Out Sequencer’ en mode Toutes Les Pistes – [seq Type 0] dans [pd sequencers] — Mode MDR = Écriture-Lecture des fichiers convertis avec [seq T1-T16 + seq TREG] / Mode MID = Lecture de fichiers SMF (Standard MIDI File) .mid, .kar ou compatible
  • [pd sq-tpi] = Module de commande du TEMPO – [seq Type 0] dans [pd sequencers]
  • [pd sq-chrono] = Module d’affichage du Chronomètre REC/PLAY – [seq Type 0] dans [pd sequencers]
  • [pd fmp] = Module de commande du Full Music Programmer (F.M.P.) du panneau de L’Electone — Mode SysEx
  • [pd f-sqx] = Module de commande du ‘SysEx RAM Sequencer’ – [seq TRAM] dans [pd sequencers] — Mode SYSEX
  • [pd file-mgr] = Module de gestion ÉCRITURE/LECTURE des fichiers vers/depuis les disques (disque dur, SSD et/ou disque-clé USB) — Mode F-SEQ = Que les fichiers du ‘In-Out Sequencer’ / Mode F-SQX = Que les fichiers du ‘SysEx RAM Sequencer’
  • [pd file-last] = Module d’affichage du dernier fichier écrit/lu vers/depuis les disques
  • [pd dt] = Module affichant la Date et l’Heure du système d’exploitation – GNU/Linux, macOS ou Windows
  • [pd license] = Module affichant la version du MDR-E+, le type de licence utilisé et un descriptif du projet
•Fr• À cela viennent s’ajouter 3 modules qui n’ont pas (besoin) de GOP et sont accessibles directement /
•En• Added to this are 3 modules that do not have (need) GOP and are accessible directly :
  • [pd sequencers] = contient tous les séquenceurs – [seq T1-T16 + TREG] / [seq TRAM] / [seq Type 0]
  • [pd sysexmsg] = contient tous les Messages SYSEX des Electone HS-Series utilisés par [pd sequencers]
  • [pd mdre-help] = regroupe les instructions d’utilisation du MDR-E+ / en français (FR) et en anglais (EN)

♦ Zoom du Panneau de Contrôle / Control Panel zoom

•Fr• Le projet MDR-E+ utilise Purr Data, un environnement libre de programmation graphique orientée objet dont le moteur est Pure Data Vanilla. Purr Data utilise la dernière technologie d’affichage HTML5 du Web pour fournir une interface graphique moderne basée sur le moteur d’exécution NW.js (à base de Chromium + Node.js).

MDR-E+ – bénéficiant ainsi de NW.js – permet à l’interface graphique du projet d’offrir à ses utilisateurs les mêmes avantages. De ce fait, le Panneau de contrôle propose 16 niveaux de zoom plus un plein écran, et cela sans aucune perte de définition.

Ci-dessous une capture d’écran zoomé+ du MDR-E+ avec focus sur le ‘Performance Sequencer’.

•En• The MDR-E+ project uses Purr Data, a free/libre object-oriented graphical programming environment powered by Pure Data Vanilla. Purr Data uses the latest HTML5 web display technology to provide a modern graphical interface based on the NW.js runtime engine (Chromium + Node.js based).

MDR-E+ – hence benefiting from NW.js – enables the project’s graphical interface to offer its users the same benefits. As a result, the Control Panel offers 16 zoom levels plus a full screen, without any loss of definition.

Below is a zoomed+ screenshot of the MDR-E+ with focus on the ‘Performance Sequencer’.

Yamaha MDR Emulator+ – Alpha v.0.3 | Le nouveau Panneau de Contrôle zoomé+

Pour mémoire : Purr Data (PRD) et Pure Data Vanilla (PDV) utilisent des gestionnaires graphiques différents, incluant les niveaux de zoom. Afin de garder le plus possible une lecture cohérente et ‘identique’ à l’écran entre ces deux environnements libres, nous avons utilisé par défaut pour le Panneau de Contrôle du MDR-E+ le niveau de zoom 8 (sur 15) de PRD qui est directement compatible avec celui 1 (sur 2) de PDV. Mais PDV est nettement moins ‘beau’, et avec la complexification de MDR-E+, il devient malheureusement de moins en moins compatible graphiquement avec PRD !

♦ MDR-E+ βêta v.0.4

•Fr• À suivre quand la βêta v.0.4 sera prête… Work in progress…

Les évolutions de la βêta v.0.4 porteront principalement sur les toutes dernières corrections de bogues, l’amélioration du fonctionnement de certains modules, et la finalisation de l’Aide Utilisateur (en français et anglais).

Nota bene : La βêta v.0.4 du MDR-E+ sera disponible au téléchargement publique et les retours d’utilisateurs seront les bienvenus…

•En• To follow when βeta v.0.4 will be ready… WIP…

Changes in βeta v.0.4 will focus on the latest bug fixes, fonctionnality improvements to some modules, and the finalization of the User Help (in French and English).

Please note: MDR-E+ βeta v.0.4 will be available for public download and users’ feedback will be welcome…