Beiträge von 2ee

    Wenn der Chip selten ist, dann könnte man am Gehäuse aufdremeln und neu verlöten.

    Das Problem ist, dass Pin 18 für die Funktion der seriellen Schnittstelle gar nicht benötigt wird. Vielmehr hat sich der eingedrungene Rost vermutlich bis Pin 20 (VCC) vorgearbeitet und so außer Betrieb gesetzt. Auch auf der gegenüber liegenden Seite sind die Pins 21 - 24 schon vom Creep betroffen. Es ist also vermutlich schon ein entscheidender Teil des Pin Frames beschädigt.

    Ein Aufschleifen des ICs hatte ich allerdings tatsächlich schon in Erwägung gezogen, allerdings um den Chip freizusetzen.

    Ich hab jetzt gestern meinen ersten richtigen Brotkasten C64 samt 1541 Floppy bekommen. Denn wollte ich schon, als er sich damals in den Vobis Werbungen auf der Rückseite der ELO manifestiert hatte.

    Vom äußeren Eindruck sah beides recht gut aus. Beim Test der Floppy tat sich dann aber nichts. Von meiner weißen 1541 vom C64 C ließ sich auch nichts lesen. Umgekehrt funktionierte das "neue" Laufwerk aber am C64 C.


    Da an der seriellen Schnittstelle nur der zweite CIA 6526 und ein 74LS06 involviert sind, ist die Fehlersuche da ja überschaubar. Und manchmal sind Fehler bei näherem Hinschauen so offensichtlich, dass man noch nicht mal das Oszi einschalten muss.



    Am Pin 18 der CIA war mit bloßem Auge eine leichte Verfärbung zu erkennen, die sich unter dem Mikroskop als schwere Rost Katastrophe darstellte.



    Na ja, wenn man als Nachbarn den Tod wohnen hat - genauer: Pin 19 ist TOD = Time Of Day Clock - dann kann sowas schon mal passieren! ;)


    Und manchmal muss man dann auch etwas Glück haben und in seiner 65XX Sammlung noch genau einen - ungebrauchten - 6526 finden. Nach dem Austausch liest jetzt das Laufwerk wieder problemlos Disketten, hört sich aber noch ziemlich klapprig an und entlässt die Diskette nach dem Öffnen der Klappe nicht freiwillig. Da ist also noch Handlungsbedarf.


     


    Nach Reinigung der Tastaturkontakte funktionieren jetzt auch alle Tasten wieder und die Grundwäsche innen und außen hat auch nicht geschadet.


     


    Hello C64. Welcome to my machines!


    Und natürlich...


    thank you nilseuropa . That is so cool to see this lovely DEC Rainbow machine fully running UCSD Pascal, CP/M and DOS peacefully side by side. 8) :thumbup:

    Im a little bit torn about him. Call me envious and yes, sure, casually having an Austin-Healey in your ballroom size garage behind your super rare mainframe next to some other sports car is not a east german kids childhood, but also hes... i don't know. Curious Mark also repairs more rare HP stuff a day then ill ever have, but with him im cool. Its the personality of them, I think.

    The point is, regardless of their personalities, they both have - and repair - very rare and unusual machines. So its very nice to see, that some of us - like Nils - also have their hands on such treasures. That's why we are all here. Keep on going nilseuropa and let us know if you also get the UCSD Pascal OS up and running at some point in time.

    Ich gestehe, ich habe im ROM etwas gepatched - da ist wohl was schiefgegangen.


    Neu gebrannt - und schon gehts wieder :fpa: ::heilig::

    Wieso soll es dir besser ergehen als mir 8o . Ich denke vor den Änderungen an meinem Code oft "was hat sich der Autor da denn dabei gedacht". Wenn danach dann nichts mehr geht bin ich auch wieder schlauer :tüdeldü: .

    Never change a running system.

    Spass beiseite. Mach bitte weiter. Wenn was verbessert werden kann, tut das bitte. :) :thumbup:

    Am Wochenende bin ich jetzt mal so weit gekommen, dass ich endlich Unterverzeichnisse Auflisten kann.



    Es war dann doch aufwendiger als gedacht, alle möglichen Fälle abzudecken. Seltsamerweise geht auch noch nicht ein z.B. DIR SYSTEM\.. obwohl die beiden Verzeichnisse . und .. ja sauber gelesen werden. Da muss ich noch mal durch debuggen. Abenfalls geht z.Zt. auch noch kein DIR mit Laufwerkswechsel wie DIR D:\ da ich natürlich noch keine Mount Routine für weitere Laufwerke geschrieben habe.

    Als nächstes werde ich erst mal den Befehl CD und dann das Laden von BIN Dateien ermöglichen, dann ist das ganze schon mal zu was zu gebrauchen. Dann bekommt ihr auch wieder was zum Testen.


    Ich wünsch euch einen schönen 1. Mai

    Zu meiner großen Freude sind heute schon die Zahnräder für das Macintosh Floppy Auswurfmotor Getriebe (hab mich zurückhalten müssen, das nicht als ein Wort zu schreiben 8o ) aus den USA angekommen.


    Die Darreichungsform im Umschlag fand ich schon mal gleich klasse.



    Aber die Qualität hat mich dann noch mehr umgehauen. Falls das 3D Druck ist, muss ich mir jetzt doch mal einen Resin Drucker zulegen.



    Einbau ging Problemlos und das Laufwerk schmeißt seine Disketten wieder per Motor aus wie am ersten Tag.



    Eine gebrochene Lötstelle am Controller Board des Laufwerks hat dann noch immer mal wieder Probleme beim Booten gemacht. Aber jetzt läuft der Mac wieder als ob er frisch aus der Einkaufstüte geschlüpft wäre.



    Sehr gut hat mir auch die aufgeklebte Briefmarke gefallen.



    Das werte ich doch einfach mal als ein Statement gegen Trumpismus :thumbup:

    Ich find das ja gut, daß Du so schrittweise da ein komplettes System draus machst. Es ist halt nur so, daß man manches auch nur einbauen kann, wenn man es mal gehört hat. Die Entscheidung wann und ob, liegt dann ja sowieso nicht beim Vorschlagenden.

    Ich behalte (oder versuche es zu mindest) eure Vorschläge alle im Kopf. Na ja ehrlicherweise schreib ich sie mir auf :) .

    Ich möchte den Kern so weit wie möglich einfach halten und alles was "nur" User IO ist, dann eben in die Shell zu verlagern. Die Shell kann dann auch von einem Programm wieder aus dem Speicher verdrängt werden, der Kernel nicht, weshalb die Shell auch größer ausfallen darf.

    Deine Vorschläge sind alles Dinge, die in der Eingabezeile entschieden werden. Ein BLOAD oder BRUN hingegen ist sowieso essentiell. D.h. findet der Commando Interpreter von der Eingabezeile aus keinen internen Befehl, wird auf dem Datenträger nachgeschaut, ob da ein passender Dateiname eines ausführbaren Programms (sprich Befehl) vorhanden ist. Das wird dann durch die Kern Funktion OS_LOAD in den Speicher geladen und dann ausgeführt. Das entspricht also schon dem BLOAD, bzw. BRUN, weshalb diese Befehle recht einfach zu implementieren sind.

    Wenn alles mal in seinen Basics so weit läuft, werden die Shell(s) dann mit Sicherheit noch mehr Funktionen bekommen, und da bin ich für jede Idee dankbar.

    Ich würde ja noch eine Art Formatvariable anregen, in die man beliebige Formatswitches reinschreiben kann und die das DIR dann immer mit auswertet, wenn vorhanden. Damit ließen sich persönlich angepaßte Standardausgaben ohne das ständige Nachstellen von / bzw. \ Optionen benutzen.

    Schön wäre evtl. auch ein "freies" Pagemodesystem, wo man evtl. mit -p den Pagemode auf Seitenlänge (Bildschirm Y Max) einschaltet, aber mit -p[x] die Zahl der Zeilen x mit angeben kann.

    Ich werde mich erst mal auf die Basics konzentrieren. Ich hab immer noch den Floppy/Grafik Controller im Hinterkopf, der muss auch mal was werden. Ich lade aber natürlich alle dazu ein, meinen Code dann nach belieben selber zu verbessern und zu ergänzen.


    Frage: ist geplant, ein Binärfile direkt von der SD-Karte laden oder starten zu können, analog zu BLOAD and BRUN beim Apple II ?

    Ja, ist für mich natürlich auch sehr wichtig. Es stellt sich noch die Frage, ob die BIN Dateien dann, wie jetzt für XMODEM nötig, die Start Adresse an den ersten zwei Bytes beinhalten soll, oder ob man dann einfach z.B. BRUN filename / (oder - ) $4000 eingibt. Ersteres wäre ja eigentlich schon fast ein COM File Header.

    Damit Reinhard beruhigt ist:


    mit folgenden Änderungen im Code



    und durch hinzufügen der mit << markierten Zeilen



    EDIT: die << sind unten versehendlich um zwei Zeilen nach oben gerutscht


    sieht das dann so aus



    :)

    Hallo Reinhard,


    der Code der BOOT.SYS ist gerade noch monolithisch, wird aber später von mir aufgeteilt in BOOT.SYS und SHELL.SYS.

    Gerade mache ich die Shell halt erst mal DOS ähnlich, es wird aber auch eine alternative Shell mit LS statt DIR, / statt \ und - statt / geben. Der Code ist eigentlich schon darauf ausgelegt, diesbezüglich leicht geändert zu werden.

    Ist sowieso Geschmackssache, es gibt garantiert genug Leute, die mit DOS aufgewachsen sind.

    Man muss hier ja auch nicht unbedingt UNIX nacheifern.

    Hab nun doch am Wochenende Zeit weiter zu machen. Das VCFe in München wurde auf den 7/8. September verschoben, weil die (letztes Jahr fertig renovierte) Halle einen Deckenschaden hat =O . Shit happens...

    Der DIR Befehl ist jetzt mal annähernd fertig. Die Eingabe von Wildcard Zeichen (* und ?) funktioniert so weit. Jetzt müssen nur noch die Pfade bei z.B. DIR SYSTEM\*.BIN temporär gesetzt werden. Das bekomme ich aber erst nächste Woche fertig. Da das dann aber der gleiche Code wie beim Change Dir Befehl ist, werden dadurch gleich zwei Fliegen mit einer Klappe erschlagen.


    Hallo Dietrich, Danke fürs testen.

    Ich hatte entweder beim FAT12/16 oder FAT32 Boot Code so ziemlich eine Punktlandung beim verfügbaren Patz im Boot Block gelandet. Deshalb blieb es beim Durchsuchen des ersten Directory Sektors. Da dann nach dem Formatieren sowieso die BOOT.SYS als erstes auf den Datenträger kopiert wird, sollte es kein Problem sein. Nachträglich ein Sys zu machen ist so zugegebenermaßen schwierig.


    Ich hab jetzt gestern mal den Code für die Pfad- und Dateinamensanalyse (Wildcards, Pfadzerlegung, etc.) fertig gemacht. Mal schauen, ob ich diese Woche noch den DIR Befehl und/oder CD fertig bekomme. Wird aber knapp, da es am Freitag nach München wieder mal auf das VCFe (Sa. und So.) geht. Ab Mai hab ich mir dann wieder mehr Zeit für den Junior vorgenommen.

    Die nachgedruckten Original-Zahnräder kann man bei Shapeways drucken lassen.


    Kein Grund, zu basteln (leider? Oder doch zum Glück?)


    STL-Dateien für die, die lieber selber drucken, gibt's auch. Wegen der Ansprüche an die Genauigkeit und mechanische Belastbarkeit würde ich aber eher davon abraten.

    Super, genau das habe ich gesucht. Das es in SLA oder SLS gedruckt werden muss, ist auf alle Fälle für die Haltbarkeit und Genauigkeit unumgänglich. Die Teile bei Shapeways sehen recht gut aus. Ich werde evtl. mal welche ordern. Vielen Dank für die Info!

    Die Zahnräder die NorbertJ auf eBay gefunden hat, scheinen mir aber auf den ersten Blick die günstigste Alternative zu sein, auch wenn noch nicht klar ist, ob die Teile jemals aus Santa Clara bei mir ankommen werden. Ich werde berichten. Danke!


    Edit: Hab gerade gesehen, dass es die auch bei einem italienischen Anbieter gibt (man muss nur den richtigen Link von Norbert klicken :) ). 10$ für 4 Zahnräder scheint erst mal OK.

    Vor drei Wochen hat mich mein neuestes Schätzchen erreicht. Ein Macintosh Plus mit der Aussage "Keine Funktion".


    Da sowieso nichts zu verlieren war, zeigte der erste mutige Einschaltversuch, dass der Rechner zwar tasächlich kein Bild brachte, aber noch seinen Einschalt "Boing" ausspuckte. Eine Inspektion der Analogplatine brachte dann das alte Problem der klassischen Macs zu Tage.



    So ziemlich alle Lötstellen der Konnektoren zur Hauptplatine und zu den Ablenkspulen waren gebrochen. Und tatsächlich zeigt der Rechner nach einem großzügigen Reflow wieder was auf seiner Röhre an. Natürlich sind auch gleich die drei Rifa Kondensatoren gegen neue getauscht worden.



    Beim Einlegen einer Diskette war auch gleich klar, dass die Mechanik völlig versulzt war. Einmal komplett zerlegen, reinigen und mit dem guten alten KGF 1 Getriebefett versehen, lässt sich die Diskette jetzt wieder wie von selbst in das Laufwerk flutschen. Allerdings machte der Auswurfmotor absolut keinen Mucks.

    Da ich noch einen Ersatzmotor samt Getriebe in der Mac Schublade hatte, dachte ich, das Problem sei nun erledigt. Allerdings lief der Motor nach wenigen Auswürfen komplett frei. Leider ist bei beiden Getrieben (neue und alte Version) das berüchtigte braune Zahnrad zerbröselt.



    Kennt jemand von euch eine Quelle für Ersatzzahnräder. Das Problem ist ja hinlänglich bekannt, da muss es doch irgendwo welche geben!?!


    Wie auch immer, von Festplatte bootet der Würfel jetzt wieder.



    Eine gründliche Gehäusereinigung steht natürlich auch noch aus.

    Und wieder ist eine Menge Zeit ins Land gegangen, seit ich mich das letzt mal gemeldet habe. Dafür ist jetzt meine Werkstatt vergrößert und das Chaos vermindert, so dass ich jetzt hoffentlich wieder etwas effektiver arbeiten kann.


    Dietrich ist nun seit ein paar Wochen auch Besitzer eines Junior ][ und eines IO-Boards, so dass er seine CPM-65 Anpassungen leichter gestalten kann. Er hatte zunächst einige Probleme mit dem Einlesen seiner SD-Karte. Dabei ist ihm aufgefallen, dass am Schieberegister 74LS165 der serielle Eingang offen in der Luft hängt und wohl immer wieder mal ein L-Pegel dort eingeschoben wird. Nachdem er dann den Eingang (Pin 10) auf +5V gelegt hatte, lief seine Karte. Ich hatte den offenen Eingang bei meiner letzten Änderung (74HCT245 statt 4050 als Pegelwandler) ebenfalls bemerkt und das für die neue Platine schon geändert. Bei meinem Testboard war er allerdings noch offen.


    Ich war jetzt natürlich gespannt, ob sich durch diesen einfachen Patch meine kleine Schaar an nicht lesbaren SD-Karten auch zum Arbeiten bewegen lässt.


    Kurz: Leider nein. Dennoch solltet ihr mal Pin 10 (Seriell Input) und Pin 16 (+5V) des 74LS165 miteinander verbinden, um eventuelle Glitches zu vermeiden.


    Unter anderen wegen der oben erwähnten Umbaumaßnahmen ging bei mir jetzt nicht viel bei der weiterentwicklung von M/OS 65 und des Video-/Floppy Controller-Boards. Ich hoffe, ab dieser Woche wieder etwas Zeit zu finden, um wenigstens die Grundfunktionen von M/OS fertig zu kriegen. Das Video Board habe ich etwas beiseite geschoben, hier wird es wohl Mai, bis ich wieder dazu komme.


    Da NorbertJ mich schon danach gefragt hatte, gebe ich hier mal die letzte BOOT.SYS an euch raus.


    Bisher funktioniert:


    CLS

    PAUSE

    ECHO [text]

    und DIR mit den Optionen /A (zeige Attribute) /H (zeige versteckte Dateien) und /P (pause nach einer Bildschirmseite).


    Kopiert unter Windows/Linux/MacOS einfach die neue BOOT.SYS auf eure mit MKBOOT vorbereitete SD-Karte und schaut mal, ob bei euch auch alles so weit läuft. DIR sollte alle im Root Verzeichnis befindlichen Dateien auflisten können, unabhängig davon, ob die Karte unter FAT12, FAT16 oder FAT32 formatiert wurde. MKBOOT ist auch nochmal in der ZIP enthalten.


    Feed Back erwünscht.


    Sláinte

    Wegen Rüsselseuche war bei mir jetzt am Wochenende mal Programmierpause. Gestern konnte ich dann aber noch auch den FAT32 Root Directory Fall - und somit auch Unterverzeichnisse in FAT12/16 und 32 - abdecken. Ich hab dann gleich die Hauptschleife zum Durchsuchen der Verzeichnisse so umgebaut, dass sie durch Einklinken einer Call-Back Funktion universell einsetzbar wird. Sprich, auch für die Befehle CD, MKDIR, DEL, etc. ohne Änderung funktioniert.

    Den Kommandozeilen Parser hab ich auch gleich so weit vereinfacht, dass ohne viel Aufwand verschiedene Kommando Optionen und die Pfad/Dateinamen auseinandergepflückt werden. Somit konnte ich dann gleich mal weitere Optionen für DIR mit einbinden.



    Weitere Funktionen wie DIR *.TXT usw. kommen demnächst.


    Ansonsten kam heute meine Bestellung aus Dänemark an.



    100 PCI Slots für gerade mal 39€. Da der nächste Rechner (aamoo) ja ein paar Karten-Slot bekommen soll, war ich auf der Suche nach Card Edge Konnektoren und fand die alten ISA Slots alle extrem teuer. Auch für die 120 pol. PCI Slots muss man schon etwa 2-3€ pro Konnektor ausgeben. Umso erfreuter war ich natürlich, als ich das Angebot in DK gefunden habe. Wenn der Rechner sich dann also mal materialisiert haben sollte, kann ich eventuellen Nachbauern gerne die benötigten Slots für 39 cent/stk abgeben.


    Zusätzlich kamen jetzt auch mal zwei bestellte RasPi Pico bei mir an, mit denen ich dann für den aamoo wohl eine VGA Karte basteln werde. Das Raspberry Pi Pico VGA Projekt ist dazu der Ausgangspunkt.

    So, nun ist schon mal der einfache Fall abgedeckt. FAT12/16 Root Directories können nun vollständig über alle Verzeichnisblöcke hinweg gelesen und angezeigt werden. Ich hab dann auch gleich mal ein DIR /p implementiert, bei der das Verzeichnis dann (guess what?!) seitenweise ausgegeben wird.

    Hier kann dann das Listing auch mit ESC abgebrochen werden.



    ...


    Ja, das stimmt schon. Und es lag wahrscheinlich ja auch nur daran, dass die Zeit der 8 Bitter da schon vorbei war. Der C128 hatte das gleiche Problem wie der Apple IIgs. Die kamen einfach zu spät auf den Markt.

    Oh je, dann wäre Commodore wahrscheinlich schon in den 70er Jahren Pleite gegangen, so schlecht wie die Verkaufszahlen des C128 waren. :wegmuss: :D

    Endlich war mal wieder am Wochenende etwas Zeit, um ein wenig am Junior DOS weiter zu programmieren.


    Den erste Teil für den DIR Befehl konnte ich jetzt mal soweit fertig stellen. Hierbei wird zunächst nur das Root Directoy des ersten Verzeichnisblocks der SD Karte ausgegeben, der beim Booten bereits geladen wurde.



    Jetzt steht noch die kleine Fleißarbeit an, die nächsten Blöcke für die verschiedenen Verzeichnistypen (FAT12/FAT16 Root-Direcoty, FAT32 Root-Directory, Unterverzeichnisse alle FATs) zu laden. Da die alle etwas unterschiedlich gehandhabt werden, ist das leider mal wieder nicht ganz so einfach.


    Der LM1881 Sync Seperator ist jetzt übrigens auch eingetroffen, womit ich dann mal ausprobieren kann, ob ein Multi Sync VGA Monitor was mit den 15KHz Zeilenfrequenzen des V9938 anfangen kann, oder ob er sich da doch verschluckt.


    PS: Jetzt ist mir gerade aufgefallen, dass ich die aktuelle Laufwerks Nummer durch den DIR Befehl überschrieben habe (sieh oben: Aus C: wird A:). Fehler ist jetzt schon gefixt

    Oh je, da muss ich jetzt wohl das Büßer Hemd anziehen...

    mit meinem letzten Anhang der ASCII Keyboard Firmware hat sich tatsächlich ein Bild mit den alten, und somit falschen, Fuse Bits für den ATMega 32 eingeschlichen.


    audiokit_nl hatte deshalb auch erst mal eine nicht funktionierende Tastatur.


    Ausserdem war zweimal die US Belegung in der Zip statt einmal US und DE. Ich hatte aber ja versprochen, mich um dieses Problem auf besondere Weise zu kümmern. Sowohl bei der alten Rev. 1, als auch bei der neuen Rev. 2 Tastatur kann nun mit der neuen Firmware via Jumper P1 zwischen US und DE Belegung umgeschaltet werden. Auf der Rev. 2 kann auch P0 noch für weitere Layouts genutzt werden. In der Rev. 1 sind die Jumper leicht anders belegt, da zunächst ja für die Umschaltung zwischen ASCII Parallel und einer angedachten PS/2 Schnittstelle vorgesehen war.


    Die neue Firmware funktioniert mit beiden Platinen Revisionen, da hier dann auf den externen Quarz verzichtet wird.

    Nach dem Ändern des Tastatur Layouts, muss der Rechner entweder neu eingeschaltet werden, oder ein Neustart über die Reset Taste des Rechners gemacht werden. Ein Reset über Ctrl-Shift-Del an der Tastatur liest die Jumper Konfiguration NICHT neu ein!


    ######################################


    Alle die das ASCII Keyboard gerade nachbauen, sollten bitte die angehängte neue Firmware mit den entsprechenden Fuse Bits programmieren.


    ######################################


    Ein weiterer Fehler mit der Revision 2 Platine ist mir aufgefallen, als ich gerade eine solche aufgebaut habe, nachdem Edzard so lieb war, mir eine von seiner letzten Bestellung zukommen zu lassen. Auf der Rev. 2 nutze ich nicht mehr einen 16 pol IC Sockel für die Verbindung zum Rechner, sondern eine gewinkelte 2x8 Stiftleiste. Beim Verbinden mit dem Junior 2 tat sich dann garnichts. Das Problem liegt im IC Stecker des Flachbandverbinders verborgen. Pin 1 des Flachbandkabels liegt bei diesen Quetschverbindern nämlich nicht auf Pin 1 des Steckers, sondern auf Pin 16 !!!



    Wird also ein normaler 2x8 Quetschstecker auf der andere Seite angebracht, liegen hier die Pin Paare 1-2, 3-4, 5-6 und 7-8 vertauscht vor. Das lässt sich zwar durch auftrennen des Flachbandkabels und drehen der Leitungspaare beheben, ist aber ein ziemliches Gefummel.


     


    Auf der Rev. 1C IO-Platine werde ich deshalb wohl beide Steckertypen unterstützen.


    Bei der Grafikkarte bin ich jetzt durch einen billigen NTSC zu PAL Konverter doch noch zu einer Farbausgabe gekommen. Diese war bei mir allerdings extrem schlecht.



    Eine Untersuchung der Horizontal und Vertikal Sync Pulse hat für mich eine Überraschende Erkenntnis gebracht. Diese sind nämlich (so zu mindest meine Annahme) VGA kompatibel. Ich werde jetzt mal den Test machen, mit einem LM1881 Video Sync Separator das V-Sync Signal aus dem Composite Sync Signal zu extrahieren und dann zusammen mit den R,G und B Signalen auf einem VGA Monitor auszugeben.

    Der 74LVC245 ist jetzt auf dem Lochrasterfeld und alles funktioniert so wie es soll.



    Auf der neuen Platine setzte ich jetzt doch auch den 74LVC245 im DIP Gehäuse ein. Er hat doch noch super in die Lücke gepasst.



    Es gibt allerdings dennoch ein paar SD-Karten, die absolut nicht laufen. Ich vermute, das liegt daran, dass ich die SD-Karten im Modus 3 laufen lasse, was bedeutet, das der SPI Takt mit der fallenden Flanke die Daten schiebt und diese dann gelatched werden. Das sollte mit den meisten Karten auch funktionieren. Allerdings ist Modus 0 wohl der übliche Modus, bei dem mit steigender Flanke gelatched und dann erst geschoben wird. Auf der Seite elm-chan.org liest sich das dann so: "Thus the SPI mode 0 (CPHA=0, CPOL=0) is the proper setting to control MMC/SDC, but mode 3 (CPHA=1, CPOL=1) also works as well in most case".

    Bei mir gibt es von 11 getesteten Karten gerade drei, die nicht funktionieren. Dabei scheint sowohl der Hersteller als auch die Kartengröße egal zu sein. Zum Beispiel laufen bei mir alle SanDisk Karten, bis auf die 32GB Ultra. Bei den 64GB Karten möchte eine nagelneue Philips Ultra Pro nicht mit dem Junior zusammenarbeiten, und eine alte1GB noname Karte verweigert sich ebenso.


    Gute Karten...



    Schlechte Karten...



    Nachdem jetzt das booten soweit wieder funktioniert, kann ich mich wieder an @Dietrichs CPM-65 erfreuen, dass meines Erachtens nach jetzt schon wunderbar funktioniert. Ich möchte ihm da jetzt nichts vorweg nehmen. Aber er hat da ganze Arbeit mit der Portierung geleistet. Ich wünschte, bei mir würde es so schnell voran gehen.





    Ich hoffe Dietrich schreibt hier im Forum auch noch etwas über sein Betriebssystem.

    Hallo Dietrich,

    das kann ich glaube ich alles ausschließen. Den 74LVC245 hab ich gerade frei fliegend über das Breadboard auf den Sockel verbunden.



    D.h. die letzten cm Leitungsverbindungen zum Kartenadapter sind die gleichen wie beim 4050. Ich hab die jetzige Schaltung so sehr gestreßt wie nur möglich und hab keine Ausfälle mehr. War also ganz klar ein Problem mit dem 4050. Beim 74LVC245 hab ich durch das 20 polige DIP Gehäuse allerdings einen echte Platzmangel. Der 4050 hat mit dem 16 pol Gehäuse gerade in die Lücke vor dem SD-Sockel gepasst. Ich werde deshalb wohl einen 74LVX08 (AND Gatter im SOP Gehäuse) einsetzen. Der lässt sich noch gut von Hand löten und tut es als Pegel wandelnder Buffer ja genauso.

    Ich hab gerade den Test mit einem 74LVC245 gemacht. Da die LVC Bausteine bei 3,3V Versorgungsspannung an den Eingängen eben auch TTL Pegel verarbeiten können sind sie auch wunderbare Pegelwandler.

    Was soll ich sagen, keine Probleme mehr beim Booten. Egal wie oft ich eine Karte resette, Ein- und Ausschalte, Karte bei eingeschalteten Rechner tausche und dann einen Reset mache, die Karten werden sofort erkannt. Als ich den MOSI Aussgang mit dem Oszilloscope untersucht habe, gab es dann nach einigen Resets wieder vereinzelt Probleme. Offensichtlich hat hier die Messleitung eher Störpotenzial. Ohne läuft die Schaltung jetzt aber wie mit dem fertigen SD-Karten Modul von AZ-Delivery.

    Ich weiß schon, warum ich die 40xx CMOS Bausteine immer gemieden habe. Da gibt es zwar ein paar interessante Funktionsbausteine, aber das ganze ist doch wesentlich empfindlicher als die 74xx TTL/CMOS Familie. Ich vermute, dass sich beim 4050 der Ausgang nach ein paar Pegelwechseln kapazitiv aufgeladen hat und manche Karten dann keinen definierten Logik Pegel mehr lesen konnten. Da ich aber beim Anschluss des Oszis oder des Logic Analyzers das Phänomen durch die Messelektronik beseitigt hatte gab es auch nie die Chance den Fehler zu beobachten.


    Da die SPI Schnittstelle beim Junior ][ mit gerade mal PHI2 / 2 also 500KHz läuft (was aber wesentlich schneller als die Bit-Banging Lösungen in anderen Schaltungen ist), sollte die SPI Taktfrequenz eigentlich kein Problem darstellen. Na ja, wie auch immer. Ich werde als Übergang den 74LVC245 bei mir erst mal auf dem Lochrasterfeld der IO-Platine unterbringen. Eine neue Platine werde ich dann zeitgleich mit dem geänderten Floppy-/Grafik-Controller bestellen.

    Der Spannungsregler ist getauscht. Allerdings spackt der SD Leser immer noch. Ein, wie von Reinhard vorgeschlagener 10-45pF Kondensator von MOSI gegen Masse stört das MOSI Signal so stark, dass eine Datenübertragung nicht mehr möglich ist.

    Alternativ habe ich jetzt mal zuerst einen 100K Ohm und dann einen 6,6K Ohm Widerstand von MOSI gegen Masse geschaltet. auch dass hat nur einen minimal besseren Erfolg. Der Leser läuft zwar nach dem Einschalten, und es sind zwei, drei Resets möglich, dann fängt das Problem aber wieder an.

    Ich hab jetzt, um endlich mal wieder an was anderem Arbeiten zu können, einfach einen Clip mit ca. 10 cm angeschlossener Leitung an Pin 4 des 4050 gehängt.Der Rechner bootet jetzt normal, lässt sich beliebig oft resetten und raubt mir erst mal nicht den Nerv.

    Ich vermute, dass der CMOS Ausgang irgendein kapazitives Problem mit der/den eingelegten Karte(n) hat. Welche Maßnahme dagegen hilft, ist mir gerade noch ein Rätsel. Die "Antenne" (wie ich sie mittlerweile liebevoll nenne :saint:<3 ) kann natürlich nicht der Weisheit letzter Schluss sein.


    Ich bin - wie Reinhard ja auch - der Meinung, dass eine Level-Shift Lösung mit Open Collector nicht wirklich ideal ist, weil dadurch natürlich bei hohen Frequenzen die Signale verschliffen werden. Das war ja auch der Grund, warum ich zum 4050 gegriffen hatte. Eventuell ist aber ein 74LVC245 ebenfalls für das Level-Shifting geeignet und macht weniger Probleme als der 4050 CMOS Buffer. Ich werde da mal experimentieren.


    Dennoch, falls irgend jemand einen Hinweis hat, was das Problem sein könnte, soll er sich bitte melden. Bloss nochmal zur Erinnerung wie der Schaltungsteil gerade aussieht:



    Bis zur Klärung des Sachverhaltes bleiben mal die neuen IO Platinen noch bei mir im Schrank (sorry) und die Karte für mich erst mal nebensächlich.


    Ich werde als nächstes wohl die Grafikarte so abändern, dass ich über eine Steckmodul einen Farb Encoder aufflansche. Dann kann man mal mit den verschiedenen Varianten (CXA1145P, CXA1645P, etc) rumexperimentieren, ohne die Grafikkarte ständig ändern zu müssen. Für alle, die auch keinen FBAS und/oder S-Video Ausgang benötigen wäre eine solche Karte dann auch optional.