Sysexübertragung
|
Previous Top Next |
zeigt den Namen des aktuell ausgewählten MIDI Eingabegeräts an. Das kann im Menü Einstellungen geändert werden. Die Zahl nach dem Namen gibt die Anzahl der empfangenen Bytes an.
|
|
zeigt den Namen des aktuell ausgewählten MIDI Ausgabegeräts an. Das kann im Menü Einstellungen geändert werden. Die Zahl nach dem Namen gibt die Anzahl der gesendeten Bytes an.
|
|
Die Liste in der Sysex Dump empfangen Gruppe enthält Informationen über empfangene Sysexdaten (eine Zeile pro Sysex Kommando).
|
|
löscht den Inhalt der Empfangen Liste. Die Anzahl der empfangenen oder gesendeten Daten wird auf 0 zurückgesetzt.
|
|
speichert alle selektierten Sysexzeilen der Empfangen Liste in eine binäre Sysexdatei (.syx).
|
|
speichert alle selektierten Sysexzeilen der Empfangen Liste in eine lesbare und änderbare Sysexdaten Textdatei (.dmp). Die .dmp Datei enthält hexadezimale Werte.
|
|
selektieren Sie einen empfangene Sysexzeile in der Empfangen Liste und beschreiben Sie mit diesem Schalter die Bedeutung des Sysexbefehls anhand einiger weniger Datenbytes am Beginn des Sysexbefehls. Wenn später wieder ein ähnlicher Sysexbefehl ankommt (der Anfang stimmt überein), wird diese Beschreibung in der Zeile zusätzlich ausgegeben ...
|
|
zeigt einen Stern in der rechteckigen Box an wenn MIDI Daten empfangen werden. Der Stern sollte blinken, wenn die MIDI Verbindung funktioniert.
|
geben Sie einen kurzen hexadezimalen Sysexbefehl oder den Namen einer existierenden .syx oder .dmp Datei an um die Daten zu senden.
|
|
sendet die Daten die im Eingabefeld links eingegeben werden.
|
|
wählen Sie eine .syx oder .dmp Datei aus deren Inhalt gesendet wird
|
diese Combobox enthält benutzerdefinierte Sysexelemente die gesendet werden, wenn das Element selektiert wird. Die Combobox enthält einen Eintrag der die Möglichkeit anbietet, neue Sysexelemente zu definieren.
|
|
benutzerdefinierte Sysexelemente können benannt werden und einem Schalter zugewiesen werden und der Combobox hinzugefügt werden. Ein Dialog wird geöffnet, mit dem das neue Sysexelement erstellt werden kann.
|
|
Im Dialog ist Platz für eigene Schalter definiert, die dazu benutzt werden können häufig benötigte Sysexbefehle zu senden. Die Schalter zeigen den Namen des Sysexelements im Titel. Zwei Schalter sind bereits vordefiniert (Identifizieren, GM Reset). Sie können in der Datei sendsyx.txt gelöscht werden und durch eigene Sysexelemente ersetzt werden.
|
ein Sysex Befehl (Systemexklusiver Befehl) startet mit F0 (SOX), es folgen Datenbytes im Wertebereich 0-127 und das Ende des Befehls ist durch F7 (EOX) terminiert. Kurze Sysexbefehle werden benutzt um einfache Befehle mit einigen Parametern zu übertragen. Lange Sysexbefehle werden benutzt um Lieder oder Datenblöcke zu übertragen (die z.B. die aktuellen Einstellungen eines MIDI Geräts gesammelt übertragen). Da die Daten nur 7 Bit Werte sind, sind die übertragenen 8-Bit Daten meist verschlüsselt.
|
|
geben Sie in das Eingabefeld einen Sysexbefehl in hexadezimaler Form ein. Das ist die übliche Form, um in Handbüchern zu MIDI Geräten die Liste der unterstützten Befehle anzugeben. Drücken Sie den Senden Schalter oder die Return-Taste, um die Daten zum Ausgabegerät zu schicken falls, ein gültiger Sysexbefehl (F0 ... F7) angegeben ist. Es ist nicht wichtig ob die Zeichen in Groß- oder Kleinschreibung angegeben sind.
|
|
Beispiel: einige KORG Geräte unterstützen folgendes Identifizieren Kommando
|
Falls der hexadezimale Sysexbefehl Fehler enthält, piepst der Dialog und selektiert den Bereich des Textes der falsch aussieht. Nach erfolgreichem Senden antwortet das Gerät möglicherweise oder führt Aktionen aus.
|
|
Nach dem Senden der Daten, wartet GNMIDI einige Zeit, um dem Gerät genug Zeit zu geben die gesendeten Daten korrekt zu behandeln.
|
Hinweis: Wenn Sie sicher sind dass der Befehl fertig ist und das Gerät nicht mehr Zeit benötigt, können Sie die Wartezeit durch Drücken der <Esc> Taste abkürzen.
|
Sysex Dateien (mit Dateiendung .syx) enthalten einen oder mehrere Sysexbefehle. Die Dateien können sehr groß sein (z.B. Dump eines Liedes, aller Keyboardeinstellungen). Drücken Sie Datei senden und wählen Sie eine gültige .syx Datei aus, um alle gültigen Sysexbefehle in dieser Datei an das Ausgabegerät zu senden. Oder geben Sie den vollständigen Pfad der Sysexdatei in das Eingabefeld ein und drücken den Senden Schalter. Wenn die Datei existiert dann werden enthaltene gültige Sysexbefehle übertragen.
|
Nach dem Senden jedes Sysexbefehls wartet das Programm, um dem Gerät genug Zeit zu geben, die Daten zu behandeln.
|
eine .dmp Datei enthält hexadezimal formatierte Sysexdatenzeilen. Die Zeilen sehen etwa so aus:
|
Die hexadezimale Zahl samt dem Doppelpunkt vor den Sysexdaten ist optional, es genügt auch
|
in einer .dmp Datei anzugeben. GNMIDI speichert die aktuelle Datenbyteposition der korrespondierenden binären .syx Datei in der Offset-Zahl vor dem Doppelpunkt. Sie können die .dmp Datei auch ohne Rücksicht auf die Offset-Zahl ändern, die Werte werden beim lesen einer .dmp Datei nicht berücksichtigt.
|
Optional kann mit dem Rufzeichen ein Kommentar an eine Zeile angehängt werden:
|
Der Kommentar ist nicht Teil der Sysexdaten. GNMIDI fügt solche Kommentare für jeden bekannten Sysexbefehl ein. Z.B.
|
Die maximale Zeilenlänge innerhalb einer .dmp Datei ist 1024. Fügen Sie Zeilenumbrüche zwischen Datenwerten ein, damit die Zeilen kurz (und damit übersichtlicher) werden. GNMIDI schreibt 16 Werte pro Zeile.
|
Wenn die .dmp Datei ungültig formatierte Zeilen enthält, wird das Senden nicht durchgeführt und eine Fehlermeldung wird ausgegeben, welche die Fehlerzeile anzeigt.
|
Nach dem Senden von Daten einer .dmp Datei wartet das Programm einige Zeit nach jedem Sysexbefehl, um dem Gerät genug Zeit zu geben die Daten zu verarbeiten.
|
Oft benutzte Sysexbefehle können als Sysexelemente definiert werden. Sie können komfortabel durch Selektieren eines Listeneintrags oder drücken eines selbstdefinierten Schalters gesendet werden.
|
Der zweite Eintrag in der Sysex senden Combobox (herunterklappbare Liste) ist immer "Sysexelement definieren". Dieser Eintrag öffnet einen Dialog zur Definition eines neuen Sysexelementes, das zur Combobox Liste hinzugefügt wird und die ersten 5 Elemente werden mit den selbstdefinierten Schalter verknüpft.
|
Ein Sysexelement besteht aus
|
· | Sysexdaten geben Sie ein Sysexkommando F0 ... F7 in hexadezimalen Zahlen oder einen .syx oder .dmp Dateinamen ein (benutzen Sie den Schalter "Datei" um eine Datei auszuwählen).
|
· | Titel geben Sie den Titeltext für das Element in der Combobox Liste oder dem Schalter an. Benutzen Sie & um ein Tastenkürzel Alt + (nächstes Zeichen nach &) zu definieren
|
· | Wartezeit geben Sie eine Zeit in Millisekunden an, das Programm wartet diese Zeitspanne nachdem dieses Sysexelement gesendet wird (standardmäßig 5000 ms).
|
Nach der Eingabe eines kompletten Sysexelements werden die Combobox Liste und die benutzerdefinierten Schalter um das neue Element ergänzt, damit das Element gleich benutzt werden kann. Bisher kann mit diesem Dialog neue Elemente definieren. Änderung und Löschen von Elementen kann nur durch Änderung der Textdatei, die diese Definitionen speichert, durchgeführt werden.
|
gnmidi.ini enthält eine Einstellung, die den Namen der verwendeten Sysexelementbeschreibungsdatei enthält:
|
Die selbstdefinierten Elemente werden zur Combobox Liste hinzugefügt und die ersten 5 Elemente werden eigenen Schaltern im Dialog zugewiesen.
|
Die Textdatei enthält die Elementbeschreibungen in folgender Form:
|
Hinweis: gnmidi.log enthält Fehlermeldungen, wenn die Sysexelement Definitionsdatei ungültige Definitionen enthält.
|
Der ersten 5 gültigen selbstdefinierten Elemente werden 5 reservierten Schaltern im Dialog zugeordnet. Die Schalter zeigen die Titel der Elemente. Wenn der Elementtitel ein & Zeichen enthält dann kann der nächste Buchstabe nach dem & zusammen mit ALT gedrückt werden, falls diese Tastenabkürzung nicht schon anderswo im Dialog verwendet wird.
|
z.B. Titel &Identify wird im Schalter als Identify dargestellt und die Tastenkombination Alt+I kann verwendet werden, um dieses Sysexelement zu senden, wenn die Alt+I Tastenkombination sonst nicht im Dialog verwendet wird.
|
Alle selbstdefinierten Sysexelemente werden zur Combobox Liste hinzugefügt. Der erste Eintrag der Liste sendet nichts, es löscht den Inhalt des Sysex Senden Eingabefelds. Der zweite Eintrag der Liste öffnet den Dialog zur Definition eines neuen Sysexelements.
|
Wenn die Combobox heruntergeklappt wird und ein Sysexelement Eintrag mit der linken Maustaste angeklickt wird, dann wird dieses Element gesendet.
|
Wenn die Combobox Listeneinträge mit den Pfeiltasten selektiert werden, dann wird die Elementinformation in das Sysex Eingabefeld übertragen und diese Sysexdaten können dann mit dem Senden Schalter oder mit Enter/Return Taste gesendet werden.
|
Zuerst wählen Sie das Eingabegerät aus, das zum Empfangen von MIDI Daten verwendet wird.
|
Die kleine Box sollte blinken, das zeigt dass das Eingabegerät bereit ist (ein funktionierendes MIDI Gerät sendet entweder MIDI Signal F8 oder Activesense FE Kommandos regelmäßig!).
|
Um Sysexdaten empfangen zu können, müssen Sie vorher entweder einen Sysexbefehl am Gerät starten oder einen Sysex Request Befehl zum Gerät senden (der als Antwort Sysexdaten zurückschickt). Bei einigen Funktionen sendet das MIDI Gerät vielleicht automatisch Sysexdaten als Bestätigung (z.B. Wechsel in einen bestimmten Modus). Einige Geräte senden Sysexdaten nur wenn eine Option am Gerät eingeschaltet ist.
|
Jeder empfangene Sysexbefehl wird zur Liste in der Mitte hinzugefügt, der Sysexbefehl wird in hexadezimalen Zahlen dargestellt F0 ... F7 (längere Sysexdaten werden nur abgekürzt dargestellt, aber der gesamte Befehl ist im Speicher vorhanden). Solange die Sysexübertragung noch nicht fertig ist, wird am Ende der Daten ein ... dargestellt (ohne F7 am Ende), sobald die Übertragung komplett ist wird das ... F7 angehängt.
|
Die aktuelle Liste von Sysexbefehlen kann gelöscht werden (löscht alle empfangenen Sysex und setzt die Zähler auf 0 zurück). Einzelne Sysexbefehle können mit der Maustaste selektiert werden (in die entsprechende Zeile klicken). Selektierte Sysexbefehle können mit Löschen entfernt werden. Selektierte Sysexbefehle können in eine Datei gespeichert werden (.syx oder .dmp).
|
Selektieren Sie einen empfangenen Sysexbefehl in der Liste und klicken Sie den Schalter "beschreiben ..." an. Schauen Sie in Ihr Handbuch zum MIDI Gerät, um herauszufinden was dieser Sysexbefehl bedeutet. Die ersten 10 hexadezimalen Werte des empfangenen Sysex Kommandos werden im Eingabefeld dargestellt. Nur ein Teil vom Beginn des Sysexbefehls ist notwendig um den Typ des Befehls zu erkennen. Sie können unnötige Werte am Ende des Sysex löschen oder weitere hinzufügen, wenn weniger oder mehr Werte wichtig sind, um die Bedeutung des Sysexbefehl zu identifizieren.
|
Spezialzeichen können als Platzhalter benutzt werden, um bedeutungslose Werte zu überspringen oder wichtige Werte zu markieren:
|
? dieses Zeichen passt zu jedem Wert [0-7f]
|
# dieses Zeichen passt zu jedem Wert [0-7f] und merkt sich den Wert vom empfangenen Sysex an dieser Stelle. Der Wert kann in einer Sysexbeschreibung mit dem # Zeichen als Platzhalter ausgegeben werden
|
Eine Sysexbeschreibung passend zu einem Sysex wird
|
· | bei empfangenen Sysexbefehlen als [...} ausgegeben
|
· | ausgegeben, wenn ein passender Sysexbefehl gesendet wird
|
· | beim Speichern in eine .dmp Datei als Kommentar zu einem passenden Sysexbefehl hinzugefügt
|
Bisher kann der Sysex beschreiben Dialog nur neue Beschreibungen hinzufügen. Änderung oder Löschen von Beschreibungen kann nur durch Ändern der Sysexbeschreibungsdatei durchgeführt werden, welche die Beschreibungen speichert:
|
Folgende Einstellung in gnmidi.ini enthält den Namen der Datei, welche die Sysexbeschreibungen speichert:
|
Für längere Sysexdaten genügt es den Beginn des Sysexbefehls zu identifizieren, das Zeichen # kann als Platzhalter für einen Wert im Sysexbefehl benutzt werde, deren Wert dann in der Beschreibung mitausgegeben werden kann, z.B.
|
beschreibt den Anfang von Sysex F0 42 30 49 65 02 mit folgender Zeile (der Wert 2 wird vom empfangenen Sysex ausgelesen):
|
das Programm wartet nach jedem Senden eines Sysexbefehls eine bestimmte Zeit um dem MIDI Gerät genügend Zeit zu geben, die Daten zu empfangen und zu verarbeiten (standardmäßig 5 Sekunden zusätzlich zur Transferzeit). Das ist meist genug Zeit um dekodieren und speichern langer Datenblöcke, aber kann zu kurz sein, wenn hintereinander Dump Requests geschickt werden, wo jeder eine große Datenmenge zum Zurücksenden anfordert. Wenn das Gerät nicht genug Zeit hat, kann ein Sysexbefehl fehlschlagen.
|
Die Standardwartezeit zwischen Senden von Sysexbefehlen kann mit der gnmidi.ini Einstellung geändert werden:
|
(das würde die Standardwartezeit auf 15 Sekunden setzen)
|
Hinweis: Für selbstdefinierte Sysexelemente können Sie bei jedem Element eine eigene Wartezeit definieren.
|