Navigation



RTOS-UH Testsystem für den PC unter Windows

WinSTon v0.5x3, RTOS-Nukleus 7.9B, 21. Juni 2005

Das RTOS-UH Testsystem dient dazu, das Echtzeitbetriebssystem RTOS-UH kennenzulernen und zu testen, ohne dass dazu die sonst übliche Prozessrechnerhardware bereit stehen muss. Es ist nur für Test- oder Ausbildungszwecke bzw. zum privaten Gebrauch bestimmt. Mit Hilfe des Freeware-Atari-Emulators WinSTon ist das System auf Personalcomputern ab P166 unter den Microsoft-Betriebssystemvarianten Windows95/98/2000/NT/XP lauffähig.

Eigenschaften

Das RTOS-UH System für den Atari-Emulator WinSTon erreicht auf der Mindesthardwareanforderung P166 etwa die Leistungsfähigkeit eines originalen Atari ST mit 8Mhz unter RTOS-UH. Bei entsprechender Hardware wird sie sogar um ein vielfaches übertroffen. Der Atari-Emulator WinSTon emuliert nicht nur den 68000-Prozessor sondern auch wesentliche Peripheriehardware eines Atari ST. Daher ist bereits ein originär für den Atari ST vorgesehenes RTOS-UH mit ihm lauffähig. Das hier beschriebene Testsystem ist lediglich um einen Treiber für den Dateitransfer zum PC-Dateisystem erweitert worden und entspricht somit dem aktuellen Stand. Es enthält aber (wie das RTOS-UH für alle Ataris) keine grafische Bedienoberfläche. Es erlaubt aber ein gründliches Kennen Lernen und Testen von RTOS-UH, insbesondere der Multitaskingfähigkeit und der Synchronisationsmittel. Selbstverständlich ist auch die Programmierung in PEARL und Assembler sowie eine echte Programmausführung möglich. WinSTon lässt den emulierten Atari als Windows-Task wahlweise im Vollbildmodus oder in einem eigenständigen Fenster laufen.

Eine von der Firma IEP GmbH durchgeführte Erweiterung erlaubt den Zugriff von Programmen unter RTOS-UH auf PCI-Karten. Damit steht auch dem RTOS-UH Testsystem unter WinSTon eine Prozess-Ein-/Ausgabe zur Verfügung.

Einschränkungen

Ein wesentliches Merkmal von RTOS-UH, die hervorragende Echtzeitreaktivität, ist bedingt durch die Emulation und das darunter liegende Windows natürlich eingeschränkt. Die Reaktivität rührt hier vor allem vom Leistungsüberschuss der PC-Hardware. Bei starker Hintergrundaktivität des Windowsbetriebssystems kann es daher zu 'Verzerrungen' der Zeit im emulierten Atari kommen.

Auch der Zugriff auf das PC-Dateisystem hebelt das Echtzeitkonzept aus, da der hierfür vorgesehene Treiber in einer unteilbaren Sequenz den Zugriff über GemDOS-Routinen an Windows weiterleiten muss. D. h. bis zur Rückmeldung von Windows steht der emulierte Atari still.

Back on top ^

Download und Installation

Zunächst sollte der Freeware Atari-Emulator WinSTon in der Version v0.5x3 des Instituts für Regelungstechnik installiert werden. Diese Version wurde in einigen Details für die Verwendung des RTOS-UH Testsystems optimiert. Auch die Verwendung des WinSTon v0.5 oder des Stew 1.0 ist jedoch möglich. Die Installation erfolgt durch das Entpacken des Archivs in ein beleibiges Verzeichnis.

Der Start von WinSTon erfolgt durch Aufruf von winston.exe. Erste Tipps zu WinSTon gibt das readme.txt im gleichen Verzeichnis. Eine ausführlichere Hilfe zu WinSTon ist im Programm über F1 oder den ?-Button erreichbar. WinSTon selbst enthält intern bereits ein TOS-Image der Version 1.00, das für den Start von RTOS-UH ausreicht. Ansonsten benötigt RTOS-UH kein TOS und ist daher von der verwendeten TOS-Version unabhängig. Für das Arbeiten mit alten ATARI-Disketten unter TOS sind Images dieser Disketten auf der Festplatte erforderlich. Näheres dazu ist unter der Hilfe des WinSTon zu finden.

