Hallo Besucher, der Thread wurde 4,8k mal aufgerufen und enthält 37 Antworten

letzter Beitrag von nackteule am

C128 - C64 Modus startet nicht, Inhalt vom Char-ROM sichtbar

  • Was mich grad sehr erstaunt: Die "abcdefg..."-Folgen auf dem "Fehlerschirm". Woher kommt das?


    Was mich noch mehr erstaunt: Da sind PETSCII-Grafikzeichen ("Pik" z. B.") zusammen mit Groß- und Kleinbuchstaben gleichzeitig auf dem Schirm ... entweder ich hab grad ein Blackout oder das kann nicht sein, zumindest nicht ohne Raster-Interrupt ...

    Das ist einfach nur die Darstellung der Daten aus dem Char-ROM, aber im Bitmapmodus.


    Damit der 128er korrekt in den 64er-Modus schaltet, muss:
    a) das entsprechende Registerbit in der MMU gesetzt werden,
    b) diese Information von der MMU zur PLA gelangen, damit
    c) die PLA sich dann wie die eines 64ers verhält und z.B. die richtigen ROMs einblendet.


    Das wären drei Ansatzpunkte für die Fehlersuche, nur: Da auf den Screenshots der Bildschirmrand hellblau zu sein scheint, scheint das 64er-Kernal-ROM bereits korrekt angesprochen worden zu sein. Oder ist die Farbe etwa Cyan? Bitte überprüfen!


    Da noch ein C128D zur Verfügung steht, könnte man das 64er-ROM (U32) mit diesem kreuztauschen, um es zu überprüfen.
    Falls nur der VIC falsch initialisiert wird (Bitmapmodus), müsste man aber blind das Laufwerk ansprechen oder die Randfarbe per POKE ändern können.

  • Wenn ich richtig gelesen habe, funktioniert der 128-Modus.


    Schon mal eine Floppy angestöpselt und eine Diskette versucht zu laden? Ergebnis?

    Ich hab CP/M erfolgreich im 40 Zeichenmodus über Diskette und einer 1541er gebootet

    Der Bildschirmrand ist noch hellgrün, werde es gleich nochmal anschauen.
    #EDIT: Naja, etwas dunkleres grün, aber noch kein blau...


    Hab gerad mein Epromer ausgegraben, leider gibt's keine aktuellen Windows Treiber, sonst wäre ich schon schneller ;)
    Mal schauen ob er in einer VM läuft...

  • Hab gerad mein Epromer ausgegraben, leider gibt's keine aktuellen Windows Treiber, sonst wäre ich schon schneller
    Mal schauen ob er in einer VM läuft...

    Du kannst auch einfach das ROM aus U32 nehmen und in U36 stecken, dann kannst Du es im 128er-Modus als Bank 4 ansprechen und z.B. im integrierten Monitor per t 48000 4c000 08000 ins RAM kopieren und dann per s "filename" 08 08000 0c000 als Datei speichern.

  • Das ist einfach nur die Darstellung der Daten aus dem Char-ROM, aber im Bitmapmodus.

    Wenn das so ist, müsste die Bitmap ab $C000 eingeblendet werden, man sieht zuerst den RAM-Test-Müll von $C000 bius $CFFF, denke ich. Das würde aber bedeuten, dass der VIC auf ROM(!) zugreift, was eigentlich nur sein kann, wenn der 74LS373 falsch angesteuert wird oder kaputt ist.(Sofern es den gibt bei 128er ... muss erst nachsehen).


    [EDIT}


    Es gibt ihn - U17.


    [/EDIT]

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


    Einmal editiert, zuletzt von kinzi ()

  • Wenn das so ist, müsste die Bitmap ab $C000 eingeblendet werden

    Huh, wieso das? Der VIC sieht das Char-ROM doch ab $1000. Gib mal auf einem C64 ein: poke 53248 + 17, 63


    EDIT: Ein vorher gelöschter Textschirm hätte allerdings im Grafikmodus einen gleichmäßigen Inhalt der Farbzellen zur Folge - möglicherweise wird in das Memory-Register des VIC ebenfalls Grütze geschrieben, so dass der Inhalt der Farbzellen vom Einschaltzustand der DRAMs abhängt. Die Bilder im Eingangspost würde ich dann so interpretieren, dass nicht alle RAM-Chips vom gleichen Hersteller stammen.

  • Huh, wieso das? Der VIC sieht das Char-ROM doch ab $1000

    Wenn er Characters liest, ja. Hier ist es aber anscheinend anders: Der VIC stellt das CHAR-ROM offensichtlich als Grafikdaten dar. Und Grafikdaten liest er normalerweise aus dem RAM. Wenn in der Bitmap nun Grafikdaten aus den CHAR-ROM aufscheinen, muss das im Bereich $C000-$DFFF sein.


    [EDIT]


    Meine Theorie mit dem 373 hat allerdings auch einen entscheidenden Haken: Das müsste im 128-Mode auch auftreten ...


    [/EDIT]

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Wenn er Characters liest, ja.

    Nein, immer. Bei $1xxx und $9xxx sieht das VIC das Char-ROM, niemals RAM (das entscheidet natürlich nicht der VIC, sondern die PLA). Die einzige Ausnahme ist der Ultimax-Modus.
    Probier doch mal den POKE aus, den ich oben angegeben habe - da wird nur das Bit für den Bitmapmodus gesetzt und der Y-Smoothscroll verwurstet (weil das im ersten Screenshot auch der Fall ist).

  • Das weiß ich alles und du hast recht, wenn es darum geht, wo der VIC das CHAR-ROM sieht, wenn er Character-Daten lesen will.


    Ich will auf was anderes hinaus: Du sagst, es ist der Bitmap-Mode aktiv. Dieser stellt keine Characters dar! Stattdessen holt er nur Grafikdaten aus dem RAM, normalerweise. Wenn er jetzt wirklich Grafikdaten aus dem CHAR-ROM angezeigt werden, ist da was faul. Und dann kann er diese Daten nur aus Bank 2 lesen, wo bei D000 das CHAR-ROM ist.


    Für mich ist der 8721 ein heißer Kandidat.


    Andernfalls müsste im 128-Mode der VIC auf Graifkmode initialisiert werden, die Bank auf 2 geändert werden oder aber die Daten aus dem CHAR-ROM ins RAM kopiert werden, damit idiese Anzeige zustande kommt. Ich kenne das 128-ROM-Listing nicht, aber das wird im 128-ROM wohl nicht stattfinden beim Einschalten, bevor es in den 64-Mode geht.


    [EDIT]
    Gut, ich hab den POKE ausprobiert und muss im Stile eines Politikers sagen: "Ich nehme alles zurück und behaupte das Gegenteil." :schande:
    [/EDIT]

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Du sagst, es ist der Bitmap-Mode aktiv. Dieser stellt keine Characters dar! Stattdessen holt er nur Grafikdaten aus dem RAM, normalerweise.

    Wenn der VIC die Grafikdaten von $1xxx holen will, bekommt er sie aus dem Char-ROM. Probier doch einfach mal den POKE aus Beitrag 26 aus, dann müssen wir hier nicht den Thread für Grundsatzdiskussionen zweckentfremden... :D

  • SIehe mein EDIT ... sorry für den Aufruhr hier. :drunk:

    "Wenn du überredet, ermahnt, unter Druck gesetzt, belogen, durch Anreize gelockt, gezwungen, gemobbt, bloßgestellt, beschuldigt, bedroht, bestraft und kriminalisiert werden musst. Wenn all dies als notwendig erachtet wird, um deine Zustimmung zu erlangen, dann kannst du absolut sicher sein, dass das, was angepriesen wird, nicht zu deinem Besten ist." - Quelle unbekannt.


    "Steve Jobs hat User hervorgebracht, Jack Tramiel Experten." - Quelle unbekannt.

    "Mein Herr, ich teile Ihre Meinung nicht, aber ich würde mein Leben dafür einsetzen, dass Sie sie äußern dürfen." - Voltaire.

    "Diskutiere nie mit einem Idioten - er zieht dich auf sein Niveau hinunter und schlägt dich dort mit seiner Erfahrung!" - Volksweisheit.


  • Also, zum Auslesen des ROM hat das mit der VM geklappt, aber das beschreiben des Eprom nicht....


    Hab dann einen alten Laptop mit Windows 2000 gefunden, da lief der Flash Vorgang dann zum Glück komplett durch.


    Eingesetzt, zusammengebaut und die Spannung stieg..


    Jawoll!

    Läuft!


    Hab mal wieder ne Menge zum C128 gelernt, und eure Unterstützung ist echt Spitze.
    Vielen Dank nochmal allen für die Anteilnahme.


    Gruss eule :ChPeace

  • Klasse, bin ebenfalls froh das du den 128er retten konntest. ^^
    (Hatte früher mal einen C128D, war mein erster CP/M-Rechner..)


    Wegen dem Programmer.. Ich habe hier einen G540 u. TL866.
    Schreiben machte bei mir unter XP auch oft Sorgen, bis ich beide an eine USB3-Karte gehängt habe.
    Vielleicht hat der interne USB-Anschluss einfach nicht genug "Saft" zum Schreiben (USB3 hat mehr) ?

  • Klasse, bin ebenfalls froh das du den 128er retten konntest. ^^
    (Hatte früher mal einen C128D, war mein erster CP/M-Rechner..)


    Wegen dem Programmer.. Ich habe hier einen G540 u. TL866.
    Schreiben machte bei mir unter XP auch oft Sorgen, bis ich beide an eine USB3-Karte gehängt habe.
    Vielleicht hat der interne USB-Anschluss einfach nicht genug "Saft" zum Schreiben (USB3 hat mehr) ?

    Ich denke mal es war ein Timing Problem, der Host hat USB 3.0 und ich hatte die VM erst auf USB 1.1 stehen. Da ging das Auslesen, schreiben hatte nur ein Error gebracht und er hat die ersten paar Bytes im Eprom beschrieben. Bei USB 2.0 hat er einmal fast 1/4 Beschrieben und brach mit einem Error ab. Das USB 3.0 Protokoll hatte ich nicht mehr probiert, da ich nur 2 Eproms da hab und das löschen auch dauert.


    So sieht er im Original aus, braucht jetzt natürlich noch aussen eine Bleichung.


    Danke nochmal an alle.