Posts from Jood in thread "Projektvorstellung: C128 MegaBit-Adapter"

    Eben kurz den aktuellen Stand festhalten,

    nachdem in der bisherigen Version ein Bug gefunden wurde, habe ich mich ziemlich geärgert, weil ich das GAL nicht updaten konnte.

    Aus-, und Einlöten hat auch nicht wirklich funktioniert, also habe ich die Platine angepasst, neu hinzugekommen sind nur die Lötpads

    an der Unterkante, so lässt sich das GAL, über einen Adapter programmieren.

    Der Adapter hat mir echt Kopfschmerzen bereitet, der Footprint des GAL's ist gespiegelt, der MegaBit-Adapter wird Ăśberkopf gesteckt,

    zusätzlich müssen noch 3 Verbindungen gesteckt werden.

    Und dann ist mir aufgefallen das ich, mit kleinen Anpassungen am JEDEC, nicht nur das EPROM ST27C801 (8MBit, 1MB x8 ), sondern

    auch den Flash AT29C040 (4MBit, 512KB x8 ) unterstĂĽtzen kann, die Pinbelegung unterscheidet sich zwar geringfĂĽgig, aber das kann

    ich ĂĽber das GAL regeln.

    Der Flash hat zwar nur 512KB, damit läuft das originale "megabit-help.bin" NICHT, aber für eigene ROM's, erstellt mit dem UC-Builder

    von Diddl ist das völlig ausreichend, vor allem in der Testphase spart so ein Flash einiges an Zeit.

    Please login to see this attachment.Please login to see this attachment.Please login to see this attachment.

    Neben den Gerber-Files für den Megabit-Adapter, und den Programmieradapter, hänge ich auch die Source der JEDEC-Datei an, Zeile 32

    gibt vor ob ein EPROM (MODE ='b'0), oder ein Flash (MODE ='b'1) verwendet wird.

    Die JEDEC unterstützt noch eine 3. Version, mit umschaltbarem Chip-Type (Lötjumper), das das ist aber bislang ungetestet, die Platinen

    sind noch im Zulauf.

    Mfg Jood

    Vielen Dank @ androSID,

    das MegaBit auf GAL-Basis ist eigentlich nur aus Neugier entstanden, ich habe noch nie etwas mit dem registered Mode gemacht!

    Nur zur Erläuterung, dabei möchte ich nur soweit wie notwendig in die Materie einsteigen, das GAL16V8 hat 8 Macrozellen, diese

    können je nach Mode unterschiedlich verwendet werden, und jeder Mode hat andere Einschränkungen.

    Im Registered Mode werden die D Flip-Flops der Macrozellen genutzt um ein 5 Bit-Register fĂĽr die Adressleitungen zu realisieren,

    das D Flip Flop speichert, ĂĽber die externe RĂĽckfĂĽhrung (Pin 14 -> Pin 1) bei der positiven Flanke an Pin 1 (Clock).

    Und hier liegt anscheinend ein Problem, offensichtlich wird der Zustand zu früh gespeichert, die negative Flanke ist aber zu spät,

    das betrifft aber nur einge Programme fĂĽr den C128-Mode zu betreffen, fĂĽr C64-Programme habe ich keine Probleme gefunden,

    der UC-Builder scheint gar nicht betroffen.

    Ich nehme an, das die Umschaltung auf 2 Mhz hier etwas durcheinander bringt.

    Die Lösung ist das D-Flip-Flop durch ein transparentes Latch zu ersetzen, und das macht die Version von androSID, wobei

    hier nur die Latch-Verknüpfungen eingefügt wurden, das lässt sich noch etwas vereinfachen, Pin 1/14 werden nicht gebraucht.

    Hier die entgĂĽltige Version, lediglich eine kleine Vereinfachung...

    In beiden Versionen fehlt noch die VerknĂĽpfung fĂĽr das /WE Signal, das habe ich noch nicht weiter verfolgt.

    Nur zur Erläuterung, dabei möchte ich nur soweit wie notwendig in die Materie einsteigen, das GAL16V8 hat 8 Macrozellen, diese

    Vielleicht noch der Hinweis, im Gegensatz zu meiner Version (D Flip-Flops), ist der registered Mode in der Version von androSID

    nicht mehr unbedingt notwendig, das Latch lässt sich auch im Complex Mode realisieren, dann aber bei geänderter Pinbelegung.

    Das muss ich natĂĽrlich probieren, neue Platinen sind im Zulauf, die THT-Variante ist aber nur den Eigenbedarf, das GAL passt nur

    mit speziellen Buchsenleisten vernĂĽnftig in den Sockel.

    Die Platine hat, zumindestens theoretisch, den Vorteil das Programmier-Adapter, und MegaBit-ROM die gleiche Platine verwenden.

    Please login to see this attachment.Please login to see this attachment.

    Mfg Jood

    Und es geht weiter...

    Wie bereits erwähnt hat der Kollege tdettling das sprichwörtliche Haar in der Suppe gefunden, nämlich ein Problem mit den Gleichungen im GAL des U36 MegaBit.

    Geäußert hat sich das so, das einige Programme der originalen "megabit-help.bin" nicht gelaufen sind, natürlich nur die Programme, die ich nicht getestet hatte, der

    UC-Builder scheint nicht betroffen zu sein, mir sind keine Probleme aufgefallen.

    Mittlerweile ist das Problem gelöst, androSID hat die Gleichungen überarbeitet, jetzt läuft Alles, ich bin mir nur nich sicher ob ich die Sourcen veröffentlichen darf!

    Leider lässt sich das GAL im MegaBit nicht programmieren, also das GAL mit Heissluft ausgelötet, neu programmiert, und wieder eingelötet, sieht schlimm aus (Bild 1)!

    Das hat mich so sehr genervt, das ich die Platine ĂĽberarbeitet (Bild 2), und einen Programmieradapter entworfen habe, beim Aufbau bin dann "All-In" gegangen, und

    habe ein unprogrammiertes GAL eingelötet, No Risk, No Fun!

    Please login to see this attachment.Please login to see this attachment.Please login to see this attachment.

    Please login to see this attachment.Please login to see this attachment.Please login to see this attachment.

    Was solll ich sagen, lässt sich löschen, programmieren, Verify, funktioniert alles einwandfrei, und das MegaBit läuft auch!

    Mfg Jood

    Eine kleine Hiobsbotschaft, verbunden mit der dringenden Bitte meinen U36 MegaBit-Adapter vorerst nicht nachzubauen,

    unter bestimmten Umständen starten einzelne Programme aus der originalen "megabit-help.BIN" nicht.

    Interessanterweise scheint der UC-Builder davon nicht betroffen, zumindestens habe ich bislang keine Probleme gehabt!

    Gefunden hat den Fehler übrigens mein geschätzter Forumskollege tdettling, und hatte auch gleich eine Lösung parat,

    diese Lösung stammt von Unserem, nicht minder geschätztem, Forumskollegen androSID.

    Die neue Jedec mĂĽsste ich noch an die V2 anpassen, aber ohne Genehmigung von androSID gehts hier nicht weiter,

    zudem denke ich nicht das es möglich ist vorhandene Platinen upzudaten, die Bauform lässt ein Update nicht zu.

    Ich möchte nochmals darauf hinweisen, solange Ihr eigene ROMs mit dem UC-Builder erstellt, gibt es keine Probleme.

    Mfg Jood

    Thats bcs *.jed is NOT a editable format!

    The Top Part "CUPL 5.0a Serial#..." seem to be the Header from Source-File,

    other Part is data and description for programmer.

    The source...

    Mfg Jood

    Der MegaBit-Adapter fĂĽr den Sockel U36, nicht der erste seiner Art,

    vor kurzem lief eine Sammelbestellung mit dem MegaBit-Adapter von tdettling, allerdings habe ich mir eine Variante auf GAL-Basis gebaut,

    und weil ich Heute die ersten Exemplare verschickt habe, wird es Zeit fĂĽr die Projektvorstellung.

    Weil die Belegung der EPROMs standardisiert (JEDEC) ist der MegaBit-Adapter in Stapelbauweise gefertigt, das erspart den ĂĽblichen Versatz,

    hat aber den Nachteil das die Versorgungsspannung extern zugefĂĽhrt werden muss.

    Der Aufbau besteht aus einer 0.8 mm Platine, mit bündig aufliegendem 32 pol. Präzisionssockel, zusätzlich wird ein 28 pol. Präzisionssockel

    benötigt, bei dem die vorderen beiden Pins (Pin1 & 28) entfernt werden, beim 32 pol. Präzisionssockel werden die vorderen 6 Pins gekürzt.

    Zusätzlich werden natürlich noch ein EPROM (27C801), ein GAL16V8BQL-SU (Reichelt), der Pinheader (5 Pol. gewinkelt), sowie ein Abblock-

    kondensator (100nf, RM2.5) benötigt.

    Please login to see this attachment.Please login to see this attachment.Please login to see this attachment.

    Beim MegaBit-Adapter handelt es sich um ein Utility-ROM fĂĽr den freien Sockel U36, hier kann entweder das "megabit-help.BIN", zu finden

    auf der Github-Seite von tdettling verwendet werden, oder man nutzt den UC-Builder von Diddl um sich ein eigenes ROM zu basteln!

    Please login to see this attachment.Please login to see this attachment.Please login to see this attachment.

    Leider werden für den Einbau (geringe) Lötkenntnisse benötigt, weil einige Signale am Board abgriffen werden müssen, ich habe die Signale

    und die Abgriffpunkte farblich gekennzeichnet (Rot = VCC, Gelb = CLK/Phi2, GrĂĽn = /RESET, Orange = /CS, und Blau = /WE *optional).

    Die Signale VCC, CLK/Phi2, und /RESET findet man an Durchkontaktierungen in unmittelbarer Nähe, /CS leider nur direkt an Pin 12 von U3,

    /WE wird nur bei speziellen Problemboards benötigt, und wird normalerweise deaktiviert (JP1 = GND) :winke: Diddl!

    Please login to see this attachment.Please login to see this attachment.Please login to see this attachment.

    Da langsam das Limit für Dateianhänge zuschlägt, fasse ich die Projektdateien in einem ZIP zusammen...

    Mfg Jood