Das RTOS-UH Testsystem für WinSTon kann in ein beliebiges Verzeichnis entpackt werden. Dieses Verzeichnis ist dann in WinSTon als Laufwerk C: des Atari einzustellen. Im Ordner AUTO liegt das Programm rtoslod8.prg, mit dem das RTOS-UH System von TOS aus gestartet werden kann.

Anwender die von WinSTon v0.3 oder v0.4 auf v0.5 oder STeW 1.0 umsteigen, sollten sicherstellen, dass das Autostartskript AUTO/AUTOC die Zeile SM FFFA1C 0020; enthält. Im Startskript des aktuellen Systems ist dies enthalten.
Im Ordner XD befinden sich einige nützliche Skripte. Dieser Ordner ist auch als Execution-Directory eingestellt.

Hilfe bei der Bedienung von RTOS-UH gibt das Handbuch (PDF, ca. 700 S.). Für neue Anwender von RTOS-UH ist vor allem der Schnellkurs im Kapitel 2 zu empfehlen. Auf Besonderheiten des RTOS-UH-Testsystems für WinSTon geht ein gesondertes Dokument (PDF, ca. 120kB) ein.

Eine kompakte Einführung in RTOS-UH gibt es von der Firma IEP GmbH als 55-seitiges pdf-Dokument (ca. 250kB). Hiervon existiert auch eine englische Version.

Back on top ^

RTOS-UH spezifische Einstellungen von WinSTon

Für den Einsatz von RTOS-UH unter WinSTon sind einige Einstellungen sinnvoll, die von den Default-Optionen von WinSTon abweichen. WinSTon enthält 'Help topics', die diese Optionen erläutern.

  • Hard Discs

    Hier ist als Laufwerk C: das Verzeichnis einzustellen, in das das Archiv winston-rtos.zip.zip entpackt wurde. Mit eingeschaltetem 'Boot from Hard Drive' startet RTOS-UH beim Reset von WinSTon nach einr Bestätigung automatisch (falls keine Diskettenimages eingestellt sind).

    Unter dem GemDOS I/O Options kann das Flushing der I/O-Buffer ein- und ausgeschaltet werden. Bei aktiviertem Flushing wird nach jedem Zugriff die Datei auf der Platte aktualisiert. Dieses hat den Vorteil, dass aus Sicht anderer Windows-Programme stets die aktuelle Version der Datei vorliegt. Allerdings ist der Dateizugriff bei aktiviertem Flushing unter Windows Me/2000/XP extrem langsam, so dass sich i.A. eine Deaktivierung des Flushing empfiehlt.

  • Keyboard

    Um mit WinSTon im Maximum Speed Modus zu arbeiten, sollte 'Disable key repeat on maximum speed' gesetzt werden. Anderenfalls ist die Tastaturwiederholrate auf schnellen Rechnern viel zu hoch. Weiterhin empfiehlt es sich, zu den Default Short Cuts

    • F11: Full Screen (schaltet zwischen Full Screen und Window Modus um)
    • F12: Mouse Mode (schaltet zwischen Atari-Emulation und Windows um)
    noch
    • Shift+F11: Maximum Speed (schaltet zwischen Default Speed, die im Configure Menu gesetzt ist, und Full Speed um)
    zu setzen.

    Mit der Default-Keyboardbelegung sind unter RTOS-UH einige Tasten (z. T. atarispezifisch) nicht zugänglich. Mit der in der Datei rtos.map enthaltenen Belegung liegt zumindest '#' richtig und Atari-'HELP' auf 'Rollen'. Aufgrund der unterschiedlichen Behandlung der Shift-Kombinationen beim Atari und dem PC, ist ein getrenntes Ummappen einer Taste und ihrer Shift-Kombination nicht möglich. Mit der rtos.map liegt daher das zum Programmieren wichtige Hochkomma direkt rechts neben 'ß' (ohne Shift). Weiterhin sind in der rtos.map die PC-Tasten 'Pos1', 'Ende', 'Bild auf', 'Bild ab' und 'Backspace' auf die Atari-Funktionstasten F5-F9 umgelenkt. In Verbindung mit dem aktuellen Startskript /X0/AUTO/AUTOC sind diese Tasten jetzt im RTOS-UH Editor WE nutzbar. Vorschläge für eine sinnvollere Belegung sind willkommen. WinSTon enthält zum Testen das Feld 'Test Key'. Das Prinzip der Scancodezuordnung in der .map-Datei ist selbsterklärend und die Dateien sind mit einem ASCII-Editor einfach zu bearbeiten.

    Die Cursortasten arbeiten nur dann, wie unter RTOS-UH gewohnt, wenn man auf der Karteikarte 'Joysticks' die Option 'Use cursor emulation' deaktiviert (s. folgenden Abschnitt 'Joysticks').

  • Joysticks

    Sofern kein Joystick angeschlossen ist, stellt WinSTon defaultmäßig für Joystick1 'Use cursor emulation' ein. Dann arbeiten die Pfeiltasten nur bei gleichzeitiger Betätigung der Shift-Taste wie unter RTOS-UH gewohnt. Daher wird die Abschaltung dieser Option empfohlen.

