Versions-Übersicht zum Programm VIDEOTEXT Stand: 15.06.97 VERSIONEN ========= (Die Versionen vor 2.6 mußte ich aus ungefährer Erinnerung beschreiben, da ich diese Liste leider nicht von Anfang an geführt habe.) 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: Seitenanforderung über Startparameter anstelle der voreingestellten Anforderung 100, 200, ... 800 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! 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. (4/94) V3.51: Einen kleinen Bug im Zusammenhang mit dem Scrollen der Seitenliste beseitigt. V3.52: Dummen Bug beseitigt: Seitenübersicht 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). 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 Geschwindig- keitssteigerung), 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. Option zum Empfang einer beliebigen Unterseite, z. B. "100/*". 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 nur noch die "Blockseiten" (erheblich sinnvoller). 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" 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) V4.21: Bug behoben: Programm hing bei I²C-Bus Problemen und gleichzeitig wartenden Jobs, vermutlich nicht sehr lustig für Erstbenutzer. Neu: Doppelklick in die entsprechende Liste löscht eine Seite oder einen Job, Doppelklick auf eine Seitennummer fordert Seitengruppe an. V4.22: Ein paar Bugs im CLI-Startupcode behoben, Doppelklick auf die Überschrift der Seitenliste löscht keine Seiten mehr. Neu: automatisch numerierte Ausgabedateien. (08/95) V4.23: Anklicken von Nummern im Seitentext verbessert (lieferte manchmal Nummern, wo keine waren), funktioniert jetzt auch für doppelthohe Zeilen korrekt. Läuft wieder unter Kickstart 1.3 (den Bug hatte ich in in V3.6 eingebaut, ich mußte ja unbedingt AddSemaphore() benutzen). V4.3: TOP-Text wird jetzt in richtige Auswahlmenüs umgesetzt, Sendername kann als Dateiname übernommen werden, leichte Änderungen bei den anklickbaren Überschriften. Neuer Startparameter FILEMODE. VTview hat ein PropGadget bekommen und beherrscht jetzt auch das Anspringen angeklickter Seitennummern. (09/95) V4.31: Bug behoben: VT-Format wurde gelegentlich nicht korrekt eingelesen (ausgelöst durch "End Box" ($0A) in Spalte 40 ...) V4.32: Bug behoben, der VideoText auf Maschinen mit RAM oberhalb der 16 MB-Grenze aussteigen ließ. %-| V4.33: Eine Variante fürs Leuverink-Interface geschrieben. Neu: Hervorheben der Seiten, die der User noch nicht gesehen hat. V4.34: Bug behoben: Erzeugung der Parameterübersicht stieg bei zu langen Pfadnamen einfach aus. Neu: Anzeige der Busfehler auch als Klartext. Geänderte IO-Routine, die die BUSDELAY-Anpassung überflüssig machen dürfte. (11/95) V4.4: Benutzt die i2c.library von Brian Ipsen, kann das Dateiformat der VTex-Software von HK lesen (kleiner Trost, weil die Ansteuerung der VTex-Hardware selbst *unmöglich* ist). Info-Seite und Parameterübersicht werden nicht mehr in die Seitenliste eingereiht, Klartextausgabe der Busfehler jetzt als "Mini-Guru" ;-). Viele kleine Schönheitsfehler beseitigt. (12/95) V4.41: Decodierung der VT-Steuerzeichen komplett neu überarbeitet, dadurch einige Bugs behoben. Direktes Anspringen der noch nicht gelesenen Seiten möglich. VTview hat einen Filerequester spendiert bekommen. "Selbstnumerierende" Seiten als Abhilfe bei dummen Fernsehanstalten, die fehlerhafte Unterseitennummern senden. V5.0: Menues !!! Gleichzeitig wurde die Tastaturbelegung erheblich umgekrempelt, ein paar wichtige Tasten sind aber gleich geblieben ;-). Hilfstext nur noch einseitig. Neue Funktion: Seitenstichprobe, ganz nett für Sender ohne TOP-Text. Die TOP-Text Funktionen "Seitenstatistik" und "Blockseiten anfordern" sind wieder da. Bug behoben: unnötig gesetztes Screen-Flag GENLOCK_VIDEO verhinderte Mode Promotion auf A1200/4000. (1/96) V5.01: Rücksprung (als Gegenstück zum Anklicken von Nummern im Seitentext), kleinen Bug behoben, der gelegentlich Tasten verschluckte. VTview von der Klickbarkeit ans Hauptprogramm angeglichen, herben Bug beim Laden über Filerequester beseitigt. (2/96) V5.02: Anspringen von Seitennummern auch über Tastatureingabe. V5.03: Interne Umstellung auf RawKey-Codes, ermöglicht Abfrage von Tasten- kombinationen wie Shift-Del und Alt-Crsr. Seitenspeicher kann jetzt auch durch Mausklick gelöscht werden. Bugs behoben: bei CLI-Start wurde der pr_WindowPtr nicht richtig wiederhergestellt, "Disk full" u. ä. Fehler beim Speichern führten nicht zum Abbruch, sondern zu einer endlosen Serie von Requestern. V5.04: Sinnvollere Handhabung von bildschirmüberwachten Mehrfachseiten, fertig abgearbeitete Job-Liste bringt den Programm-Screen nach vorne. Kleine Änderung bei der Erzeugung separierter Mosaikgrafiken, behebt evtl. Probleme mit manchen Grafikkarten. Parameterübersicht entfällt, dafür können die Startparameter ins Icon zurückgeschrieben werden und werden von dort auch beim CLI-Start gelesen. (3/96) V5.05: Umstellung auf i2c.library V39.2 (39.0 und 39.1 waren Beta- Versionen), kleinen Display-Bug beim Löschen einzelner Jobs behoben, die Rücksprungfunktion merkt sich jetzt auch Unterseitennummern (erheblich sinnvoller). Auswahlzeiger der Job-Liste reagiert etwas intelligenter auf Neueingabe oder Löschen von Jobs. Kann jetzt auch Jan Leuverinks TT-Format lesen (so einigermaßen, mit den Beispieldateien von tt120 klappt es jedenfalls). (4/96) V5.1: Keine Unterstützung von Kickstart 1.3 mehr! Dafür Screenmode-Requester und wahlweise größerer Font einstellbar (videotext/15). Numerierte Dateien gibt es nicht mehr, immerhin kann jetzt aber das Datum an den Filenamen angehängt werden. Umschaltung anhängen/über- schreiben entfällt, dafür jetzt ein explizites Kommando zum Überschrei- ben der Ausgabedatei. Ctrl-S und Ctrl-Del wirken nur noch auf das Listenende ab Cursor. Titelzeile mit Sendernamen kann durchlaufend ins Statusfeld eingeblen- det werden. Zeitüberschreitung in der Seitensuche erzeugt eine Dummy-Seite mit entsprechender Meldung. Optionale Sprachausgabe nach Abarbeiten der Job-Schlange. Selbstnumerierende Seiten mit '100-0' als interessante Alternative zu '100/.'. Display-Bug beim Löschen einzelner Jobs jetzt auch für Doppelklick-Löschen behoben. (5/96) V5.11: Kein "Screen nach vorne" nach Abarbeiten der Jobs mehr, als laestig und auch (seit V5.1) ueberfluessig erkannt. (6/96) Kleine Schoenheitskorrektur im Zusammenhang mit den TOP-Pseudoseiten. V5.12: Hervorhebung von Pseudoseiten und lokal erzeugten Seiten in der Seitenliste. Option, alle Seiten auf einmal als "gelesen" zu markieren. Fernsehdarstellung ein/transparent/aus über Startparameter setzbar. F8 fordert bei Mehrfachseiten nur noch die aktuelle Unterseite an, das andere ist mit Shift-F8 immer noch möglich. "Ausgabedatei löschen?"-Requester informiert jetzt auch über die Größe der zu löschenden Datei. Zeitschranke der Seitenstichprobe nochmals heraufgesetzt. (7/96) V5.2: ARexx-Port !!! Endlich! :)=) VTview gibt es nicht mehr, dafuer funktioniert VT jetzt auch auf LoRes-Bildschirmen und kann die Seiten automatisch durchblaettern. Neues System für die Seitenvorauswahl. Schönheitskorrektur: das Datum wird jetzt in rein numerischer Form an den Dateinamen angehängt. (8/96) V5.21: Noch besser: das Datumsformat ist jetzt einstellbar. (9/96) V5.22: "Datei Löschen?"-Requester als zweizeilig umformatiert Speichern von Seitengruppen (Ctrl-S) optimiert, ist jetzt 3- bis 5mal so schnell (ohje, was hatte ich da bloß gemacht ...) V5.23: "gefilterte Stichprobe": sammelt nur Seiten, die in der Seitenvorauswahl vorkommen. Zurueckstellen nicht gefundener Seiten in die Seitensuche, neue Version der i2c.library, sollte jetzt auch auf A1200 funktionieren, neue ARexx-Kommandos: SNAPSHOT, LIST2CLIP, RETRY, SCAN [ALL|SELECTED], GET_STATION RAW. (10/96) V5.3: bis zu 10 ARexx-Skripts vom Programm aus über Menü startbar, ein paar Enforcer-Hits beseitigt. (11/96) V5.31: PubScreen, Installer-Script, neue Darstellung für selbstnumeriernde Seiten (100*7) Interne Änderung bei der Anforderung einzelner Unterseiten. "Alle" Seiten speichern/löschen ist wieder möglich. Temporäre I²C-Bus-Sperre über Menü, sinnvoll bei Parallelport-Interface. Option "Seite ins Clipboard schreiben", auch als PAGE2CLIP über ARexx. Korrektere Startmethode für ARexx-Scripts: Messages an RexxMaster statt "run rx ...". Returncode für RETRY, GET_STATION prüft jetzt erst den Decoder-Status. Icons über ARexx abschaltbar, ICONS ON|OFF. (1/97) V5.4: ARexx-Skripts wahlweise auf WB oder PubScreen startbar, neue ARexx-Kommandos SCRN2FRONT, SCRN2BACK, manierlichere Fehlermeldungen für GET_STATION LIVE Auswahlzeiger der Seitensuche wieder über +/- steuerbar Die TOP-Seitenübersicht ist anklickbar geworden Farbanordnung für Hintergrund und Menüs über ToolType einstellbar IFF-Speicherroutine jetzt grafikkartenkompatibel (und stinklangsam) mildere Bestrafung für direkte Unterseitenanforderungen Stichprobe mit Aktualisierung der Seitenliste, "filtern" erfolgt mit dem Inhalt der Warteschlange, nicht mehr dem Inhalt der Vorauswahl String-Suche und entsprechendes ARexx-Kommando HUNT (5/97) V5.41: kleiner Display-Bug behoben Bessere IFF-Routine: grafikkartenkompatibel *und* schnell Anleitung komplett neu überarbeitet neu am ARexx-Port: SAVE THIS/KILL THIS für die aktuelle Seite, FILENAME und FILEMODE geben die alten Einstellungen zurück (6/97) TODO ==== - bessere Einbindung des Stichprobenmodus ZUKUNFT ======= - Portierung nach C - Lokalisierung - Englische Kurzanleitung