From 98cab31fc3659e33aef260efca55bf9f1753164c Mon Sep 17 00:00:00 2001 From: Lars-Dominik Braun Date: Mon, 11 Feb 2019 11:49:19 +0100 Subject: Add source files from Michael --- system/shard-x86-at/7/doc/CONTROLS.ELA | 76 ++++++++++++++++++++++++++++++++++ 1 file changed, 76 insertions(+) create mode 100644 system/shard-x86-at/7/doc/CONTROLS.ELA (limited to 'system/shard-x86-at/7/doc/CONTROLS.ELA') diff --git a/system/shard-x86-at/7/doc/CONTROLS.ELA b/system/shard-x86-at/7/doc/CONTROLS.ELA new file mode 100644 index 0000000..1ea4978 --- /dev/null +++ b/system/shard-x86-at/7/doc/CONTROLS.ELA @@ -0,0 +1,76 @@ +SHard-Spezifische 'control'-Funktionen (V2.7, AT-SHard) + +Kanal 32: + control (-3, x, mcr*256+kanal, r) : Modem-Control-Register setzen + mcr: Bit 0: DTR + Bit 1: RTS + Bit 2: OUT1 + Bit 3: OUT2 (Interrupt enable) muss 1 sein + Bit 4: Diagnostic-Mode (muss 0 sein) + Bit 5: - + Bit 6: - + Bit 7: - + control (-5, x, x, r) : Anforderung nach 'shutup' Systemreset. + blockin (clock, -4, x, r) : HW-Clock auslesen + clock (1) = jahrhundert + clock (2) = jahr + clock (3) = monat + clock (4) = tag + clock (5) = stunden + clock (6) = minuten + clock (7) = sekunden + +Kanal 2..13 (sofern vorhanden) : + control (-3, x, x, r) : 8250 Linestatusregister/Modemstatusregister lesen + Bit 1: 1 = Receiver overrun detected + 2: 1 = Parity Error detected + 3: 1 = Framing Error detected + 4: 1 = Break Interrupt Detected + Bit 8..15 nicht im Standard-SHard + (Bit 8: 1 = CTS changed + 9: 1 = DSR changed + 10: 1 = RI changed to inactive + 11: 1 = DCD changed + 12: CTS input + 13: DSR input + 14: RI input + 15: DCD input) + control (-4, x, x, r) ; r = Anzahl Eingabezeichen, seit letzter Abfrage + control (-5, x, x, r) ; r = Anzahl Ausgabezeichen, seit letzter Abfrage + control (-6, x, x, r) ; Break senden + control (-10, x, x, r) ; DTR+RTS inactive setzen (stop!) + control (-11, x, x, r) ; DTR+RTS active setzen (weiter) + +Kanal 14..16 (falls vorhanden): + control (-3, x, x, r) ; Printeroutput nicht mehr ueber SHard sondern BIOS + control (-4, 256 * retry + wartezeit, x, r) ; + Setzt fuer langsame Drucker retrys und Wartezeit + zwischen den Zeichen. + +Kanal 1 : + control (-3, attribut, x, r) ; Textattribut fuer Bildschirmausgaben setzen + control (-4, x, palette, r) ; Colorpalette fuer Farbkarte setzen. + control (-5, 256 * karte + mode, x, r) ; Videomodus einschalten + karte: 1 = tecmar(mode=0..5), 2 = hercules (mode=0) + karte: 0 = Bios (mode=0, 7, 8=graphik) + control (-6, xpos, ypos, r) ; Draw line to (xpos, ypos) + control (-7, xpos, ypos, r) ; Move to (xpos, ypos) + control (-8, maske, linetype, r) ; Set pen + control (-9, p1, p2, r) ; Set color pen 1 + control (-10, p1, p2, r) ; Set color pen 2 + control (-11, new mask count, mode, old mask count) ; Set Mask Mode + mode = 0 : Kein Mask mode + mode = 1 : Mask Mode einschalten. +Kanal 28, 29 (Harddisk): + control (-10, x, x, r) : r = Anzahl Cylinder-1 (Gesamte Platte) + control (-11, x, x, r) : r = Anzahl Sektoren + control (-12, x, x, r) : r = Anzahl Heads + +Kanal 30, 31 (Floppy) : + - + + + + + + -- cgit v1.2.3