XS-1541


Home | News | Dokumentation | Download | Bugs | to do | Mail

Zweck

Analog zu einem X-1541 Kabel dient der XS-1541 Adapter dazu, die Floppy Hardware der Firma Commodore an einen PC anzuschließen. Dabei werden sowohl die alten Geräte mit parallelen IEEE-488 Bus als auch die neueren mit seriellen IEC Bus unterstützt. Auch Floppy mit Speed-Dos Kabel werden von dem Adapter unterstützt.


News 

2008-10-24

v0.01.25

Umbau des ganzen Programm Gerüst auf die OpenCBM Architektur. So hat man eine flexibles und leistungsstarkes Interface.

2008-06-23

Start des Projektes


Dokumentation

Galerie

Die Vorschau-Bilder können angeklickt werden, um eine vergrößerte Ansicht zu erhalten.

Upload Test Microcode

Backup Imagefile Download File FONTEDIT 1.0 help screen
Screenshot 1
Screenshot 2
Screenshot 3
Screenshot 4


Hier sieht man ein fertig aufgebautes XS-1541. Es wurde ein Olimex Board AVR-P40-USB verwendet, an dem man nur noch die Floppy Kabel direkt anlöten muss.

XS-1541 Hardware

Backup Imagefile

XS-1541 aufgebaut mit
einem Prototype Board
von Olimex
Schaltplan des XS-1541



Geschichtliches

Ich habe nun seit fast 30 Jahren alte Disketten zuhause im 8050 Format. Schon immer wollte ich diese Disketten auf meinen PC kopieren. Zumal es mit dem VICE ja einen perfekten Emulator für diese alten 8 bit Computer gibt.

Ende Mai 2008 kam ich durch Zufall auf das Forum-64 und habe entdeckt, dass es noch mehr Leute gibt die auf alte Commodore Hardware stehen. Beim stöbern bin ich auf das X-1541 Kabel gestossen. Dieses Kabel verbindet die seriellen IEC Floppy mit dem parallelen LPT Port des PC. Allerdings funktioniert die Ur Version des Kabel nur auf uralten, sehr langsamen PC's. Es gab dann mehrere Nachfolger des Kabel um die Kompatibilität zu modernen PC wieder herzustellen (XM-1541, XE-1541 und XA-1541). Auch Sonderformen für den parallelen SpeedDos Bus kamen hinzu unter dem Namen XP-1541 oder in Kombination XAP-1541.

Leider verfügen moderne PC oft nicht mehr über einen LPT Port, sodass da X-1541 Kabel nicht mehr eingesetzt werden können. Die Idee war also geboren, ein Adapter für alle Commodore Floppy mit einem Anschluss zum PC der modern ist und nicht veraltet wie der LPT Port. Eine serielle Schnittstelle wird es immer geben und die kann sehr einfach durch USB ersetzt werden. Dadurch war auch die Wahl des Namen für den Adapter schon klar: XS-1541

Im Forum-64 gibt es einen Beitrag speziell zum XS-1541: klick

Wozu?


Allgemeine Funktionsweise der Schaltung

Es wird eine Standard Schaltung für den Atmega verwendet, deshalb kann auch jedes beliebige Prototyp Board verwendet werden. Der Quarz hat hat eine 'krumme' Frequenz, weil sonst die Kommunikationsgeschwindigkeit 115K nicht exakt eingestellt werden kann und die meisten PC Probleme bei der Datenübertragung haben.

Die Floppy sind direkt an den Port des Atmega angelötet. Ich habe schon gehört, sowas könne man nicht machen. Es brauche Treiberbausteine und weitere Bauteile damit das technisch korrekt ist.

Was soll ich sagen, - es funktioniert! Treiberbausteine schützen die Elektronik und ermöglichen den Betrieb mit mehreren Geräten. Aber warum Treiberbausteine als Schutz wenn die dann teurer als ein Atmega sind? Das XS-1541 kann bis zu drei Floppy an jedem Bus (also bis zu 6) treiben, mir persönlich langt das leicht. Wenn jemand die perfekte Lösung herstellt beglückwünsche ich ihn und wenn möglich würde ich gerne die Schaltung hier veröffentlichen.


Bedienung

Das XS-1541 ist seriell an einem PC oder einem beliebigen Terminal angeschlossen. Es muss kein PC sein, es langt irgendein beliebiger Computer mit seriellem Anschluss und einem Terminalprogramm das Y-Modem Protokoll kann. Das Betriebssystem ist ebenso völlig egal. Ob Linux, Windows oder Mac OS, hauptsache ist das Terminal Programm.

Unter Windows kann das kostenlose Hyperterminal verwendet werden. Hyperterminal sollte auf jedem Windows PC vor installiert sein.

