Ich haette mal eine etwas aussergewoehnliche Frage. Ich moechte eine SD-Card an einem sehr alten Rechner nutzen. Es handelt sich dabei um einen (Commodore) CBM 3001 (1Mhz Takt). Dieser verfuegt ueber eine frei programmierbare 8bit-Schnittstelle mit 2 Steuerleitungen. Diese nennt sich wie z.B. beim alten Commodore 64 ebenfalls Userport und ist im Prinzip ein halber 6522 ( http://6502.org/documents/datasheets/mos/mos_6522.pdf ). Ich moechte nun eine SD-Card moeglichst ohne zusaetzlichen Controller anklemmen. Wird das im "4 bit-mode" funktionieren ? Geschwindigkeit ist in diesem Fall nicht so relevant, da diese sehr alten Computer-Veteranen sowieso nicht mehr als 32 kB Hauptspeicher haben. FAT16-Treiber oder ein natives Filesystem schreibe ich mit einem 6502-Cross-ASM. Michael
Möglich ist das auf jeden Fall im SPI-Modus. Wenn du dir die Infos für den 4-Bit-Modus besorgst, sollte das auch möglich sein. Denn der CBM3001 ist auch nichts anderes als ein µC in groß. Ich verstehe immer die Fragestellung von vielen Leuten nicht die so lauten "Funktioniert dies oder das ...". Es ist halt fast alles möglich, es kommt eben immer auf die Fähigkeiten des einzelnen an.
Die Card-Reader mit diesen µC arbeiten oft mit 8 Mhz. So ein alter 6502-Rechner, ist z.B. gegen einen relativ aktuellen Atmel, eine echte Schnecke. Das Lesen der Karte wird sich imo irgendwo im kHz-Bereich bewegen. Daher mache ich mir Gedanken ueber das Timing, da das Shiften der Bytes zusaetzlich viel Rechenzeit kostet. Werde vorab ein paar Experimente machen. Danke fuer die Antwort. Michael
Michael wrote:
> Die Card-Reader mit diesen µC arbeiten oft mit 8 Mhz.
Wie kommst du da drauf ? Viele der Kartenleser nutzen PLLs um mindestens
mal 48MHz für USB zu erzeugen, und eventuell auch für den uC. Außerdem
nutzen die uC auch DMA, nur so sind die USB Highspeed Geschwindigkeiten
erst möglich. Die Datenrate bei SD und MMC Karten liegt im MHz Bereich.
Ich schätze mal bei 1MHz Prozessortakt wird die Nutzdatenrate wird
irgendwo im einstelligen kByte/s Bereich sein.
Hallo, hast Du die komplette Belegung des Userports? Ist das Schieberegistr des 6522 mit rausgeführt? Sonst häng einen kleinen AVR dazwischen als "CardReader". Karte per SPI ran und zwischen AVR und Userport 8-Bit Parallel. Mußt Dir eben mit den restlichen Leitungen ein Mini-Protokoll für die Datenrichtungsumschaltung ausdenken. Gruß aus Berlin Michael
@benedikt: Ich meinte verschiedene von mir gefundene Bastelloesungen auf PIC oder ATMEL-Basis. Zudem gibt es einen Card-Reader fuer den C64 : MMC64, der mit 8Mhz arbeitet. @Michael U.: Die Belegung des Userport und weitere Unterlagen habe ich . http://www.cbmhardware.de/cbmpet/cbm2001.php?Lang=&from=petmodel#userport http://www.cbmhardware.de/mosic/daten/cbmhardware_via.txt Das mit dem Shift-Register muss ich mal testen. Der 6522 hatte einen Bug in diesem Bereich. Ich kann mich im Moment aber nicht an Details erinnern. Das mit dem Atmel ist sicher technisch die geschickteste Loesung, leider dann aber auch mit etwas Aufwand im Nachbau verbunden. Ich hatte eigentlich eine sehr spartanische Hardware-Loesung gesucht. Sollte moeglichst jeder mit ein paar "Draehten" anklemmen koennen. Ein paralleles Protokoll sollte kein zu grosses Problem sein. Etwas aehnliches habe ich schonmal gemacht ( http://www.cbmhardware.de/crossload/ ). Danke fuer Eure Hilfe. Ich werde mal verschiedene Ansaetze versuchen. Vieleicht ergibt sich dann eine Loesung. Michael
Warum dieser aufwand! Gibt es doch schon, nennt sich C1541-III, ist eine MMC/SD Laufwerk was am I2C-Bus angeschlossen wird. Gugst du Hier: http://jderogee.tripod.com/project1541.htm Gruss Sven
Ja natürlich, da war die Floppy Disk dran. Such mal mit Google den C64, da findeste 1000 von seiten. Ausgestorben ist der Computer noch lange nicht. Ich habe mir erst einen C64DTV zugelegt, zudem habe ich habe noch einen C128 , C64 II , Atari 800XL und einen Amiga 500 und Amiga 4000T. Unter www.svenschwiecker.de ist mein Gemoddeter C64DTV zu besichtigen. Sven
Hallo, der "CBM3001" ist aber kein "C64", sondern ein "aufgepeppter" PET2001 - der 3001 hat eine große Tastatur und dafür keinen Cassettenrecorder. Die Floppy des PET / CBM wurde "damals" über GPIB (IEExxx) und NICHT seriell angesteuert. Gruß Otto
Ok. Habs auch schon gelesen. Dann ist wohl eine Parallelport lösung das beste.
Nur mal so zum Stand der Dinge: Ich habe mich mal wegen dem 6522 und Shift-Register erkundigt. Das kann man besser schnell wieder vergessen. Ich habe mich nun fuer eine 4bit-Loesung mit ATMEGA8 (da vorhanden) entschieden. 8 Bit geht leider nicht, da mir sonst eine Steuerleitung beim CBM fehlt. Zwei werden fuer die Koordination des Datenflusses und ein dritte Leitung zum Signalisieren der Richtung verwendet. Letztlich waere ich dann mit 4-5kB/s nicht unzufrieden. Aber bis dahin ist es noch ein Stueck Arbeit. Michael
Hallo Michael, wenn Du schon einen Controller nimmst, könntest Du auch das IEE488 Interface verwenden und die Karte dann über die "Floppy-Befehle" des CBM ansprechen. Gruß Otto
Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.