Back on top ^

Start von RTOS-UH

RTOS-UH kann manuell über TOS von C:\AUTO durch das Programm RTOSLOD8.PRG gestartet werden. Ein automatischer Aufruf dieses Programms erfolgt bei jedem Reset von WinSTon, falls die Option 'Boot from Hard Drive' angewählt ist und kein Diskettenimage als Laufwerk eingestellt ist.

Back on top ^

PCI-Support unter RTOS-UH

Durch eine von der Firma IEP GmbH durchgeführte Erweiterung können seit der Version 0.5x3 PCI-Karten des PCs von RTOS-UH angesprochen werden. Zur Zeit werden PCI-IO-Karten der Fa. Kolter Electronic unterstützt. Die Verwendung anderer Karten ist nur durch Modifikationen in den WinSTon-Quellen möglich. Näheres zum PCI-Support ist dem Dokument WinSTon-RTOS\Demo\WinstonPCI.pdf im WinSTon-Archiv zu entnehmen.

Back on top ^

Weitere Besonderheiten

Achtung: Der Normalzustand der RTOS-UH-Shell ist inaktiv. Bei Bedarf muss die Shell durch einen Interrupt geweckt werden. Dies geschieht durch die Tastenkombination Ctrl A (gleichzeitig drücken). Das bedeutet:
Immer wenn ein Bedienbefehl eingegeben werden soll, muss zunächst Ctrl A betätigt werden!

Der Zugriff auf das PC-Dateisystem, also die Atari-Harddisks C:, D:, E: oder F: erfolgt von RTOS-UH aus über die Laufwerksbezeicher /X0, /X1, /X2 bzw. /X3. Der Zugriff auf die unter RTOS-UH sonst üblichen Bezeichner für Festplatten z.B. /H0 liefert lediglich die Fehlermeldung DRIVE_NOT_PRESENT.

Back on top ^

