Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Nächste Überarbeitung
Vorhergehende Überarbeitung
z9001:cpm:raf2008 [2010/07/17 16:46] – Externe Bearbeitung 127.0.0.1z9001:cpm:raf2008 [2021/02/18 08:50] (aktuell) – [Downloads] volkerp
Zeile 1: Zeile 1:
-====== z9001_cpm_raf2008.htm ======+====== RAM-Floppy RAF2008 ======
  
-===== Die 2MB/4MB-RAM-Floppy RAF2008 =====+**Die 2MB/4MB-RAM-Floppy RAF2008**
  
-In der DDR gab es verschiedene RAM-Floppys als Alternative zu schwer beschaffbaren "richtigen" Floppylaufwerken. An meinem Z1013 habe ich z.B. 2 NANOS-RAM-Floppys a 256 KByte angeschlossen. Auch von der Akademie der Wissenschaften gab es eine RAM-Floppy für K1520-Systeme, die sich durch modularen Ausbau, nachladbare Treiber u.a. hervorhob und so eine recht große Verbreitung fand ( -> {{http://www.robotrontechnik.de/html/eigenbau/raf2008.htm| www.robotrontechnik.de}})+In der DDR gab es verschiedene RAM-Floppys; auch als Alternative zu schwer beschaffbaren "richtigen" Floppylaufwerken. An meinem Z1013 habe ich z.B. 2 NANOS-RAM-Floppys a 256 KByte angeschlossen. Auch von der Akademie der Wissenschaften gab es eine RAM-Floppy für K1520-Systeme, die sich durch modularen Ausbau, nachladbare Treiber u.a. hervorhob und so eine recht große Verbreitung fand (s.  {{http://www.robotrontechnik.de/html/eigenbau/raf2008.htm|www.robotrontechnik.de}})
  
-2008 wurde diese Vorlage mit modernen Bauelementen und Batteriestützung durch Enrico Grämer als RAF2008 nachentwickelt. Auf obiger robotrontechnik-Seite ist das Projekt komplett beschrieben.+Vorgestellt wurde die RAM-Floppy in der rfe 4/1987, S. 268.
  
-Auch am Z9001 lässt sich die RAF2008 als 2 MB/4 MB-RAM-Floppy problemlos betreibenDie originalen Treiber, um Fehler korrigiert, laufen ohne große Änderungen auch direkt im Z9001-CP/A.+2008 wurde diese Vorlage mit modernen Bauelementen und Batteriestützung durch Enrico Grämer als RAF2008 nachentwickeltAuf obiger robotrontechnik-Seite ist das Projekt komplett beschrieben.
  
-{{raf2008_1.jpg?283x346}} {{raf2008_2.jpg?396x346}}\\ Meine RAF2008, mit 2MByte SRAM bestückt. Rechts ist der CP/M-Start und der Start des nachladbaren Treibers RAF2X20P.COM zu sehen.+Auch am Z9001 lässt sich die RAF2008 als 2 MB/4 MB-RAM-Floppy problemlos betreibenDie originalen Treiber, um Fehler korrigiert, laufen ohne große Änderungen auch direkt im Z9001-CP/A.
  
-==== Unterlagen ====+{{:z9001:raf2008_1.jpg|}} {{z9001:raf2008_2.jpg}}\\ Meine RAF2008, mit 2MByte SRAM bestückt. Rechts ist der CP/M-Start und der Start des nachladbaren Treibers RAF2X20P.COM zu sehen.
  
-Auf {{http://www.robotrontechnik.de/html/eigenbau/raf2008.htm| http://www.robotrontechnik.de/html/eigenbau/raf2008.htm}} gibt es die Geschichte, Treiber und die Unterlagen des Entwicklers zur RAF2008. Bei U. Zander liegen aufbereitete Stromluafpläne u.v.a.m. {{http://www.sax.de/~zander/z9001/module/raf.html| http://www.sax.de/~zander/z9001/module/raf.html}}.+===== Unterlagen =====
  
-==== Einstellungen ====+Auf http://www.robotrontechnik.de/html/eigenbau/raf2008.htm gibt es die Geschichte, Treiber und die Unterlagen des Entwicklers zur RAF2008. Bei U. Zander liegen aufbereitete Stromlaufpläne u.v.a.m.: http://www.sax.de/~zander/z9001/module/raf.html.
  
-Auf der Karte gibt es zwei Jumper. Für den Betrieb am Z9001 ist JP 2 zu stecken. Das begrenzt den Port auf Adressen 2xH. Der JP 1 bleibt für die erste RAM-Floppy offen, damit ist Port 20H eingestellt. Bei geschlossenem Jumper JP 1 gilt Port 24h.+===== Downloads =====
  
-==== Treiber ====+  * {{:cpm:prl2com.zip|}} Binary und Quellcode zu Standard-Treiber und zum Treiber mit Parität, 2021 Version für BIC ergänzt 
 +  * die kompletten orig. Treiber gibt's bei robotrontechnik (s.o.)
  
-Neben einem angepassten BIOS, das Treiber für die RAM-Floppys enthält, kann auch ein nachladbarer Treiber genutzt werden:+Wie immer gibt es im Downloadpaket die kompletten Quelltexte und weitere Informationen.
  
-> **RAF2X20P.COM**+===== Einstellungen =====
  
-wird von der Floppy-Diskette geladen und installiert die RAF2008 als Laufwerk PBeim ersten Start wird dabei die RAM-Floppy formatiert, d.hder Directory-Bereich mit 0E5h überschrieben. Beim erneuten Start unterbleibt die Formatierung, so dass die Daten auf der RAM-Floppy erhalten bleibenDank der Stützbatterie bleiben die Daten auf der RAM-Floppy bis zu Jahr erhalten, ohne das der Rechner angeschaltet sein muss!+Auf der Karte gibt es zwei JumperFür den Betrieb am Z9001 ist JP 2 zu steckenDas begrenzt den Port auf Adressen 2xHDer JP 1 bleibt für die erste RAM-Floppy offen, damit ist Port 20H eingestelltBei geschlossenem Jumper JP gilt Port 24h.
  
-Für die zweite Portadresse (bei einer zweiten RAM-Floppy) gibt es den Treiber **RAF2X24O.COM**. Dieser bindet die zweite RAM-Floppy als Laufwerk O ein.+===== Treiber =====
  
-Die nachladbaren Treiber schreiben sich ans obere RAM-Ende TPA und verringern so dauerhaft den für Programme zur Verfügung stehenden Speicher. Erst mit einem Kaltstart (Reset) ist der Treiber wieder entladen!+Neben einem angepassten BIOS, das Treiber für die RAM-Floppys enthält, kann auch ein nachladbarer Treiber genutzt werden:
  
-Wem die beiden Treiber nicht reichen, der kann sich weitere Treibervarianten kompilieren. Ich habe die Programme reassembliert und neue Assemblerquellen geschrieben. Beim Treiber kommt das {{../cpm/cpm_rsm.htm|PRL-Format}} zum Einsatz , um den Treiber ans aktuelle TPA-Ende zu schieben. Beim Kompilieren eigener Treibervarianten muss dieses Format erzeugt und um einen Loader ergänzt werden.+**RAF2X20P.COM**
  
-Der eigentliche Treiber wird mit dem M80-Assembler und CSEG (ohne ORG-Adresse!)  assembliertDer Digital ResearchLinker LINK131.COM erzeugt daraus beim Aufruf mit dem Parameter //op// eine PRL-Datei; diese umfasst den Treiber (auf Adresse 100h gelinkt) und die Verschiebe-InformationenMit meinem Patcher PRL2COM wird in diese PRL-Datei der Loader gepatcht und der Dateityp in COM geändertso entsteht die gewünschte residente Systemerweiterung.+wird von der Floppy-Diskette geladen und installiert die RAF2008 als Laufwerk PBeim ersten Start wird dabei die RAM-Floppy formatiert, d.h. der Directory-Bereich mit 0E5h überschrieben. Beim erneuten Start unterbleibt die Formatierung, so dass die Daten auf der RAM-Floppy erhalten bleibenDank der Stützbatterie bleiben die Daten auf der RAM-Floppy bis zu 1 Jahr erhaltenohne das der Rechner angeschaltet sein muss!
  
-> m80.com =treiber +Für die zweite Portadresse (bei einer zweiten RAM-Floppy) gibt es den Treiber **RAF2X24O.COM**Dieser bindet die zweite RAM-Floppy als Laufwerk O ein.
-link.com treiber[op] +
-prl2com treiber.prl+
  
-Wie immer gibt es im {{../cpm/prl2com.zip|Downloadpaket}} die kompletten Quelltexte und weitere Informationen.+Die nachladbaren Treiber schreiben sich ans obere RAM-Ende TPA und verringern so dauerhaft den für Programme zur Verfügung stehenden SpeicherErst mit einem Kaltstart (Reset) ist der Treiber wieder entladen!
  
- +Wem die beiden Treiber nicht reichen, der kann sich weitere Treibervarianten kompilieren. Ich habe die Programme reassembliert und neue Assemblerquellen geschrieben. Beim Treiber kommt das PRL-Format (-> [[cpm:rsm|]]) zum Einsatz, um den Treiber ans aktuelle TPA-Ende zu schieben. Beim Kompilieren eigener Treibervarianten muss dieses Format erzeugt und um einen Loader ergänzt werden. 
 + 
 +Der eigentliche Treiber wird mit dem M80-Assembler und CSEG (ohne ORG-Adresse!) assembliert. Der Digital Research- Linker LINK131.COM erzeugt daraus beim Aufruf mit dem Parameter //op// eine PRL-Datei; diese umfasst den Treiber (auf Adresse 100h gelinkt) und die Verschiebe-Informationen. Mit meinem Patcher PRL2COM wird in diese PRL-Datei der Loader gepatcht und der Dateityp in COM geändert, so entsteht die gewünschte residente Systemerweiterung. 
 + 
 +  m80.com =treiber 
 +  link.com treiber[op] 
 +  prl2com treiber.prl 
 + 
 +===== Ansteuerung ===== 
 + 
 + 
 +Die zur Ansteuerung nötige Adresse wird ähnlich, aber nicht genauso, wie bei der [[z1013:module:raf#k|RAM-Disk nach mp 3/88]] gebildet: 
 + 
 +  * Raf_C = RAF-Control Port  zum Laden der Track- & Sector-Adresse "HiAdr" via  D-bus 0...7 und A-bus 8...14 (B-Reg). 
 +  * Raf_D = RAF-Data-I/O Port zum Schreiben/Lesen von max. 128 zusammenhängenden Bytes mit einem INIR-/OTIR-Befehl mit einem 7-bit Byte-Index "LoAdr" auf dem A-bus 8...14 (B-Reg) 
 + 
 +<WRAP clear></WRAP> 
 + 
 +<code> 
 +               :-----  Vollständige 19 bit RAM-Adresse (1 RAF 512)  ------: 
 +    22 21 20 19:18 17 16 15   14 13 12 11 10  9  8  7: 6  5  4  3  2  1  0: 
 +               :                                     :                    : 
 +    15 14 13 12:11 10  9  8    7  6  5  4  3  2  1  0:                    : 
 +   +--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+                    : 
 +         B-Register      ! !       r-Register      !                    : 
 +   +--+--+--+--+--+--+--+--+_+--+--+--+--+--+--+--+--+                    : 
 +     ! !!!!!  !    _________!_________              7: 6  5  4  3  2  1  0: 
 +     ! für    !    ! OUT(C),r-Befehl !            +--+--+--+--+--+--+--+--+  
 +     ! >512k  !    !__auf_Ctrl-Adr___!            !//:  B-Reg (INIR/OTIR) !  
 +            !                                   +--+--+--+--+--+--+--+--+  
 +            AOV                                   __________!__________ 
 +            Adressüberlauf-Bit (RAF 512)          ! oberer Adr.bus in ! 
 +                  (Bit 10 bei RAF 128)            ! INIR-/OTIR-Befehl ! 
 +     PROT                                           !______(7_bit)______! 
 +     Zugriffsschutz-Bit (1=geschützt)  
 +</code> 
 + 
 +Die In-Sektor-Adressen (LoAdr 6...0) entsprechen dem B-Register bei OTIR/INIR, so daß die Bytes innerhalb eines Sectors in fallender Reihenfolge gespeichert werden (B beginnt mit 128 bzw. 127)!
  
  • z9001/cpm/raf2008.1279385181.txt.gz
  • Zuletzt geändert: 2010/07/22 22:00
  • (Externe Bearbeitung)