Posts by mczero

    Ich habe nochmal ins Final Cartridge III Handbuch (PDF) geschaut, da steht auf der PDF Seite 22 folgendes:

    Interessant, das das die Adresse das Schieberegister ist. Meine Schlussfolgerung war,

    das sich die Suchfunktion für Centronics Drucker mit der Modemkommunikation beißt.


    Hmm, ist halt die Frage, warum das funktioniert hat mit dem Monitor und was der richtige Ansatz wäre,

    um es zum Laufen zu bekommen. Hat das vielleicht einfach was mit dem Wechsel auf den Monitor zu tun,

    irgendwas mit kurzfristiger Interrupt An/Abschaltung?


    Edit: Ja, nur mal kurz in den Monitor zu wechseln reicht schon, dann funktioniert die Kommunikation.

    Also ich habe es jetzt mal versucht, indem ich doch den Sourcecode compiliert habe. War einfacher als ich dachte.


    Ich habe


    Code
    1. lda #$ff
    2. sta $dc0c

    an verschiedenen Stellen eingefügt. Z.B. beim Label enablemodem.


    Leider funktioniert es nicht. Das Programm startet normal, aber der Zugriff aufs wifi modem ging mal wieder nicht.

    Also bin ich in den Monitor gegangen, und an der Adresse $dc0c war mal wieder was ganz anderes als $FF.

    Wenn ich es wieder manuell per Monitor auf $FF ändere, geht es.


    Irgendwas mache ich falsch oder mir fehlt Wissen.


    Den geänderten Sourcecode habe ich mal angehängt, wie gesagt beim Label enablemodem befindet sich der eingefügte Code.

    Files

    • ccsrc.txt

      (159.88 kB, downloaded 9 times, last: )

    Am Beispiel von CCGMS Ultimate hast Du 2 Möglichkeiten:


    1. Der Source ist verfügbar. Man könnte den Sourcecode entsprechend anpassen und neu übersetzen.

    2. Das CCGMS Ultimate Programm ist nicht gepackt / gecruncht. Da könnte man z.B. am Ende ein LDA #$FF STA $DC0C JMP $1020 einbauen und in der BASIC Startzeile den SYS Befehl auf die neue Adresse setzen, und alles mit ML Monitor speichern.

    Hört sich machbar an für mich, danke. Ich denke Variante 2 ist erstmal einfacher, beim Sourcecode müsste ich mich mit der Toolchain auseinander setzen.
    Probiere das mal aus und schaue, was passiert!

    Hallo ihr,


    durch die Coronaplage habe ich ein bisschen mehr Zeit als sonst und habe mich mal wieder mit dem C64 beschäftigt.


    Ich wollte schon seit längerem mein Final Cartridge III+ Modul mit dem TFCIII+ Editor mit zusätzlichen Programmen bestücken.

    Unter anderem ein Terminalprogramm. Ich konnte jedoch CCGMS nicht überreden, wenn vom FC3 geladen, mit dem Wifi Modem zu kommunizieren.

    Also ging ich auf Spurensuche und fand im FC3 Handbuch den Hinweis, das man die Hardcopy Funktion auf einen RS232 oder

    Centronics Drucker deaktivieren kann, mit einem Poke 56332,255. Das habe ich mit dem Monitor vom Modul mal getestet und danach

    CCGMS wieder mit RUN gestartet, siehe da, danach hatte ich wieder Zugriff auf mein Wifi Modem am Userport. Das war damit auch mein

    erster Ausflug in den Monitor.


    Jetzt würde ich gern den Poke auf die o.g. Adresse irgendwie fest ins Programm einbinden beim starten, als Assembler Code, so das man das nicht mehr machen muss vor dem Start.

    Kann mich da jemand in die richtige Richtung lenken? Ich habe den Turbo Assembler mit aufs Modul gepackt, vielleicht könnte ich den dafür gleich mal nutzen?


    Leider habe ich noch nicht angefangen mich mit 6502 Assembler und dem Turbo Assembler auseinander zu setzen.


    So rein von der Theorie her würde ich (wenn ich wüsste, wie), den Code hinten ans Programm hängen, und vorne am Programm einen Sprung auf den neuen Code machen, danach

    ein Sprung zurück auf das eigentliche CCGMS Programm. Macht man das so?


    Ich bin auch noch auf der Suche nach einem zweiten Hack, im Menü vom FC3 springt meine Maus wie verrückt hin und her, weil die Poti Abfrage an den Ports wohl kaputt ist bei meinem C64.

    Man kann das im Menü auf reine Joysticksteuerung umstellen, aber nach einem Neustart ist das wieder auf Maussteuerung umgestellt und damit sinnlos, es wird nicht gespeichert. Hmm

    wäre cool wenn man das mit ins FC3 Rom hacken kann. Aber die Modemfrage ist mir wichtiger.


    Viele Grüße und bleibt gesund!

    Du hast die "Blue Max"-Zeile aber wieder aktiviert? Ich meine ich hatte die mit einem Semikolon auskommentiert.

    Jaaaa... eigene Beschränktheit! Es war wie du sagtest, einfach nur auskommentiert. Auch das mit dem C64-Payload stimmte,
    ich habe den Eintrag im macro menu_table auf PRG128 gesetzt, und schwupps funktionierte mein Hello World. Nice!


    Das einzige, was jetzt noch auffällt, ist, das das Basic Programm mit den Farben und dem Font deines Menüs startet. Was ja so nicht schlimm ist.
    Kann man das trotzdem für den Payload zurückbiegen auf Standard, oder müsste assembler code eingefügt werden?

    Wer es ausprobieren möchte: Am besten erst mit zwei kleinen C64- und C128-Basic-Programmen testen, bevor man da größere Payloads benutzt.

    Ich habe ACME nun mal unter Ubuntu kompiliert, läuft.


    Im Vice 128 im Basic 7 ein Hello World Basic Programm geschrieben, auf D71 gespeichert, mit Dirmaster exportiert.


    Dann in der config.a das Blue Max prg durch mein Hello World ersetzt. Mehr habe ich da nicht verändert.


    Dann kompiliert mit:


    Code
    1. ACME=/PfadXY/ACME_Lib make

    Alles klar, ich habe ein img8000.rom in meinem Verzeichnis liegen.


    Das habe ich im Vice 128 als internes Funktions ROM eingebunden.
    Ist das richtig, oder muss das als "externes Funktions ROM eingebunden sein?


    Jedenfalls startet der Emulator ins Funktions ROM, ich werde aufgefordert, F2 zu drücken.
    Dann wähle ich Blue Max aus (bzw das, was da laut config.a nun steht).


    Der Emulator springt dann aber ins C64 Basic und führt nichts aus.


    Sicher habe ich noch was falsch gemacht?

    Jau. Das klingt perfekt, im Prinzip genau das, was ich suche :)


    Alternativ müsste das ja mit einem Assembler auch möglich sein.


    prg disassemblieren, in einem Assembler Editor laden, einen Kopier-Header hinzufügen und dann einen jmp aufs RAM zum ausführen des prg... Vielleicht kennt jenand den Workflow im Detail?

    Moin,


    Ich habe mir einen C128 zugelegt, und dann von dem leeren U36 Steckplatz erfahren. Es müsste ja möglich sein, prg Programme so zu packen oder umzuwandeln, so das diese per Code von der Startadresse vom U36 ins RAM entpackt und/oder kopiert werden.


    Gibt es Programme, die das machen können?

    Gegen BASIC sage ich da ja auch nichts. Aber das Commodore BASIC V2 ist sicherlich nicht der Weisheit letzter Schluss. Vor allem, wenn man meint, man könne das Gelernte dann auf aktuellen Systemen weiternutzen. Ich würde halt ein etwas moderneres BASIC (aber immer noch aus dem letzten Jahrhundert) empfehlen aber natürlich nicht Python oder Javascript oder Ruby oder Go.

    Vielleicht meint er mit dem V2 ja erst einmal nur den Befehlssatz, der auf jedenfall implementiert sein soll. Als Basis. Ich habe da schon gelesen, das das Basic erweitert werden soll.
    Oder war in dem Facebook-Chaos irgendwo ein Post von ihm, wo er ganz strikt auf dem V2 beharrt?

    Quote from Retrofan

    Ich hoffe, der 8-Bit-Guy denkt daran, dass es nicht leicht ist, ohne PETSCII-Tastaturbeschriftung die richtigen Zeichen zu finden (das Problem habe ich immer wieder in VICE). Da sollte er über eine Onscreen-Lösung nachdenken, also z.B. ein aufrufbares Popup mit sortierten Symbolen, aus denen man per Cursortasten das passende Zeichen auswählen kann.

    Das wäre auf jedenfall eine gute Lösung für das PETSCII Problem.

    Ja, es ist definitiv chaotisch. Verstehe auch nicht, wieso FB da keine Möglichkeit bietet, dem Owner einer Gruppe eine andere Struktur zur Auswahl zu lassen.
    Naja, FB ist schon eine regelrechte Pest. Anderes Thema...


    Ich habe gesehen, das auch jemand anderes einen Font anbietet, und das dein Font wohl ein wenig untergeht. Schon wieder FB...
    Bisher konnte ich auch nicht nicht so richtig rauslesen, ob der Rechner mit oder ohne Gehäuse angeboten werden wird, ob man den als Bausatz bekommen soll, ob das überhaupt schon klar ist...

    Der konkrete Code natürlich. Aber die BASIC-Befehle (und was sie tun) sind anscheinend nicht geschützt. Man darf halt nicht den Code kopieren, sondern muss einen kompatiblen Interpreter schreiben. Bei der Handvoll Befehle sollte sich das doch machen lassen, oder? Zumal es sicherlich freie BASIC Interpreter gibt, oder? Ich nehme doch nicht an, dass die Kiste kompatibel zu irgendwelchen C64 Peek- und Poke-Adressen sein soll, oder?

    Genau das habe ich mir auch gedacht. Es soll denke ich mehr das Commodore Feeling erzeugen, aber braucht nicht 100% kompatibel sein. Die I/O Sachen werden ja eh auch ganz anders ausgelegt sein, andere Adressen usw.


    Wegen dem Font, ich habe was gelesen, das die nicht 100% PETSCII benutzen wollen, sondern eher ein aktualisiertes, ich denke da ans Euro Zeichen usw.

    Dies Projekt gefällt mir besser als C256 Foenix oder Mega65. Vor allem, weil die Technik limitiert wird durch den angestrebten Preis. Es ist ein wenig der ZX81 unter den modernen 8-Bittern. Die Wahl der CPU finde ich gut und sinnvoll, beim BASIC (v2) bin ich nicht so ganz der Meinung. Warum nicht eine modernere Version des Commodore-Basics, z.B. v3.5 (Plus/4) oder v7.0 (C128)? Ich finde, Peeks und Pokes sollte man auf ein Minimum reduzieren – gerade für Anfänger.


    Jetzt hängt alles davon ab, dass sie es beim Grafik-Chip nicht versauen. Bitte nicht zu viel, nur weil es geht!

    Soweit ich weiß, soll das Basic stark erweitert werden.
    Schon dran gedacht, deinen Font da mal anzupreisen? Die werden sicher mit manchen Fonts Lizenzprobleme bekommen, und einen gebrauchen können?

    Ich bin deshalb skeptisch, weil seit April letzten Jahres nicht wirklich viel passiert ist. Nun möchte er "seinen Traumcomputer" aber erst noch mit tausenden Menschen diskutieren. Das klingt für mich alles nach zu viele Köche... Er soll seinen Traum definieren und loslegen, sonst wird alles von Leuten zerredet, die mehr Meinung als Know-How dazu beitragen können. :-)
    Immerhin hat er seine Fans, die sich nur auf eine Idee stürzen, so dass ich gestern nach Jahren von einem Bekannten erstmals auf Internas zum Kiwi gefragt wurde, obwohl er diesen schon seit der Entstehung kennt. :gruebel Zeigt aber auch, dass die Leute lieber diskutieren, als die einfachsten Fragen mit Blick in Datenblätter zu beantworten.


    [Offtopic]Vom Kiwi wird es bald wieder einige Bausätze geben. Und ja, dieser ist 68k - wenn auch mehr oder weniger 8 Bit, da 68008. Aber das ist ja hier nicht das Thema...[/Offtopic]


    Bogo

    Ich denke der Grund dafür, das nicht wirklich was passiert ist, liegt darin begründet, das er sein Spiel Planet X3 weiter programmiert hat. Wahrscheinlich wollte er in der Zwischenzeit schon mal ein paar Diskussionen und Gedankengänge lostreten, damit eine Basis da ist, wenn er wieder mehr Zeit hat.
    Tja, alles Vermutungen. Ich denke, er kann sich aber recht gut fokussieren und wird nach einer Weile eine klare Vorstellung bekommen.


    Wegen dem Kiwi: ich habe mich persönlich auch bisschen vom Kiwi inspirieren lassen, und ein paar Komponenten bestellt, wie etwa einen 68008. Ich will erstmal auf dem Breadboard bisschen rumspielen. Zweite Inspiration ist der NDR Klein Computer.

    Er baut vor allem seinen Traumcomputer und nicht einen für die Community. Ich hab bei ihm schon den Eindruck, dass er dann auch einfach entscheidet wie es ihm passt und mit der dann einprasselnden Kritik lebt ohne schlaflose Nächte zu haben.

    Muss man manchmal auch. Man kann es ja nicht jedem Recht machen und wird sonst nie mit etwas fertig. Ein Projekt mit einer so großen Community zu stemmen, ist schon keine leichte Sache.


    Ich bin erstmal positiver Dinge, und schaue mir das weiter an :)