Probleme, Bugs, Troubleshooting

  • Manchmal ist das Laufwerk eines Diskettenimages nicht bereit, z.B.: /F0 drive not ready
    Ursache unbekannt, aber nach einer Timeout-Wartezeit kann normal weitergearbeitet werden.
  • 'ESC'-Taste wird scheinbar doppelt angeschlagen; dies ist z.B. beim Arbeiten im RTOS-UH-Editor WE störend. Dieser Effekt tritt nach unseren Erfahrungen nur im Full Speed Modus auf schnellen PC auf. Einfacher Workaround hierzu: In solchen Situationen WinSTon auf ST Speed schalten, z.B. mit Short Cut 'Shift+F11' (s.o. Optionen->Keyboard).
  • Der Zugriff auf die Festplatte z. B. /H0 funktioniert nicht und liefert nur eine DRIVE_NOT_PRESENT Fehlermeldung. Von RTOS-UH aus erfolgt der Zugriff auf das PC-Dateisystem, also die Atari-Harddisks C:, D:, E: oder F: über die Laufwerksbezeicher /X0, /X1, /X2 bzw. /X3.
  • Mit den Devices /X0 usw. funktioniert das Kommando FIND und einige Shellskripte (z.B. CPX, DIRF) nicht richtig. Im Treiber für diese Devices ist der Befehl FIND noch nicht vollständig implementiert. Abhilfe ist in Arbeit.
  • Für die Devices /X0 usw. ist der REWIND in allen Fällen als REWIND CLEAR implementiert. Anders als bei den übrigen Devices kann es deshalb in dem folgenden Spezialfall zu Datenverlust kommen. Wenn eine existierende Datei nach dem REWIND ohne weitere Lese- oder Schreibzugriffe wieder mit CLOSE geschlossen wird, erhält sie die Länge null. Nach einem REWIND stellt sich die korrekte Dateilänge einer bereits existierenden Datei also erst nach dem ersten Lese-oder Schreibzugriff ein.
  • Der Zugriff auf /X0 usw. funktioniert nur für nicht schreibgeschützte Dateien. Gegebenenfalls muss also das Schreibschutzattribut unter Windows für solche Dateien entfernt werden (z.B. bei Dateien, die von CD auf Festplatte kopiert wurden).
  • Die Grafikkarte und die Grafikeinstellungen (sowohl innerhalb von WinSTon als auch Windows-eigene) können großen Einfluss auf die Performance haben. Die besten Erfahrungen wurden am IRT gemacht, wenn WinSTon im Mono-Colour- und ggf. auch Full-Screen-Modus betrieben wird. Das Windows Grafiksystem sollte nur auf 16- oder 32-Bit-Farbmodus arbeiten.

Back on top ^

Danksagung

Voraussetzung für den Einsatz des RTOS-UH Testsystems ist ein funktionierender, hardwarenaher Atari-Emulator. Der Funktionsumfang von RTOS-UH unter WinSTon wurde mit keinem anderen uns bekannten Atari-Emulator erreicht. Unser Dank gilt daher Paul Bates, dem Autor von WinSTon, für seine unermüdliche Arbeit an diesem Projekt, für die gute Zusammenarbeit und vor allem dafür, dass er WinSTon als Freeware zur Verfügung stellt.

Back on top ^

Änderungen

27.07.2000 Start mit 0.3-7.8E-0.2
24.08.2000 Geringe Änderungen in der Dokumentation.
28.08.2000 0.4-7.8E-0.2 mit WinSTon V0.4 Bus-Error-Mechanismus i.O., (RTOS_UH.IMG unverändert).
01.09.2000 0.4-7.8G-0.2 akt. RTOS-UH mit Nuk. 78G.
27.09.2000 Geringe Änderungen dieser Seite.
08.11.2000 Neuer WXFM, RTOS-UH läuft jetzt mit WinSTon v0.3, v0.4, v0.5 und ist unabhängig von der TOS-Version.
09.01.2001 Änderung im Autostartskript bremst TIMER D, so dass auch mit WinSTon V0.5 und Stew 1.0 volle Performance erreicht wird. Lokaler WinSTon-Download-Link.
13.02.2001 Geringe Änderungen dieser Seite.
21.05.2001 0.5-7.9B-1.5 akt. RTOS-UH mit Nuk. 79B und akt. PEARL-Compiler, AUTOC und rtos.map modifiziert für bessere Editorbedienung, Skripte Q und CALC angepasst, aktualisierte Links.
21.06.2005 WinSTon 0.5x3 mit PCI-Support und deaktivierbarem Dateibuffer-Flushing