RAM-PIO-VDIP
Die Platine wurden von G.Staffen und D.Badke entwickelt.
Sie umfasst 3 Einheiten, die beim AC1-2010 noch auf separaten Steckkarten waren.
- RAM-Disk 1MB https://ac1-info.de/ac1_2010/ram_floppy.htm
- PIO2 (zur freien Verwendung) https://ac1-info.de/ac1_2010/pio_2.htm
- PIO3 mit VDIP-USB https://ac1-info.de/ac1_2010/pio_3.htm
technische Unterlagen
I/O-Adressen
| 08 .. 0F | PIO 2 |
| E0 .. E7 | RAM-Floppy |
| FC .. FF | PIO3 VDIP |
genutzte Speicherbereiche
| - | - |
Downloads
- 1m_ramdisk_pio_gerber.zip Gerber-Daten
- ram-flpy_1m_pio2_pio3-usb_2024.pdf Schaltplan
RAM-Disk 1MB
basiert auf mp 3/88 - präcitronic. Unterlagen s.a. mp388_-_praecitronic und vgl. AC1-2010 ram-floppy_256k
Die RAM-Disk wird über IN- und OUT-Befehle bedient und tangiert den Hauptspeicher nicht. Genutzt wird die RAM-Floppy vor allem im CP/M als Laufwerk A:. Im AC1-Modus kann die RAM-Disk mit den Floppy-Routinen von Johann Spannenkrebs verwendet werden. http://www.ac1-info.de/ac1_2010/fdc/Beschreibung_FDC_16.pdf
Ansteuerung:
Zum Adressieren von 1 MByte werden 20 Adressbits benötigt. Die niederwertigsten 8 Bit stellt ein vom Programm mittels OUT-Befehl ladbarer Adresszähler bereit. Die nächsthöheren 8 Bit müssen vom Programm in ein Oktallatch geladen werden. Die restlichen 4 Bit stecken in der Peripherieadresse, unter der das Bedienprogramm anschließend die RAM-Disk liest oder beschreibt. Nach jedem Zugriff inkrementiert die Zugriffslogik der RAM-Disk den o. g. Adresszähler. Damit sind INIR- und OTIR-Befehle für das Umladen der Daten bestens geeignet. Die RAM-Disk belegt insgesamt 8 E/A-Adressen nach folgendem Schema:
E0 = Lesen/Schreiben Bank 1 (je 64k) E1 = Lesen/Schreiben Bank 2 E2 = Lesen/Schreiben Bank 3 E3 = Lesen/Schreiben Bank 4 E4 = frei E5 = extended Adressbits (RAM-Floppy > 256 kByte) E6 = mittlere 8 Adressbits laden E7 = niedrigste 8 Adressbits in den Zähler laden.
Erweiterung E5 gegenüber präcitronic
Ralph Hänsel (https://www.robotrontechnik.de/html/forum/thwb/showtopic.php?threadid=7634): Meine Lösung, die auch im HRDOS12 & HRCPM12 eingebaut ist, nutzt einfach ein weiteres 8bit Latch, welches die weiteren Adressen liefert. Damit lassen sich theoretisch weitere zusätzliche 256 Bänke adressieren, d.h. 256 * 256k = 64MB! Das Latch selbst läuft auf der IO-Adresse E5H, also im bei der Präcitronik RAMFloppy belegten Bereich. Der Hardwareaufwand besteht nur aus dem Latch selbst. Auch eine mögliche Kaskadierung von mehreren Präcitronic RAM-Floppy's ist sehr einfach möglich.
:-E5--: :----- Vollständige 18 bit RAM-Adresse (RAF 256K) ------: :19 18: :17 16 15 14 13 12 11 10 9 8: 7 6 5 4 3 2 1 0 : : : : : : +--+--+ +--+--+ +--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+ | RAF | | Bank| | mittlere Adr.Bits | | niedrigste Adr.Bits | +--+--+ +--+--+ +--+--+--+--+--+--+--+--+ +--+--+--+--+--+--+--+--+
https://github.com/friedertonn/ACC-CPM/blob/main/RAMDISK.INC
PIO2
Belegung Steckverbinder
Beispiele zur Nutzung
- V24-Schnittstelle, z.B. für Druckeranschluss
- EEPROMmer nach B. Jahn


