- Schneckenkarussell
-
Die VC 1541 ist ein 5,25-Zoll-Diskettenlaufwerk für den Heimcomputer C64 von Commodore. Es kam 1982 auf den Markt und wurde das erfolgreichste Modell der VC15xx-Serie. Die 1541 besitzt nur einen Schreib/Lese-Kopf und kann daher Disketten nur einseitig beschreiben. Um die volle Kapazität einer Diskette zu nutzen, muss man diese am besten mittels eines Diskettenlochers mit einer zusätzlichen Schreib/Lese-Kerbe an der linken Seite versehen. Auf einer solcherart modifizierten Diskette können dann durch Umdrehen weitere knapp 165 KB gespeichert werden.
Inhaltsverzeichnis
Allgemeines
Wie die meisten Diskettenlaufwerke von Commodore ist die 1541 ein eigenständiger Computer. Als CPU wurde der 6502 verwendet, ein naher Verwandter des im C64 eingesetzten 6510, man konnte die beiden bei trickreicher Programmierung parallel rechnen lassen.
Das Betriebssystem des Laufwerks, CBM DOS v2.6, eine abgespeckte Version der Vorgängerlaufwerke der CBM-Serie, enthält eine Reihe von Fehlern. Der bekannteste ist der sogenannte "SAVE @"-Bug. Das "SAVE @" dient zum Überschreiben von Dateien mit einem neuen Inhalt unter Beibehaltung des Dateinamens. Unter unvorhersehbaren Umständen kann es dabei zu einer Zerstörung des Disketteninhaltes kommen. Da dieser Fehler bald bekannt wurde, benutzen die meisten Commodore-Programme stattdessen den "Scratch"-Befehl, um Dateien zu löschen und schrieben sie dann mit dem normalen SAVE-Befehl neu.
Das Betriebssystem übernimmt in der 1541 auch hardwaretechnische Steuerungsaufgaben, da die Hardware selbst möglichst simpel gehalten werden sollte. So simuliert das System das GCR-Verfahren, mit dem die Daten auf die Diskette geschrieben werden, indem die Bytes beim Schreiben zunächst von der Firmware in 10-Bit-Werte umkodiert werden und beim Lesen entsprechend umgekehrt. Der Beginn (Sync) einer aufgezeichneten Bytefolge (Datenblock-Kopf oder Datenblock-Inhalt) wird allerdings, anders als etwa beim Apple II, hardwaremäßig erkannt.
Auch die unterschiedliche Länge der Spuren, je nach Abstand des Lesekopfes vom Diskettenmittelpunkt, wird von der Software ausgenutzt, um auf den weiter außen liegenden Spuren mehr Daten unterzubringen, indem die Bitrate in vier Stufen angepasst wird (die Bitraten werden dabei an sich in der Hardware erzeugt, jedoch wird per Software zwischen ihnen umgeschaltet). Das bedeutet, dass die Oberfläche radial in vier Zonen geteilt ist, die unterschiedliche Zahlen von Sektoren je Spur haben.
Geradezu sprichwörtlich war die Langsamkeit der 1541 (deshalb unter Usern auch Schneckenkarussell genannt). Bereits das Lesen der Daten von der Diskette in den internen Speicher des Laufwerks war nicht optimal gestaltet. Vor allem aber war die Langsamkeit durch die umständliche Programmierung der Datenübertragung zwischen Laufwerk und Rechner über den seriellen IEC-Bus bedingt. Diese wurde ursprünglich für die VC1540 entwickelt, da der damals im VC-20 eingesetzte Interface-Chip MOS 6522 VIA einen Fehler in der automatischen seriellen Übertragung enthielt. Daher wurde die Übertragung so organisiert, dass jedes einzelne Bit vom Prozessor explizit übertragen werden muss – ein äußerst langsamer Prozess. Bei dem kleinen Speicher des VC-20 machte dies allerdings nicht so viel aus wie später auf dem C64. Der Interface-Chip des C64, der MOS 6526 CIA, enthielt diesen Fehler zwar nicht, aber zwecks Rückwärtskompatibilität zu den VC1540-Laufwerken (die ebenfalls den fehlerhaften 6522 enthielten) entschloss man sich, für den C64 kein ganz neues Laufwerk zu entwickeln.
Darüber hinaus wurde die Übertragungsrate in der 1541 im Vergleich zur 1540 nochmals künstlich reduziert, um durch den VIC II-Chip verursachte Timingprobleme des C64 zu umgehen. Dieser stoppt von Zeit zu Zeit den Prozessor für bis zu 40 Mikrosekunden, um Grafikdaten aus dem Speicher zu lesen. Somit musste sichergestellt werden, dass das Laufwerk jedes Bit deutlich länger als 40 µs auf den Bus legte, damit es nicht verlorengehen konnte. Dies wurde durch eine leichte Änderung der Firmware erreicht, im Hardwareaufbau sind die 1540 und frühe 1541-Laufwerke ansonsten identisch.
Mit Hilfe sogenannter Floppy-Speeder, trickreich programmierter Übertragungsprogramme (z. B. Hypra Load), die meist über einen getrennten parallelen Bus übertragen oder auf das komplizierte Protokoll auf der seriellen Leitung verzichten, kann die Übertragungsgeschwindigkeit von 300 Bytes/s auf teilweise über 10 kB/s gesteigert werden. Die Floppy-Speeder-Software wurde teilweise, zusammen mit noch anderen Features (Funktionstastenbelegung etc.) ins Betriebssystem integriert, was einen Wechsel des ROM-Bausteins im C64 und in der 1541 erforderlich machte. Daneben gab es Floppy-Speeder als Steckmodule für den Computer (der laufwerksseitige Code wurde in diesem Fall bei jedem Ladevorgang ins RAM des Laufwerks übertragen) und rein softwaremäßige, die schon bald auch in die meisten kommerziellen Programme für den C64 integriert wurden.
Eine parallele Datenübertragung wurde von vielen Usern realisiert durch Nutzung des Userport am C64 und eines freien 8-Bit-Ports eines 6522-Portbausteines in der 1541. Das ganze erledigten Umbausätze, wie zum Beispiel das bekannte SPEEDDOS: Zwei Eproms mit modifizierten Betriebssystemen für den C64 und das Laufwerk 1541 und ein paralleles Datenkabel vom Userport des C64 zur Floppy. Der Befehlsaustausch zwischen Rechner und Diskettenlaufwerk mittels des seriellen Busses wurde beibehalten, zusätzlich wurde mit dem Parallelkabel ein "HiSpeed-Bus" gelegt.
Im Zuge dieser Modifikationen zur Beschleunigung gab es angesichts gefallener RAM-Preise später sogar eine Platine zum Einbau in die 1541, die eine komplette Diskettenspur (und in einer noch späteren Version einen ganzen Disketteninhalt) im eigenen RAM (also als Cache) speicherte und dann mit hoher Geschwindigkeit mit dem Rechner austauschen konnte.
Weitere negative Eigenschaften sind die durch das interne Netzteil hervorgerufenen Überhitzungsprobleme sowie in der ersten Generation das charakteristische Rattern, das beim Anschlagen des Schreib/Lesekopfes an Spur 0 entsteht. Einen Spur-0-Sensor hatte Commodore gespart, deshalb wird beim Formatieren oder bei Lesefehlern der Kopfschlitten – unabhängig von seiner Position – einfach 40 Spuren nach außen gefahren, wobei ein mechanischer Anschlag verhindert, dass er sich über die Spur 0 hinausbewegen kann. Dieses Rattern ist nicht nur sehr unangenehm, sondern auch der Grund für eine häufige Dejustage des Laufwerks.
Besonders unangenehm für Anwender ist die Tatsache, dass die Erstellung einer Diskettenkopie ohne Zusatzsoftware quasi unmöglich ist, da im Commodore BASIC des C64 keine derartigen Befehle integriert sind. Von den zahlreichen kommerziellen oder in Fachzeitschriften veröffentlichten Programmen gilt das 1989 im 64'er-Magazin veröffentlichte Programm "Master-Copy 64" von Frank Riemenschneider bis heute als das einzige, das eine Diskettenkopie auf einer VC1541 ohne jede Hardware-Erweiterung in unter einer Minute erstellen kann. Später gab es noch eine Nachfolgeversion "Master-Copy Parallel", die mittels paralleler Datenübertragung über den Userport eine Diskettenkopie in unter 30 s erstellen kann.
Versionen
- 1541 (1. Generation)
- Einführung 1982
- Die ersten Exemplare hatten ein hellbeiges Gehäuse, später dunkelbraun, ähnlich den PC-Diskettenlaufwerken dieser Zeit
- Kann auch in ein PC-Gehäuse eingebaut werden
- Zwei Platinenvarianten: Umgebaute 1540 ("lange Platine" mit 74xx-Logik), später "kurze Platine" mit Custom Chip
- Zwei Laufwerksvarianten: ALPS-Laufwerk mit brauner Frontblende und Verschlussklappe, sowie ein nur in geringer Stückzahl verbautes Knebellaufwerk von Mitsumi mit brauner oder weißer Frontblende
- 1541c (2. Generation):
- Einführung 1986
- Beiges Gehäuse
- Knebelverschluss
- Lichtschranke zur Spur-0-Erkennung: Das modifizierte DOS erkennt damit die Spur 0, das Rattern aufgrund des Zurückziehens des Schreib-/Lesekopfes bis zum Anschlag entfällt und die Mechanik wird geschont. Dadurch allerdings inkompatibel zu Hardware-Speedern für 1541 der ersten Generation. Die Lichtschranke belegte eine Leitung des von den Speedern für den Anschluss des Parallelkabels verwendeten CIA-Ports A von UC1. Sie konnte jedoch durch Auftrennen der entsprechenden Leiterbahn deaktiviert werden, wobei die Firmware gegen eine der beiden anderen Varianten (1541 oder 1541-II) ausgetauscht werden muss.
- Neue, nahezu quadratische Platine: 1541B mit einer Hybridschaltung (UD1) anstelle der bisher diskret aufgebauten Verstärkerschaltung für den Schreib-/Lesekopf
- 1541-II (3. Generation):
- Einführung 1988
- Hellgrau, in einem deutlich kleineren Gehäuse mit Knebelverschluss
- Ein externes Netzteil verhindert Temperaturprobleme
- Wieder voll kompatibel mit der 1541-I
- Die Firmware behebt verschiedene Bugs der älteren Laufwerke; sie kann auch in der 1541 der 1. Generation genutzt werden.
Arten von Schnelllader
Hardware
Die Hardware-Schnelllader werden auf Platinen oder Chips geliefert und müssen im Heimcomputer und im Diskettenlaufwerk eingebaut werden.
Die Geschwindigkeitsfaktoren beziehen sich auf LOAD mit C64 und 1541. Mit anderer Hardware (HDD statt Floppy...) können die Werte stark abweichen.
Name System Faktor Bemerkung Dela DOS C64 ? Dolphin DOS C64,C128 ? Versionen 2.x für C64 und 3.x für C128, Dolphin DOS, Dolphin DOS 2.0 Dynamic DOS C64 ? FSD System C64,C128 ? Exos C64 ? Jiffy-DOS C64 6-10 Jiffy DOS für VC-1541/71/81 CMD-HD/FD bzw. VC-20, C64/128/16, SX-64 Mach 71 C128 ? Pro Speed 71 C128 ? P3/128 C128 ? Professional-DOS C64,C128 ? Professional DOS , Professional Dos Handbuch Prologic DOS Classic C64 25 Prologic Dos Test von 64'er Ross-Drive C64 ? Speed-DOS C64 ? SpeedDOS-Anleitung (als Text bei iDOC=) Turbo Access C64 ? Turbo Trans C64 ? es gibt hier Versionen mit einer RAM-Erweiterung Ultra-Load C64 ? Steckmodul
Einige Schnelllader erschienen auch als Steckmodul für den Expansionsport.
Name System Faktor Bemerkung ? C64 ? Nur Schnelllader Action Replay 6 C64 15/7 Multifunktionsmodul, auch schnelles Speichern DELA DOS C64 ? Nur Schnelllader Disk-Booster 64 C64 ? Nur Schnelllader Epyx FastLoad C64 5 Final Cartridge 2 C64 6 Multifunktionsmodul Final Cartridge 3 C64 10/10 Multifunktionsmodul, auch schnelles Speichern Magic Formel C64 16 / 15 Multifunktionsmodul, auch schnelles speichern Retro Replay C64 ? Multifunktionsmodul Super Snapshot C64 5,5 Multifunktionsmodul Software
Ein Software-Schnelllader ist ein kurzes Programm und wird zuerst geladen und gestartet, danach das eigentliche Programm, das sinnvollerweise deutlich größer sein sollte als der Schnelllader. Solche Software-Schnelllader waren auch in die meisten kommerziellen Programme für den Commodore 64 eingebaut, meist eng verflochten mit dem Kopierschutz der Diskette.
Name System Faktor Bemerkung Accelerator C64 ? Magic Disk 64, Ausgabe 12/1988 Fast Disk C64 ? Magic Disk 64, Ausgabe 05/1988 FLOAD C64 ? Magic Disk 64, Ausgabe 02/1989 1581 Speed C64 16 Nur für VC-1581 ZAP 1581 C64 16 Nur für VC-1581 Gigaload C64 ? Heureka-Sprint C64 25 64'er Ausgabe 3/87, Listing des Monats, eigenes Diskettenformat Hypra Load C64 10 Nur für VC-1541 mit C64 Cyber Loader C64 16 Nur für VC-1541 mit C64 Speedload C64 13 Nur für VC-1541 mit C64 Mr. Byte C64 ? Nur für VC-1541 mit C64 Most-Access C64 ? Nur für VC-1541 Ultraloaded Plus C64 8? 64'er Spielesammlung Band 3 Literatur
- Karsten Schramm: Die Floppy 1541. Alles über die Programmierung der VC 1541 von Eröffnen einer Datei bis zu Eingriffen in die Arbeitsweise des DOS; (1986); ISBN 3890900984; Download
- Reinhold Herrmann: Floppy VC 1541. Pflegen und Reparieren; (1986); ISBN 3890110797
- Lothar Englisch, Norbert Szczepanowski: Das große Floppy-Buch; (1983); ISBN 3890110053 Nummer doppelt benutzt!
Weblinks
- Weitergehende Informationen und Internals finden sich auch unter [1] sowie allgemein [2]
- Weitere Informationen und Bilder bei 8-Bit-Nirvana
PET/CBM: KIM-1 | PET 2001 | CBM 3000 | CBM 4000 | CBM 8000 | MMF 9000 CBM II: CBM 500∗ | CBM 600 | CBM 700 | CBM 900∗
Heimcomputer: VC 10 | VC 20 | C64 (SX, GS♦) | 264-Reihe (C16, C116, Plus/4) | C128 | C65∗
Amiga (Übersicht): 1000 | Sidecar | 500 | 2000 | CDTV♦ | 600 | 3000/T/UX | 1200 | 4000 | CD³²♦
IBM-kompatibel: PC-1 | PC-10 bis PC-60 | x86LT | A 1060
Peripherie: Laufwerke: Datasette | VC15xx (VC1540/41, VC1551, VC1570/71, VC1581) | SFD100x (SFD1001, SFD1002) | CBM 2020 bis 8250 | Amiga-Diskette | A570 | A3070
Drucker: MPS-Serie | MPS 801 | CBM-8000-Serie | VC1520
Sonstige Hardware: Zorro-Bus | RAM Expansion Unit | Commodore-Maus | Monochrom- und Farb-Monitore | Lautsprecher A10 | Mehrfachbenutzersysteme (MBS)
Historische Hardware: Schreib- und Tischrechenmaschinen | LED-Uhren | Konsole Commodore 2000k| SchachcomputerChips: MOS Technology | VIC | VIC II | TED | VDC | SID | PIA | VIA | TPI | CIA | ACIA | Agnus (Blitter, Copper) | Paula | EHB-Modus | HAM-Modus Chipsätze: OCS | ECS | AGA
Software: Commodore BASIC | Commodore Basic V2 | Kernal | CBM-ASCII (PETSCII) | GEOS | Commodore DOS | AmigaOS | Kickstart | Workbench | ARexx | AmigaGuide | AMIX
∗: nur Prototyp ♦: Spielkonsole - 1541 (1. Generation)
Wikimedia Foundation.