BIC A5105

zum Bildungscomputer BIC gibt es alles bei U. Zander http://www.sax.de/~zander/index2h.html

Hier gibt es deshalb nur den System-Quellcode.

Ich hab die orig. Quellen (UDOS) ein wenig aufbereitet, so dass ein Rekompilieren unter CP/M möglich ist1). Damit schneller kompiliert werden kann, ist ein CP/M-Emulator und eine make.cmd für Windows dabei :-)

Der Bildungscomputer robotron A 5105 sollte die KC-Reihe auf einem wesentlich höheren Niveau fortsetzen. Sein Haupteinsatzgebiet war, wie es der Name sagt, in der Informatik-Ausbildung der Polytechnischen Schulen und in der Berufsausbildung. Der BIC besteht aus drei Baugruppen (Grundgerät CGG, Diskettenspeichereinheit DSE, Monitor). Als Betriebssystem kommt das ROM-orientierte Basisbetriebssystem RBASIC oder SCPX 5105 zum Einsatz. SCPX 5105 ist vollständig zum SCP des PC 1715 kompatibel.

Merkmal Beschreibung
CPU U880
ROM dsemc 16 KByte (= k5651_4000.bin, DSE)
scprom 8 KByte
bicmc 32 KByte
RAM 64 KByte RAM Arbeitsspeicher
128 KByte RAM als Bildspeicher
Takt 3,75 MHz
Anzeige Videocontroller U 82720
25 Zeilen x 40/80 Zeichen,16 Vordergrundfarben,8 Hintergrundfarben
320 x 200 Pixel mit 16 Farben
640 x 200 Pixel mit 4 aus 16 Farben
Tastatur ASCII
Peripherie Grundgerät mit Netzteil und 5,25„ Floppylaufwerk
12“-Monitor (grün)
Software RBASIC
SCPX 5105


Standard-Zeichensatz

  • Anleitung, ..
  • bic.zip orig. UDOS-Disketten mit Betriebssystem-Quellcode im UDOS-Format
  • bic_src.zip Betriebssystem-Quellcode, angepasst auf CP/M und Z80ASM

http://waste.informatik.hu-berlin.de/diplom/robotron/studienarbeit/files/hardware/bic/bic.html

Ostern 2018: Bislang fehlte von DISK.006 der Quellcode von RBASIC. Ich habe es jetzt geschafft, die Diskettenimages direkt zu extrahieren! Das ganze war ein schwieriges Unterfangen. Irgendwie habe ich ein Diskettenbelegungsplan der einzelnen Sektoren und ihrer Zugehörigkeit zu den Dateien vermisst. Ich hatte keine Ahnung vom Aufbau des Filesystems unter UDOS. Es gibt nur wenige Tools zum Bearbeiten von DMK-Dateien (erzeugt mit catweasel); das Einzige, was die großen DMK-Dateien lesbarer gemacht hat, war dmk2jv3.exe. Nur fehlte hier irgendwie die Verbindung zwischen den 128 Byte großen Häppchen der einzelnen Dateien. Daher habe ich zuerst versucht, anhand der vorhandenen extrahierten Daten die Belegung der Disk herauszufinden. Erste Baustelle: das Zeilenende ist unter UDOS nur 0Dh, nicht 0D0Ah. Zweites Ergebnis: irgendwie gibt es keinen erkennbare Struktur, die einzelnen Häppchen liegen of mit Sektorversatz 4, aber eben nicht immer, Zwischendurch gibt es immer wieder problematische Stellen, an denen es unvorhersehbar weiter geht. Ein neuer Versuch war daher, die DMK-Dateien selbst zu verarbeiten. Dabei bin ich über eine weitere Baustelle gestolpert: die Sektoren haben im DMK-Format unterschiedliche Länge, eine einfache Berechnung der Sektorposition ist nicht trivial. Aber ich habe gesehen, dass es nach den 128 Byte noch weitere Bytes gibt, die offensichtlich eine Art verkettete Liste bilden. So habe ich den Quellcode von dmk2jv3.exe analysiert und um zusätzliche 4 Byte pro Sektor ergänzt. Der Rest war fast trivial: Ein Perl-Programm zerlegt mir die von dmk2jv3_udos.exe erzeugten Diskettenabbilder in die einzelnen Dateien. Hilfreich dabei waren ein paar kurze Informationen im „Wissenspeicher Mikrorechentechnik“ zum Thema Diskettenbelegung unter UDOS. Wusste ich doch, schon mal irgendwo was zum Thema verkettete Dateien gesehen zu haben. Nun liegen also endlich die kompletten Quellen des BIC vor :-)

Tim Mann's CatWeasel support tools: https://github.com/ezrec/cw2dmk, enthält dmk2jv3

1)
Allerdings fehlt ein spezieller Linker, der nur Symbole extrahiert. Unter Windows erfolgt das mit einem Perl-Programm