home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
The Fred Fish Collection 1.5
/
ffcollection-1-5-1992-11.iso
/
ff_disks
/
300-399
/
ff332.lzh
/
K1_Editor
/
K1_Editor_D.dok
< prev
next >
Wrap
Text File
|
1990-03-20
|
19KB
|
397 lines
Kawai K1(m) »Single« Sound Editor Version 1.00
==============================================
1. Allgemeine Info
==================
Der Editor benötigt die Midi.Library von Bill Barton und die Req.Library
von Colin Fox und Bruce Dawson (Thanks, Bill! Thanks, Colin and Bruce!).
Es gibt zwei Versionen, eine Version mit deutschen Texten und eine mit
englischen Texten.
Der K1-Editor enthält - bis jetzt - keinen Librarian. Wenn ich irgendwann
wieder Zeit finde, werde ich sowohl diesen Punkt, als auch einen Editor für
Multisounds hinzufügen. Die Funktionen eines Librarians können aber auch
über die Lade- und Speicherfunktionen des Editors nachgeahmt werden.
Der Kawai-K1-Editor ist SHAREWARE. Probieren Sie ihn aus, testen Sie ihn,
arbeiten Sie eine Zeit lang damit. Wenn Sie sich dafür entscheiden, ihn zu
behalten und zu benutzen, so lassen Sie mir bitte einen Ihnen angemessen
erscheinenden Betrag zukommen. (Frage: Was würden Sie dafür im Geschäft
bezahlen?)
Die Sourcedateien, Executables und Dokumentationen müssen in jedem Fall
zusammenbleiben.
Anregungen, Kritik und Sharewarebeiträge gehen an:
Michael Balzer
Wildermuthstraße 18
5828 Ennepetal 14
W-GERMANY
1.1 Requester
-------------
Alle Requester folgen den Konventionen der RequesterLibrary, d.h. die
Shortcuts sind nicht von den Gadgettexten abhängig. Durchgängig gilt
R=Resume, Y=linkes Gadget, M=mittleres Gadget (wenn eins existiert) und
N=rechtes Gadget. Es gibt noch ein paar mehr, die stehen alle im Doc zur
req.library.
1.2 MIDI
--------
Da der Editor die MidiLibrary benutzt, ist er voll multitaskingfähig mit
allen anderen Programmen, die auch diese Lib benutzen, um die
MIDI-Schnittstelle anzusprechen.
1.3 K1 II
---------
Ich bekam einen der letzten K1 I (Frust!), und weiß deshalb nicht,
inwiefern sich mit dem K1 II das Dumpformat geändert hat, und welche
Parameter dazugekommen sind. Vielleicht läuft der Editor überhaupt nicht
mit dem II. In diesem Fall: Leute, schreibt mir! Und schickt eine Kopie
der MIDI-Definitionen des II mit! Ich verspreche, ich klemme mich
schleunigst dahinter! P.S.: Letzte Meldung: Jemand mit K1 II und
AtarIgitt sagte mir, er wüßte von keinem Unterschied zwischen den beiden
Synths - der Mann hatte allerdings auch keine Ahnung von ID_REQUEST und
ID_ACKNOWLEDGE... Wenn sich allerdings tatsächlich nur die ID geändert
hat, so kann eine entsprechende Veränderung am Source durchgeführt werden
(dazu siehe 5.).
2. Starten
==========
Dem Editor kann beim Aufruf ein Parameter übergeben werden, und zwar, ob
ein Interlacebildschirm geöffnet werden soll. Vom CLI aus wird einfach als
Argument ein "L" oder auch "Lace" angegeben (nur das große 'L' ist
wichtig), von der Workbench aus läßt man sich die Info zum Editor anzeigen
und trägt dort den ToolType "LACE=ON" ein. (Für die Leute mit
Flickerfixer, die Darstellung ist bei der hohen Auflösung erheblich
übersichtlicher.) (Wenn ich die neue Denise habe, wird auch ECS-Grafik
eingebaut - es kann allerdings sein, daß gar keine Änderung für ECS nötig
ist, da ich auch die ViewModes der WorkBench übernehme...) Ansonsten hält
der Editor sich beim Bildschirm an die Voreingestellten Größen, (auch
Overscan) und wenn der WorkbenchScreen interlaced ist, so ist auch der
EditorScreen interlaced.
Nach dem Laden sucht der Editor zunächst die MIDI-Kanäle nach einem K1 ab.
Wird kein ID_ACKNOWLEDGE empfangen (das festzustellen braucht ca. 8
Sekunden), so fragt der Editor nach, ob man trotzdem starten will. Im
späteren Verlauf ist dann kein nachträgliches Einschalten der MIDI-
Verbindung möglich, dafür muß der Editor neu gestartet werden. Im Betrieb
ohne MIDI sind dann verschiedene (nur in Verbindung mit MIDI sinnvolle)
Menüpunkte ausgeschaltet.
Möchte man den Editor mehrmals starten, z.B. wenn mehrere K1'
angeschlossen sind, so ist darauf zu achten, daß der anzusprechende K1 beim
Programmstart den untersten MIDI-Kanal belegt. Bei Bedarf zieht man
einfach solange die OUTs der vorigen K1' ab.
Der Editor liest nach dem Ermitteln des Kanals die beiden internen
Singlebänke aus. Dann fragt er, ob mit Cartridge (externer Soundkarte)
gearbeitet werden soll. Ist dies der Fall, so holt er sich auch noch die
beiden externen Bänke. Dann erst wird der Screen und die Fenster geöffnet.
Der nun folgende Requester zeigt noch die Version (usw.) an, durch
Anklicken von Resume (oder 'R' drücken) gelangt man in den Editor.
3. Bildschirmaufteilung
=======================
Der Bildschirm ist in vier Fenster unterteilt, die ziemlich genau den
Edit-Fenstern des K1 entsprechen. Da die Fenster sich überlappen, empfehle
ich dringendst, ein Utility wie Matt Dillons "DMouse" zu verwenden. Die
Anordnung der Fenster ist natürlich beliebig.
Ich werde im folgenden nicht auf die Bedeutung der K1-spezifischen Begriffe
eingehen, dafür steht jedem das Handbuch zur Verfügung. Zu allen
Funktionen kann ich nur betonen: Ausprobieren! Die Bedienung folgt in
allen Teilen den Intuition-Konventionen, so daß wohl an keiner Stelle
Probleme auftauchen werden. Wenn Sie ihren K1 kennen und ein wenig
experimentierfreudiger sind, dann können sie sich den Rest dieser Anleitung
wahrscheinlich sparen.
3.1 COMMON-Fenster
------------------
Hier werden die COMMON-Parameter des K1 dargestellt. Das
Proportionalgadget (Schieberegler) in der linken oberen Ecke dient,
zusammen mit dem Toggler (Umschalter) "CARD" rechts daneben, der Auswahl
des zu bearbeitenden Sounds. Die Namensanzeige darunter ist ein
Textgadget, mit welchem der Name eines Sounds eingegeben werden kann.
Beachte: Das Feld wird automatisch mit Leerstellen aufgefüllt, die evtl.
vor einer Änderung gelöscht werden müssen, da sonst das Feld "Ich bin
voll!" meldet (Bildschirm blinkt auf). Die linke Grafik stellt die
AutoBend-Kurve dar. Der linke Regler dort steuert die Tiefe des ABend, der
untere die Zeit, der obere stellt den Einfluß des KS auf die Zeit, der
rechte den der Velocity auf die Tiefe dar. Die Werte der Regler, die sich
auf die Grafiken beziehen, werden in einem kleinen Feld am oberen rechten
Bildschirmrand angezeigt, so daß auch dort ein genaues Einstellen möglich
ist.
Die rechte Grafik zeigt die Einstellungen des LFOs, wobei Tiefe wieder
links und Geschwindigkeit unten einstellbar sind. Der rechte Regler stellt
den Einfluß des Aftertouch auf die Tiefe der Schwingung dar. Durch
Anklicken der Grafik wird die LFO-Wellenform durchgeschaltet. (Sorry wegen
Random - aber so ganz Random ist ja die Wellenform des K1 dort auch
nicht...)
Die KS-Kurve wird durch anklicken durchgeschaltet, und der Pfeil rechts
neben dem Regler für das Pitch Wheel steuert die Funktion des
Modulationsrades (beeinflußt Tiefe oder Geschwindogkeit des LFOs). Poly
Mode und Anzahl der benutzten Klangquellen (Sources) sind durchschaltbare
Textgadgets.
Noch ein Wort zur Soundwahl: Der Editor schickt bei Auswahl eines neuen
Sounds eine Program-Change-Anweisung zum K1, so daß der angewählte Sound
auch direkt am K1 eingestellt ist. Umgekehrt gilt das selbe, wählt man am
K1 einen anderen Sound, dann bemerkt der Editor dies (sofern der K1
ProgramChange sendet!), und schaltet seinerseits den aktuellen Sound
entsprechend um. Es gibt an dieser Stelle ein kleines Problem: Der K1 hat
keine Möglichkeit, beim ProgramChange zwischen intern und extern (Karte) zu
unterschieden. Schaltet man also den Sound zwischen interner und externer
Bank um, so muß man leider selbst darauf achten, den Sound am jeweils
anderen Gerät ebenfalls entsprechend umzuschalten.
3.2 WAVEFORM-Fenster
--------------------
Hier werden die Stummschaltungen, die Wellenform- und Modulations-
einstellungen für die vier Sources dargestellt. Die Gadgets funktionieren
in gewohnter Weise. Beim Ein- bzw. Ausschalten der REVERSEN
Amplitudenmodulation werden, wie beim K1 intern auch, die betroffenen
Sources getauscht. (Weiß der Henker, was der Quatsch soll.)
Die Wellenformeinstellung hat zwei Buchstaben vorangestellt, die folgende
Bedeutungen haben:
1. Buchstabe V (für VM-Wellenform)
2. Buchstabe b = Bass
l = Low
m = Mitte
t = Treble
h = Hoch
oder
1. Buchstabe P (für PCM-Sample)
2. Buchstabe o = One Shot
l = Loop
L = Omni Loop
r = Reverse
a = Alternate
3.3 ENVELOPE-Fenster
--------------------
Hier beziehen sich alle Parameter nur auf jeweils eine der vier
Klangquellen, da sonst die Darstellung zu aufwendig wäre. Die
Velocitykurve schaltet wie die KS-Kurve beim Anklicken durch. Die Grafik
stellt den Lautstärkeverlauf der Klangquelle dar, dabei ist der linke
Regler für den Gesamtlevel der Hüllkurve zuständig, der links obere für den
Delay, der links untere für die Attackzeit, der rechts untere für die
Decayzeit, der rechts obere für die Releasezeit und der rechte für den
Sustainpegel.
3.4 FREQUENZ-Fenster
--------------------
Das letzte der vier Fenster zeigt die Frequenzeinstellungen aller vier
Klangquellen. Dazu gehören (von Kawai so festgelegt) auch die Schalter zum
Ein- und Ausschalten der Wirkung des Aftertouch auf die Frequenz und der
Vibrato-/AutoBendfunktionen für die einzelnen Sources. Ob Freq Coarse oder
Fixed Key, ist wie gewohnt vom Key Track abhängig. Bei Freq Coarse werden
aber Ganz- und Halbtöne angezeigt, statt die Verschiebung nur in Halbtönen
anzugeben.
3.5 Spezielle Funktionen zur Anzeige
------------------------------------
Die Tasten '1' bis '4' dienen zum Umschalten der im Envelope-Fenster
angezeigten Klangquelle. Die Taste 'C' schaltet das Common-Fenster nach
vorne, 'W' schaltet das Waveform-Fenster nach vorne, 'E' das
Envelope-Fenster und 'F' das (was sonst) Frequenz-Fenster.
Das Anzeigefeld der Grafik-Reglerwerte ist in Wirklichkeit ein kleines
Fenster, welches bei Benutzung eines solchen Reglers nach vorn geschaltet
wird. Ein Intuitionbug bewirkt aber, daß dies erst NACH dem Loslassen des
Reglerknopfes geschieht. Das ist nicht weiter tragisch, da das Feld ja
meist sichtbar ist. Möchte man nur den Wert des Gadgets wissen, so klickt
man kurz auf den Regelknopf und die Anzeige erscheint oben rechts.
4. Menüs
========
Es gibt vier Hauptmenüs; Projekt, Dump, Spezial und Einstellung. Außer den
Menüpunkten im Einstellungsmenü sind alle Funktionen über Shortcuts zu
erreichen. Diese Bedienung ist auch vorzuziehen, da man so viel schneller
arbeiten kann. Die Buchstaben der Shortcuts sind in der deutschen und
englischen Version gleich (um nicht unnötig Verwirrung zu schaffen).
4.1 Projekt
-----------
Das Projektmenü bietet Möglichkeiten zum Speichern bzw. Laden und - auf
den Synthspeicher bezogen - Lesen und Schreiben von Sounds. Die Anwahl
eines solchen Menüpunktes bringt einen Requester auf den Schirm, in welchem
angegeben wird, worauf man die Aktion beziehen will. Dabei ist:
Aktueller Block = Die 32 Sounds, unter denen sich der gerade Angezeigte
befindet
Alles = Kompletter Speicherdump mit 128 Singlesounds
Aktueller Sound = Der gerade Angezeigte Sound
Die verschiedenen Dateien werden durch eindeutige Endungen kenntlich
gemacht. Mit Hilfe der Speicher/Lade-Funktionen ist es also möglich,
Sounds zu archivieren und bei Bedarf einfach an die gewünschten Stellen zu
laden. Im Vergleich mit einem Librarian ist das natürlich eine sehr
umständliche Art und Weise, aber ich hatte bis jetzt keine Zeit, einen zu
programmieren. Kommt wahrscheinlich noch.
Ich glaube nicht, daß ich die Bedeutung von "Ende" erläutern muß. Nur
soviel zum Shortcut: Die Texte des Editors waren zu Anfang ein gut
durchsetztes Mischmasch von Deutsch und Englisch, und "Quit" hieß dieser
Menüpunkt. Da nun aber Amiga-Q die Undofunktion der Texteingabefelder
außer Kraft setzte, X (Exit) aus dem selbigen Grunde ausschied und E schon
benutzt wurde (Exchange Sounds), wurde kurzerhand "0" daraus.
4.2 Dump
--------
Unter einem Dump verstehe ich einen kompletten Synthspeicherauszug, also 64
Singles mit den dazu gehörenden 32 Multis. Bei den Funktionen des
Dumpmenüs wird also nur der Dateiname und die Bank (Intern oder Karte)
angegeben. Auch die Dumpdateien haben eine eindeutige Namenskennung.
Jeder Dumpdatei wird zusätzlich ein Projekt-Icon verpaßt, das als Default
das PutDump- Programm aufruft. Die beiden Programme PutDump und GetDump
haben exakt dieselbe Funktion wie die beiden entsprechenden Menüpunkte des
Editors.
4.3 Spezial
-----------
Ich habe ein paar Spezialfunktionen eingebaut, hauptsächlich, um eine
Möglichkeit zur Hand zu haben, schnell eine interessante Basis für einen
Sound zu schaffen. Die Spezialfunktionen gehen alle nach dem selben Schema
vor, zumindest was die Einstellungen betrifft. Bei jeder kann eingestellt
werden, welche Parameter (COM, WAV, ENV und FRQ) und welche Sources (1-4)
von der Funktion beeinflußt werden sollen. Die beiden C's oben rechts
stehen für "Cartridge".
Alle diese Funktionen arbeiten rein mathematisch. Bei den Wellenformen zum
Beispiel ist es also reiner Zufall, wenn die resultierende Wellenform
irgendwie mit den ursprüngliche(n) verwandt ist, vor allem bei den
Samples...
Tauschen: Die einfachste Funktion. Parameter zweier Sounds werden
vertauscht, ohne anderen Einfluß.
Mischen : Ein Sound wird einem anderen beigemischt. Einstellbar ist
außerdem die Gewichtung des beizumischenden Sounds, 100% heißt
kopieren.
Reihe : Eine Reihe von Sounds wird berechnet, die - mathematisch gesehen!
- vom Beginn-Sound zum End-Sound überführt. Einstellbar außerdem:
Zufallseinfluß (100% heißt völlig zufällig).
Kopieren: Ein Sound wird mit einstellbarer zufälliger Veränderung kopiert.
Ich habe allerdings erstaunt festgestellt, daß die entstehenden Sounds
teilweise sogar recht gut als Kombinationen der ursprünglichen Sounds
erkennbar sind. Vor allem die Reihenfunktion liefert recht gute
Ergebnisse. Übrigens: Die Zufallsfunktion sollte vorsichtig gehandhabt
werden.
Der letzte Menüpunkt hier, "Test Sound" ist dazu gedacht, eine kleine
Sequenz abzuspielen. Man kann so leicht den Zusammenklang des Sounds
Probehören, auch ohne zum Keyboard zu hasten. Auch für K1m-Besitzer wird
diese Funktion (aus naheliegenden Gründen) interessant sein. (Siehe auch
Kapitel 5)
4.4 Einstellung
---------------
Hier können einige Grundeinstellungen vorgenommen werden:
Autowrite bedeutet, daß der aktuelle Sound nach jeder Änderung sofort an
den Synthi geschickt wird. Es ist also jede Änderung sofort verfügbar und
man kann die Auswirkungen auf den Sound direkt ausprobieren.
Wavetest stellt ein, ob man während der Wellenformeinstellung im
Waveform-Fenster ständig einen Testton mit der aktuellen Wellenform hört.
Beim Einschalten dieser Option kann die Notennummer des Testtons festgelegt
werden. Man kann hiermit leicht feststellen, welche Wellenform am besten
in den Sound paßt.
"Farben ändern" bringt einen kleinen Farbrequester (req.library!) auf den
Bildschirm. Nach dem Ändern der Farben kann die neue Einstellung
abgespeichert werden, so daß sie beim nächsten Start sofort aktiv ist.
5. Technische Info
==================
Folgende Datei wird vom Editor erzeugt:
K1EDcolors im DEVS: (Farbeinstellung)
Folgende Dateien werden vom Editor benötigt:
MIDIicon im T: (Icon für Dumps)
TestSequenz im T: (Sequenz für "Test Sound")
Das MIDIicon kann natürlich ein beliebiges Icon von der Art sein, einfach
mit IconEd kreieren und ins T: kopieren.
Die TestSequenz ist einfach eine Textdatei, die pro Zeile eine Anweisung
und zwei Parameter enthält. Die Anweisung kann eine von { D, 1, 0, A }
sein, wobei die Parameterzahl in jedem Fall, auch wenn unnötig, zwei ist:
D nn 0 --- Pause von nn/50 Sekunden
1 nn vv --- Note nn mit Velocity vv einschalten
0 nn 0 --- Note nn ausschalten
A 0 0 --- Alle Noten ausschalten
Mit diesen Befehlen ist es schon möglich, kleinere Musikstücke zu schreiben
und als TestSequenz jederzeit zur Klangprobe einsetzen zu können.
Die Verzögerung beim Wavetest (zwischen anklicken und Tonstart) mußte
eingefügt werden, da der K1 sonst nicht immer schnell genug den Waveform-
parameter verändern konnte, um die neue Einstellung schon bei dem Ton
benutzen zu können.
K1 II: Wenn sich, wie Anfangs erwähnt, nur die ID verändert hat, so kann
diese folgendermaßen geändert werden: Sämtliche MIDI-Messages sind im
Headerfile "kawai_k1.h" definiert. Dort finden sich die Eintragungen
KAWAI_K1 (Machine ID no.), K1_MIR (Machine ID Request) und K1_MIA (Machine
ID Acknowledge). Die dort einzutragenden Werte findet man in den
MIDI-Definitionen des Synthesizers. Nach dem Ändern des Headers muß der
Editor natürlich neu kompiliert werden.
Die Oberfläche wurde mit PowerWindows erstellt, das Programm wurde mit Manx
Aztec C entwickelt (mit 32 Bit Ints). Eine 16 Bit Version wird irgendwann
folgen, wahrscheinlich aber erst, wenn ich den neuen Lattice mein Eigen
nenne. Ein Wort zu den Refreshroutinen: Die grafischen Funktionen und
Datentransferroutinen sind "frei Schnauze" programmiert und sicher nicht
optimal im Sinne der Effizienz. Da die Hauptarbeit aber wohl doch von den
GadgetRefresh-Routinen erledigt werden muß, habe ich mich darum nicht
weiter gekümmert. Wahrscheinlich werde ich mich an den Stellen mit dem
neuen Lattice zu Änderungen gezwungen sehen (ich sage nur:
System-Direktaufrufe). Ok, mal sehen.
Ich habe während des Programmierens eine Menge über Intuition gelernt, und
kann jedem nur raten, sich ein ähnliches Projekt vorzunehmen, um seine
Personal Workstation Amiga besser verstehen zu lernen.
Dies ist mein erster Versuch in Richtung Shareware.
Happy Programming!