Versions-Übersicht zum Programm VIDEOTEXT Stand: 26.06.95 VERSIONEN ========= V1.0: Ein aus einer gewissen Computerzeitschrift abgetipptes Turbo-Pascal- Listing, das mit geringfügigen Änderungen unter KICK-Pascal zum Laufen gebracht werden konnte. Ziemlich plump. (03/92) V2.0: Eigener 8-Farben-Screen wird geöffnet, ordnungsgemäße Belegung des RS232-Ports über die "misc.resource". V2.1: Selbstgemalter Font "teletext/8" ermöglicht nun auch die Darstellung von VT-Grafikzeichen. V2.2: Die Einschränkung "nur eine VT-Seite gleichzeitig im Speicher" (immerhin mit allen ihren Unterseiten) entfällt, dafür 50 gleichberechtigte Seitenspeicher. ASCII-Dateiausgabe. 3×3-Druckseite kann jetzt individuell zusammengestellt werden. V2.3: Zwei neue Spielzeuge: Testmodus, der das Statusregister des Decoders und gleichzeitig auch die Videotext-Uhr abfragt. Außerdem Seiteninformation, besorgt die Nummern aller vom Sender ausgestrahlten Seiten, mit Zählung und grafischer Darstellung. V2.4: Unterstützung der direkten VT-Darstellung am Fernseher V2.5: Optimierte Decodierung der VT-Steuerzeichen, Geschwindigkeit der Bildschirmausgabe konnte ungefähr verdoppelt werden. Konsequente Verwendung der KICK-Pascal-2.0 ExitServer. V2.6: Die eingelesenen Seiten werden endlich sortiert (verkettete Liste), dynamische Speicherverwaltung erlaubt beliebig viele Seiten einzulesen. Magazinweises Blättern (d. h. in 100er-Schritten) ist möglich. IO-Routine für den I²C-Bus auf Geschwindigkeit optimiert (dringend notwendig, da sie nicht in Assembler, sondern wie der Rest des Programms in Pascal geschrieben ist). V3.0: Warteschlange für Seitenanforderungen, Nutzung aller vier Empfangs- einheiten des SAA 5246 (anstatt nur einer). Seitensuche, Testmodus und Benutzereingaben schließen sich endlich nicht mehr gegenseitig aus, sondern können parallel laufen ("Mikro-Multitasking" :-). Die Möglichkeit zur direkten Druckerausgabe wurde für überflüssig erklärt und entfernt. V3.1: Dateimodus anhängen/überschreiben wählbar, neben reinem ASCII-Text können Seiten nun auch als IFF-Bilder oder Text mit ANSI-Steuerzeichen abgespeichert werden. Filerequester der "req.library" für den Dateinamen. Font "teletext/8" neu gezeichnet (2.0-mäßiger). Neu: Übersichtsliste über die bereits eingelesenen Seiten. V3.12: Die bei Programmstart zuerst angeforderten Seiten können über CLI-Parameter oder Workbench-Tooltypes vorgegeben werden (vorher: fest als 100, 200, ... 800 eingestellt). V3.13: Startparameter für die Geschwindigkeit der I²C-Bus-Routine (bei Problemen mit beschleunigten Amigas), einstellbar ist jetzt auch die maximale Wartezeit, bevor eine Seitensuche aufgegeben wird. Der Font "teletext/8" hat einen Kollegen bekommen, "teletext/9". V3.14: Habe endlich mal in meinem KP-Handbuch unter "Compiler-Optionen" nachgeschaut und ein paar unnötige Laufzeitprüfungen abgeschaltet. Zeitüberschreitung bei der Seitensuche wird jetzt auf zweierlei Weise bewertet: Einzeln angeforderte Unterseiten werden nur noch ans Ende der Warteschlange gehängt, normal angeforderte Seiten (wie zuvor) einfach vergessen. V3.15: Bug beseitigt: alle Unterseiten werden abgewartet, auch wenn Unterseite 1 als erste eintrifft. Einen weiteren Bug übertüncht: Die rätselhaften Seiten "800/0" werden zwar immer noch gefunden, aber nicht mehr eingelesen. (Das Problem ist nach V3.2 nicht mehr aufgetaucht.) V3.2: IFF- und Programmdateien werden erkannt und ein Anhängen daran verweigert. Dateiformat ANSI durch neues Format "VT" + ein extra Tool "VTview" abgelöst. Starke interne Überarbeitung der Seiten-Einleseroutine. Alle Steuerbits werden jetzt mitgelesen, erste Anwendung: Untertitelseiten werden erkannt und *nicht* nach einmaligem Einlesen aus der Job-Liste entfernt. Die Tastatureingaben hat gegenüber Seitensuche etwas mehr Priorität erhalten, insbesondere passiert es nicht mehr, daß alle vier Seitenspeicher hintereinander ausgelesen werden und der Benutzer dieweil Däumchen drehen kann. Einen Bug beseitigt, durch den bereits gelöschte Jobs immer wieder wegen Zeitüberschreitung gelöscht wurden (häßliches Flimmern). Busy-Pointer (Stoppuhr) eingeführt, sieht vor allem mit Steve Tibbet's "PointerX" gut aus (s. FishDisk 483 :-). V3.3: Programm benutzt jetzt "teletext/9" statt "teletext/8", das zog eine Überarbeitung des gesamten Screens nach sich: Fenster ist jetzt borderless, Schließgadget durch ein Menue mit "Quit" ersetzt. Die IFF-Speicherroutine erzeugt nicht mehr die flimmernde Rasterzeile. Konfigurationsdatei ermöglicht, Sender über ein Stichwort in ihrer VT-Kopfzeile zu identifizieren (z. B. "ARD/ZDF", "WDR") und auf Tastendruck eine Liste wichtiger Seitennummern anzufordern. Umgekehrt können jetzt auch auf einen Streich alle Jobs/alle Seiten gelöscht werden. Das ToolType PAGES wird dafür nicht mehr unterstützt, sorry. Einfacher Trick auf BitMap-Ebene ermöglicht Darstellung doppelthoher Textzeilen. Ein weiteres Dienstprogramm ist fertig: "UTS" (UnterTitelSammler), das die VT-Untertitelung einer kompletten Sendung in eine Textdatei protokolliert. Neue Icons gemalt. Quelltext in Units aufgeteilt. V3.4: VideoText und VTview unterstützen jetzt alle internationalen VT-Zeichensätze (6 Stück: GB, D, S, F, E, I), wofür ein neuer Font fällig war: "videotext/9". Kleiner Schönheitsfehler: 3 Zeichen haben in den Font nicht mehr reingepaßt, und zwar habe ich auf 'É', 'ë' und 'ï' verzichtet. VTview sortiert die eingelesenen Seiten nicht mehr nach Seitennummern. I²C-Bus-Routine in Assembler neu geschrieben! (04/94) V3.5: VideoText kann jetzt beim Programmstart Seiten im VT-Format laden, wie VTview. UTS gibt es nicht mehr, seine Funktion wurde ins Hauptprogramm integriert. Die Darstellung doppelthoher Zeichen erfolgt jetzt auch korrekt, wenn eine Zeile doppelt- und einfachhohe Zeichen gemischt enthält. Das Timing beim Einlesen von Seiten kann für die zwei verschiedenen VT-Sendemodi unabhängig eingestellt werden. Einen schweren Bug in der Verwaltung der verketteten Liste beseitigt. V3.51: Einen kleinen Bug im Zusammenhang mit dem Scrollen der Seitenliste beseitigt. V3.52: Dummen Bug beseitigt: Seitenangebot stürzte ab, wenn eine unsinnige Seitennummer gelesen wurde. V3.6: Leicht geändertes Konzept für die Untertitel-Protokolldatei: Während eine solche aktiv ist, konnten bislang keine anderen Seiten mehr gespeichert werden. Jetzt werden zu speichernde Seiten in ASCII in die Protokolldatei eingefügt. Änderung bei Shift-Crsr-Up, am besten am Beispiel erklärt: bewirkt nach wie vor Sprung 300->200, aber nicht mehr 303->200 sondern 303->300. Dateien werden mit der KickPascal-Option Buffer() gepuffert (so wie unter C geöffnete Dateien es übrigens automatisch sind!) -> Leichter Geschwindigkeitsvorteil. Der Dateityp "Icon" wird jetzt auch erkannt und gemeldet. Kleinere Bugs behoben: UT-Seiten flimmern nicht mehr in der Job-Liste, bei voller Warteschlange verschwindet jetzt der Eingabecursor, beim Workbench-Start wird ins richtige Verzeichnis gewechselt (wichtig, um VT.config zu finden). Überarbeitung des Belegungskonzeptes für den seriellen Port: Mehrere I²C-Bus Programme (d. h. Benutzer meines Unit "i2c_serial") dürfen gleichzeitig ablaufen, die Koordinierung ihrer Datenpakete wird mittels Semaphoren geregelt (hätte nicht gedacht, daß ich jemals so was benützen würde). (12/93?) V3.61: Screen hat jetzt für 2.0 seine DrawInfo-Tags bekommen, ebenso Farben des FileRequesters überarbeitet. V3.62: Woran erkennt man das Ende einer ESC-Sequenz, wie Cursor- oder F-Tasten sie liefern? Daran, daß keine weiteren Zeichen mehr kommen? Das war ein etwas dösiges Kriterium und ist jetzt durch das korrekte (ein Zeichen >='@' trifft ein) ersetzt worden. V3.7: Gerasterte Grafikzeichen werden unterstützt, dafür wurde eine neue Version des videotext.font nötig (Zeichen #128 dient als Rastervorlage). (01/95) V3.71: Es können nun alle Seiten im Speicher oder alle Unterseiten der aktuellen Seite auf einmal gespeichert werden. V3.72: Interne Änderung: Seitennummern sind jetzt Hex-Zahlen (erlaubt die Verarbeitung von Pseudoseiten, z. B. für TOP-Text) V3.73: Bug beseitigt: Das Steuerzeichen "graphics hold" auf der ersten Spalte (z. B. bei Premiere) ließ die Bildschirmausgabe abstürzen. V3.74: Warteschlange verlängert, 100 Seiten gleichzeitig dürfen warten. V4.0: *Viele* Neuerungen: benutzt den ASL-Filerequester, neue Bildschirm- farben, Neuaufbau der Seitenliste optimiert (drastische Geschwindigkeits- steigerung), Systemuhr nach VT-Uhr stellen, Sendernamen anzeigen, TOP-Text-Unterstützung, zweite (alternative) Seitenauswahl-Datei, externer Editoraufruf für beide, Abspeichern mit Icon, direkter ASCII- Ausdruck einer Seite ist wieder möglich, Ausgabe der eingestellten Startparameter, Hilfstext als "VT-Seite", neueste Seitenanforderungen können sich "vordrängeln", keine unvollständig ausgegebenen Seiten mehr. Starke Überarbeitung der Tastaturbelegung: mehr F-Tasten benutzt. Dokumentation im AmigaGuide-Format. Drei Bugs beseitigt: einen bei der Unterseiten-Buchführung, den ich in V3.72 eingebaut habe, der zweite bestand vermutlich seit V3.6: falsche Chunk-Längen in allen gespeicherten IFF-Bildern (auwei). Und der schlimmste: anscheinend habe ich nie das Resultat von OpenScreen() und OpenWindow() abgefragt %-(. (05/95) V4.01: Habe jetzt OS 3.1 und durfte gleich einen Bug beseitigen, der unter 2.0 bloß nie aufgefallen war: fehlerhafte DrawInfo führte zu unsichtbarer Titelleiste. V4.1: Mausunterstützung für Seitenanforderung und Durchblättern eingebaut, Option zum Anfordern aller laut TOP-Text verfügbaren Seiten auf einmal (mäßig sinnvoll), Warteschlange auf max. 800 Seiten verlängert. Startparameter überarbeitet, Bildschirmfarben und Verzeichnis für .config-Dateien sind jetzt einstellbar. Decoder-Initialisierung kann auf Tastendruck jederzeit wiederholt werden (vor allem Modem-Besitzer sollten das zu schätzen wissen ;-) V4.11: Habe endlich Dokumentation zu TOP-Text (vielen Dank an MiHü) V4.12: Ein paar Bugs beseitigt: Anzahl der TOP-Text-Seiten wurde etwas nachlässig ermittelt (ging schief bei Bayern 3), Auswahlvorgang bei 3 TOP-Seiten war krass fehlerhaft (da nie getestet ;-(, z. B. MDR), doppelthohe Zeichen in der untersten Zeile blieben immer stehen (Eurosport). Einen Fehler mit Zeigern gefunden, der bloß nie aufgefallen ist, weil in $0 anscheinend nichts wichtiges steht. %-| V4.2: neu: Seitennummern im Clipboard speichern, als Unterstützung beim Editieren der .config-Dateien. TOP-Text-gestützt-automatische Seitenanforderung holt jetzt nicht mehr alle Seiten, sondern nur noch die "Blockseiten", erheblich sinnvollere Anwendung. Noch mehr mausklickbare Funktionen. Untertitel werden nicht mehr automatisch in der Seitensuche festgehalten, es gibt keine "Protokolldateien" mehr. Dafür eine Option, beliebige Seiten zu überwachen, entweder am Bildschirm oder über die Ausgabedatei. Die Umschaltung auf Dateiformat IFF wurde durch eine Option "IFF speichern" speichern ersetzt. Mehrfaches Suchen nach derselben Seitennummer wird jetzt vermieden. Gespeicherte Seiten jederzeit mit Filerequester zu laden ermöglicht (vorher nur über Programmstartargumente). Einfacher Requester mit Stringgadget ersetzt den Filerequester, wenn keine entsprechende Library gefunden wird (immerhin besser als die alte Lösung, Tastatureingabe über console.device). (06/95) Anmerkung: Die Versionen vor 2.6 mußte ich aus ungefährer Erinnerung beschreiben, da ich diese Liste nicht von Anfang an geführt habe. Auch ist mir zu spät aufgefallen, daß es ganz nett sein könnte, das Datum jeder Version mit zu notieren. Zukunft (möglicherweise): ------------------------- - mehr Intuition (Menues statt F-Tasten, PropGadgets zum Scrollen der Listen) - keinen Busypointer mehr beim Seitenlesen über den I²C-Bus, nur noch bei wirklich langwierigen Vorgängen (ab ca. 1 Sek, z. B. IFF-Bild speichern, .config-Datei lesen etc.)