H-DOS 2.3 * G-DOS 2.x-Modifikation von A. Sopp Das Copyright von G-DOS liegt bei der Fa. TCS-Computer GmbH. Da die Version 2.3 kein völlig neues DOS ist, sondern durch zahlreiche Zaps lediglich eine Verbesserung des G-DOS 2.x, kann nur eine Anleitung zur Handhabe der Erweiterungen gegeben werden. Es wird vorausgesetzt, daß der Benutzer auf legalem Wege ein G-DOS von TCS erworben hat und dazu die Anleitung besitzt. H-DOS 2.3 bleibt kompatibel mit allen Versionen von G-DOS 2.x und NEWDOS/80 2.x. D i e n e u e n F e a t u r e s Graphik-Hardcopy mit : Beim Dreitastenbefehl wird zunächst geprüft, ob auf dem Bildschirm Graphik vorhanden ist. Dies geschieht in Maschinensprache so schnell, daß der Benutzer keine Verzögerung bemerkt. Wird ein Graphikzeichen angetroffen, ertönt ein akustisches Signal vom Drucker. Jetzt hat der Benutzer die Wahl zwischen drei Möglichkeiten: A, P und N Durch die Eingabe von A werden wie gewohnt nur die ASCII-Zeichen je nach der Systemoption AX ausgedruckt (AX=126 ist normal). Die übrigen Zeichen (Graphik) werden durch Punkte ersetzt. Wird P eingegeben, erfolgt ein gemischter Ausdruck von ASCII- und Graphikzeichen in positiver Darstellung (helle Bildschirmstellen werden weiß, dunkle schwarz dargestellt). Bei der P-Option kann nicht unterschieden werden, ob ein Blank zu einer Graphik oder einem Text gehört. ASCII 20h (Blank) wird daher immer schwarz gedruckt. Mit der Eingabe von N wird in negativer Darstellung gedruckt (hell -> schwarz, dunkel -> weiß). Hier ist ein Blank (auch im Text) immer weiß. Falls die Zusatzplatine HRG 1b angeschlossen ist, kann zusammen mit der Shifttaste gedrückt werden, um auch die hochauflösende Graphik mit auszudrucken. Auch hier macht ein Piepton vom Drucker auf die Wahlmöglichkeit zwischen A, P und N aufmerksam. Die Wahlmöglichkeit zwischen positiver und negativer Graphik- wiedergabe ist zur Schonung des Nadelkopfes Ihres Druckers implementiert. Sie können vor dem Ausdruck je nach Hell-Dunkel-Verteilung entscheiden. Nach P und N wird das Schirmbild zentriert und mit den genauen Bildshirm- proportionen (Breite/Höhe) wiedergegeben. Es werden immer Schrift, Pixel- und hochauflösende Graphik, soweit jeweils vorhanden, gemeinsam aus-gedruckt, außer, wenn A eingegeben wurde (dann nur ASCII-Zeichen, gegf. Punkte statt P ixelgraphik. Die hochauflösende Graphik wird bei A nicht berücksichtigt. Nach dem Graphik-Ausdruck ist der Drucker im Einschaltzustand. Bisher sind nur die Versionen für STAR Gemini-10X und Epson RX-80 lieferbar. An weiteren Versionen für alle gängigen Drucker wird gearbeitet. Achtung: Der DOS-Befehl JKL sollte nur dann in einer JOB-Datei stehen, wenn der Bildschirm zu der betreffenden Zeit keine Graphik enthält oder bei Graphik eine Eingabe durch den Benutzer nach dem Piepton gewährleistet ist (Computer nicht alleinlassen!). Die zusätzlichen Eingaben können nämlich nicht von einer JOB-Datei vorgenommen werden. Das würde bedeuten, daß der Programmablauf stoppt, bis eine Eingabe von Hand erfolgt.Der Spooler (s. u.) ist bei JKL unwirksam, wenn sich Graphik auf dem Bildschirm befindet. Sie wird in jedem Falle sofort ausgedruckt. Bildschirmsicherung mit <345>: Wenn die Hardwareerweiterungen EG 64 MBA und HRG 1b angeschlossen sind, kann ein Bildschirminhalt, bestehend aus ASCII-Zeichen, Genie-Pixelgraphik und hochauflösender Graphik auf Diskette gespeichert werden. Diese Datei, die den Namen BILD/CMD erhält, beinhaltet gleichzeitig ein kurzes Maschinenprogramm, das die gesicherte Graphik beim Aufruf mit dem DOS Befehl BILD sofort anzeigt. Die Graphik bleibt stehen, bis irgendeine Taste gedrückt wird. Erst dann erscheint das H-DOS-Prompt oder die BASIC-Ready-Meldung (oder ein Programm, das den Befehl CMD"BILD" ausführte, wird fortgesetzt). So hat der User z. B. die Gelegenheit einer Hardcopy mit (s. o.). Der Befehl <345> zum Sichern des Schirmbildes ist nur möglich nach INI,J bzw. Booten ohne Linkspfeil (s. u.). Achtung! Die Bildschirmgraphik wird vor dem Abspeichern auf Diskette in einen Puffer geschrieben, der den Speicherbereich 8000-B425h (32768-46117d) belegt. Daten oder Programme, die dort liegen, werden überschrieben. Sie sollten gegf. vorher gesichert werden. In BASIC kann der Befehl NEW nach <345> angebracht sein, um unvorhergesehene Ereignisse zu vermeiden. Utility-Programm GRA/CMD: Dieses Programm leistet genau dasselbe wie der Dreitastenbefehl <345>, benötigt jedoch nicht den EG 64 MBA zur Erkennung des Befehls. Es wird wie üblich als DOS-Befehl mit GRA aufgerufen. Nachteile: Es wird etwas mehr Speicherplatz benötigt, außerdem wird der Befehl GRA nur dann nicht mitten in der Bildschirm- graphik angezeigt, wenn er Bestandteil eines Programms ist (z. B. CMD"GRA" in einer BASIC-Zeile). Memory Banking mit <,./>: Das Genie I/II ab Baujahr '83 besitzt 64 kB frei programmierbares RAM. Die unteren 16 kB sind mit Hilfe des Memory Banking- und CP/M-Adapters EG 64 MBA zugänglich. Besitzern des MBA wird das Banking erleichtert durch den Dreitastenbefehl <,./>. In der Anzeige wird der Benutzer im Dialog geführt. Dabei wird das Display gepuffert und anschließend restauriert, um die Möglichkeit offenzulassen, es mit Hilfe des MBA zum späteren Abruf zu sichern. Es muß mindestens ein Code auf den Banking-Port DFH ausgegeben werden.Das Banking muß durch Booten ohne Linkspfeil bzw. mit dem neuen DOS-Befehl INI,J (s. u.) vorbereitet sein. Achtung: H-DOS bewältigt eine Reihe seiner Features durch Parallelbelegung des Adreßbereichs 0000-35FF ("neben" dem Level-2/4-ROM). Der Benutzer ist beim Banking selbst dafür verantwortlich, daß er nicht mit dem System in Konflikt gerät. Im Zweifel zuvor INI,N (s. u.) eingeben, um einen evtl. Systemabsturz zu vermeiden. Spooler mit <567>: Ebenfalls mit dem MBA können auszudruckende Texte oder Listings zwischen- gespeichert werden, um nicht auf den Drucker warten zu müssen. Der Spooler wird mit dem Dreitastenbefehl <567> aktiviert. Der Ausdruck der gespeicherten Zeichen erfolgt immer dann, wenn die Tastatur abgefragt wird. Da der Benutzer mit Abstand das langsamste "Bauteil" des Computers ist, wird auf diese Weise keine Konsolzeit verschwendet. Sollte der Puffer von 12 kB voll sein, der sich im Adreßbereich des Microsoft-Interpreters befindet, werden zunächst alle bereits ausgedruckten Zeichen gelöscht, um erneut Platz zu schaffen. Dieses Feature macht diesen Spooler ungemein wertvoll, da mit einem wirklich vollen Puffer kaum je zu rechnen ist. Sollte dieser Fall jedoch auftreten (z. B. bei extrem langen LLISTings), wird wie gewohnt gedruckt, ohne die Tastatur freizugeben. Sobald im Puffer wieder Platz ist, wird das Spooling fortgesetzt. Mit demselben Dreitastenbefehl <567> wird der Spooler auch wieder deaktiviert. Es erfolgt jeweis eine entsprechende Meldung. Der Spooler kann auch mitten in einem Druckvorgang unterbrochen werden. Dann verhält sich der Druckertreiber wie gewohnt (keine Tastatureingaben möglich, bis der Zeichenpuffer leergedruckt ist; es kann jedoch mit BREAK unterbrochen werden).Der Spooler arbeitet nur, wenn ohne Drücken des Linkspfeils gebootet oder inzwischen INI,J eingegeben wurde (s. u.). Akustische Signale: Wenn DOS- oder BASIC-Fehler auftreten, ertönt ein Piepen von etwa einer halben Sekunde Dauer, das den Benutzer warnt. Das Kopieren und Formatieren von Disketten ist je nach Dichte usw. mehr oder weniger langwierig; der Benutzer wird sich dabei vielleicht vom Computer entfernen. Aus diesem Grunde ist beim Auftreten eines Fehlers bei diesen Vorgängen eine Art Kojak-Sirene zu hören, die einen höheren Aufmerksamkeitswert als ein gewöhnliches Piepen besitzt. Sobald eine Taste gedrückt wird, hört das Geräusch auf. Der ASCII-Code 07 wird als BEL-Signal erkannt. Mit PRINT CHR&24&(7), einem entsprechenden Maschinenbefehl oder einem 07-Byte in einem Text o. ä. wird ein charakteristischer Ton ausgegeben, der etwa eine halbe Sekunde dauert und sehr eindringlich ist. Auf diese Weise können Aufforderungen zur Tastatureingabe o. dergl. bekräftigt werden. Die BEL-Routine funktioniert nur mit angeschlossenem EG 64 MBA. Ohne ihn wird der ASCII-Code 07 lediglich ignoriert, es gibt keinen Konflikt mit dem Betriebssystem. Sonstige Programme, die z. B. einen Tastenclick o. ä. erzeugen, werden nicht beeinflußt. Akustische Signale können nur mit einem angeschlossenen Verstärker erzeugt werden (beim Genie neuerer Bauart eingebaut). Ohne Verstärker sind die Signal-Routinen des H-DOS 2.3 wirkungslos, stören das System aber nicht. Library-Befehl LWT: Der Laufwerktest (Befehl LWT) wurde bei einigen G-DOS-Versionen durch die Fa. TCS Computer deaktiviert. Er ist im H-DOS 2.3 wieder funktionsfähig. Es wird jedoch davor gewarnt, der Anzeige auf dem Bildschirm allzuviel Vertrauen zu schenken. Sie ist recht ungenau und kann nur einen ungefähren Anhalt für die Geschwindigkeit der Floppy-Laufwerke geben.Nach der Eingabe von LWT erscheint eine Graphik auf dem Bildschirm. Nun werden nacheinander die Nummern der Laufwerke (0-3) eingegeben, deren Geschwindigkeit überprüft werden soll. Das Programm wird verlassen, indem man Laufwerk 0 anwählt und anschließend BREAK drückt. Library-Befehl DDE: Dieser Befehl ist im G-DOS Handbuch sehr unvollständig erklärt. Wenn Sie nach der Aufforderung "Dateiname:" einen Asterisken (*) eingeben, wird der zuletzt bearbeitete Sektor angezeigt, auch wenn zwischendurch andere Programme liefen. Bedingung ist, daß dabei der Adreßbereich um 5500 nicht verändert wurde. Bei Eingabe des Doppelkreuzes mit einer Laufwerknummer können Sie einen beliebigen Sektor der Diskette ansprechen, unabhängig von einer Datei. Dies sind Funktionen, die mit DDE bisher schon möglich waren, jedoch nicht im Handbuch erklärt sind. Neu bei H-DOS ist die Möglichkeit, auch bei beliebigen Diskettenformaten (Spuren, Seiten, Dichte) bis an den letzten Sektor der Diskette heranzukommen (s. Abschnitt "Sonstige Änderungen"). Bei jedem späteren Aufruf dieser Funktion von DDE wird der zuletzt bearbeitete als der höchste Sektor der Diskette angesehen. Der wirklich Letzte ist daher nur beim ersten Aufruf von DDE erreichbar.Beim Wechsel zwischen ASCII und Hex-Anzeige im M-Modus mit der CLEAR-Taste springt der Cursor nicht mehr nach links oben, sondern er bleibt bei dem gerade aktuellen Byte. So können z. B. sehr bequem Texte modifiziert werden, die von Steuercodes für den Drucker, Zeilenvorschüben etc. durchsetzt sind. Mit dem zusätzlichen Befehl T (für truncate) kann in der ASCII-Anzeige das Bit 7 bei Codes > 9Fh rückgesetzt werden. Auf diese Weise werden Texte in Klarschrift sichtbar, die durch das gesetzte Bit 7 verschlüsselt oder systembedingt kenntlich gemacht sind (z. B. Zeilennummern bei EDTASM- Quelltexten). Die normale Anzeige erfolgt nach erneuter Eingabe von T. Mit dem zusätzlichen Befehl C (für Controll Codes) werden die Zeichen <20h nicht als Punkte dargestellt, sondern unverändert in den Bildschirm geladen. Beim Genie I/II mit einer entsprechenden Hardware-modifikation und beim Genie III erscheinen jetzt Sonderzeichen, bei anderen Maschinen Großbuchstaben. Normale Anzeige nach erneuter Eingabe von C. Library-Befehl INI: Mit INI,N (N für nein) wird die Initialisierung des Parallel-RAMs (s. u.) rückgängig gemacht, wenn sie zuvor stattfand. Das System befindet sich nun in dem Zustand, den der Benutzer von G-DOS in der Normalversion gewohnt ist. Die neuen Dreitastenbefehle sind nun unwirksam. In seltenen Fällen der Unverträg- lichkeit mit einem Anwenderprogramm oder einer anderen DOS-Erweiterung ist dieser Befehl angezeigt. INI,J (J für ja): Mit diesem Befehl können Besitzer des MBA das parallele RAM im Adreßbereich 0000-3FFFh (0-16383d) initialisieren: Der Bereich 0000-2FFFh wird vom ROM auf das RAM kopiert, so daß spätere Modifikationen z. B. des Microsoft-Interpreters einfach möglich sind. In den Bereich 3600-3FFFh (memory mapped I/O) werden Nullen eingeschrieben, um böse Überraschungen z. B. mit der Tastatur beim Banking zu vermeiden. Die Resettaste wird für den MBA disabled, behält jedoch für das gesamte übrige System ihre normale Funktion. Anschließend werden die [nderungen des Betriebssystems vorgenommen, die die neuen Dreitastenbefehle und die Erkennung des BEL-Codes (s. u.) ermöglichen. Auch dies geschieht innerhalb einiger Sekundenbruchteile. Das Befehlswort INI und die Option J oder N können durch Komma oder Leerzeichen voneinander getrennt werden. Die INI-Bearbeitungsroutine ist so programmiert, daß der EG 64 MBA auch bei der verdoppelten Taktfrequenz von 3,54 MHz noch sicher schaltet, falls eine entsprechende Hardwaremodifikation an Ihrem Computer vorgenommen wurde. Library-Befehl B2: Dieser Befehl läuft nach wie vor ungestört ab, auch wenn vor der Eingabe mit INI,J oder BOOT ohne Linkspfeil das Parallel-RAM in das DOS einbezogen worden sein sollte. Die Bearbeitungsroutine von B2 versetzt zuerst das System in seinen ursprünglichen Zustand und initialisiert erst dann das Level2-BASIC. Dabei bleibt aber die ROM-Kopie im Parallel-RAM erhalten. Es ist daher auch von Level2-BASIC aus leicht möglich, Änderungen im Interpreter vorzunehmen. Ohne angeschlossenen EG 64 MBA bleibt der Befehl B2 unverändert wirksam. Library-Befehl CLS: Ohne weitere Parameter arbeitet der Befehl CLS wie bisher. Wird nach Komma oder Blank jedoch noch ein G und erst dann NEW LINE eingegeben, so wird der Speicher der hochauflösenden Graphikplatine HRG 1b gelöscht. Der übrige Bildschirminhalt bleibt erhalten. Umgekehrt wird der Graphikspeicher vom DOS-Befehl CLS ohne weitere Parameter nicht beeinflußt. CLS,G steuert die Ports 2, 3 und 5 an (alle mit Output). Bei nicht angeschlossener HRG 1b bleibt der Befehl folgenlos. Sind an den genannten Ports andere Bauteile betrieben, kann dieser Befehl mit nachfolgendem G vermieden werden. Library-Befehl OUT: Eine der Stärken des Z80-Mikroprozessors ist seine Fähigkeit, 256 Ports zur Ansteuerung externer Geräte zu adressieren. Mit dem OUT-Befehl kann auf einen beliebigen Port ein beliebiger Wert ausgegeben werden. Ein einfaches und durchaus alltägliches Beispiel ist die Ausgabe des Codes 0Dh (13d) auf den Port FDh (253d). Auf diese Weise wird der evtl. vorhandene Zeichenpuffer des Druckers ausgedruckt und ein Wagenrücklauf vollzogen (CR). Auch die Hardwareerweiterung HRG 1b für hochauflösende Graphik läßt sich auf diese Weise einfach bedienen sowie alle Geräte, die bei Ihrem Computer über einen Port geschaltet werden. Die Befehlssyntax ist OUT,port,code1,code2,... Dabei bedeutet port die Portnummer, code1/2/... sind die auszugebenden Codes. Es können gleichzeitig mehrere (bis der DOS-Eingabepuffer von 80 Zeichen Länge voll ist) ausgegeben werden. Wie im DOS üblich, können das Befehlswort und die Operanden durch Komma oder Leerzeichen getrennt werden. Die Portnummer und die Codes werden zweistellig sedezimal (hex) eingegeben. Der OUT-Befehl des BASIC wird durch den DOS-Befehl OUT nicht beeinträchtigt. Library-Befehl F: In der Tastaturmatrix der Genie-Computer ist die Leitung AK7 nur mit DK0 über die Shifttasten verbunden. Es ist recht einfach, auch DK1-7 über zusätzlich einzubauende Tasten mit AK7 zu verbinden. Sie haben z. B. unterhalb des Cassettenrecorders (Genie I) Platz. Da sie vom System nicht abgefragt werden, ist ihre Verwendung beliebig, hier als Funktionstasten. Wer diese Manipulation an der Tastatur scheut, kann auch mit CTRL-Zifferntasten (Shift-Abwärtspfeil-Zifferntaste 1-7) vorprogrammierte Funktionen abrufen. Befehlssyntax für F: F,J aktiviert die Funktionstasten bzw. CTRL-Zifferntasten. F,N deaktiviert sie.Sie können dann beliebig anders verwendet werden. F,L listet die programmierten Funktionen auf dem Bildschirm. F,P listet sie auf dem Drucker. F,nr,fct ordnet der F-Taste Nr. nr oder der entspechenden CTRL - Zifferntaste die Funktion fct zu. fct kann bis zu 32 Zeichen lang sein. Alle Tastatureingaben, die DOS in der Befehlsebene zuläßt, können enthalten sein (z. B. nicht BREAK oder CLEAR!). Soll NEW LINE innerer oder letzter Bestandteil einer Funktion sein, so ist es durch den Abwärtspfeil stellvertretend einzugeben. Sonstige ASCII-Codes können dem F-String nachträglich mit DDE eingefügt werden, wenn an ihrer Stelle einstweilen ein Dummycode über die Tastatur eingegeben wurde: Im vorletzten Sektor von HDOS/SYS steht die F-Tabelle. Hierbei ist darauf zu achten, daß das letzte Byte der Funktion das Bit 7 gesetzt erhält (also plus 80h bzw. 128d). Achtung! Die letzten 32 Bytes dieses Sektors enthalten einen Teil des Bearbei- tungsprogramms. Auf keinen Fall löschen! Die Funktionstasten müssen mit Bedacht programmiert werden. Alle Zeichen einer Funktion werden eingelesen, auch wenn etwa ein auftretender Fehler an einer Stelle eine andere Tastatureingabe verlangen würde. Library-Befehl B?: Dieser Befehl ermöglicht die Abfrage der vom EG 64 MBA z. Zt. benutzten Banks. Dabei wird vorausgesetzt, daß ohne Bildschirm, Tastatur und Disk I/O der Befehl nicht gegeben werden konnte, so daß diese Banks nicht geprüft werden. Die Funktion der Resettaste kann nicht mit diesem Befehl getestet werden. Daher wird nur der Zustand der Banks 0000-2FFFh und 3000-35FFh angezeigt, sofern sie nicht auf Normalbelegung geschaltet sind. Es werden bei Parallelbelegung die Banks und ihr Read/Write-Status angezeigt. Bei den Library-Befehlen INFO und PORT ist diese Funktion inbegriffen. Sie verursachen nun bei Parallelbelegung keinen Systemabsturz mehr. Angesichts des ansonsten erforderlichen Programm- und Diskettenplatzaufwandes wurde bei B? ein Schönheitsfehler in Kauf genommen: Wenn in einer der geprüften Banks im ROM gelesen und gleichzeitig im RAM geschrieben wird, erfolgt keine Anzeige. Dies ist für die Praxis in aller Regel belanglos. Library-Befehl *: Mit dem DOS-Befehl * wird der Interpreter so manipuliert, daß alle ASCII-Codes beim BASIC-Befehl LPRINT CHR&24&(x) zugelassen sind und un verändert an den Drucker weitergegeben werden. Bisher führte ASCII 0 lediglich zur Abfrage des Druckerstatus, 0A wurde in 0D verwandelt und 0B und 0C wurden zu einer Folge von mehreren 0A-Bytes. Der Zeilenzähler im Drucker-DCB wird jetzt nicht mehr hochgezählt. Drucker neuerer Bauart unterhalten ihren eigenen Zähler, so daß dieser Platz im DCB für andere Zwecke frei bleibt. Hierbei ist jedoch zu beachten, daß beim Booten durch SYS0/SYS dort die beiden Bytes 48 und 00 eingeschrieben werden, so daß dort stehende Werte des Anwenders nach dem Library-Befehl BOOT oder einem Reset zunächst gelöscht werden. Nach dem Einschalten, Reset oder den Befehlen BOOT und INI ist der Befehl * wirkungslos und muß jeweils erneut eingegeben werden. Nach der Eingabe von * wird der Interpreter direkt, d. h. im Adreßbereich 0000-2FFF verändert (nur mit dem EG 64 MBA möglich). Daher kann dieser Befehl nicht angewendet werden, wenn der Spooler aktiviert wurde, da dieser dort seinen Zeichenpuffer hat! Library-Befehl ID: Mit der Befehlssyntax ID,nr<,A> werden die PD-Parameter einer fremden Diskette in Laufwerk Nr. nr selbsttätig erkannt und auf die Systemdiskette zurück- geschrieben. Falls ,A eingegeben wurde, sind die Änderungen sofort wirksam. Library-Befehl V24: Dieser Befehl existiert in allen G-DOS-Versionen, ist jedoch nur beim Genie 3 aktiv. Bei den Genie-Modellen 1 und 2 erfolgt nur die Meldung, daß er noch nicht implementiert sei. Dem H-DOS wurde eine entsprechende Serviceroutine beigegeben. Mit ihr kann eine V24- bzw. RS232-Schnittstelle eingestellt werden. Bei einer Ansteuerung wie im Genie 3 ist diese Routine unverändert lauffähig. Wird das Interface jedoch über andere Ports oder memory mapped angesprochen, ist eine Modifikation leicht möglich. The HACKTORY bietet hierzu Hilfe an. Diese Routine arbeitet im Adreßbereich ab 3000 (12288 dez.), der nur mit dem EG 64 MBA zugänglich ist. Utility-Programm ASM/CMD: Die eingedeutschte Version von EDTASM, die unter dem Namen ASM/CMD dem G-DOS beigegeben ist, enthält einen Fehler, der für H-DOS korrigiert wurde: Auf die Frage "TEXT IM PUFFER - Wollen Sie Sourcecode erweitern?" wird für "JA" nicht mehr Y, sondern J eingegeben. Das G-DOS-Manual sagt nichts über die Handhabung von ASM/CMD aus. Hier kann die sehr umfangreiche Originalanleitung für EDTASM nicht wiedergegeben werden. Sie sei als bekannt vorausgesetzt. Zusätzlich kann ASM/CMD den Befehl SLL s bearbeiten (shift left logically; wie SRL s, Bit 0 wird immer 1). Für DEFB und DEFW können auch DB und DW eingegeben werden. Statt *LIST ON/OFF genügt *L ON/OFF. Sonstige Änderungen: Die Systemdatei SYS15/SYS, in der der Library-Befehl DDE bearbeitet wird, ist auf volle 5 Sektoren verlängert, um spätere Erweiterungen zu erleichtern. Eine hierzu notwendige Änderung in INHALT/SYS ist auf Ihrer H-DOS-Diskette berück- sichtigt. Hierdurch wird kein zusätzlicher Diskettenplatz beansprucht, weil der fünfte Sektor systembedingt nicht von einer anderen Datei genutzt werden könnte. Durch einen zusätzlichen Zap in SYS15/SYS können Sie nun auch dateiunabhängig Sektoren nach ihrer physikalischen Lage auf der Diskette bis zum letzten Sektor aufrufen. Das war bisher nur für das Format 40tr./SS/SD möglich. Beim Library-Befehl CREATE muß in G-DOS die automatische Platzerweiterung mit der Option ADE=Y (für YES) festgelegt werden (dieser Sprachfehler soll bei jüngsten G-DOS-Versionen behoben sein). Für H-DOS wurde J (für JA) ermöglicht. Überall, wo in G-DOS der Name des Systems stand, steht nun "H-DOS" oder eine entsprechende Codierung. So heißt z. B. GDOS/SYS jetzt HDOS/SYS, ASM/CMD meldet sich mit "HACKTORY-Disk-Assembler", bei fehlerhaftem System wird statt "GDOS?" jetzt "HDOS?" angezeigt usw. Dies ist wichtig, weil beispielweise mit DDE der Bootsektor nicht mehr mit dem Namen GDOS/SYS gefunden werden kann. Optisch unschöne Meldungen des Systems wurden für H-DOS verbessert. So liegen beispielsweise die Spalten der Anzeige des Library-Befehls INFO nunmehr in einer Linie usw.. Für Benutzer der HRG 1B: Bei den DOS-Befehlen PORT und INFO werden Sie festgestellt haben, daß die Ports 00-05, die die HRG ansteuern, entgegen der Anleitung nicht nur bei der Ausgabe die Platine schalten. Um zu vermeiden, daß bei diesen Befehlen die hoch- aufgelöste Graphik in den Bildschirm eingeblendet wird, wurden die Bearbeitungs- routinen von INFO und PORT modifiziert: Nunmehr werden nur noch die Ports 02-FF abgefragt. Sollte der User mit den Ports 00-01 eine andere Hardwareerweiterung ansteuern, genügt die [nderung eines Bytes, das wir Ihnen auf Anfrage nennen. H-DOS löscht beim Booten (Einschalten, Reset, BOOT) den Graphikspeicher automatisch. Soll sein Inhalt jedoch erhalten bleiben, ist während des Bootvor- gangs die Shifttaste gedrückt zu halten. Um das Gegenteil zu erreichen (Löschen des Graphikspeichers nur bei gedrückter Shifttaste), muß ein Byte geändert werden, das gegf. auch benannt werden kann. Allgemeine Hinweise: Ein Betriebssystem ist letztendendes auch nur ein Programmpaket, so auch H-DOS. Es belegt im wesentlichen die durch G-DOS nicht benutzten SYS-Files bzw. freigebliebenen Platz in bereits belegten. Wer ausschließlich Anwenderdateien programmiert, braucht sich hierum nicht zu kümmern. Wer das DOS verändern möchte, muß wissen, wo die einzelnen neuen Features von H-DOS bearbeitet werden: Was bereits beim Booten erledigt wird (Initialisieren des Parallel-RAMs mit dem EG 64 MBA und Löschen des HRG-Speichers), geschieht in SYS24/SYS. Um dies mit Linkspfeil bzw. Shifttaste verhindern zu können, ist ein Zap in SYS0/SYS eing- ebracht. In SYS22/SYS werden folgende Funktionen von H-DOS bearbeitet: Graphik JKL, Funktionstasten, ID. In HDOS/SYS (entspr. BOOT/SYS für NEWDOS-80 und GDOS/SYS für G-DOS) liegt die Tabelle der vorprogrammierten Funktionen. An ihrem Ende befinden sich essentiell wichtige Programmteile, die auf keinen Fall überschrieben werden dürfen. In SYS26/SYS werden bearbeitet: <,./>, <345>, <567>, * und CLS. Außerdem gibt es in nahezu allen SYS-Dateien Zaps, die Fehler von G-DOS beheben oder G-DOS erweitern, z. B. um die akustischen Signale. Die Library in SYS1/SYS ist um die entsprechenden Befehle erweitert bzw. für bestehende Befehle verändert (z. B. CLS). Das DOS-Prompt in SYS1/SYS ist nach Möglichkeit dem Erwerber persönlich angepaßt. Es kann mit DDE nach Belieben verändert werden. Andere Veränderungen können u. U. zu fatalen Folgen führen, deshalb sei eine vorherige Rücksprache mit dem Autor empfohlen. Da H-DOS in Abständen von einigen Tagen erweitert, verbessert, debugged wird, sind Änderungen gegenüber dem oben Gesagten vorbehalten (eher wahrscheinlich). Zusätzliche Hinweise: Keine dieser Erweiterungen beansprucht Speicherplatz im Anwenderbereich 5200-FFFF oder zusätzlichen Diskettenplatz, denn es wurden nur bestehende Systemdateien durch Zaps verändert bzw. eigens neue, bisher unbenutzte Systemdateien kreiert, die in den Adreßbereich 4D00-51FF laden. Deshalb können alle Programme für die herkömmlichen DOS-Versionen auch weiterhin gefahren werden. Eine Einschränkung versteht sich allerdings von selbst: Da die Erweiterungen auch nur mit Wasser kochen und z. B. den Druckertreiber beeinflussen (, <567> usw.), ist beispielsweise eine Graphik-Hardcopy bei solchen Programmen nicht möglich, die ihrerseits den Treiber auf eine eigene Routine verbiegen. Dies gilt sinngemäß für alle hier beschriebenen Routinen. Schlimmstenfalls wird dann die Erweiterung nicht funktionieren, ein fataler Konflikt ist jedoch nicht zu erwarten. DOS-Moduln und Utility-Programme, die in G-DOS im Anwenderbereich ab 5200 liegen (BASIC/CMD, ASM/CMD, SYS15/SYS u. a.), belegen diesen Speicherplatz allerdings auch in der für H-DOS modifizierten Form. Eine Verlegung in den Bereich unterhalb 4000 via Bank Selection - im Prinzip durchaus möglich - erschien nicht angebracht, weil H-DOS auch ohne EG 64 MBA sinnvoll anwendbar bleiben sollte. Um wirklich für alle Eventualitäten vorbereitet zu sein, sind diejenigen Features abschaltbar, die den DOS-Kern betreffen (<,./>, <567>). Das geschieht, indem man die Linkspfeil-Taste beim Booten gedrückt hält (ähnlich NEW LINE, um den AUTO-Befehl zu unterdrücken). Die übrigen Features von H-DOS 2.3 bleiben erhalten. Es kann jedoch nicht zu Konflikten mit vorhandenen Programmen kommen, da diese Befehle jeweils gesondert aufgerufen werden müssen, was man eben unterlassen kann. Wenn der Benutzer den MBA nicht besitzt oder zeitweilig nicht angeschlossen hat, kann H-DOS unverändert gefahren werden. Hier erübrigt sich das Drücken der Linkspfeiltaste, weil die Abwesenheit des MBA automatisch erkannt wird. Die Befehle <,./> und <567> sind dann wirkungslos. Akustische Signale erfolgen ohne MBA nur bei den Fehlermeldungen, nicht mehr mit dem BEL-Code ASCII 07. Beim DOS-Befehl INI wird die Fehlermeldung "Bauteil nicht erreichbar" ausgegeben. H-DOS-Features, die die hochauflösende Graphik mit der HRG 1b betreffen, haben für H-DOS keine konstitutive Bedeutung. Die entsprechenden Befehle können bei nicht eingebauter HRG einfach vermieden werden. Sollte über die HRG-Ports 00-05 irgendein anderes Peripheriegerät betrieben werden, ist eine diesbezügliche Änderung des H-DOS kein Problem. Bitte gegf. Anfragen. The HACKTORY kann keine Haftung für Schäden übernehmen, die mittelbar oder unmittelbar durch die Verwendung von H-DOS entstehen. Nach menschlichem Ermessen sind Probleme jedoch nicht zu erwarten. H-DOS ist ein Warenzeichen von The HACKTORY Arnulf Sopp, Wakenitzstr. 8, D-2400 Lübeck 1, Tel. 0451-791926, G-DOS und EG 64 MBA sind Warenzeichen der Fa. TCS-Computer GmbH, NEWDOS/80 ist ein Warenzeichen der Fa. Apparat, Inc. und HRG 1B ist ein Warenzeichen der Fa. RB Elektronik Vertrieb GmbH. Kopien der H-DOS-Systemdisk für den persönlichen Bedarf (Schonung und Sicherung des Originals) werden ausdrücklich empfohlen. Die Weitergabe von H-DOS ist nur mit schriftlicher Genehmigung von TCS und The HACKTORY gestattet. Der Name des Käufers ist auf der Diskette codiert und kann daher beim Auftauchen von Raubkopien ermittelt werden.