Plattenliste Verlieren Sie auch allmählich die Übersicht über Ihre Schallplatten- Sammlung? Dann kommt hier genau das richtige Programm für Sie. Sie kön- nen sich eine Liste Ihrer Schallplatten (oder Cassetten) erstellen und diese ausdrucken. Dann wissen Sie jederzeit was Sie alles besitzen und wo Sie es finden. Außerdem eigent sich diese Liste um sich mit Freunden und Bekannten auszutauschen. Die Idee, die hinter diesem Proramm steckt, ist die folgende: Irgend- wann hat man soviele Platten oder Cassetten zusammengesammelt, daß man die Übersicht verliert über das, was man hat, und vor allem auf welcher Cassette sich dieses oder jenes Stück nun eigentlich befindet. Eine Da- tei, möglichst mit dem Computer, muß her! Nun ist es aber wenig sinn- voll, wegen jeder Information, die man benötigt an den Computer zu ren- nen. Daher dient das Programm hauptsächlich zur Erstellung einer Datei, die dann ausgedruckt wird, und jederzeit schwarz auf weiß zur Verfügung steht. Dabei wird für jede Datei ein Titel angegeben, der später in der Kopfzeile jeder Listenseite erscheint. Jeder Datensatz besteht nun aus drei Einträgen: Dem Interpreten bzw. der Gruppe, dem Titel der Platte oder des Stücks und schließlich einer Bemerkung, die automatisch in Klammern gesetzt wird, und weitere Informationen zu diesem Eintrag enthält. Hier kann z. B. das Erscheinungsjahr, die Art des Eintrags (LP, MC oder CD...) oder der Stand-ort (bzw. die Nummer der Cassette, auf der sich der Titel befindet) eingegeben werden. Das Programm "Plattenliste" ist der Loader für das Hauptprogramm. Dieses Programm können Sie verändern, und damit an Ihr System anpassen. Es sieht folgendermaßen aus: LOCATE 11,25 COLOR 3 PRINT "Hauptprogramm wird geladen ..." COLOR 1 CLEAR,200000& 'Speicher reservieren sys = 1024000& 'RAM-Speicher free = 200000& 'Freier BASIC-Speicher max = 2000 'Anzahl der freien ' Datensätze 'Erklärung: '---------- 'sys ist die Größe Ihres RAM-Speichers, 'also 512000 oder 1024000 Bytes. 'free und max sollten in einem vernünf- 'tigen Verhältnis zueinandner stehen. 'Pro Datensatz sind mindestens 50 Bytes 'zu veranschlagen, für das Haupt- 'programm etwa 35000 Bytes. CHAIN "Plattenliste.Hauptprog",,ALL Für Sie ist nur der Teil interessant, der mit CLEAR,200000& anfängt. Hier können Sie das Programm Ihrer Speichergröße anpassen: Und zwar sollte soviel Speicher geCLEARt werden, wie Sie dem Programm zugestehen wollen. Der Wert sollte (in Bytes) allerdings zwischen 100000 und 350000 liegen (je nach System, ausprobieren!). "sys" ist die Größe des installierten RAM-Speichers, also z. B. für 1MB 1000*1KB=1000*1024Bytes=1024000. "free" ist die Zahl, die oben geCLEARt wurde, und "max" die Anzahl der freien Datensätze die Sie im Programm benötigen. Halten Sie sich dabei an den Tip, der oben als Erklärung an- geben ist. Nachdem Sie die "Plattenliste" angepasst haben, laden Sie das Hauptpro- gramm durch anklicken des Plattenliste-Icons. Das Programm nutzt die graphische Benutzeroberfläche des Amiga voll aus. Es wird fast aus- schließlich über pull-down-Menüs und Dialogboxen bedient. Dabei ist je- doch zusätzlich bei der Auswahl zwischen zwei Boxen die rechte mit RE- TURN, und die linke mit jeder anderen Taste auszuwählen. Existiert nur eine Box, ist diese mit RETURN zu wählen. Lediglich die Texteingaben erfolgen über die Tastatur. Hierfür ist eine Eingaberoutine implemen- tiert worden, die sowohl die Verwendung der horizontalen Cursor- Steuertasten als auch von Backspace und Delete zum editieren erlaubt. Mit ESC kann die gesamte Eingabezeile gelöscht werden. Der Cursor kann jederzeit mit dem Mauszeiger positioniert werden. RETURN beendet die Eingabe. Nun wollen wir keine weitere Zeit verlieren, und uns einmal die Funktio- nen ansehen, die das Programm bietet. Im oberen Fenster des neu defi- nierten Bildschirmes finden alle ein und Ausgaben statt. Im unteren Fenster wird (fast) ständig ein Ausschnitt aus der aktuellen Liste ge- zeigt. In dem Moment in dem die Datei die ersten Elemente hat, erscheint ein weiteres Fenster. Hierin sind "Rolltasten" für schnelles und langsa- mes Blättern in der Datei zu sehen. Bringen Sie das Fenster an eine geeignete Stelle im unteren Bildschirmbereich, und wählen Sie die Roll- tasten mit der Maus aus. Jetzt gehen wir am besten die Menüs von links nach rechts, und von oben nach unten durch. Da haben wir als erstes das "Datei"-Menü. Hier können Sie mit "alles löschen" die ganze im Speicher befindliche Datei löschen. Mit "Laden" können Sie schon erstellte Dateien einladen. "Speichern" schreibt die im Speicher befindliche Datei auf die Diskette zurück. Dazu wird entweder der Name verwendet, unter dem die Datei geladen wurde, oder falls die Datei neu eingegeben wurde, die Eingabe eines neuen verlangt. Wählen Sie "neu Speichern" können Sie einen neuen Namen eingeben, unter dem abgespeichert werden soll. Die nächsten beiden Funktionen "Teilen" und "Verketten" erklären sich eigentlich selbst. Achten Sie jedoch darauf, daß bei "Teilen" der abge- speicherte Teil anschließend gelöscht wird, und bei "Verketten" der an- gehängte Teil nicht in die im Speicher befindliche Datei einsortiert wird. Dazu kommen wir später. Mit dem Punkt "Löschen" können beliebige Files auf beliebigen Laufwerken gelöscht werden. Geben Sie bitte den vollständigen Pfadnamen an. Der folgende Menüpunkt dient zum Anzeigen von Disketten-Directorys. Nach dem Anwählen von "Inhaltsverzeichnis" wird abgefragt, ob ein Prefix ein- gegeben werden soll. Wird hier mit "ja" geantwortet, kann ein Unterver- zeichnis angegeben werden, dessen Inhalt dann angezeigt wird. Wollen Sie den Inhalt von einem anderen als dem Startlaufwerk des Programms sehen (oder z. B. RAM-Disk), dann geben Sie bitte dessen Namen mit ein. Bei "nein" sehen Sie das Root-Verzeichnis des Startlaufwerks. Damit sind wir auch schon beim "Eingabe"-Menü. Wie bei allen Menüs sind auch in diesem Menü beim Start des Programms einige Punkte in Geister- schrift dargestellt, und damit nicht aktivierbar. So muß mach dem Start des Programms, falls keine Datei geladen wird, erst mit dem Menüpunkt "Titel der Liste" ein Dateititel eingegeben werden. Erst jetzt ist die Eingabe von Einträgen mit "Datensätze" möglich. Wenn Sie sich bei der Eingabe vertippen, können Sie durch anwählen von "nein" bei der Abfrage "Datensätze in Ordnung" Korrekturen vornehmen (siehe "Datensatz Än- dern"). Ist der Schalter "Datensätze sortieren" ausgeschaltet, wird nur ein Datensatz eingegeben, und dieser an einer einzugebenden Nummer in der Liste ohne alphabetische Kontrolle eingefügt. Ist der Schalter ein- geschaltet, werden zunächst alle Eingaben gesammelt, und beim Anwählen von "nein" bei "Weitere Eingaben?" einsortiert. Dadurch ergibt sich eine kurze Wartezeit (je nach Länge der Liste). Mit den drei nächsten Schal- tern kann man bestimmen, ob Interpret, Titel oder Bemerkung von einer zur nächsten Eingabe übernommen werden sollen. Das ist praktisch, falls man mehrere Titel derselben Gruppe hintereinander eingeben möchte. Bevor wir uns an die beiden nächsten Menüpunkte machen möchte ich noch kurz eine allgemeine Funktion des Programms erläutern. Bei einigen Funktionen erwartet das Programm die Eingabe von Eintrags- Nummern. Mit den entsprechenden Datensätzen soll dann etwas passieren. Z. B. wird bei "Teilen" bei dem Datensatz Nummer ... geteilt, oder bei "Datensätze nicht sortieren" (s. o.) vor dieser Nummer eingefügt. Statt der Eingabe dieser Nummer ist es im Programm auch möglich den gewünsch- ten Datensatz (mit geeigneten Mittel) in das Datei-Ausgabefenster zu bringen, und mit der Maus "anzuklicken". Dieser Datensatz wird dann orange unterlegt, und gilt als "markiert". Markieren Sie also z. B. ei- nen Datensatz und wählen dann "Datensätze ändern" an, so können Sie dann diesen Datensatz editieren. Klicken Sie hierzu mit der Maus auf den Teil des Datensatzes, den Sie verändern wollen. Es erscheint ein Text-Cursor, mit dem Sie die gewünschten Änderungen vornehmen können. Wie üblich beendet RETURN die Eingabe. Nochmaliges RETURN, oder wählen von "OK" sortiert den geänderten Datensatz - falls erforderlich - neu ein. Ebenso verhält es sich mit "Datensätze löschen". Alle markierten Da- tensätze werden aus der Datei entfernt. Damit kommen wir zum "Ausgabe"-Menü. Hier können Sie bestimmen "ab Num- mer" wieviel das Ausgabefenster anzeigen soll. Mit dem zweiten Menüpunkt ist die Ausgabe "des Titels der Liste" möglich. Im nächsten Menü geht es um die "Suche". Es wird entweder in den "Inter- preten", den "Titeln" oder den "Bemerkungen" gesucht. Die Funktionsweise dieser drei Punkte ist jedoch identisch. Es wird ein Suchstring eingege- ben, der mithilfe der Instring-Funktion in den gewählten Einträgen ge- sucht wird. Es können also auch Bruchstücke des zu findenden Eintrages gesucht werden. Die Möglichkeiten der Suche werden durch vier Schalter noch verstärkt: "Großbuchstabe = Kleinbuchstabe" erklärt sich selbst. Die wichtigste Neuerung steckt in "Liste ganz durchsuchen". Ist dieser Schalter aus, findet der Suchalgorithmus das erste Auftreten der Such- zeichenkette ab "Suchstart" (s . u.), und zeigt dieses und die Nachfol- genden Elemente der Liste an, bis das Ausgabefenster voll ist. Ist der Schalter an, wird die Liste bis zum Ende durchsucht. Es werden alle Da- tensätze angezeigt, die die Suchzeichenkette enthalten (bis das Fenster voll ist). Soll weitergesucht werden klicken Sie einfach das letzte Ele- ment im Fenster an, stellen die beiden folgenden Schalter passend ein, und starten die Suche erneut. Ist "Suchstart bei Datensatz Nr. 1" aus, läßt sich durch Zahleneingabe oder Markierung der Start der Suche festlegen. Mit "Suchzeichenkette wiederverwenden" bestimmen Sie, ob die Suchzeichenkette der letzten Su- che nochmals verwendet werden soll (Änderungen daran möglich) oder nicht. Jetzt folgt eigentlich das wichtigste Menü, nämlich der "Druck". Sie haben die Wahl, ob Sie die "ganze Liste" oder nur "eine Seite" drucken möchten. Im letzteren Fall werden Sie aufgefordert eine Seitennummer einzugeben. Falls auf Ihrer Diskette noch nicht die Datei "DRUCKER.dat" existiert werden Sie nun aufgefordert werden diese zu erzeugen. Was gilt es zu tun? Die Datei enthält alle nötigen Daten Ihres Druckers, und dient somit zur Versorgung eines Programminternen Druckertreibers. Wählen Sie "ganze Liste" oder "eine Seite" und klicken Sie auf das er- scheinende "OK". Nun werden Sie aufgefordert die Steuersequenz für "Breitschrift ein" einzugeben. Die erwartete Eingabe ist die Folge der Steuercodes, die bei Ihrem Drucker die Breitschrift einschalten. Für EPSON-Kompatible Drucker ist dies "ESC W 1" (siehe Handbuch). Sie müßten also eingeben: "27 87 1". Verfahren Sie so bei allen geforderten Schriftartenkommandos. Zum Schluß wird noch nach den Codes für Carriage-Return (meist 13) Linefeed (meist 10) und Formfeed (meist 12) gefragt. Geben Sie auch hier die Werte Ihres Druckers ein. Nachdem diese Abfragen abgeschlossen sind, können Sie eingeben, ob eine bestimmte Anzahl von "Bildschirmzeichen" (max. 30) gegen entsprechende "Druckcodes" ausgetauscht werden sollen. So sind hier z. B. alle Umlaute und das ß in die entsprechenden Codes (d. h. den Code, den Ihr Drucker als "ß" druckt) umzuwandeln ("ß" ist z. B. 126 bei EPSON-Druckern, sie- he Drucker-Handbuch). Nachdem auch dies bewältigt ist werden Sie gefragt, ob Sie die soeben eingegebenen Daten abspeichern möchten. Wenn Sie gerade Ihren ersten Druckertreiber eingegeben haben, sollten Sie hier natürlich mit "ja" antworten, sonst sind alle Daten beim nächsten Programmstart verloren. Jetzt werden Sie aufgefordert einen Namen für den Treiber einzugeben. Haben Sie nur einen Drucker, sollten Sie den vorgegebenen Namen "DRUC- KER.dat" einfach mit RETURN bestätigen, und unter diesem Namen abspei- chern. Dann findet das Programm diesen Treiber jederzeit automatisch wieder. Haben Sie nicht nur einen Drucker, und benötigen diese verschie- dene Treiber, sollten Sie den Treiber für den öfter verwendeten Drucker unter "DRUCKER.dat" ablegen, und den Treiber für den "Zweitdrucker" un- ter irgendeinem anderen Namen. Wenn Sie dann mit diesem "Zweitdrucker" ausgeben möchten, müssen Sie diesen Treiber explizit laden, da er unter dem beliebigen Namen nicht automatisch vom Programm gefunden werden kann. Dazu gehen Sie folgendermaßen vor: Diesen Menüpunkt können Sie übrigens jederzeit verwenden um einen bestehenden (bzw. den aktuell ge- ladenen) Druckertreiber zu modifizieren. Wählen Sie aus dem Druck-Menü den letzten Punkt, "Druckertreiber verändern". Sie werden gefragt, ob Sie einen Treiber laden wollen. Mit "nein" ändern Sie den im Speicher befindlichen Treiber. Ist noch kein Treiber geladen, wird ein neuer er- zeugt. Sie müssen dann in diesem Fall alle oben erwähnten Formatsteuer- zeichen eingeben. Wollten Sie zum Drucken einfach einen anderen Treiber verwenden (zur Erinnerung: Der "Zweitdrucker") so laden Sie diesen, und hangeln sich anschließend mit "nein" und "OK" bis zum Ende des Menüpunk- tes durch. Wenn Sie jetzt ausdrucken wird der im Speicher befindliche Treiber verwendet, der für Ihren "Zweitdrucker" bestens abgestimmt ist (hoffentlich). Noch eine Anmerkung: Auf dieser Diskette befinden sich Treiber für die NEC-Drucker P6/P7/P2200 unter "NECPX.dat" und für EPSON-Kompatible Druc- ker unter "EPSON.dat". Die restlichen Einträge im Druck-Menü bestehen aus Formatierungsschal- tern, deren Funktion sich Teilweise selbst erklärt. Was bleibt zu sagen: 1.) Falls der Ausdruck mit Datum (und Uhrzeit) erfolgen soll, und "heu- tiges Datum" bzw. "aktuelle Uhrzeit" ausgeschaltet sind, wird vor dem Ausdruck zur Eingabe eines Datums bzw. einer Uhrzeit aufgefordert. 2.) Das Gegenteil von "Druck auf Einzelblätter" ist natürlich "Druck auf Endlospapier". 3.) Ist "Gruppenname nur einmal drucken" aktiviert, wird bei aufeinan- derfolgenden Einträgen, die den gleichen Gruppennamen haben, dieser nur das erste mal ausgegeben (es sei denn beim ersten Element jeder Seite, hier wird der Gruppenname auf jeden Fall gedruckt). 4.) Ist "Blockausrichtung" aktiviert, löst sich der Nebel über den bei- den folgenden Menüpunkten. Blockausrichtung bedeutet, daß alle Gruppen- namen linksbündig augerichtet werden (wie immer), und Titel und Bemer- kung in einem Block nach rechts eingerückt werden. Dabei bedeutet "bezo- gen auf jede Seite", daß die Position des Blocks vom längsten Gruppenna- me auf jeder Seite neu bestimmt wird, und "bezogen auf ganze Liste", daß der längste Gruppenname in der ganzen Liste zur Bestimmung der Einrüc- kung herangezogen wird. Mit "Blockausrichtung bezogen auf ganze Liste" und "Gruppenname nur einaml drucken" lassen sich meiner Ansicht nach die professionellsten Ergebnisse erzielen. Nun sind wir auch schon beim letzten Menü angelangt, in dem sich noch "Sonstiges" befindet. Hier ist als erstes eine "Speicheranzeige" verfüg- bar, die alle wichtigen Informationen über Speicherbelegungen liefert. Dann kann man sich einen "Info"-Text ausgeben lassen, und zu guter letzt das "Programm beenden", natürlich nach einer Sicherheitsabrage, wie überrall im Programm. Dazwischen gibt es noch "Datei ganz sortieren". Dieser Punkt dient vor allem dazu, nach dem Verketten zweier Listen diese ineinander zu sortie- ren. Geben Sie hierzu als Sortierkriterium "1=Interpreten" an. Wollen Sie die Liste nach Titel oder Bemerkung sortieren, so wählen Sie "2" oder "3". Während des Sortierens bekommen Sie laufend angezeigt, wie weit die Sor- tierung schon fortgeschritten ist. Der Maximalwert wird jedoch meist nicht erreicht. Noch ein Tip zum Sortieren: Normalerweise werden neue Einträge zum sel- ben Interpreten hinten an dessen letzten Eintrag angehängt, um die Chro- nologie der Einträge zu wahren. Wenn Sie dies nicht wünschen, können Sie für einzelne Eingaben (sonst wird's zu umständlich) "Datensätze sortie- ren" ausschalten (z. B. um eine neu gekaufte, aber schon ältere Platte nachzutragen und richtig in die Chronologie einzusortieren), oder Sie gehen, nachdem Sie alle Eingaben gemacht haben, folgendermaßen vor: Sor- tieren Sie die gesamte Liste wie soeben beschrieben nach den Titeln. Direkt anschließend sortieren Sie die gesamte Liste wieder nach den In- terpreten. Das dauert zwar ein bißchen, aber wozu sitzen Sie vor einem multitaskingfähigen Computer? Jedenfalls sind jetzt alle Interpreten, und in demselben Interpreten alle Titel alphabetisch sortiert. Sollen die Bemerkungen auch noch alphabetisch mitsortiert werden, so müssen Sie diese als allererstes sortieren. Kommen wir kurz noch einmal auf den Ausdruck einer Datei zurück. Wenn Sie während eine Datei ausgedruckt wird, eine andere schon bearbeiten möchten, steht die Lösung für Ihr Problem schon bereit: Der Druckerspoo- ler für Plattenlisten-Dateien. Er wird als zweiter Task geladen, und enthält lediglich die Druckroutine des Hauptprogramms. Die zu druckende Datei wird nicht geladen, sondern direkt von der Diskette gedruckt, wo- mit sich insbesondere bei großen Dateien eine enorme Speicherplatzer- sparnis ergibt. Wenn Sie also die soeben erstellte Datei erst abspei- chern und dann "spoolen", können Sie mit dem Hauptprogramm bereits die nächste Datei bearbeiten. Der Geschwindigkeitsverlust der sich durch die zwei Tasks ergibt, macht den Zeitvorteil (insbesondere bei der Neueinga- be von Daten während des Ausdrucks) mehr als wet. Aus dem eben genannten Grund (Datei nicht komplett im Speicher) kann der Spooler leider nicht mit Blockausrichtung drucken. Haben Sie genug Spei- cher zur Verfügung können Sie statt dem Spooler natürlich auch einen zweiten Plattenlisten-Task starten, und mit diesem drucken. Ich hoffe, daß Sie nach dieser ausführlichen Erklärung der Funktionen mit dem Programm zurecht kommen, und wünsche Ihnen viel Spaß mit der selbst erstellten Plattenliste. Zum Abschluß noch ein Tip: Durch die weiten Möglichkeiten der Einflußnahme auf das Aussehen des Ausdrucks, ist es ohne weiteres möglich dieses Programm auch für andere Aufgaben einzusetzen, bei denen eine Liste alphabetisch sortiert werden muß. So eignet es sich z. B. vorzüglich zum Erstellen von Stichwortverzeichnis- sen von Skripten o. ä. Auch eine Liste für die Gefriertruhe lässt sich leicht erstellen: Am besten Sie arbeiten hierbei mit einer Warenkennung, und lassen beim Ausdruck den Schalter "Numerierung im Ausdruck" aus. Geben Sie ein "Schnitzel" z. B. folgendermaßen ein: "1 Schnitzel", "2 Stück","8/88" Dann ist die "1" die Warenkennung (z. B. Fleisch). Jetzt können Sie so- gar eine Überschrift anbringen: Geben Sie ein: "1 Fleisch und Wurst:", "", "" Durch das doppelte Leerzeichen (!!!) nach der "1" wird die "Überschrift auf jeden Fall vor allen anderen Einträgen derselben Warengruppe einsor- tiert. Wollen Sie die Überschrift jetzt noch Unterstreichen? Definieren Sie sich bei der Druckertreiber-Einstellung 3 Sonderzeichen mehr als vorher, und geben Sie folgendes ein (die auf der Diskette be- findlichen Treiber enthalten diese Einstellungen schon): "©" (ALT+e) -> 27 "¹" (ALT+1) -> 1 "`" (ALT+`) -> 0 Geben Sie jetzt die Überschrift folgendermaßen ein: "1 ©-¹Fleisch und Wurst:©-`", "", "" Mit dieser Sequenz (wieder EPSON-Kompatibel) schalten Sie direkt vor dem Ausdruck der Überschrift den Unterstreich-Modus ein, und direkt danach wieder aus. Das geschieht für das Programm völlig unsichtbar. Sie soll- ten jedoch nur solche "unsichtbaren" Einstellungen verwenden, die das Format des Ausdrucks nicht beeinflussen (z. B. keine Breitschrift), da sonst der Gesamteindruck der Liste zu stark zerissen wird. Sie sehen also, die Möglichkeiten sind geradezu unbegrenzt und Ihrer Kreativität sich keine Grenzen gesetzt ... © Tobias Nicol Neuwiesenstraße 20 6000 Frankfurt 71 Telefon: 069/672871 Dieses Programm ist Public Domain und darf frei kopiert werden, solange es im Order mit allen zugehörigen Dateien bleibt, und nicht verändert wird. Alle weitergehenden Rechte vorbehalten. T O B I A S N I C O L , 1 4 . 0 9 . 1 9 8 8