Frameset nachladen Startseite English Pages

EMU48 Programme:
Nützliche Utilities nicht nur Musiker

Inhalt:

  1. Einleitung
  2. Moonphase
  3. MIDI Utils
  4. Yamaha XG Utils
  5. Korg 168 Utils

1. Einleitung:

Auf dieser Seite finden Sie einige nützliche Programme von mir, welche auf jedem HP48 S/SX/G/GX (auch emuliert mit EMU48) laufen sollten. Bis auf 'Moonphase' sind diese Programme kleine MIDI-Utils für Musiker, die etwa 'Nibblized MIDI DATA', zusammengesetzte MIDI Eingabewerte MSB/LSB, XG-SysEx-Parameter für die Änderung der Stimmungsparameter von XG-Synths oder die Control-Change-/MIDI-Kanal-Nr. für die 617 MIDI-Parameter des Korg 168 RC berechnen müssen.

Alle Utils sind so programmiert, daß unsinnige Eingabewerte zu Fehlermeldungen führen, welche auf die jeweils gültigen Eingabewertebereiche hinweisen, wobei diese Fehlermeldungen übrigens durch einen Klick auf 'ON' bzw. drücken der Taste 'ESC' wieder ausgeblendet werden können. Der jeweils gewählte Eingabewert wird beim Ergebnis mit angezeigt - insofern sollten diese Utils relativ narrensicher zu bedienen sein.

Mit der HP48 View-Funktion (beim GX Right-Shift View, beim SX Left-Shift View) kann zudem die Funktion der einzelnen Programme im Klartext angezeigt werden (siehe die nachfolgenden Screenshots, allerdings nicht bei den Programmen Moonphase), was das Problem der recht kurzen kryptischen Programmnamen entschärft.

Auf meiner englischsprachigen EMU48-Seite www.studio4all.de/start.html gibt es meine nachfolgenden Programme auch in englischen Sprachversionen.

Wichtiger Hinweis für EMU48-Einsteiger:
Auf der nächsten Seite Easy EMU48 können Sie auf einfache Weise einen fertig vorkonfigurierten 'Werners GX' inklusive aller hier vorgestellten Programme downloaden! Ein separater Download der Programme auf dieser Seite ist dann nicht mehr nötig.

Zurück zur Übersicht

2. Moonphase

Drei kleine Programme zur Berechnung von Phase und Alter (bezogen auf den letzten Neumond) des Mondes.

Preview von MPHASE:

Preview MPHASE

Ursprünglich von Dan Gerson entwickelt und von Arnold Moy verbessert, habe ich dieses nützliche Programm um (übrigens überaus fehlerresistente) etliche zusätzliche Ein- und Ausgaberoutinen in 6 verschiedenen Sprachen (Englisch, Deutsch, Französisch, Spanisch, Portugiesisch und Italienisch) zur Auswahl von Tag und Uhrzeit erweitert, sodaß man diese Berechnungen nun für beliebige Tage und Uhrzeiten ab dem 15. Oktober 1582, dem ersten Tag des Gregorianischen Kalenders, bis hin zu zukünftigen Tagen durchführen kann :-)

MPHASE berechnet die Mondphase in grafischer Form und gibt sie in Form eines virtuellen Mondes auf dem HP48 Display aus.
Zum Starten gehen Sie bitte in das Verzeichnis MOON, anschließend in das Sprachverzeichnis Ihrer Wahl und klicken Sie auf Taste MPHA.
MTIME berechnet das Alter des Mondes für den gewählten Tag/Uhrzeit im Format dd.mm.ss und gibt zusätzlich die beleuchtete Mondfläche in Prozent aus (klicken Sie auf Taste MTIM).
MFRAC arbeitet ähnlich wie MTIME, gibt Alter und beleuchtete Fläche aber als Faktoren von 0 bis max. 1 aus (klicken Sie auf Taste MFRA).

