Floppycontroller mit WD1770?

ZX-Team Forum
Antworten
klf
User
Beiträge: 35
Registriert: 08.09.2011, 09:53

Floppycontroller mit WD1770?

Beitrag von klf » 30.12.2018, 15:46

Kennt jemand einen Floppycontroller für den Zeddy auf Basis des WD1770?

Ich habe so ein System geerbt, allerdings ohne Dokumentation und ohne Zubehör. Die im Anhang gezeigte (gefädelte) Leiterplatte enthält neben dem FDC noch 32k RAM und eine 8250A UART. Die unteren 8k des ROMs entsprechen 1:1 dem Original, ab 2000h folgt dann der Code für die Floppy. Den habe ich ebenfalls angehängt. Das Floppylaufwerk ist ein Shugart SA-400, also 5,25" 35 Spuren einseitig.

Bevor ich nun die Schaltung rauszeichne und die Software weiter analysiere: kommt das Ganze jemandem bekannt vor?

Der ZX-DOS-Code von Schulz/Merkl ist es schonmal nicht, deren Design basierte auch auf einem anderen FDC (WD179x). Ich will auch nicht ausschließen, dass es sich um eine Eigenentwicklung handelt.


Danke, Gruß
Patrick
Dateianhänge
WernerZxDos.txt
(69.86 KiB) 9-mal heruntergeladen
IMG_5928kl.JPG
IMG_5928kl.JPG (124.99 KiB) 476 mal betrachtet
Zuletzt geändert von klf am 03.01.2019, 16:04, insgesamt 4-mal geändert.

Kai
User
Beiträge: 447
Registriert: 19.04.2005, 20:46

Re: Floppycontroller mit WD1770?

Beitrag von Kai » 31.12.2018, 17:20

Interessantes Teil!
Sind nicht die Floppy-IF vom Spectrum oft mit dem 1770 bestückt gewesen?

Benutzeravatar
Joachim
User
Beiträge: 1063
Registriert: 06.11.2004, 20:21

Re: Floppycontroller mit WD1770?

Beitrag von Joachim » 31.12.2018, 17:30

Wir haben damals den SAB1793 von Siemens genommen, weil die Schaltung schon vorhanden war. Später kamen wir dann drauf, dass der WD1770 vielleicht doch besser gewesen wäre, weil er - wenn ich mich recht erinnere - double density konnte. Im Endeffekt ist es egal, weil wir ja ohnehin nur 16 KB für ein Programm hin- und herschaufeln können. Und da sind 360 KB auf einer Disk-Seite auch schon viel.
Solltest du zum Treffen kommen, dann wäre es nicht schlecht, das Teil mitzubringen.
Den Quelltext habe ich mal überflogen. Ist relativ kurz für ein DOS. Kommt mir so vor, als fehlten die in/out-Befehle. Evtl. ist es memory mapped. Da ich auf der Platine kein EPROM sehe, gehe ich davon aus, dass das im ZX81 ist.
Jedenfalls eine spannende Sache. Ein Schaltplan wäre sicher interessant.
Viele Grüße!
Joachim


ZX80, ZX81, ZX-Spectrum, ZX96, ZX2000, ZXmore, ZX81NU, Blauer Engel, AX81

klf
User
Beiträge: 35
Registriert: 08.09.2011, 09:53

Re: Floppycontroller mit WD1770?

Beitrag von klf » 01.01.2019, 22:32

Ja, der FDC ist memory-mapped im Bereich 3F0xh. Die UART liegt bei 3F2xh.

Das interne RAM ist nicht bestückt, stattdessen wird in klassischer Weise mittels /CS = /MREQ + /(A14 + A15) das externe 32k-RAM eingebunden. Das (interne) ROM ist auf 16k aufgebohrt (eigentlich 2x 16k in Form eines 27256, über den zweckentfremdeten Kanal 2/3-Umschalter wählbar). Im Bereich 3Fxxh wird /ROMCS weggedrückt, dort adressiert der 74LS138 die oben genannte Hardware,

Ich habe das Assemblerlisting im Eröffnungsbeitrag aktualisiert.


Gruß
Patrick


BTW: auf der Hauptplatine wurden die Dioden der Tastaturabfrage durch PNP-Transistoren ersetzt. Basis an die Adressleitung, Kollektor an Masse, Emitter an den Tastaturstecker. Die Stromverstärkung hilft bei längeren Tastaturkabeln. Clevere Idee!

Benutzeravatar
dhucke
User
Beiträge: 870
Registriert: 21.03.2009, 14:50
Wohnort: in der Nähe von Göttingen

Re: Floppycontroller mit WD1770?

Beitrag von dhucke » 02.01.2019, 14:31

hier gehts zwar um ZX81 Hardware, trotzdem folgender Hinweis;

Die OPUS verwendet meines wissens unter den ZX Spectrum Interfaces als einziges den WD1770.
PlusD und Disciple verwenden den (abwärtskompatiblen) WD1772.

Der WD1772 hat laut Datenblatt die Möglichkeit weiterer Stepraten von 2, 3, 5, 6 ms.:
https://datasheetspdf.com/pdf-file/1311 ... l/WD1772/1
"Hardware nennt man die Teile eines Computers die man treten kann."
Jeff Pesis

klf
User
Beiträge: 35
Registriert: 08.09.2011, 09:53

Re: Floppycontroller mit WD1770?

Beitrag von klf » 02.01.2019, 15:00

ersetze "weitere" durch "andere". Der WD1770 hat 6, 12, 20 und 30 ms, WD1772 hat 2, 3, 5 und 6 ms.

Der alte Zylonentanker SA-400 ist aber mehr oder weniger das einzige Laufwerk, welches mit 20-30 ms betaktet werden will. Schon die Teac FD-55 - Serie kam mit 3 ms klar, und die späteren 3,5"-Laufwerke hatten buffered seek, d.h. ein Mikrocontroller zählt die Pulse und steuert den Schrittmotor mit seiner individuellen Rampe an.

klf
User
Beiträge: 35
Registriert: 08.09.2011, 09:53

Re: Floppycontroller mit WD1770?

Beitrag von klf » 11.01.2019, 11:17

Der Vollständigkeit halber anbei noch der Schaltplan. Da Graphiken hier maximal 1024 x 768 Pixel groß sein dürfen gibt es zusätzlich ein Zip-File mit der vollen Größe.


Gruß
Patrick
Dateianhänge
Werner_FDC.zip
Schaltplan, Quellcode, Fotos in voller Auflösung
(1.92 MiB) 4-mal heruntergeladen
Werner_FDC_kl.png
Werner_FDC_kl.png (249.72 KiB) 200 mal betrachtet
Zuletzt geändert von klf am 11.01.2019, 22:48, insgesamt 1-mal geändert.

Benutzeravatar
Joachim
User
Beiträge: 1063
Registriert: 06.11.2004, 20:21

Re: Floppycontroller mit WD1770?

Beitrag von Joachim » 11.01.2019, 14:05

Super Arbeit. Da hast du dir ganz schön Mühe gemacht. Vielen Dank!
Die Schaltung hätten wir schon ein paar Jährchen früher haben müssen. Dazu noch die günstigen Platinenpreise und leistungsfähigen Router .....
Vielleicht war die RS232 auch ein Druckerport - obwohl die Software dazu nicht so aussieht - und offensichtlich war die Baudrate fest eingestellt.
Hast du die Schaltung schon mal ausprobieren können?
Viele Grüße!
Joachim


ZX80, ZX81, ZX-Spectrum, ZX96, ZX2000, ZXmore, ZX81NU, Blauer Engel, AX81

Antworten