Ist sie nun bei Ihnen im Vertrieb, oder wird sie in den Vertrieb aufgenommen. sobald sie (offiziell) erscheint? Wenn ja. würde mich natürlich der Preis interessieren.
Michael K. 1000 Berlin 49
(a) Stimmt das, wer stellt den Emulator her ?
(b) Wann wird das überarbeitete TOS 1.4 von ATARI ausgeliefert?
(c) Was ist mit 1st-Word Plus 3.0 ?
Henning J., 7750 Konstanz
Red.: Zur Frage 2a: Es stimmt, daß es jetzt tatsächlich einen PC-Hardware-Emulator gibt. Er besteht aus einer kleinen Platine, auf der sich ein V30-Prozessor befindet, der eine schnelle INTEL-CPU darstellt: diese Platine bewirkt, daß Sie mit dem ST eine Hardware-Emulation erhalten, die schneller als ein IBM Modell 30 ist. Er kostet 598.- DM. Weitere Informationen finden Sie in dem Bericht 'PC-SPEED - MS-DOS prescht los', der in der ST-Computer 7/8 ’89 erschienen ist. Der Emulator ist unter folgender Adresse zu beziehen:
MAXON Computer GmbH Industristr 2 b b25b Eschhorn
Zur Frage 2b und erstem Leserbrief: Das überarbeitete TOS 1.4 wird voraussichtlich nach der ATARI-Messe in Düsseldorf ausgeliefert. Wie erwähnt, bieten diverse Privatinserenten (illegalerweise!!!) das TOS 1.4 schon an: Dies ist eine Vorabversion für Entwickler, also noch nicht fehlerfrei und damit nicht die Endversion. Sie zu (ver)kaufen ist strafbar, da es sich um eine Raubkopie handelt. ATARI hat allerdings noch nichts Genaues über den Preis verlautbaren lassen, so daß es etwa genauso viel kosten wird wie das damalige Blitter-TOS. das Sie bei jedem ATARI-Fachhändler kaufen können. Warten wir es also ab, bis ATARI mit dem TOS 1.4 offiziell auf den Markt kommt, denn die Verbreitung von Gerüchten macht keinen großen Sinn.
zur Frage 2c: Darüber liegen noch keine Angaben vor.
Ein in GFA-Basic (V2.x) geschriebenes und mit dem GFA-Compiler (V1.8) compiliertes Programm habe ich auf meiner Megafile 30 auf der Bootpartition C als erstes Programm in den AUTO-Ordner kopiert. In diesem Programm habe ich Befehle wie DEFLINE, BOX, und RBOX verwendet. Diese Befehle werden, ohne daß eine Fehlermeldung erscheint, nicht ausgeführt, das heißt es erscheint keine Box auf dem Bildschirm. Wird das compilierte Programm jedoch nach dem abgeschlossenen Boot-Vorgang normal gestartet, werden diese Befehle ohne Probleme ausgeführt. Auf eine aufschlußreiche Antwort würde ich mich freuen.
Thomas E., 8000 München
Red.: Bei einer so vorbildlich detaillierten Fehlerbeschreibung läßt sich auch die Ursache sehr schnell erkennen. Die Erklärung ist eigentlich recht einfach. Der ATARI ST hat eine gewisse Reihenfolge in der Initialisierung seiner einzelnen Betriebssystemteile, so daß zunächst das TOS, sprich BIOS, XBIOS etc., initialisiert wird. Danach werden alle Programme gestartet, die sich im AUTO-Ordner befinden. Zu diesem Zeitpunkt ist aber das GEM mit seinen Grafikbefehlen, die auch von Defline, Box und Rbox angesprochen werden, noch nicht initialisiert. Der ATARI übergeht demzufolge einfach das Ansprechen des GEMs. Daraus folgt, daß ein Starten eines Programms, welches Routinen des GEMs benutzt, nicht möglich ist. Es gibt aber inzwischen Programme, die dies ermöglichen: Diese Programme werden in den AUTO-Ordner kopiert und starten nach dem Booten des Gesamtsystems das entsprechend gewünschte GEM-Programm. Ein solches Utility haben wir in der ST-Computer 1/88, Seite 92 vorgestellt: ähnliche Programme werden aber auch von diversen Software-Häusern vertrieben.
In einer ST-Computer beantworteten Sie einen Leserbrief zu der Frage nach der Tastaturabfrage in Dialogboxen. Diese Frage ist sicherlich von allgemeinem Interesse. da das Ausfüllen eines Formulars noch flexibler gestaltet werden kann. In Ihrer Antwort weisen Sie einmal auf eine Ausgabe 7/87 hin, die sicher nicht jedem Leser zur Verfügung steht und auch nicht nachbestellt werden kann und beziehen sich weiterhin auf die ST-Ecke, in der (ich jedenfalls) das Beispiel nicht finden konnte. Somit war die Antwort für den Leser wertlos, obwohl sie bestimmt viele interessiert hätte.
Ich schlage vor, die ganze Sache (eigene form_do-Routine und Tastaturabfrage während Dialog) nochmals aufzugreifen und am besten im Rahmen des Modula-Kurses neu zu beschreiben.
M. Odenwaeller, 4000 Dortmund
Red.: Ich muß mich entschuldigen, da ich in dem oben genannten Leserbrief die Nummer der ST-Computer falsch angegeben habe. Die in diesem Leserbrief angegebene Nummer der Zeitschrift gibt es nicht. Es handelte sich vielmehr um die Sommer-Doppelausgabe, die mit 8/87(!) bezeichnet war Daher kann man eine 7/87 auch nicht nachbestellen - was bei anderen Zeitschriften (8/87) noch möglich ist. Sollten Sie im allgemeinen eine Zeitschrift wegen eines bestimmten Artikels nachbestellen, vermerken Sie bitte in Ihrem Brief, daß Sie diesen Artikel kopiert bekommen möchten, wenn die Zeitschrift vergriffen sein sollte!
Ob wir das o.g. Thema noch einmal aufgreifen, kann ich Ihnen an dieser Stelle nicht versprechen. Zunächst einmal ist der Modula-Kurs für einführende Modula-Grundlagen des ST gedacht und nicht für oben angesprochenes tiefergehendes Wissen, außerdem möchten wir es möglichst vermeiden, uns allzu oft zu wiederholen. Die C-Version aus der ST-Ecke 8/ 87 müßte allerdings für einen Modula-Kenner einfach umzusetzen sein.
Seit längerem sind wir auf der Suche nach einem geeigneten C-Compiler für den ATARI ST. Die Fehler von DRI und MEGAMAX sind hinreichend bekannt. Daraufhin haben wir uns eingehend mit LATTICE 3.04 beschäftigt. Jedoch mußten wir auch hier einen erheblichen Mangel feststellen: RCS-Files mit mehr als ca. 120 Objekten werden nicht mehr geladen: RCS_LOAD läuft nicht. Die einzelnen Felder des AESPB sind nicht alle erreichbar (zum Beispiel addr_in). Dadurch wird eigene Einbindung unmöglich. Ebenso bereitet das Einbinden der RCS-Files über den *.c-Code der RCS von DRI zumindest uns erhebliche Schwierigkeiten. Wozu auch, es gibt doch RCS_LOAD, womit man sogar in GFA-Basic vernünftig arbeiten kann.
Von einem C-Compiler erwarten wir zumindest eine halbwegs saubere Implementation der AES-Routinen [zum Beispiel form_button() und form_keybd()]. Da wir aber nicht annehmen, daß es einen geeigneten Compiler gibt (oder?), bitten wir Sie, uns zu beraten, oder im nächsten ST-Computer-Magazin fähige Abhilfemaßnahmen zu veröffentlichen.
Ein weiteres Problem sind die Fonteinbindungen. Wir müssen auf die nicht dokumentierte Adresse $607E zugreifen. INIT SYSTEM FONT (VDI 5) greift nicht im GEM. Die Zeichensätze im ROM sind leider nicht zu manipulieren. Welcher Weg kann hier eingeschlagen werden, der auch für künftige TOS-Versionen bombenfrei ist.
Wie kann man in GFA-BASIC den MESSAGE-Buffer löschen?
Theo D. & Thomas L., 5100 Aachen
Red.: Wie schon öfter erwähnt, ist es uns als unabhängigem Magazin nicht möglich (und auch untersagt), ein bestimmtes Produkt zu empfehlen. Allerdings gibt es zwei weitere C-Compiler, die sicherlich erwähnenswert sind (Turbo C und LASER-C), wobei ich aus meiner Erfahrung mit LASER-C sagen kann, daß die Bindings einwandfrei sind (form_button und form_keybd sind vorhanden und wurden auch schon von mir bei MEGAMAX C einwandfrei benutzt). Laser-C erfüllt allerdings nicht den gesamten ANSI-Standard, was die große Stärke von Turbo-C ist (siehe Tests in ST-Computer 8, 9, 12 '88). Der sehr gute Support von Application Systems läßt jegliche Schwächen des Compilers allerdings sehr klein erscheinen. Damit Sie sich eine eigene Meinung bilden können, lesen Sie am besten die oben erwähnten Tests durch und schauen Sie sich die Produkte auf der Düsseldorfer ATARI-Messe bei Heimsoeth und Applications Systems /// Heidelberg an.
Ihr Problem mit Rscr_load() liegt nicht in den 120 Objekten. sondern im Maximum von 32 Kilobyte begründet. Übersteigt Ihre RSC Datei die Größe von 32K, bleibt Ihnen die Möglichkeit, die RCS-Datei als C-Code einzubinden oder Boxen und Menüleisten direkt einzubauen - wie Sie das in die Tat umsetzen, finden Sie in dem Artikel "Resource-Datei? Nein, Danke" in der ST-Computer 12/87. Weitere Artikel finden Sie in der ST-Computer 10/88 (Ressourcen in GFA-Basic 3.0, Ressourcen von C nach PASCAL). Möchten Sie aber unbedingt Ressourcen in diesem Umfang einbinden und auch mit Rsrc_xxxx-Routinen bearbeiten, so gibt es eine Möglichkeit, mehrere RSC-Dateien im Speicher zu halten - Sie müßten nur Ihre eine große RSC-Datei in zwei Dateien aufspalten, was sicherlich kein Problem ist. Um mehrere Dateien im Speicher halten zu können, müssen Einträge des global[]-Feldes des AES manipuliert werden. Wie man dies in die Tat umsetzt, finden Sie in dem Artikel "Mehrere Resource-Dateien gleichzeitig" in der ST Computer 9/87. Seite 38ff beschrieben und in PASCAL ausprogrammiert. Eine Bemerkung noch: Das Einbinden von Ressourcen und damit nicht Nachladen spart Speicherplatz, ist aber wiederum nicht so änderungsfreundlich!
Damit Sie nicht weiter auf die nicht dokumentierte Adresse zugreifen müssen, möchte ich Ihnen zunächst über die VDI-Routine etwas sagen: Diese Routine ist speziell auf die ATARI-Bildschirmausgabe zugeschnitten und kann scheinbar (leider) nur Zeichensätze mit einer konstanten Breite von 8 Pixeln, die im Molorola-Format vorliegen müssen, ausgeben. Diese Routine ist seltsamerweise nirgendwo offiziell dokumentiert - also Vorsicht! Sollten Sie sie dennoch einsetzen wollen, so finden Sie das Binding im Profibuch von Sybex. Besser ist es aber, die Routinen vst_load_fonts zu benutzen, die unter GDOS richtig funktionieren. Sollten Sie GDOS nicht benutzen wollen, gibt es wiederum zwei Möglichkeiten: Entweder Sie definieren das Binding so um, daß diese Routinen doch funktionieren, oder Sie schreiben eine neue Textausgabe. Ersteres finden Sie in dem Buch 'Arbeiten mit GEM, Band 2: Die VDI Bibliothek. Danielsson/Volkmann. Sybex Verlag', worüber in der ST 8/87 eine Buchbesprechung vorliegt. Eine neue Textausgaberoutine und das nötige Hintergrundwissen finden Sie in der ST-Computer 4/88.
Der Message-Buffer unterliegt prinzipiell nur der Kontrolle des GEM und enthält sichtbar für die Applikation nur eine 'message' nach der anderen. Die einzige Möglichkeit, die ich kenne, ist, alle momentan noch anliegenden Ereignisse anzunehmen (mit evnt_multi) und diese einfach zu übergehen. Allerdings frage ich mich, welchen Sinn das haben soll, da Ereignisse dazu da sind, beachtet zu werden.
Jetzt möchte ich auch mal schlauer werden: was macht eigentlich das GDOS, wozu ist es da, wenn es da ist? Da ich nicht so viele Kontakte in meinem Land habe, möchte ich Sie bitten, meine Adresse zu veröffentlichen. damit ich Kontakte zu ST-Benutzern in ihrem Land bekommen kann.
Dr Henning von Platen, Casilla 1503, Cochabamba, Bolivien
Red.: Diese Frage kommt sehr oft, so daß ich es kurz erklären möchte. Das GEM besteht prinzipiell aus zwei Teilen: dem AES und dem VDI. Während das AES dazu dient, Routinen bereitzustellen, die eine einfache Programmierung einer anwenderfreundlichen Benutzeroberfläche ermöglichen, soll das Virtual Device Interface (VDI) eine bestimmte Anzahl von Grafikroutinen zur Verfügung stellen - dies aber geräte(device)-unabhängig. Das heißt, daß ein Bild, welches mit GEM-VDI-Routinen erstellt wird, genauso auf dem Bildschirm oder auf einem Plotter ausgegeben werden kann, wenn ein Treiber geladen worden ist. Dieser Plotter-Treiber müßte entsprechend alle VDI-Routinen für sich zur Verfügung stellen, die Sie als VDI-Programmierer auf dem ST von der Bildschirmausgabe kennen. Leider wurde beim ATARI das VDI so programmiert, daß es nur einen Treiber gibt, und das ist der Bildschirmtreiber. GDOS ist nun ein Programm, welches den ‘Eingang' oder internen Aufruf so repariert, daß andere Treiber installiert werden können - beispielsweise existiert ein 24-Nadeldruckertreiber. GDOS bekommt man direkt bei ATARI in Raunheim.
Die Festplatten der Firma Vortex scheinen sehr verbreitet zu sein. Kaum war der SCHEIBENKLEISTER II erschienen, deckte man uns mit Anfragen ein, ob diese und jene Plattensoftware auch mit den Vortex-Platten harmoniere. Leider trifft das nicht immer zu: Die SCHEIBENKLEISTER-Software ist zum Teil (HARD- und HDX-Menü im SED) auf die ATARI-Platten zugeschnitten; da Vortex andere Controller verwendet (und auch nicht immer die gleichen), funktioniert sie dort nur manchmal. Wir müssen uns auch entschuldigen: In der Ankündigung des Software-Updates der KLEISTERSCHEIBE fehlte ein deutlicher Vermerk, daß bestimmte Teile der Software nur auf den ATARI-Platten laufen. Keine böse Absicht, aber trotzdem sehr ärgerlich.
Übrigens: Um den SED 4.0 bei angeschlossener Vortex-Platte starten zu können, sollte man den Festplattentyp in der Datei SED_xxx.INF von MEGAFILE (Voreinstellung) auf ‘SH205’ ändern. Ansonsten mißinterpretiert der SED4.0 die Daten von der Platte und bockt.
Aber wir geloben Besserung: Endlich haben wir jetzt eine Vortex-Platte in die Finger bekommen, an der wir uns austoben können. Wir hoffen, bald spezielle Vortex-Versionen fertig zu haben, die dann auf irgendwelchen Update-Wegen zugänglich gemacht werden sollen. Nur noch ein bißchen Geduld... danke!
Seit Monaten versuche ich mit zwei Menschen in Kontakt zu kommen, die auf Umwegen am SCHEIBENKLEISTER II mitgearbeitet haben: Jens-Peter Haack aus Berlin und Erik Hansen aus Dänemark. Da sich unter ihren bisherigen Adressen niemand meldet, wähle ich diesen etwas ungewöhnlichen Weg des öffentlichen Aufrufs. Meldet Euch bitte - Adresse siehe unten. Ein anderes Problem: Ab und zu bekomme ich unzureichend bezeichnete Disketten zugeschickt, nach deren Eigentümern ich dann umständlich fahnden muß. So geschehen neulich mit einer in Kulmbach abgeschickten Diskette mit der Aufschrift "bzgl. ST-Computer 6/89, S.59...: Lobe den Herrn!! (den Herrn Cpt. Mnemo nämlich )" Konspirativer Datenaustausch? Oder habe ich was vergessen? Hilfe! Allgemein: Bitte auf den Briefen die eigene Adresse ver merken, nicht nur auf dem Umschlag. Vielen Dank für Ihr Verständnis.
In der letzten Ausgabe dieser Rubrik gab ich die Frage eines Lesers weiter, der sein TEAC-Laufwerk auf 40-Spur-Betrieb Umrüsten wollte. Hier die Antwort von Herrn Keilmeyer aus München (herzlichen Dank!):
"Auch bei diesem Laufwerk (TEAC FD55F 31U) gibt es sehr wohl den Widerstand R15, allerdings nicht 'leibhaftig'. [Anm.: Beim verwandten Typ TEAC FD55 FV muß man den Widerstand R19 über einen Schalter anschließen, um zwischen 40- und 80-Spur-Betrieb umschalten zu können. Beim Modell FD55F muß man dem Widerstand R15 an den Kragen.] An der rechten unteren Ecke des SMD-Chips (es gibt nur einen) befindet sich zwischen zwei Lötstellen die Aufschrift R14 und direkt darunter R15. Die beiden Widerstände sind nicht eingelötet. Die Umschaltung von 80 auf 40 Tracks erfolgt durch Einlöten des Widerstandes R14 (10 Ohm) nicht R15. Ohne R14 arbeitet das Laufwerk mit 80 Tracks. Bisher brauchte ich das Laufwerk nach dem Umschalten auch noch nie aus- und wieder einzuschalten. Die Änderung wurde jedesmal auch so erkannt."
Auch Herrn Diekert von nbn Elektronik (TEAC-Distributor in Deutschland) möchte ich für seine Hilfe danken. Nach seiner Aussage gibt es - dies als Antwort auf die zweite Leserfrage aus dem letzten Heft - kein TEAC-Laufwerk namens FN35C; allgemein seien alle 3.5"-Laufwerke der Firma TEAC quarzgeregelt und daher nicht weiter abgleichbar. Schade.
Nach diesem Erfolg wage ich es sogar, ganz kleinlaut für einen weiteren Leser zu fragen, ob irgendjemand weiß, wie man das Laufwerk EPSON SD521 von 80 auf 40 Spuren umschalten kann. Weiß jemand Bescheid? Danke!
Es mußte ja so kommen: Im neuen SED stecken zwei gefährliche Bugs. Bevor man die Funktion BAD (HDX-Menü) startet, sollte man vorher über die Option "Drive" auf die bewußte Plattenpartition umschalten. Und bis auf weiteres sollten Sie bei BAD und auch bei ZERO niemals versuchen. die Partitionen 10 und 11 einer Platte zu bearbeiten - der SED mißversteht beides als "1". Sie können das aber - wenn Sie des GFA-BASICs mächtig sind - selbst ausbessern (s. Listing).
Wir entschuldigen uns in aller Form. Wer den Fehler nicht selbst ausbessern kann oder will, kann uns auch seine Originaldiskette der KLEISTERSCHEIBE 2.0 mit Rückumschlag und -porto zum kostenlosen Update schicken. Zuletzt wie immer die Adresse: Claus Brod, Am Felsenkeller 2, 8772 Marktheidenfeld - oder an die Redaktion zu meinen Händen.
Keep hacking.
CH
Procedure Part_select
Part%=-1
A%=11+8*(Part_ex%=0)
@Eingabe("Welche Partition (0-"+Str$(A%)+") :","",4)
If A$<>""
A%=Asc(Upper$(A$))-48
If A%>=0 And A%<=1 !! NEU !!
A%=Val(A$) !! NEU !!
If (A%>=0 And A%<4) Or (Part_ex%=1 And A%<12)
Part%=A%
Endif
Endif
Endif !! NEU !!
Return