Wichtig für alle drei Programme:
Für genaue Ergebnisse müssen Sie in der Variablen TMZN (Time Zone) erst die aktuelle Zeitdifferenz Ihres Ortes zur MEZ (Mitteleuropäische Standardzeit) in Stunden eingeben, wobei auch die Unterschiede zwischen Sommer- und Winterzeit beachtet werden müssen!

Installation:
Laden Sie (bei EMU48: 'Load Object') dieses Verzeichnis (MOON) in Ebene 1 und speichern Sie es unter dem Namen 'MOON'.

Download von 'MOON' starten (ZIP; 15 kB):

Download von 'MOON' starten

Zurück zur Übersicht

3. MIDI Utils

Sechs kleine Programme für die Berechnung von MIDI-Parameter:

Übersicht der MIDI-Programme

XMLD (X > MSB/LSB dec):
Wandelt einen dezimalen Eingabewert von 0 bis 16.383 in zwei MIDI Bytes (MSB und LSB) um, wobei diese beiden Bytes dezimal ausgegeben werden, was z.B. für manche RPN- oder NRPN-Befehle nützlich ist.

XMLH (X > MSB/LSB hex):
Wandelt einen dezimalen Eingabewert von 0 bis 16.383 in zwei MIDI Bytes (MSB und LSB) um, wobei diese beiden Bytes hexadezimal ausgegeben werden, was z.B. für manche SysEx-Befehle nützlich ist (beispielsweise etliche XG-Effekt-Parameter).

NIB2 (X > 2 Nibbles):
Wandelt einen dezimalen Eingabewert von 0 bis 255 in zwei MIDI Nibbles (hexadezimal) um, was z.B. für den XG SysEx-Befehl PART DETUNE nützlich ist.

NIB4 (X > 4 Nibbles)
Wandelt einen dezimalen Eingabewert von 0 bis 65.535 in vier MIDI Nibbles (hexadezimal) um, was z.B. für den XG SysEx-Befehl XG MASTER TUNE nützlich ist.

FUBY (X > Full Byte):
Wandelt einen dezimalen Eingabewert von 0 bis 255 (=Full Byte) in sein hexadezimales Äquivalent um.

MIBY (X > MIDI Byte):
Wandelt einen dezimalen Eingabewert von 0 bis 127 (=MIDI Byte) in sein hexadezimales Äquivalent um.

Installation:
Laden Sie (bei EMU48: 'Load Object') dieses Verzeichnis (MIDI) in Ebene 1 und speichern Sie es unter dem Namen 'MIDI'.

Download von 'MIDI' starten (ZIP; 2,9 kB):

Download von 'MIDI' starten

Zurück zur Übersicht

4. Yamaha XG Utils

Drei kleine Programme für die Berechnung der Stimmungs-Parameter eines XG-Synths:

Übersicht der XG-Programme

TUNE (XG Master Tune):
Wandelt einen dezimalen Eingabewert von -102,4 bis +102,3 (Cent) in die vier MIDI Nibbles 0W,0X,0Y,0Z um, welche beim SysEx-Befehl XG MASTER TUNE (F0,43,10,4C,00,00,00,0W,0X,0Y,0Z,F7) zur Festlegung der Grundstimmung bezogen auf A1=440Hz benötigt werden.

DETU (XG Part Detune):
Wandelt einen dezimalen Eingabewert von -12,8 bis +12,7 (Hz) in die zwei MIDI Nibbles 0Y,0Z um, welche beim SysEx-Befehl XG PART DETUNE (F0,43,10,4C,08,NN,09,0Y,0Z,F7) zur Festlegung der Abweichung der Stimmung von Part NN bezogen auf die per XG MASTER TUNE definierte Grundstimmung benötigt werden.

