XT-BIOS 3.1mod fuer XT-Mainboard R4 / R4a
=========================================
classic-circuits.de -- Stand 09.09.2026


WAS IST DAS
-----------
Ein angepasstes System-BIOS fuer das XT-Mainboard R4/R4a, abgeleitet vom
"Super PC/Turbo XT BIOS" Version 3.1 von Ya`akov Miles und Jon Petrosky.
Beim Booten meldet es sich als

    Super XT BIOS 3.1mod - 09/09/26

Das BIOS-Datumsfeld bei F000:FFF5 traegt dasselbe Datum, so dass sich der
Stand auch aus Software heraus eindeutig identifizieren laesst.


WELCHE DATEI BRENNEN
--------------------
u18_27C256.bin              32 KB, fuer 27C256 in U18
                            Das ist die Standarddatei. BIOS liegt bei
                            Offset 6000h, entspricht Adresse FE000-FFFFF.
                            Der Bereich davor (F8000-FDFFF) ist mit FFh
                            gefuellt. Erweiterungs-ROMs auf ISA-Karten --
                            etwa ein XT-IDE-Controller -- werden im
                            Suchlauf von C000 bis FE00 gefunden und
                            eingebunden.

pcxtbios.bin                8 KB, reines System-BIOS ohne Traegerabbild.
                            Fuer eigene EPROM-Zusammenstellungen.

Kein ROM BASIC enthalten. Das Board bootet ohne BASIC problemlos; findet
es kein Laufwerk, meldet es das und wartet.


AENDERUNGEN GEGENUEBER DER OFFIZIELLEN 3.1
------------------------------------------
1. Gameport-Erkennung arbeitet jetzt verhaltensbasiert
   Die Originalroutine liest Port 201h und wertet jeden Wert ungleich FFh
   als vorhandenen Adapter. Auf einem Board ohne Pull-ups am Datenbus
   liefert ein offener Port die Restladung der Leitungen, und das BIOS
   meldete einen Gameport, der nicht existiert.
   Neu: die Monoflops werden getriggert, danach muessen die vier Achsen-
   zeitgeber erst laufen und dann ablaufen. Ein schwebender Bus liefert
   einen konstanten Wert und faellt durch.
   Nebenwirkung, beabsichtigt: ein Gameport ohne angesteckten Joystick
   wird als nicht vorhanden gemeldet, weil seine Zeitgeber nie ablaufen.

2. Uhrenerkennung prueft jetzt auf gueltige BCD-Ziffern
   Die Originalroutine akzeptierte an 2C1h, 241h und 341h jeden Wert
   kleiner oder gleich 99h -- auch solche, die gar keine BCD-Zahl sind.
   Neu: das untere Nibble muss eine Dezimalziffer sein.

3. Neue Zeile "Floppy Cfg: n"
   Zeigt die Anzahl der Diskettenlaufwerke, die die Konfigurations-
   schalter melden. Es findet keine Erkennung statt -- die Zeile ist eine
   Kontrollanzeige fuer die Schalterstellung, nicht fuer angeschlossene
   Laufwerke.

4. Neue Zeile "FDC at 3F0h"
   Erscheint nur, wenn ein Floppy-Controller tatsaechlich antwortet. Der
   Reset des 765 wird geloest, danach muss das Hauptstatusregister 80h
   melden: bereit, kein Laufwerk aktiv, Kommando erwartet.

5. Neue Zeile "Equipment xxxxh"
   Das rohe Equipment-Word aus 0040:0010 in Hexadezimal. Enthaelt
   Grafiktyp, Laufwerkszahl, Anzahl serieller und paralleler Ports und
   das Gameport-Bit auf einen Blick -- praktisch zur Fehlersuche.

6. Turbo-Unterstuetzung entfernt
   Das R4-Board hat einen einzigen Quarz und keine Taktumschaltung. Der
   Turbo-Code konnte dort nichts bewirken.

7. Farbverlauf in der Titelzeile entfernt
   Rein kosmetisch, schafft Platz im ROM fuer die neuen Routinen.


HINWEISE ZUM BOARD
------------------
Das R4/R4a hat keine Pull-up-Widerstaende am Datenbus. Lesezugriffe auf
nicht belegte I/O-Ports liefern deshalb die Restladung der Busleitungen
statt FFh. Dieses BIOS kommt damit zurecht. Andere Software, die selbst
nach Hardware sucht -- Maustreiber, EMS-Verwaltungen, Erkennungsroutinen
fuer weitere Schnittstellen -- kann dadurch Geraete finden, die nicht
vorhanden sind. Wer das abstellen will, ruestet ein SIL9-Array mit 4,7 k
gegen +5 V am Datenbus nach.


SELBST UEBERSETZEN
------------------
Im Ordner quelltext liegt der vollstaendige Assemblerquelltext. Zum Bauen
wird das Originalarchiv pcxtbios31.zip benoetigt (Open Watcom wasm, wlink
und die ROM-Werkzeuge). Die Datei pcxtbios.asm ersetzt die gleichnamige
Datei im Archiv, danach make_win.bat aufrufen.

Die Datei aenderungen.diff zeigt alle Aenderungen gegenueber dem Original
im Unified-Diff-Format.

Wichtig: die 16-Bit-DOS-Werkzeuge im Unterordner dos des Originalarchivs
laufen auf 64-Bit-Windows nicht. make_win.bat verwenden.


PRUEFSUMMEN
-----------
Siehe pruefsummen.txt (SHA-256).


LIZENZ
------
Siehe LIZENZ.txt.


KONTAKT
-------
bauteile24.de -- Stefan Geissler
Perwenitzer Strasse 30, 14621 Schoenwalde-Glien, Deutschland
info@bauteile24.de