Die Einstellung der seriellen Schnittstelle muss 115200, 8, N, 1 sein. Also 115200 baud, 8 Datenbits, 1 Stopbit und keine Parity.

Bei Verwendung eines USB Boards (zb. das von Olimex) wird eine virtuelle COM Schnittstelle eingerichtet. Es braucht dazu keinen Driver, einfach anstecken und gut. Vom Windows PC aus gibt es ein neues COM Port, das wie eine normale serielle Schnittstelle angesprochen wird. Dh. der PC merkt überhaupt nicht ob das XS-1541 seriell oder per USB angeschlossen ist. Auch bei USB müssen die Schnittstellen Parameter auf 115200,8N1 gestellt werden.

Nach einem Reset oder nach dem Einschalten meldet sich das XS-1541 am PC mit einer Startmeldung. Danach wartet es auf Befehle vom Terminal, also vom Benutzer. Der Befehl wird in einer Zeile eingetippt und mit der <Eingabe> Taste bestätigt. Das XS-1541 führt den Befehl aus.

Eventuell verursacht der Befehl einen Fehler der vom XS-1541 ausgegeben und am Terminal angezeigt wird. Ansonsten gibt es meist eine Antwort oder das XS-1541 protokolliert seine Arbeit. Manche Befehle verursachen eine Datenausgabe die direkt am Terminal erfolgen kann.

Einige Befehle (zB. Datei lesen, ganze Disk lesen) senden Dateien zum PC oder lesen Dateien vom PC. In diesem Fall fordert das XS-1541 den Benutzer auf das X-Modem bzw. das Y-Modem Protokoll zu starten. Das ist eine Funktion im Terminal Programm um einen Datei Transfer durchzuführen.


Die Beschreibung aller Befehle der jeweiligen Firmware ist im Package enthalten: XS1541-Docu.txt


Firmware Update

Die Software des XS-1541 (Firmware) ist im Atmel Controller gespeichert. Die Firmware wird laufend verbessert, deshalb ist es sinnvoll ab und zu ein Firmware Update zu machen.

Die Firmware wird als HEX Datei ausgeliefert und muß durch ein Programmiergerät in den Flash Speicher des Controller geschrieben werden. Wenn das XS-1541 mit einem Bootloader ausgerüstet ist, dann wird kein Programmiergerät benötigt.
Wenn der Controller noch keinen Bootloader hat, dann benötigt man zumindest einmal ein AVR Programmiergerät um den Bootloader in den Controller zu schreiben.

Man kann erkennen ob ein Bootloader vorhanden ist, indem man das LED des XS-1541 beobachtet beim Einschalten bzw. nach einem Reset. Ein XS-1541 ohne Bootloader startet sofort ohne Verzögerung. Wenn ein Bootloader vorhanden ist, verzögert sich der Start um etwa 3 Sekunden.

In diesen 3 Sekunden wenn der Bootloader aktiv ist, kann ein Firmware Update gestartet werden. Der Bootloader ist kompatibel zu AVR-Prog (Windows) und AVRdude (Linux). Beide Programme sind kostenlos erhältlich und können die Firmware (HEX Datei) von der Downloadseite direkt verarbeiten. 

Achtung: Der AVRProg kann nur mit den Schnittstellen COM1 bis COM4 umgehen.



Downloads

Aktuelle Version


Splan ist ein Schaltplan Editor für Windows vin der Firma Abacom. Es gibt einen kostenlosen Schaltplan Viewer: download


Bugs

Diese Hard- und Software ist wie alles Irdische nicht perfekt. Sie können helfen, sie zu verbessern: schreiben Sie mir eine Mail mit Ihren Hinweisen oder Ihrer Meinung.

Bestehende Fehler

Behobene Fehler


to do

Befehle im XS-1541:


An der Hardware:


Disclaimer

Alle genannten Waren- oder Firmenbezeichnungen könnten Eigentum der jeweiligen Besitzer sein. Alle Informationen werden ohne Rücksicht auf die evtl. Rechts- oder Patentlage ausschließlich zu Ausbildungszwecken erteilt. Jegliche Verwendung geschieht ausdrücklich auf eigene Gefahr.

Also melden Sie sich nicht bei mir, wenn ihr Atmel Board, Ihr PC oder einer Ihrer Floppy nicht mehr funktionieren sollte, das Feuer auf die ganze Wohnung, das Haus, den Straßenzug oder die Stadt übergreift oder der dabei entstehende Rauch das Klima um 30 Grad erwärmt, Millionen verdursten und verhungern und der Rest von Aliens gekapert wird, die dann kommen, weil es endlich ausreichend kuschelig warm ist... also seien Sie gewarnt und bedenken Sie Ihr Handeln sorgfältig!


Home | News | Dokumentation | Download | Bugs | to do | Mail | first edit 2008-10-24, last edit 2008-11-15