CENT:
Ermittelt die Abweichung zwischen zwei Frequenzen in Cent mit einer Genauigkeit von 1/100 Cent.
Dieses kleine aber sehr feine Programm ist z.B. dann sehr nützlich, wenn man an den SCALE TUNING Einstellungen (siehe Seite PART SETUP meiner Unterseiten XG Programmierung) für einen XG-Multipart 'spielen' will, um beispielsweise auf einem Part ein 'reinen' C-Dur-Akkord erklingen zu lassen.

Beispiel zu CENT:
Eine 'reine' Quinte etwa zu C1 (130,81278 Hz bei A1=440Hz) errechnet sich nach der Formel 'Frequenz des Grundtons * 1,5', bezogen auf C1 ergibt das die Frequenz 130,81278*1,5=196,21917 Hz. Die 'wohltemperierte' Quinte (also G1) eines XG-Klangerzeugers hat dagegen nur 195,99772 Hz (siehe Referenztabelle 10 meiner Unterseiten XG Programmierung).
Der Ton 'G' muß also mit der SCALE TUNING G Einstellung um eine 'gewisse Centzahl' angehoben werden, damit er zu einer 'reinen' Quinte von C wird.
Genau diese gesuchte 'gewisse Centzahl' kann mein Programm CENT leicht berechnen:
1. Geben Sie erst 195,99772 (F0 = die 'wohltemperierte' Grundfrequenz für Ton 'G1') mit nachfolgendem 'Enter' ein
2. Geben Sie dann 196,21917 (F1 = die Frequenz von 'G1' bei 'reiner Stimmung') mit nachfolgendem 'Enter' ein
3. Klicken Sie nun auf das Programm CENT (oder einfach Taste 'F3' bei Verwendung von Werner's GX)
In Ebene 1 wird nun die Centzahl ausgegeben, um welche der Ton 'G' per Part-Einstellung SCALE TUNING G erhöht werden muß, damit er zu einer 'reinen Quinte' von Ton 'C' wird. Das angezeigte +/- Cent-Ergebnis (in diesem Fall +1,94 Cent) muß dabei auf ganze Stellen (also +2 Cent) gerundet werden, da mit dem Befehl SCALE TUNING keine Nachkommastellen programmiert werden können. In Ebene 3 und 2 erscheinen dabei übrigens zusätzlich (allein zu Kontrollzwecken) die vorher eingegebenen Frequenzen für F0 und F1.

Die noch fehlende 'reine' Terz zu C1 für den gesuchten 'reinen C-Dur-Dreiklang' hat mathematisch die Frequenz 'Frequenz des Grundtons * 5 / 4', bezogen auf C1 ergibt das für E1 130,81278 * 5 / 4 =163,51598 Hz. Das 'wohltemperierte' E1 eines XG-Klangerzeugers hat dagegen laut meiner Frequenztabelle sogar 164,81378 Hz. In solchen Fällen wird mein Programm CENT logischerweise negative Cent-Werte ausspucken, in diesem Fall z.B. -13,69 Cent (gerundet -14 Cent), da das 'wohltemperierte E' eines XG-Klangerzeugers ja eine höhere Frequenz als ein 'reines E' (bezogen auf C) hat und deswegen heruntergestimmt werden muß.

Wichtige Anmerkung:
Die Beschränkung der SCALE TUNING Einstellungen auf ganzzahlige Cent-Werte ermöglicht in der Praxis leider keine wirklich 'absolut reinen' Intervalle - absolut schwebungsfreie Intervalle wie etwa eine 'absolut' reine Quinte oder Terz bleiben deshalb in der Praxis leider Utopie :-(
Das hoch präzise menschliche Ohr kann nämlich Intervalle mit Abweichungen von nur wenigen 1/100 Cent (!) unterschiedlich wahrnehmen und 'lacht' sozusagen über jeglichen Versuch, ihm ein Intervall mit der maximalen XG-Genauigkeit von nur einem Cent (!) als 'rein und schwebungsfrei' unterjubeln zu wollen!
Vielleicht können bei zukünftigen XG-Synths die SCALE TUNING Einstellungen auf 1/100 Cent genau eingestellt werden (analog zur Empfindlichkeit des menschlichen Gehörs), zur Zeit ist das aber reine Utopie.

Installation:
Laden Sie (bei EMU48: 'Load Object') dieses Verzeichnis (XG) in Ebene 1 und speichern Sie es unter dem Namen 'XG'.

Hinweis für EMU48-Neulinge:
Für die Eingabe von negativen Zahlen geben Sie bitte erst die Zahl ein und klicken anschließend auf die Taste '+/-' bzw. drücken Sie Taste Y (oder F7, wenn Sie Werner's GX verwenden).

Download von 'XG' starten (ZIP; 1 kB):

Download von 'XG' starten

Zurück zur Übersicht

5. Korg 168 Utils

Übersicht:

Übersicht der Korg 168-Programme

Zwei Programme für die Berechnung der Control-Change-Nummer und des verwendeten MIDI-Kanals der 617 Parameter bei der MIDI-Fernsteuerung eines Korg 168 RC im MIDI-Modus 'Stand Alone 2', in welchem Control-Change-Befehle für die Steuerung der 617 Parameter verwendet werden.

PARA1 und PARA2 geben für einen dezimalen Eingabewert von 1-617 (Korg 168 MIDI-Parameternummer) die Control-Change-Nummer (CC) sowie den MIDI-Kanal (CH) abhängig vom eingestellten MIDI-Grundempfangskanal RX (Defaultwert=1) aus.
PARA1 (Parameter bei Typ=1) sollte dann verwendet werden, wenn beim Korg im MIDI-Setup-Menü bei 'Type' der Wert 1 eingestellt ist. In diesem Modus werden die Controlchange-Nummern von 0 bis 95 auf sieben MIDI-Kanälen (RX bis RX+7) verwendet.
PARA2 (Parameter bei Typ=2) sollte dagegen verwendet werden, wenn beim Korg im MIDI-Setup-Menü bei 'Type' der Wert 2 eingestellt ist. In diesem Modus werden nur 79 der Controlchange-Nummern von 0 bis 95 verwendet, wobei die am häufigsten verwendeten Controlchange-Nummern (0, 1, 2, 4, 7, 10, 11, 32-34, 36, 43, 64-67 und 84) nicht verwendet werden. Zudem werden dann acht MIDI-Kanäle (RX bis RX+8) verwendet.

Wichtig für beide Programme:
Beide Programme erwarten VOR DER AUSFÜHRUNG, daß in der Variablen RX der beim Korg eingestellte MIDI-Grundempfangskanal gespeichert ist - normalerweise ist das Kanal 1, weshalb in RX ebenfalls die Zahl 1 gespeichert ist. In diesem Fall werden die Kanäle 1-7 (bei Type=1) bzw. 1-8 (bei Type=2) verwendet.
Möchten Sie dagegen etwa die Kanäle 9-16 (bei Type=2) verwenden, müssen Sie erst 9 in RX speichern.

Hinweis für EMU48-Neulinge:
Wenn Sie z.B. den Wert 9 in RX speichern möchten, klicken Sie bitte nacheinander auf die Tasten '9', 'Left Shift' und 'C', wodurch die Zahl 9 in RX gespeichert wird. Wenn Sie den aktuellen Wert von RX wissen möchten, klicken Sie auf 'C', wodurch der aktuelle Wert von RX in Ebene 1 ausgegeben wird.
Wenn Sie Werner's GX verwenden, können Sie anstelle von Taste 'C' auch die Taste 'F3' verwenden (mit gleichem Ergebnis).

Installation:
Laden Sie (bei EMU48: 'Load Object') dieses Verzeichnis (K168) in Ebene 1 und speichern Sie es unter dem Namen 'K168'.

Download starten (ZIP; 1,3 kB):

Download von 'K168' starten

Zurück zur Übersicht

Zurück zur Startseite (Home)

C/O 2002-2012: Werner Ogrodnik (Cologne, Germany)