Posts by PeacockXT

    Nachdem ich nun etliche Stunden damit verbracht habe, ein ATF1504 erfolgreich zu programmieren, möchte ich nun kurz meine Erfahrungen zum Besten geben.


    Verwendet wurden WinCupl und ATMISP, was von Microchip frei verfügbar ist, und das original Michrochip ATDH1150USB ( USB ISP cable ).


    - wenn Änderungen an der xxx.pld Datei gemacht werden, kann ich nur empfehlen die Datei zu speichern, WinCupl zu schliessen und neu aufzurufen. Es hat sich gezeigt, daß WinCupl beim Übersetzen irgendwie durcheinander kommt, wenn man es nicht macht.


    - es ist ungemein wichtig das richtige Device ( ... isp ... ) in der xxx.PLD Datei zu verwenden, wenn man über JTAG laden will

    also z.B. Device f1504ispplcc44 ; /* isp type important when JTAG is used !!! */


    - wenn JTAG Laden nicht möglich ist, liegt es evtl. daran, das das JTAG Flag im ATF auf OFF gesetzt ist. Um es wieder auf ON zu setzen, den PIN 1 über 10k Widerstand mit 12 V einspeisen, und dann ein Programm laden. Dann tritt eine Fehlermeldung auf, aber das JTAG Flag wird dabei auf ON gesetzt. Jetzt die 12 V wegnehmen, und das Programm kann dann normal mit JTAG geladen werden, ( immer die Option JTAG Port Check Override bei ATMISP verwenden ).


    In WinCupl gibt es einige Beispiele für ATF Programme, im Internet findet man aber kaum etwas. Anbei ein getestetes Programm für einen zweifachen BCD to 7 Segment decoder ( sollte mal eine Anzeige für eine POST Karte werden ).

    Ich habe einen etwas anderen Ansatz gewählt, und einen ATF150x PLCC44 shield für einen Arduino MEGA 2560 entwickelt. Zum einen lässt sich damit der ATF programmieren , zum anderen aber auch die programmierten Funktionen testen. Alle I/O PINs des ATF sind dafür mit den Arduino PINs verbunden. Zusätzlich wird der Zustand der I/Os über LED angezeigt, die SMD LED brauchen wenig Strom, bei 2,2k Ohm Vorwiderstand sind das nur 1,5mA, also kaum Belastung. Die 12 V selbst , die evtl. nötig sind, um die JTAG Funktion wieder zu aktivieren, ist über eine kleine Platine realisiert, die sehr günstig im Internet zu bekommen ist,


    Ich verwende das originale Microchip cable ATDH1150USB mit ATMISP. Die jedec Datei wird über WINCUPL erstellt. Damit kann ich Fehler in diesem Bereich ausschliessen, und mich voll auf die Programmierung und das Testen konzentrieren.


    Die Platine hat einen JTAG Anschluss und es würde natürlich auch die FT232 und Arduino Lösung gehen ( für Arduino müßte das von Diddle entwickelte Programm für den UNO auf den 2560 umgeschrieben werden) . Dann kann man sich die 100€ für das Microchip cable sparen.


    Das shield selbst kann auch ohne Arduino zum Programmieren verwendet werden, dann braucht es aber eine externe 5V, geht aber auch mit Arduino, dann müssen die 4 Jumper geöffnet werden.





    Da JLCPCB immer min. 5 Platinen Mindestbestellmenge hat, kann ich noch ein paar Leer Platinen abgeben.

    Den ATF1504 habe ich deshalb gewählt, weil in 5V verfügbar, das IC steckbar ist, und PLCC44 Sockel leicht zu löten.


    Schwieirig wird es inzwischen bei der Beschaffung der ATF150x Chips. Ich hatte ein paar in China bestellt, immerhin nur 20 % Ausschuss, teilweise nur nach Behandlung mit 12V zu programmieren.

    Konnte diese Award POSTcard ersteigern.



    Als Besonderheit hat diese POSTcard zusätzlich zur Anzeige der Port Adresse einen EPROM mit einem AWARD Diagnose Programm, in etwa zu vergleichen mit Check-IT.

    Anders als bei Check-It braucht dafür aber nicht MS-DOS geladen zu werden.


    Das Award Diagnoseprogramm hat insgesamt 3 Teilprogramme enthalten, welche über DIP angewählt werden können:


    - Post Loop -> der Rechner fährt hoch, startet dann aber wieder automatisch

    - Diagnose -> der Rechner fährt hoch, und startet dann das Award Diagnose Programm

    - Read Back Port -> wird zwar im Manual genannt, aber ist nicht implementiert, wahrscheinlich wegen evtl. möglicher Fehler rausgenommen


    Alle Programme können einzeln ausgewählt werden, über die DIPs wird dazu der Speicherbereich 8k, 24k oder 32 k eingestellt.



    Und hier mein Nachbau dazu, etwas vereinfacht. Die LED sind entfallen, da Sie die gleichen Informationen wie die 7-segment Anzeige liefern.


    Als Portadresse kann 000 - 3FF über die DIPs eingeben werden, die Startadresse des EPROMs und die Programmauswahl.







    Und hier das Hauptmenue vom Diagnoseprogramm.


    Die CF Karte muß mit dem 5150 partioniert und formatiert werden. Max. 2 GB möglich. Dafür mit einer DOS Diskette den Rechner starten und wie eine normale HDD mit fdisk und format einrichten, und nicht vergessen das Boot Attribut zu setzen.

    Leider funktioniert nicht jede CF Karte, also probieren.

    Und da ist ein 1-phasiger Wechselrichter mit Batteriespeicher dran?

    Es ist ein dreiphasiger WR mit Speicher, aber das ist für die Regelung egal. Wichtig ist, die Gesamt Leistung, die aus dem Netz gezogen wird bzw. eingespeist wird, auf 0 zu bringen, deshalb muß auch bei einem 1-phasigen WR alle 3 Phasen gemessen werden,

    Nehme ich nun einen Growatt/Solax Wechselrichter Einphasig mit Speicher weiß ich garnicht, wie er wissen soll, dass ich aus P2 Strom ziehe (solax X1 misst nur eine Phase), wenn er an P1 angeschlossen ist. Er müsste ja dann Batteriestrom freigeben, um den Zähler auf 0 zu schalten. Ein 3-phasiges Messinterface habe ich nicht gefunden.


    Ein 3-Phasiger Wechselrichter benötigt mindestens 200V (600V norm, 1000V max.) an seinen MPPT, was nicht wirklich passt.


    Geht nur mit einem 3-phasigem Smartmeter, der den Batteriestrom steuert. Habe gerade meine Huawei Anlage in Betrieb genommen, dort heisst das Ding DTS666.

    Die Karten sind aus China eingetroffen, und ich habe ein paar Stück zum Testen bestückt. Laufen jetzt einwandfrei am PS/2 XT Bus.


    Sollten auch am PS/1 Bus funktionieren, da als Grundlage die Funktionsbeschreibung vom PS/1 diente.


    Die Karte ersetzt die HDD, mit einer kleinen Software Modifikation kann jede HDD type, die im IBM BIOS vorhanden ist, abgebildet werden.


    Ich gebe einzelne Karten mit SD-Card zum Testen für 75 € plus Versand ab. Sind quasi plug and play, kurze Anleitung ist auf der SD-Card.


    Am einfachsten geht das mit dem HD 20 Gehäuse, alte Festplatte raus, XTA2SD- card mit Flachbandkabel verbinden, 5V über Mole Stecker verbinden, fertig.


    Ohne HD 20 Gehäuse geht auch, dann braucht es aber eine externe 5V Versorgung.



    Wer lieber den internen Anschluss möchte, dann geht es natürlich nicht ohne Löten, anbei die Lötpunkte für den Euro PCII dafür.

    HowtoConnectXTA2SDtoEuroPCII.pdf

    Die Prototype Karte läuft seit 2 Tagen fehlerlos, ich habe jetzt ein paar Karten in China bestellt.


    Ich mußte leider auch feststellen, daß sich die Preise für IC's drastisch erhöht haben ( 2-3fach ), wenn man sie überhaupt noch bekommt.

    Da wird wohl nur noch für die Autoindustrie produziert.


    Hier ein Nachtrag zu den möglichen Drive Typen, wahrscheinlich je jünger der Rechner, desto mehr Typen.

    Die maximal mögliche Kapazität liegt bei 117,5 MB ( Type 9 ). Hab ich probiert und läuft tadellos.


    Nach Register wären wohl max. 2 GB möglich, ( C 10 Bit, H 4 Bit, S 8 Bit ), dafür muß die BIOS Tabelle angepaßt werden, und ob das im BIOS berücksichtigt ist, wäre mal interressant zu wissen. Wenn ich mal ganz viel Zeit habe...




    IBM Type Cyls Heads Secs MB
    PS/2 + PS/1 1 306 4 17 10,7
    PS/2 + PS/1 2 615 4 17 21,4
    PS/2 + PS/1 3 615 6 17 32,1
    PS/2 + PS/1 4 940 8 17 65,5
    PS/2 + PS/1 5 940 6 17 49,1
    PS/2 + PS/1 6 615 4 17 21,4
    PS/2 + PS/1 7 462 8 17 32,2
    PS/2 + PS/1 8 733 5 17 31,9
    PS/2 + PS/1 9 900 15 17 117,5
    PS/2 + PS/1 10 820 3 17 21,4
    PS/2 + PS/1 11 855 5 17 37,2
    PS/2 + PS/1 12 855 7 17 52,1
    PS/2 + PS/1 13 306 8 17 21,3
    PS/2 + PS/1 14 733 7 17 44,7
    PS/2 + PS/1 15 0 0 0 0
    PS/2 + PS/1 16 612 4 17 21,3
    PS/2 + PS/1 17 977 5 17 42,5
    PS/2 + PS/1 18 977 7 17 59,5
    PS/2 + PS/1 19 1024 7 17 62,4
    PS/2 + PS/1 20 733 5 17 31,9
    PS/2 + PS/1 21 733 7 17 44,7
    PS/2 + PS/1 22 733 5 17 31,9
    PS/2 + PS/1 23 306 4 17 10,7
    PS/2 + PS/1 24 612 4 17 21,3
    PS/2 + PS/1 25 306 4 17 10,7
    PS/2 + PS/1 26 612 4 17 21,3
    PS/2 + PS/1 27 698 7 17 42,5
    PS/2 + PS/1 28 976 5 17 42,5
    PS/2 + PS/1 29 306 4 17 10,7
    PS/2 + PS/1 30 611 4 17 21,3
    PS/2 + PS/1 31 732 7 17 44,6
    PS/2 + PS/1 32 1023 5 17 44,5
    PS/2 + PS/1 33 614 4 25 31,4
    PS/2 + PS/1 34 775 2 27 21,4
    PS/2 + PS/1 35 921 2 33 31,1
    PS/2 + PS/1 36 402 4 26 21,4
    PS/2 + PS/1 37 580 6 26 46,3
    PS/1 38 845 2 36 31,2
    PS/1 39 769 3 36 42,5
    PS/1 40 531 4 39 42,4
    PS/1 41 577 2 36 21,3
    PS/1 42 654 2 32 21,4
    PS/1 43 923 5 36 85,1
    PS/1 44 531 8 39 84,8

    Liegt wohl daran, daß die WDL-320 den Drivetyp 34 hat, und der erst später dazu gekommen ist.


    Hier die Liste aus dem Model 30 286


    MachineID=0xFC, ROMmfg=0, ROMrev=0, DOS=622, drives=2


    SpeedStor=0, DOS=622


    37 ROM table(s) found at e000: 20a



    Type Cyls Heads Secs Pcomp Lzone Ctrl


    1 306 4 17 128 305 0

    2 615 4 17 300 615 0

    3 615 6 17 300 615 0

    4 940 8 17 512 940 0

    5 940 6 17 512 940 0

    6 615 4 17 65535 615 0

    7 462 8 17 256 511 0

    8 733 5 17 65535 733 0

    9 900 15 17 65535 901 8

    10 820 3 17 65535 820 0

    11 855 5 17 65535 855 0

    12 855 7 17 65535 855 0

    13 306 8 17 128 319 0

    14 733 7 17 65535 733 0

    15 0 0 0 0 0 0

    16 612 4 17 0 663 0

    17 977 5 17 300 977 0

    18 977 7 17 65535 977 0

    19 1024 7 17 512 1023 0

    20 733 5 17 300 732 0

    21 733 7 17 300 732 0

    22 733 5 17 300 733 0

    23 306 4 17 0 336 0

    24 612 4 17 305 663 0

    25 306 4 17 65535 340 0

    26 612 4 17 65535 670 0

    27 698 7 17 300 732 20

    28 976 5 17 488 977 20

    29 306 4 17 0 340 0

    30 611 4 17 306 663 20

    31 732 7 17 300 732 20

    32 1023 5 17 65535 1023 20

    33 614 4 25 65535 663 20

    34 775 2 27 65535 900 20

    35 921 2 33 65535 1000 20

    36 402 4 26 65535 460 20

    37 580 6 26 65535 640 20




    Für die PS2XT2SD card ist geplant, daß sie jeden Typ nachbilden kann.

    Ich hab das Ding mal PS2XT2SD Card genannt. Im Moment noch in der Entwicklung, aber Booten geht schon, siehe Video.


    https://www.youtube.com/watch?v=NExwMXoxSe4


    Die PS2XT2SD Card emuliert eine HDD, welche den 8bit XT Bus auf dem Mainboard verwendet. IBM hat hier einen speziellen XT Bus entwickelt, der eine wenig Ähnlichkeit mit dem XTA Bus hat, aber bzgl. der Register und Kommunikation doch stark abweicht.


    Sollte dann für alle PS Modelle mit dem speziellen XT-Bus einsetzbar sein, z.B. PS/2 Model 30 und 25, PS/1 usw.

    Die XTA2SD-card mit 2 x 140 MB läuft, die Parameter im WD BIOS müssen dafür aber angepaßt werden.

    Das größte Problem war das Image ( bzw. die low level Formatierung ) dafür, ohne eine vorhandene HDD, zu erstellen.

    Aber einen jetzt einfachen Weg dafür gefunden.


    Die magische 40 MB Grenze bei XTA ist somit hinfällig, bzw. das WD BIOS kann mehr als gedacht.


    Mit CHS 1023/32/17 ( 280 MB ) gibt es aber Probleme, hatte auch mal irgendwo gelesen, daß bei max. 16 heads Schluß ist.

    Aber 2 x 140 MB sind ja auch schon eine ganz schöne Menge für einen XT-Rechner.

    ... und für die XT Rechner ohne WD BIOS gab es damals die FileCard mit 20 MB. Und wer keine hat, nimmt die XTAFileCard:


    der Nachfolger der XTA2SD-Card mit XTA controller auf einem Board . Versuche gerade 2x140 MB zu realisieren: CHS 1023/16/17.




    Die 2 x 40 MB laufen auch. Wichtig ist, daß auch der Host Rechner die dafür nötigen Drive Parameter in seinem BIOS hat.


    Für die 40 MB sind die Parameter CHS 977 / 5 / 17 erforderlich. Wobei das WD XTA BIOS für alle HDD's, egal welche Kapazität, immer die 17 Sektoren / Track voraussetzt.

    Hier mal die im XTA Western Digital BIOS hinterlegten Parameter für die HDD's.


    Die 40 MB HDD scheint erst ab 1988 dazu gekommen zu sein, beim Schneider fehlt sie.



    Habe es leider bisher immer noch nicht geschafft ein 40 MB Image zu kreieren.


    Deshalb meine Bitte: kann mir jemand eine Seagate ST351AX leihen.

    Fdisk und Format funktionieren jetzt auch. Partitionen können angelegt werden. Somit sollte die XTA2SD-Card jetzt ein vollwertiger Ersatz für die XTA HDD sein. Bisher ist noch kein einziger Schreib-/Lesefehler aufgetreten, läuft also stabil.


    Die file image Datei muß aber nach wie vor varab auf die SD kopiert werden, was im Prinzip der low level formatierung entspricht.

    1ST1


    Das Image der Festplatte muß als vielfach Datei auf die SD-Card gespeichert werden, habe dafür ein Turbo Pascal Programm.


    Wenn die Olivetti mit dem original XTA bus arbeitet, sollte das auch mit den images funktionieren, die ich schon erstellt habe.

    Schön wäre natürlich das Olivetti Image zu haben. Das geht aber im Moment nur, wenn das Image von einer funktionierenden Platte runtergeladen wird,

    Wenn Du mir eine Kopie der Olivetti Installationsdiskette schickst, könnte ich versuchen, die auf meiner Festplatte zu installieren.


    Ich könnte Dir leihweise eine Karte zur Verfügung stellen. Wäre für mich auch interessant zu wissen, mit welchen Rechnern die XTA2SD-Card läuft.


    Bisher erfolgreich getestet: Commodore PC20-III, Schneider Euro PC II, Western Digital ISA Controller WD-XT 150

    ralle


    Damit vielleicht ein paar Missverständnisse aus dem Weg geräumt werden:


    - Der eigentliche Controller ist der teensy 4.1. Für die Speicherung wird die micro SD-Card von dem teensy verwendet.

    - Ein image der Festplatte ( als files gespeichert ) muß vorab auf die SD-Karte kopiert werden. Für die Kapazität der "Festplatte " sind lediglich die Beschränkungen der XTA Schnittstelle zu beachten. Von daher ist alles möglich, das image muß nur vorhanden sein, also eine Festplatte, die bereits formatiert ist, z.B. geht 40 MB, 32 MB, 20 MB, etc., sie muß halt nur einmal da sein, um das Abbild zu ziehen. Zur Zeit habe ich nur eine 20 MB Festplatte, deshalb die 20 MB Kapazität.

    - die micro SD-Card kann zwar unter windows verwendet werden, aber Dateien können z.B. nicht in das image kopiert werden, das muß ganz konventionell über Floppy oder eine XT-ide Karte laufen.

    - MS-DOS Grundbefehle funktionieren, aber "noch" kein fdisk, format etc. ( To Do Liste )
    - der Controller kann 2 HDD's emulieren, also 2 x 40 MB sind möglich, mit MS-DOS 3.3 max. 2 x 32 MB

    - ob mehrere Partitionen laufen, habe ich noch nicht ausprobiert, aber ist auf der To Do Liste


    Auf der micro SD Karte habe ich zur Zeit 2 Abbilder:

    - 2 x 20 MB mit MS-DOS 3.30A Schneider

    - 2 x 20 MB mit MS-DOS 6.22


    Das Abbild was sich im main folder befindet wird verwendet.


    Ich habe noch ein paar Platinen über und würde die als DIY Kit ( fertig programmiert ) zur Verfügung stellen:


    1. DIY Kit Basic Parts € 50,-- + shipping

    ( Beta Version for testing )


    1 PCB XTA2SD-Card

    1 ATF22V10C DIP, programmed

    1 teensy 4.1 board, programmed

    1 SD micro Card, programmed

    3 74LVTH573 SOIC

    ( SMD soldered on PCB )


    Additional needed :


    2. IC's and Capacitors


    3 74F574 or 74HCT574 DIP

    1 74F573 or 74HCT573 DIP

    1 Capacitor 10µF

    8 Capacitors 100nF



    3. Connectors ( users choice )

    1 plug connector 1x4 ( power supply )

    1 plug connector 2x20 ( XTA bus )

    2 plug connector 1x24 ( teeensy shield )



    4. DIP sockets ( users choice )


    1 DIP socket 24-Pin

    4 DIP socket 20-Pin


    Falls jemand eine Plug and Play PCB haben möchte, bitte melden.


    Ich hatte leider nur eine 20 MB HDD für das Image zur Verfügung, es geht mit Sicherheit 2 x 40 MB.


    XTA ist begrenzt auf CHS 1024/32/32, theoretisch würde also noch mehr gehen. Dafür braüchte ich aber eine HDD mit der entsprechenden Größe.

    Die HD 20 Emulation läuft.


    https://www.youtube.com/watch?v=S0DrH1qQlpY


    The Schneider external harddisk HD 20 is replaced by a XTA2SD-Card controller, which does emulate 2 harddisk drives. The Western Digital BIOS include in the Schneider PC BIOS has the ability to control 2 harddisk drives.
    The XTA2SD-card controller can be connected inside the PC or external like the HD 20. Video does show the built in version. The ISA bus connector is left free for other cards. On the SD Card from the teensy board both "images" of the harddisk are stored.

    Der 2. Prototyp ist fertig. Gestestet mit einem XTA Winchester Controller und einem Commodore PC20-III.


    Ich würde ihn leihweise zur Verfügung stellen, um ihn auch bei anderen Rechnern zu testen.


    Leihweise benötige ich noch HDD mit 32 oder 40 MB, und damit alles zusammenpasst die Original MS-DOS um die File Images zu erstellen.