Achtung Wichtig! Erst durchlesen!
Glückwunsch zum Kauf der Neuauflage der Speedy 1050 TDS erstmal!
Mit diesem Handbuch hoffe ich, alle wichtigen Themen über und um die Speedy1050 abgedeckt zu haben! Ich habe teilweise die Original-Texte des legendären, leider nicht mehr existierenden COMPY-SHOP`s übernommen, habe aber auch in mühevoller Kleinarbeit selber Texte geschrieben und aus diversen Internet-Quellen Infos rund um die 1050 und Speedy1050 gesucht und eingebunden. Bitte lesen Sie das Handbuch ganz durch, auch wenn Ihnen einige Texte bekannt vorkommen! Es ist durchaus möglich, daß ich an ein oder anderer Stelle etwas hinzugefügt habe!
Dieses Handbuch ist für die Vollausgebaute Speedy 1050 mit Trackanzeige, Summer und 4OS-Unterstützung geschrieben worden. Jedoch gelten fast alle Themen ebenso für eine Teilbestückte Speedy z.B. der Mini-Speedy oder einer Speedy ohne Trackanzeige usw. Im Grundkern sind sie alle gleich und haben auch den gleichen Software-Kern. Da diese Speedy ausnamslos als Fertig-Platine inkl. elektrischen Funktionstest ausgeliefert wird, gibt es keine Bausätze oder Leerplatinen. Hierdurch ist die Ausfallsquote durch laienhafte oder fehlerhafte Bestückung der Speedy auf ein Minimum reduziert. Ich hoffe jeder hat dafür Verständnis.
Danksagungen:
Danken möchte ich insbesondere meiner Frau, die auch dieses Handbuch „in Form“ gebracht hat, Wolfgang Burger für die Möglichkeiten diese Speedy über den ABBUC an Gleichgesinnte zu vertreiben, Bernhard Pahl für die Leihgabe einer COMPY-SHOP Erweiterung zur Reproduction, Walter Lojek und allen anderen ABBUC-Mitgliedern die durch Ihre Beiträge im ABBUC-Forum teilweise an der Trackanzeige mitgewirkt haben! Nicht zuletzt nochmals ein Dankeschön für die schönen Zeiten und der Zusammenarbeit von Peter Bee und Erwin Reuss zu Compy-Shop Zeiten sowie Walter Bellmann, ohne Ihn hätte ich vielleicht nie einen ATARI gehabt geschweigedenn das Programmieren in Basic und Assembler gelernt!
Euer
Wolfram Fischer (mega-hz@t-online.de)
Mai 2005
Einbauanleitung
Um die Speedy 1050 in Ihr Laufwerk einbauen zu können müssen Sie das Laufwerksgehäuse öffnen. Denken Sie bitte daran, daß Sie dadurch jede Garantieleistung der Firma ATARI an Ihrem Gerät verlieren. Auch müssen wir Sie darauf hinweisen, daß wir keine Haftung für eventuelle Schäden übernehmen, die durch den unsachgemäßen Einbau der von uns gelieferten Erweiterungen entstanden sind. Im Zweifelsfalle lassen Sie die Speedy 1050 von uns einbauen, die Mehrkosten stehen sicherlich in keinem Verhältnis zu den vielleicht entstandenen Schäden, die ein Laie beim einbauen anricheten kann.
Falls Sie aber die Erweiterung selber einbauen wollen, legen Sie sich das folgende Werkzeug zurecht.
1. Kreuzschlitz-Schraubendreher in verschiedenen Größen.
2. Feinlötkolben bis 25W Leistung.
3. Kleine Flachzange.
4. Kleinen Seitenschneider.
Manches von diesem Werkzeug brauchen Sie nur, wenn Sie die Speedy 1050 mit Trackanzeige einbauen.
Um die Speedy 1050 in Ihr Laufwerk einbauen zu können, entfernen Sie zuerst einmal alle Kabel und Steckverbinder von Ihrem Laufwerk. Danach drehen Sie es um, so daß Sie auf die Unterseite Ihres Laufwerkes sehen können. Dort befinden sich sechs Schrauben. Lösen Sie diese Schrauben bitte und legen Sie sie beiseite. Nun drehen Sie Ihr Laufwerk vorsichtig um (Achtung! Alle Teile sind jetzt lose!).
Jetzt können Sie das Gehäuseoberteil mit der braunen Frontplatte zusammen abheben. Legen Sie beide Teile beiseite.
Wenn Sie jetzt die Laufwerksmechanik anheben, sehen Sie eine Menge Kabel die von der Mechanik zur Grundplatine gehen. Alle Kabel brauchen Sie nicht zu lösen. Merken Sie sich den Sitz der beiden Kabel (Stecker) an der rechten Seite des Laufwerkes. Diese Stecker müssen Sie lösen. Seien Sie dabei bitte vorsichtig, da diese Stecker sehr stramm sitzen.
Entfernen Sie nun, falls möglich, die vier schwarzen Gummistopfen, auf denen die Laufwerksmechanik normalerweise aufliegt. Diese Stopfen sind sehr hinderlich beim ausbau der Laufwerkselektronik. Hier noch einmal der Hinweis, daß Sie alle Teile die Sie ausbauen bitte sorgfältig aufbewahren, Sie brauchen alles nochmal!
Die Laufwerkselektronik wird im Gehäuseunterteil durch zwei Plastiknasen festgehalten. Diese befinden sich im vorderen Gehäuseteil, jeweils eine rechts und eine links. Sie bekommen die Elektronik aus dem gehäuseunterteil, indem Sie diese Nasen nun vorsichtig zur Seite biegen, und die Elektronik dabei etwas anheben.
Haben Sie das Hindernis mit den Nasen überwunden, können Sie nun die Elektronik ohne weitere Schwierigkeiten aus dem Gehäuseunterteil heraus heben. Achten Sie aber darauf, daß Ihnen keines von den Kabeln abreisst, die die Laufwerksmechanik mit der Elektronik verbinden!
Sie können jetzt die silberne Metallabschirmung auf der Elektronik erkennen. Diese Metallabschirmung besteht aus zwei Teilen, die über vier Nasen miteinander verbunden sind. Biegen Sie nun diese vier Nasen vorsichtig zur Seite und heben die Metallabschirmung ab.
Legen Sie die Elektronik mit der Bauteilseite nach oben vor sich auf den Tisch. In der Mitte der Platine sehen Sie nun 5 grössere IC`s (Der Mikrocomputer in Ihrer Diskettenstation). Diese Bauteile sind von links nach rechts: Der Controller (2793 oder 2797) , das ROM oder EPROM mit dem Betriebssystem, danach folgt die CPU (6507) , das RAM (6810) und die PIO (6532).
Ziehen Sie nun das ROM und die CPU (U10 und U9) aus ihren Sockeln und legen Sie sie beiseite. In den nun freigewordenen Sockel der CPU (U9) stecken Sie die Speedy 1050 Platine. Achten Sie darauf, daß der Quarz (er liegt genau vor dem CPU-Sockel) genau durch den Ausschnitt der Speedy 1050 Platine geführt wird.
Trackanzeige
Die Trackanzeige besteht aus der Anzeigenplatine mit 2 Siebensegmentanzeigen und 3 LEDs für die Density und einem Flachbandkabels. Diese Platine wurde so entwickelt, daß sie den Platz des Ein-Aus Schalters einehmen kann. Es ist jedoch frei nach Wunsch auch möglich, an einer anderen Stelle ein Loch zu sägen und sie dort einzubauen. Für die Montage an dem Schalterplatz muss dieser Schalter zuerst ausgelötet werden. Da durch die Trackanzeige eine Betriebskontrolle bereits gegeben ist, kann die Power-LED auch ausgelötet werden und an Ihrem Platz ein kleiner Kippschalter montiert werden. Dieser wird nun als Ein-Aus Schalter benutzt und dementsprechend angelötet. Die Anzeigenplatine sollte mit etwas Heißkleber hinter das Schalterloch geklebt werden. Damit die Anzeigenplatine auch schön dahinter passt, sollte ein 5mm breites Stück der 1050er Platine abgesägt werden! Dort befinden sich keine Leiterbahnen, nur eine Kupferfläche. Nach dem Absägen sollte die Kante isoliert werden (Isolierband).
Nehmen Sie jetzt bitte einen feinen Seitenschneider und entfernen Sie die folgenden Kondensatoren aus dem Laufwerk oder löten Sie diese aus:
C56 - C57 - C58 - C61
Sie finden diese Kondensatoren auf der Hauptplatine hinten rechts, neben den drei grossen Kondensatoren (Siehe Zeichnung).
Setzen Sie nun die Elektronik wieder in das Gehäuseunterteil ein. Achten Sie auf die beiden Nasen rechts und links von der Platine! Legen Sie die Gummistopfen auf die Halterung der Laufwerksmechanik.
Verbinden Sie nun noch das Flachbandkabel der Trackanzeigen-platine mit der Speedy 1050 Platine.
Verbinden Sie die Laufwerksmechanik mit der Elektronik, indem Sie die beiden Stecker, die Sie am Anfang abgezogen haben, wieder aufstecken. legen Sie die Laufwerkselektronik auf die Halter.
An dieser Stelle müssen Sie nun eine Funktionskontrolle und eine Drehzahleinstellung vornehmen. verbinden Sie dazu bitte das Laufwerk mit dem Netzgerät und dem Computer.
Wenn alles richtig funktioniert, müsste nun, nach einschalten des Laufwerkes, an Ihrem Laufwerk die Trackanzeige „00“ und die Density-LED für Single-Density (ohne Diskette) aufleuchten.
Schliessen Sie den Diskettenhebel ohne Diskette, der Motor müsste kurz anlaufen und die Laufwerks-LED Leuchten. Der Schreib-Lesekopf sollte sich auch ein paar Schritte bewegen und die Trackanzeige müsste „nF“ (No Floppy) anzeigen. Ausserdem ist ein Piep von dem Summer auf der Speedy zu hören.
Wenn alle Funktionen Ihres Laufwerkes mit dem Beschriebenen übereinstimmt, ist alles in Ordnung und Sie können mit der Einstellung der Motor-Drehzahl fortfahren.
Drehzahleinstellung
Um nun die Drehzahl des Antriebsmotors zu prüfen, legen Sie bitte die mitgelieferte Systemdiskette ein und schalten Sie den Computer ein. Nach kurzer Ladezeit erscheint das Menü-programm. Von hier aus gelangen Sie durch drücken der Taste 1 in das SPEEDY TEST MENU. Dort finden Sie den Programmpunkt SPEED TEST, den Sie durch drücken der Taste 4 aufrufen.
Wer das modifizierte FLOPPY2000 ROM in der Speedy hat, kann auch ohne Diskette booten und mit dem integrierten Testpunkt die Drehzahl überprüfen.
Um nun die Drehzahl zu prüfen, legen Sie bitte die mitgelieferte Systemdiskette ein, bei fremdformatierten Disketten können Geschwindigkeitsunterschiede auftreten. Die optimale Drehzahl beträgt 288 Umdrehungen pro Minute. Auf dem Bildschirm erhalten Sie den Soll-Wert und den tatsächlichen IST-Wert. Bedingt durch die Laufwerksmechanik und durch ungleichmäßig rotierenden Disketten ist die Geschwindigkeit nicht ganz konstant. Es können Schwankungen zwischen 0.2 und 0.6 UPM auftreten. Dies ist normal und sollte Sie nicht beunruhigen. Mit dem Regler VR2 sollten Sie nun die Drehzahl zwischen 287.5 und 288.0 UPM einstellen. Besser etwas unter als etwas über 288 UPM! Nach erfolgreicher Einstellung klopfen Sie ein paar Mal mit dem Schraubendreher auf das Gehäuse des VR2, sollte sich die Einstellung nicht verändern, so können sie mit einem Tropfen von einem Lackstift das Poti gegen verdrehen sichern. Sollte nach dem „Klopftest“ sich die Drehzahl verändert haben, so stellen sie diese nach, bis der Wert knapp unter 288 UPM bleibt.
ein paar Tips:
Wärmeproblem 1
ATARI hat zu damaliger Zeit die modernste Methode gewählt, um die Spannungen 5V und 12V in der 1050 zu stabilisieren, den Spannungsregler 7805 und den Spannungsregler 7812. Da diese allerdings die Eigenschaft haben, alles an „überschüssiger Energie“ in Wärme zu „verbraten“, erhitzt sich die Elektronik stark. Heutzutage gibt es kleine Schaltregler. diese arbeiten wie die „großen“ Schaltnetzteile bekannt aus der PC-Welt und liefern die Energie die gefordert wird, fast ohne nennenswerte Erwärmung!
Bei dieser Gelegenheit können Sie auch die über den ABBUC erhältlichen Schaltregler-Platinen für die 5V und 12V Stabilisierung einbauen, um die Wärmeentwicklung und den Stromverbrauch der 1050 zu reduzieren.
Hierzu entlöten Sie bitte die Spannungsregler 7805 und 7812 welche auf dem Kühlblech montiert sind. Löten Sie jeweils 3 Drähte dort an, wo die Spannungsregler 7805 und 7812 vorher angelötet waren und verbinden Sie jeweils diese 3 Drähte mit der Schaltregler-Platine:
von links nach rechts: (Pin 1,2,3 des 7805/7812)
1 -> IN
2 -> GND
3 -> OUT
Die beiden Schaltreglerplatinen können nun an einem geeigneten Platz (z.B. am Kühlblech) befestigt werden.
Wärmeproblem 2:
Da ATARI bei der Entwicklung der 1050 wohl etwas großzügig mit dem Phasenstrom des Schrittmotors für den Schreib-Lesekopf gewesen ist, wird dieser mit einem für eine Diskettenstation ziemlich hohem Strom betrieben und wird nach einiger Zeit auch unnötig warm. Auch hier kann man eine einfache Abhilfe schaffen: Den dicken Widerstand (R56, 47Ohm) durch einen 200Ohm/2Watt Widerstand ersetzen! Dadurch wird der Strom des Schrittmotors etwas reduziert und eine Wärmeerzeugung vermieden.
Alterschwach:
Da die ATARI Geräte schon ziemlich alt sind, sollten die drei großen Elkos überprüft werden, da diese auch altern. Haben sie eine „Beule“? Werden sie warm? Dann sollten sie ausgetauscht werden! Wer pauschal etwas gutes tun will, tauscht sie gleich aus, die Elkos sind im Fachhandel für ein paar Euro erhältlich. Achten Sie auf die Angaben (Spannung und Kapazität)!
Wer schmiert, fährt besser:
Auch ist es sehr sinnvoll, bei der Laufwerksmechanik alle beweglichen Teile auf Leichtgängigkeit zu prüfen und mit einem kleinenTropfen Öl zu schmieren! Achten Sie aber darauf, daß kein Öl an den Schreib-Lesekopf, Motor und an den Flachriemen kommt! Den Schreib-Lesekopf kann man mit einem Q-Tip und etwas Alkohol (oder Sprititus) reinigen.
Gehäuse Reinigung:
Um die Gehäuseteile wieder schön sauber zu bekommen (sie waren original einmal weiss!) kann man sie in dem Geschirrspüler waschen lassen. Vorher sollte man allerdings den Alu-Schriftzug vorsichtig entfernen damit dieser nicht angegriffen wird. Wer es lieber „von Hand“ mag, kann auch mit warmen Wasser und Spüli die Gehäuse reinigen. CillitBang und andere moderne Fettreiniger-Produkte sind hier auch sehr gut!
Schreibschutzschalter
Mit Einbau eines Schalters für den Schreibschutz können Disketten auch auf der Rückseite beschrieben werden.
SLOW-Mode Schalter
Einige wenige Programme haben einen Kopierschutz und versagen bei der HiSpeed Übertragung mit der Speedy ihren Dienst. Durch den Einbau eines Schalters kann die Speedy in den SLOW-Mode gebracht werden.Dieser Schalter entspricht der Funktion im Speedy Menu (Slow-Mode-Control-Menu).
Speedy-Betriebssytem Auswahl
Bei der neuen Speedy können Betriebssystem-EPROMs bis zu 64KB (27C512) eingesetzt werden, in dem sich dann bis zu 4 Betriebssysteme befinden. So z.B. der HSS-Kopierer, das BiboDOS, das geänderte Floppy2000-OS oder ein selbstgeschriebenes. Um nun auszuwählen, welches OS in der Speedy benutzt werden soll, wird mittels 2 Schaltern die entsprechende Eprom-Bank ausgewählt.
RESET:
Eine sinnvolle Erweiterung der Speedy ist ein Reset-Taster welcher mit der CPU 65C02 verbunden wird. Hiermit kann z.B. nach einem Umschalten des Speedy-OS ein Reset der ganzen 1050 durchgeführt werden.
Auch hierfür wurde auf der neuen Speedy-Platine für Anschluss gesorgt:
An JP3 bzw S3 kann ein RESET-TASTER angeschlossen werden!
-------------->
SPEEDY SYSTEMDISKETTE
Legen Sie die Systemdiskette in Ihr Laufwerk und schalten Sie Ihren Computer ein. Die OPTION-Taste muß nicht gedrückt werden. Nach wenigen Sekunden erscheint das HAUPTMENÜ mit mehreren Anwahlpunkten. Hier nun eine kurze Beschreibung aller Menüpunkte und deren Handhabung.
HAUPTMENU PUNKT_1_- _SPEEDY MENÜ (V 1.1)
Hier wird angezeigt, wieviele SPEEDY-Laufwerke angeschlossen sind. "SLOW" geschaltete Laufwerke werden nicht erkannt. Mit der Taste 'D' kann gewählt werden, welches Laufwerk angesprochen werden soll.
l.__SPEEDY 1050 TEST
1. SPEEDY RAM TEST
Testet die 8k-Byte RAM auf der SPEEDY 1050 (Mini-SPEEDY) Platine.
2. SPEEDY ROM TEST
Testet das ROM der SPEEDY 1050 (Mini-SPEEDY) auf Programmierfehler.
3. ANZEIGE TEST
Testet das Display und den Summer einer SPEEDY 1050 mit Trackanzeige.
4. GESCHWINDIGKEITS TEST
Die Drehzahl des Antriebsmotors wird getestet. Genaue Beschreibuna in der Einballanleit
2. FUNKTIONSKONTROLLE
Mit den Tasten 1-6 setzen Sie die entsprechenden Control-Bits für die angewahlten Funktionen. Die Control-Bits können nur mit der Taste 'R' zurückgesetzt werden.
Die Funktionen der Control-Bits im einzelnen:
1 - Beim auftreten eines Schreib/Lesefehlers soll der Summer einen Warnton abgeben. Funktioniert natürlich nur bei einer SPEEDY T.
2 - Bei Kommando $51 (alle Sektoren aus internem Buffer sofort schreiben) den Antriebsmotor nicht ausschalten.
3 - Bei Kommando $20 (spezieller Formatbefehl) die Boot- und Directory-Sektoren nicht schreiben.
4 - Beim Formatieren kein VERIFY ausführen. Ermöglicht das Formatieren in ca. 9 Sekunden. Vorsicht bei Billigdisketten!
5 - Trackanzeige in Rexadezimaler Form darstellen.
6 - Bei auftreten eines Schreib/Lesefehlers den ERROR-Status in hexadezimaler Form auf dem Display darstellen. Zusammen mit der Funktion 1 manchmal ein sehr nützliches Hilfsmittel um die Position und den Status eines zerstörten Sektors auf einer Diskette zu ermitteln. Funktioniert natürlich auch nur auf einer SPEEDY T.
Das komplette Control-Byte wird auf dem Bildschirm angezeigt. Nach dem Drücken der Taste 'W' wird das Byte zum Laufwerk geschickt.
3. SLOW-MODE KONTROLLE
Mit der Taste 'D' können Sie auch hier das SPEEDYLaufwerk anwählen, das Sie einstellen möchten. Mit den ~~asten 1-4 setzen Sie wieder die einzelnen Status-Bits fiir die folgenden Funktionen:
1 - Sektor lesen langsam. Die Sektoren werden nicht mehr Trackweise in das RAM der SPEEDY eingelesen, sondern einzeln eingelesen und einzeln zum Computer geschickt, wie das bei einem normalen Laufwerk ohne Erweiterung iiblich ist.
2 - Sektor schreiben langsam. Die Sektoren werden nicht mehr, wie üblich, Trackweise im internen RAM der SPEEDY zwischengespeichert und erst bei einem Trackwechsel geschrieben, sondern einzeln vom Computer geholt und sofort geschrieben.
3 - COM $57 mit Verify. DOS 2,DOS 2.5 und DOS 3 benutzen zum Schreiben eines Sektors den Befehl 557. Dieses bedeutet, daß nach dem Schreiben jedes Sektors ein Verify ausgeführt wird. Damit das Schreiben eines Sektors mit diesen Dosarten nicht zu lange dauert, ist in der SPEEDY dieser Verify normalerweise ausgeschaltet. Wollen Sie, daß der Verify ausgeführt wird, müssen Sie dieses Bit setzen. Nachteil: Sehr langsamer Schreibvorgang.
4 - Laufwerk in SLOW-Modus. Das heißt daß al]e Zusatzbefehle, die über den normalen Befehlssatz des 1050er Betriebssystem hinausgehell, nicht mehr beachtet werden. Dieses kann nötig sein, wenn kopiergeschützte Software auf einem SPEEDY-Laufwerk laufen soll. Soll nach der Aktivierung dieses Status-Bits die SPEEDY wieder mit erhöhter Geschwindigkeit arbeiten, hilft nur noch das ausund wieder einschalten des Laufwerkes.
Mit der Taste 'R' werden alle Status-Bits wieder zurückgesetzt. Nach drücken der Taste 'W' wird der eingestellte Status zum SPEEDY-Laufwerk geschickt.
4. LAUFWERK = ORIGINAL
Bei einigen kopiergeschlitzten Programmen ist es notwendig, daß Sie aus Ihrem SPEEDY 1050 (Mini-SPEEDY) Laufwerk wieder eine normale 1050 machen. Bei manchen anderen Floppyspeedern hilft nur ein Ausbau der Erweiterung. Dieses ist bei der SPEEDY nicht notwendig. Mit Hilfe dieser Funktion wird das SPEEDY- Betriebssystem so rnodifiziert, daß sich ein SPEEDY 1050 (Mini-SPEEDY) Laufwerk wie eine ganz normale 1050 ohne Erweiterung verhält. Ein Programm kann nun nicht mehr feststellen, ob sich eine Erweiterung im Laufwerk befindet. Die SPEEDY 1050 (Mini-SPEEDY) kann nur durch aus- und wieder einschalten des Laufwerkes aktiviert werden.
HAUPTMENÜ PUNKT 2 - SPEEDY BACKUP
Dieses Programm dient zum kopieren von kopiergeschützter Software. Es können ca. 80% aller im Handel befindlichen geschützten (SINGLE-Density) Disketten kopiert werden. Die Bedienung erklärt sich weitgehend von selbst. Es können nicht kopiert werden: Tracks mit mehr als 19 Sektoren pro Track. Sektoren mit veränderlichen Daten. MEDIUM-Density Disketten. Der Status eines zu kopierenden Tracks wird auf dem Bildschirm angezeigt. Die einzelnen Statusmeldungen bedeuten im einzelnen:
. = Normaler Track mit 18 Sektoren.
- = Auf dem Track befinden sich weniger als 18 Sektoren.
+ = Auf dem Track befinden sich mehr als 18 Sektoren.
X = Tracks ist unformatiert.
U = Format kann nicht eindeutig erkannt werden oder auf dem Track befinden sich zuviele Sektoren. pie dieser Diskette wird wahrscheinlich nicht fen.
E = Ein Fehler ist beim kopieren aufgetreten.
HAUPTMENÜ PUNKT 3 - SPEED INIT
Die Anleitung zu diesem Programm finden Sie im HAUPTMENU
unter dem PUNKT 4 - ANLEITUNG ZUM INIT.
HAUPTMENÜ PUNKT 5 -_SECTOR KOPIERER
Dieses ist der Standard-Kopierer für ungeschützte Disketten in allen Diskettenformaten. Er funktioniert auch auf Laufwerken, die nicht mit einer SPEEDY 1050 (Mini-SPEEDY) ausgerüstet sind. Alle COMPY-SHOP Ramdisks und die Ramdisk des 130 XE werden voll unterstützt. Damit ist es zum Beispiel möglich eine DOUBLE-Density Diskette in einem Durchgang zu kopieren wenn der Computer mit mindestens 192 k-Byte RAM ausgerüstet ist. Die Bedienung des Sektor-Kopierers erklärt sich in allen Funktionen selbstständig.
HAUPTMENÜ_PUNKT 6 - DISK MAPPER
Mit diesem Programm können Sie sich eine Obersicht über eine Diskette geben lassen. Volle und leere Sektoren werden genauso angezeigt wie defekte oder gar nicht vorhandene Sektoren. Die Reihenfolge der auf einem Track befindlichen Sektoren kann angezeigt werden. Die Bedeutung der einzelnen Statuswerte finden Sie im Programm im Menü-Punkt INFORMATIONEN.
HAUPTMENÜ_PUNKT 7 -_HSS KOPIERER
Dieses ist der schnellste Sektorkopierer den es für die SPEEDY 1050 (Mini-SPEEDY) zur Zeit gibt. Eine Beschreibung dieses Programmes finden Sie im HAUPTMENU PUNKT 8 ANLEITUNG HSS KOPIERER. Dieser Kopierer funktioniert leider nicht auf allen 1050 Laufwerken. Dieses liegt an den Bauteiletoleranzen der 1050 Elektronik. Sollten Sie Probleme mit diesem Kopierer haben, fragen Sie bitte im COMPY-SHOP nach, vielleicht kann Ihnen schnell und einfach geholfen werden.
BESCHREIBUNG DER PERMANENTEN LAUFWERKSBEFEHLE
Es folgt die Liste der SIO-Kommandos für die SPEEDY 1050 (Mini-SPEEDY). Diese Liste ist besonders für den interessierten Maschinensprach-Programmierer gedacht, der seine SPEEDY 1050 (MiniSPEEDY) selber programmieren möchte.
KOMMANDO ist der Wert, der sich vor Aufruf der SIO-Routine ($E459) in der Speicherstelle $302 befindet. AUX1 und AUX2 entprechen den Werten, die sich in den Speicherstellen $30A (Low Byte) und $30B (High Byte) befinden. Bei einigen Befehlen werden AUX1 und AUX2 nicht benutzt und dürfen beliebige Werte annehmen.
KOMMANDO: $52
FUNKTION: Sektor lesen
AUX1: Sektornummer Low-Byte
AUX2: Sektornummer High-Byte
BESCHREIBUNG: Es werden je nach Density 128 oder 256 Bytes zum Computer gesendet. Bei den Sektoren 1-3 werden auch bei DOUBLE-Density nur 128 Bytes gesendet.
BEMERKUNG: Sektornummer 0000 liest die Zeropage des RAM in der SPEEDY 1050 aus. Bei Sektoren größer $8000 wird das RAM oder das ROM ausgelesen.
($8000-9FFF = RAM / $C000 oder $E000-FFFF = ROM)
KOMMANDO: $50
FUNKTION: Sektor schreiben ohne Verify
AUX1: Sektornummer Low-Byte
AUX2: Sektornummer High-Byte
BESCHREIBUNG: Das Laufwerk erwartet je nach Density 128 oder 256 Bytes. Sektoren 1-3 sind immer 128 Bytes lang.
BEMERKUNG: Der SPEEDY-Arbeitsspeicher $8000 - $9FFF kann gezielt beschrieben werden. Zeropage (Sektor 0000) kann nicht beschrieben werden.
KOMMANDO: $57
FUNKTION: Sektor schreiben mit Verify
AUX1: Sektornummer Low-Byte
AUX2: Sektornummer High-Byte
BESCHREIBUNG: Wie Befehl $50
BEMERKUNG: Wie Befehl $50. Ab der SPEEDY-Version 1.4 ist bei diesem Kommando der Verify SPEEDY-Intern abgeschaltet. Um den Verify wieder zuzulassen, muß bei Befehl $4B das Bit 2 im Konfigurationsbyte gesetzt werden.
KOMMANDO: $53
FUNKTION: Laufwerkstatus ermitteln
AUX1: Nicht benutzt
AUX2: Nicht benutzt
BESCHREIBUNG: Das Laufwerk sendet 4 Bytes, die den Status der eingelegten Diskette und der letzten Diskettenoperation beinhalten.
Byte 1: DRIVE STATUS
Bit 0 - COMMAND FRAME ERROR
Bit 1 - CHECKSUM ERROR
Bit 2 - OPERATION ERROR
Bit 3 - WRITE PROTECT
Bit 4 - MOTOR ON
Bit 5 - DOUBLE DENSITY
Bit 6 - unbenutzt
Bit 7 - DUAL (MEDIUM) DENSITY
Byte 2: CONTROLLER STATUS
Bit 0 - BUSY
Bit l - DRQ
Bit 2 - LOST DATA
Bit 3 - CRC ERROR
Bit 4 - RECORD NOT FOUND
Bit 5 - RECORD TYPE
Bit 6 - WRITE PROTECT
Bit 7 - NOT READY
Byte 3: Time-Out Wert fur Format Disk ($E0)
Byte 4: unbenutzt (immer 0)
KOMMANDO: $21
FUNKTION: Formatiere Diskette (SINGLE/DOUBLE}
AUX1: Funktionsbyte 1
AUX2: Funktionsbyte 2
BESCHREIBUNG: Dieses Kommando wird benutzt, um Disketten in Single oder Double-Density (720 Sektoren) zu formatieren. Das Density-Format wird durch einen vorherigen $4F-Befehl (Laufwerkskonfiguration) eingestellt. Wird das Laufwerk nach dem Einschalten nicht konfiguriert, wird automatisch in SINGLE-Density formatiert. Soll in Medium-Density (1040 Sektoren) formatiert werden, muß sich in Funktionsbyte 1 der Wert $11 und in Funktionsbyte 2 der Wert 4 befinden. Das Laufwerk sendet nach dem formatieren je nach Density 128 oder 256 Bytes an den Computer. Die ersten zwei Bytes sind nach erfolgreichem formatiern immer $FF.
KOMMANDO: $22
FUNKTION: Formatiere Diskette (MEDIUM)
AUX1: Nicht benutzt
AUX2: Nicht benutzt
BESCHREIBUNG: Dieses Kommando wird benutzt um Disketten in l050 Dual Density (MEDIUM = 1040 Sektoren) zu formatieren. Es werden immer 128 Bytes zum Computer gesendet. Die ersten zwei Bytes sind nach erFolgreichem formatiern immer $FF.
Dieses waren die Standard-Befehle einer normalen 1050. Alle folgenden Befehle können nicht mit einer SLOW- geschalteten SPEEDY angesprochen werden.
KOMMANDO: $20
FUNKTION: Automatisches formatieren
AUX1: Funktionsbyte 1
AUX2: Funktionsbyte 2
BESCHREIBUNG: Dem Laufwerk wird nur der Befehl zum formatieren gegeben. Es wird sofort ein 'Complete' zurückgemeldet. Mit diesem Befehl können alle drei Formate generiert werden. Die gewünschte Dichte muß vorher mit dem Befehl $4F (Laufwerk konfigurieren) eingestellt werden. Soll in Medium-Density (1040 Sektoren) formatiert werden, muß sich in Funktionsbyte 1 der Wert S11 und in Funktionsbyte 2 der Wert 4 befinden.Ein Write-Protect wird sofort zurückgemeldet. Fehler beim formatieren können dem Computer nicht gemeldet werden, da keine Daten nach Befehlsausführung zurückgesendet werden. Abhängig vom Drive/DisplayStatus wird nach dem formatieren automatisch die VTOC (DOS 2/2.5/BIBO-DOS kompatibel) und 3 Bootsektoren geschrieben.
KOMMANDO: $3F
FUNKTION: SIO-Geschwindigkeitsbyte ermitteln
AUX1: Nicht benutzt
AUX2: Nicht benutzt
BESCHREIBUNG: Es wird ein Byte zum Computer gesendet, das die Obertragungsgeschwindigkeit in High Speed beinhaltet. Dieses Byte wird für die HIGH Speed SIO-Routine benötigt und beträgt bei der SPEEDY 1050 (Mini-SPEEDY) normalerweise 09.
KOMMANDO: $4E
FUNKTION: Laufwerkskonfiguration auslesen
AUX1: Nicht benutzt
AUX2: Nicht benutzt
BESCHREIBUNG: Es werden die 12 Bytes der Konfigurationstabelle zum Computer gesendet.
Byte 1 - Anzahl der Tracks (40)
Byte 2 - Step Rate (1)
Byte 3 - Sektoren/Track High (0)
Byte 4 - Sektorentrack Low (18/26)
Byte 5 - Anzahl der Kцpfe (0)
Byte 6 - Aufzeichnungsformat (0=FM/4=MFM)
Byte 7 - Bytes/Sektor High (1=256/0=128)
Byte 8 - Bytes/Sektor Low (0=256/128=128)
Byte 9 - Laufwerk aktiv (255)
Byte 10 - unbenutzt (0)
Byte 11 - unbenutzt (0)
Byte 12 - unbenutzt (0)
KOMMANDO: $4F
FUNKTION: Laufwerk konfigurieren
AUX1: Nicht benutzt
AUX2: Nicht benutzt
BESCHREIBUNG: Dieser Befehl wird benutzt, um das Laufwerk für den nächsten Formatierungsbefehl einzustellen. Das Laufwerk erwartet 12 Bytes, die genau der Reihenfolge des vorherigen Befehles ($4E) entsprechen müssen.
KOMMANDO: $51
FUNKTION: Schreibvorgang beenden
AUXl: Funktionsbyte 1
AUX2: Funktionsbyte 2
BESCHREIBUNG: Nach jedem Schreibbefehl wartet das Laufwerk ca. 2
Sekunden bis die Daten aus dem Trackbuffer auf die
Diskette geschrieben werden. Dieses wird durch den
Befehl $51 beschleunigt. Alle Daten im Trackbuffer
werden unverzüglich auf die Diskette geschrieben und
abhängig vom Drive/Display Status ($44) der Motor
nach erfolgten Schreibvorgang sofort gestoppt. Sind
beide Funktionsbytes $FF werden zusatzlieh alle
Sektoren aus dem Cache-Buffer auf die Diskette geschrieben.
KOMMANDO: $44
FUNKTION: Drive/Display Einstellung
AUX1: Konfigurationsbyte
AUX2: Nicht benutzt
BESCHREIBUNG: Der Wert in AUX1 setzt das Drive/Display Statusbyte im Laufwerk. Dieses Byte kann über keinen Befehl direkt ausgelesen werden, so daß immer alle Bits richtig gesetzt werden müssen.
Bit 0 - Bell bei ERROR zulassen
Bit 1 - unbenutzt
Bit 2 - unbenutzt
Bit 3 - Bei COM $51 Motor nicht ausschalten
Bit 4 - Bei COM $20 VTOC und BOOT nicht schreiben
Bit 5 - Formatieren ohne Verify
Bit 6 - Trackanzeige in Hexadezimal
Bit 7 - ERROR - Anzeige einschalten
KOMMANDO: $4B
FUNKTION: Slow/Fast konfiguration
AUX1: Konfigurationsbyte
AUX2: Nicht benutzt
BESCHREIBUNG: Mit dem Wert in AUX1 wird das Drive-Slow-Statusbyte des Laufwerkes beeinflußt. Dieses Byte kann über keinen Befehl direkt ausgelesen werden, so daß alle Bits richtig gesetzt werden müssen.
Bit 0 - Read sector slow
Bit 1 - Write sector slow
Bit 2 - Kommando $57 verify einschalten
Bit 3 - Laufwerk vollständig in slow mode
Bit 4 - unbenutzt
Bit 5 - Cache-Buffer abschalten
Bit 6 - 1 Track slow (nach Trackwechsel 0)
Bit 7 - 1 Diskette slow (nach Diskettenwechsel 0)
KOMMANDO: $4C
FUNKTION: Direkter Sprungbefehl ohne Rückmeldung
AUX1: Sprungadresse Low-Byte
AUX2: Sprungadresse High-Byte
BESCHREIBUNG: Der Mikroprozessor im Laufwerk wird durch diesen Befehl veranlaßt, direkt zur Speicherstelle zu springen, die sich in AUX1 und AUX2 befindet. Das Laufwerk gibt keine Meldung an den Computer zurück, so daß eine Rückmeldung vom Programm aus gegeben werden muß, zu dem der Prozessor gesprungen ist.
KOMMANDO: $4D
FUNKTION: Direkter Sprungbefehl mit Rückmeldung
AUX1: Sprungadresse Low-Byte
AUX2: Sprungadresse High-Byte
BESCHREIBUNG: Dieser Befehl gleicht dem Vorhergehenden bis auf den Unterschied, daß das Laufwerk vor Ausführung des Programmes eine Ruckmeldung (Complete) an den Computer sendet.
KOMMANDO: $41
FUNKTION: Kommandotabelle verlängern oder verkürzen
AUX1: Nicht benutzt
AUX2: Nicht benutzt
BESCHREIBUNG: Das Laufwerk erwartet 3 Bytes vom Computer. Das 1. Byte ist das neue Kommando. Das 2. und 3. Byte ist die Startadresse des über das neue Kommando erreichten Programmes im low/high-Byte Format. Falls sich der neue Befehl schon in der Kommandotabelle befindet, wird dieser mit der neuen Startadresse versehen. Ist die Startadresse 0000 wird der Befehl aus der Kommandotabelle gelöscht.
KOMMANDO: $68
FUNKTION: Lange der SIO-Routine ermitteln
AUX1: Nicht benutzt
AUX2: Nicht benutzt
BESCHREIBUNG: Mit diesem Befehl wird die Lange der SIO-Routine ermittelt, die mit dem Befehl $69 aus dem Laufwerk in den Computer geladen wird. Das Laufwerk sendet 2 Bytes, die die Länge (low/high) beinhalten.
KOMMANDO: $69
FUNKTION: SIO-Routine zum Computer senden
AUX1: Relokator - Adresse low-Byte
AUX2: Relokator - Adresse high-Byte
BESCHREIBUNG: Dieser Befehl sendet die High-Speed SIO-Routine in der vom Befehl $68 ermittelten Lange zum Computer. Diese Routine wird bereits im Laufwerk zur Startadresse hin relokiert, die sich in AUX1 und AUX2 befindet.
KOMMANDO: $60
FUNKTION: Track schreiben
AUX1: Track Anfangssektor low-Byte
AUX2: Track Anfangssektor high-Byte
BESCHREIBUNG: Die kompletten Daten für einen Track werden mit diesem Befehl auf die Diskette oder in den Trackbuffer geschrieben. Die Anzahl der zu Bibertragenden Bytes errechnet sich aus der Anzahl der Sektoren mal der Bytes pro Sektor. Wegen des sehr schwierigen Timings funktioniert dieser Befehl nur in normaler Übertragungsrate.
KOMMANDO: $62
FUNKTION: Track lesen
AUX1: Track Anfangssektor low-Byte
AUX2: Track Anfangssektor high-Byte
BESCHREIBUNG: Lesen eines kompletten Tracks mit einem Befehl von der Diskette oder aus dem Trackbuffer. Die Anzahl der zur erwartenden Bytes errechnet sich aus der Anzahl der Sektoren mal der Bytes pro Sektor.
Am Schluß nun noch ein Beispiel, wie diese Befehle angewandt werden. Mit diesem kleinen Demo-Programm kann die High-Speed Routine der SPEEDY in den Computer geladen werden. Geschrieben wurde dieses Programm mit dem BIBO-ASSEMBLER.
00010 .LI OFF
00020 .OR $4000
00030 ----------------__________________
00040 ADR = $5000 ADRESSE FÜR DIE SIO ROUTINE
00050 ----------------_______________
00060 LDA #$31 BUS ID
00070 STA $0300
00080 LDA #1 LAUFWERKSNUMMER = 1
00090 STA $0301
00100 LDA #$68 KOMMANDO $68
00110 STA $0302
00120 LDA #$40 STATUS FOR DATEN LESEN
00125 STA $0303
00130 LDA #8
00140 STA $0304 ADRESSE FÜR LÄNGENBYTE LOW
00150 STA $0306 WERT FOR TIMEOUT CA. 8 SEK.
00160 LDA #3
00170 STA $0305 ADRESSE FÜR LÄNGENBYTE HIGH
00180 LDA #2
00190 STA $0308 2 BYTES LESEN
00200 LDA #0
00210 STA $0309
00220 JSR $E459 EINSPRUNG DER SIO ROUTINE IM OS
00230 BMI ERROR
00240 INC $0302 KOMMANDO $69
00250 LDA #ADR
00260 STA $0304 TARGETADRESSE DER SIO ROUTINE LOW
00270 STA $030A RELOKIERADRESSE DER SIO ROUTINE LOW
00280 LDA /ADR
00290 STA $0305 TARGET ADRESSE DER SIO ROUTINE HIGH
00300 STA $030B RELOKIERADRESSE DER SIO ROUTINE HIGH
00310 LDA #$40
00320 STA $0303 STATUS FÜR DATEN LESEN
00330 JSR $E459 EINSPRUNG DER SIO ROUTINE IM OS
00340 BMI ERROR
00350 CLC CARRY GELÖSCHT = ROUTINE GELADEN
00360 RTS
00370 ERROR SEC CARRY GESETZT = ROUTINE KONNTE NICHT
00380 RTS EINGELADEN WERDEN