Gemeinsames Forum64 Bastelprojekt

Es gibt 36 Antworten in diesem Thema, welches 6.557 mal aufgerufen wurde. Der letzte Beitrag (10. Januar 2025 um 17:29) ist von LazyJones.

  • Hallo und einen schönen Sonntag zusammen.

    Ich möchte mich hiermit an alle die gerne neue Hardware für den Brotkaten erschaffen und Spass am Löten und Programmieren haben, wenden.

    Vor einiger Zeit hatte ich in einem anderen Thread eine Frage zur Möglichkeit die Tastatur des C64 fernsteuern zu können erkundigt und viele gute Tipps erhalten. Hintergrund ist ein Freund ( ShiftLock ) welcher seine Arme nicht bewegen kann aber trotzdem seinen C64 ohne Hilfe bedienen möchte. Ich hatte zusammen mit GMP einen Joystickadapter entwickelt, welcher seinen per Mundsteuerung zu bedienenden USB Joystick mit dem C64er verbindet. Auf Veranstaltungen wie der DoReCo oder (Achtung Schleichwerbung) dem Kölner Retrotreff wurde das ausgiebig getestet und ein Spielen an Atari, Amiga, C64 etc. damit für Ihn möglich.

    Nun hat er sich nach vielen Jahren wieder einen C64er zugelegt. Da er seinen Pc über einen Trackball bedienen kann kam mir die Idee hier auch einen Adapter zu bauen mit dem er dann die Tastatur des C64, die Buttons (Reset, Freeze und Menü) an der Ultimate II sowie einem Joystickumschalter bedienen kann. Klar kann man das auch am Emulator machen aber originale Hardware ist definitv geiler :smile:

    Ich habe meine Gedanken zur Lösung mal in einem groben Schema (siehe unten)

    zusammengefasst:

    Der bereits bestehende Joystickadapter welcher auf einem Raspberry PI Zero basiert wird noch um einen kleinen Bildschirm und eine Python Anwendung erweitert, welche eine C64 Tastatur und die Buttons der Ultimate auf dem Bildschirm darstellt. Hier können dann per Trackball die Tasten gedrückt werden. Das Programm gibt dann per Bluetooth die Information an einen im C64er verbauten Arduino Nano mit HC05 Bluetooth Modul weiter. Auf diesem läuft ein kleiner Sketch welcher dann den Tastendruck (Down oder UP Signal) entgegen nimmt und dann über einen MT8808 Switch Baustein den Tastendruck auf den C64er Tastaturanschluss ausgibt. Et voila – schon kann man per Trackball die Tastatur des C64 steuern.

    Da in dieser Idee einiges an Arbeit steckt und ich zur Zeit durch einen bevorstehenden Jobwechsel ziemlich viel um die Ohren habe, habe ich die Idee ein Forumsprojekt draus zu machen!

    Da es hier ja viele verrückte Bastler gibt deren Motto „Geht nicht – gibt’s nicht“ ist, hoffe ich hier den einen oder anderen zu finden die sich die anstehenden aufgaben teilen und am Schluss etwas wirklich gutes entsteht.

    Folgende Aufgaben könnten verteilt werden:


    - Programmierung einer virtuellen Tastatur auf dem Raspberry PI (am liebsten mit Python)

    - Bau des Adapters für den C64 (Anbindung HC05 Bluetooth Modul und MT8808 sowie Vorbereitung von Steckverbindungen für die Ultimate II und den Joystickumschalter)

    - Programmierung der Arduino Software (entgegennehmen der Signale und Steuerung des MT8808)

    - Bau eines Y-Tastatursteckers welcher das anschließen des MT8808 sowie der originaltastatur ermöglicht.

    Wenn jemand von euch Interesse haben sollte an dem Projekt mitzuarbeiten, würde uns das sehr freuen. Die notwendigen Teile habe ich bestellt und werde diese dann zusenden und auch das Rückporto übernehmen so das keine Kosten für die Helfer entstehen.

    Bitte melde dich an, um diesen Anhang zu sehen.

  • Hallo,

    ich finde es jetzt schon genial, dass es mir möglich ist, Spiele an einem echten C64 über meine Mundsteuerung zu steuern. Wenn man da noch die Tastatur und das Ultimate mit einbeziehen könnte, wäre das der Hammer. Auch, wenn ich an dem C64 nur zocke, bin ich technisch sehr interessiert ;)

    Grüße

    ShiftLock

  • Ich hab hier mal ein Projekt gezeigt, in dem ich eine ps/2 Tastatur an den c64 angeschlossen habe. Da ist der Code drin für den mt8808. In einem anderen Projekt übergebe ich Daten per USB an einen USB Eprom Brenner. Kombiniere das, und Du hast den meisten Code für den Arduino.

  • Hallo Leute!

    Ich habe jetzt mal einen simpleren Joystickumschalter entworfen, der schaltet nur Hoch, Runter, Links, Rechts und Feuer. Ferner müsste dieser eine bessere-Anbindung an den Arduino bieten: Das unterste Lötpad bei "Switch" ist der Schaltkontakt der Multiplexer, liegt kein externes Signal an, ist der Kontakt "high", wegen dem Pullup-Widerstand R2, und alle Pinne für die Richtungen und Feuer sind mit Joystick-Port2 verbunden. Legt man an den Schaltkontakt jetzt GND an, dann sind die Richtungen und Feuer mit Joystick-Port1 verbunden. Ferner werden die beiden LEDs noch umgeschaltet.

    Bitte melde dich an, um diesen Anhang zu sehen.

    Bitte melde dich an, um diesen Anhang zu sehen. Bitte melde dich an, um diesen Anhang zu sehen.

  • Hallo zusammen,

    erstmal vielen Dank für die Antworen und das Interesse am Projekt :emojiSmiley-106:

    @Bitte melde dich an, um diesen Link zu sehen. Könntest du uns den Code welcher die Kommunikation zwischen Arduino und MT8808 steuert zukommen lassen? Das wäre klasse - dann hätte man schon eine Baustelle weniger.

    CaptainFuture Vielen Dank für das Layout :thumbsup: Das wäre genau das was ich mir vorgestell habe... hätte ich nicht diese angeborene, unheilbare Lötschwäche :D evtl. wird es ja nochmal kalt und du hast Langeweile... also Mopedfahren ist ja im Moment auch noch nicht so das richtige Wetter für... Würde ich dir dann auch spätestens auf der DoReCo wieder gutmachen - und es wäre dann für das Projekt ein kleiner Meilenstein!

    Einen schönen Start in die neue Woche und Gruß aus Kölle

  • Hallo,

    ich persöhnlich kann leider nichts produktives zu diesen Projekt beitragen.

    Aber ihr habt meinen größte anerkennung, das ihr das gelich angehen wollt.

    Vielleicht, könnte man eine Spendenaktion, noch dran hängen, wen die finaziellen Mittel, zu umsez#tzung fehlen würden.

    Jeder spendet was er will zu diesen Projekt.

    Brotscheibe

  • daybyter Könntest du uns den Code welcher die Kommunikation zwischen Arduino und MT8808 steuert zukommen lassen? Das wäre klasse - dann hätte man schon eine Baustelle weniger.

    Bitte melde dich an, um diesen Link zu sehen.

    Da ist der Code drin.

    Der USB-Code ist drüben in treki's Forum (ltspiceusers.ch)

  • Hey LazyJones : Du hast noch einen gut bei mir, Du hattest mir doch den kleinen VGA-Beamer auf der DoReCo 2018 geschenkt, richtig?
    Also: Ich bin leider nicht so löterfahren, aber das Platinenlayout vom CapFuture1975 könnte ich noch hinbekommen...

    Wenn es nur um die eine Platine geht, frickel ich so lang, bis es passt. :)

    Bin mir zwar sicher, dass das andere besser könnten , ich biete mich aber wegen der guten und coolen Idee einfach mal an.
    Oder vielleicht hast Du eine andere Idee zur Umsetzung für mich.

    Das Gesamtprojekt übersteigt mein technisches Verständnis bei weitem - meine Hochachtung vor den spannenden Ideen und dem Level auf dem Ihr Euch bewegt.

    ShiftLock: Freu mich für Dich, dass Du Spaß am Zocken hast und gute Freunde, die Dir helfen das so hinzubekommen!
    Du warst mit Begleitung auch auf der DoReCo2019, oder?

  • Werde die Tage mal die Platinen “Joystick-Umschalter“ für das Projekt ordern. Kann aber dauern bis die hier sind, Coronavirus lässt grüßen, Bauteile habe ich noch genug von meinen normalen Umschaltern mehr als genug da. Das Löten ist ein Klaks für mich.

  • Naaaabend :smile:

    @Brotscheibe - Vielen Dank für das Angebot! Ich denke mal das sich die Kosten in Grenzen halten werden. Wir bauen ja nur ein Modul. Das einzige was etwas teurer ist, wäre der kleine Monitor für die Anzeige der Tastatur. Falls jemand einen kleinen HDMI fähigen, (auch gerne gebrauchten ) Monitor so 7-10" spenden würde wäre das ne coole Sache. Die anderen Teile sind teilweise schon bestellt bzw. bekommen wir zusammen.

    ACEofACES ja, ich war das auf der DoReCo :smile: Hoffe wir sehen uns dieses Jahr wieder da? Wenn wir das bis zur DoReCo hinbekommen wird ShiftLock bestimmt das Ergebnis mal vorführen, falls er zur DoReCo kommt. Danke für das Angebot mit der Platine. Aber ich denke das CapFuture1975 das Teil zusammenlöten wird - auf diesem Weg nochmal ein dickes Dankeschön an CF!
    Aber wenn du ACEofACES möchtest, könntest du einen Y Anschluss machen, an dem auf der einen Seite die C64 Tastatur angeschlossen wird und an der anderen Seite der Bluetooth-Tastaturadapter so das beides an den Tastaturanschluss kann. Dann könnte man die Tastatur auch nutzen wenn der Adapter mal nicht in Betrieb ist.

    Wir haben auch jemanden gefunden der den Adapter zusammenbauen möchte. Also Arduino mit HC05 Modul und MT8808 Switch zur Steuerung der Tastatur. Wir sind momentan per PN in Kontakt.

    daybyter Vielen dank für den Link - ist immer einfacher aus bestehendem code was abzuleiten oder Teile direkt zu übernehmen - das spart uns viel Zeit. Über das HC05 Modul und den Arduino gibt es ja viel im Internet MT8808 und Arduino ist eher Mager was die Infos angeht.

    Ich finde es übrigens echt klasse das sich so viele an dem Thema beteiligen und Helfen!

    Wenn sich hier kein Rasperry / Python Profi finden sollte, werde ich mich da in Bezug auf Erstellung von grafischen Oberflächen in Python einarbeiten und die Software für den Raspberry erstellen.

  • Ich hab ganz zufällig gerade ein Projekt laufen, wo ich einen Raspberry in Java programmiere. Weiss nicht, ob euch das was nutzen könnte?

    Also mit dem Projekt könnt ihr 100% nix anfangen, aber mit dem Know-How?

  • daybyter Java ist natürlich auch keine so schlechte Sache. Meine Idee wäre ein Bild eines C64 Keyboards auf den Bildschirm zu zaubern und dann positionsbezogen bei Klick mit dem Mauszeiger auf eine Taste zu ermitteln welche gedrückt worden ist. Mit Python ist die Programmierung von so ner GUI echt bescheiden und soweit ich das verstanden habe nur über Befehle zu realisieren. Ich denke das man bei Java die GUI per Drag and Drop zusammenstellen kann - das muß ich mir aber mal ansehen.

  • Also UI ist ja heute fast alles Javascript oder auch Typescript. Ich seh ja, dass fast alle Leute heute ihre UIs mittels web-Technologie realisieren (in meinem Projekt hier ist es u.a. Java + Spark auf dem Server, aber Spring ist wohl der neue Hype).

    Ganz doll beliebt sind jetzt auch diese Frameworks, wie Angular, Ionic usw.

    Viele Deiner Funktionen könntest Du übrigens schon in Oberflächen für TV-Boxen, Smarthomes usw finden. Da gibt es sicher schon Eingabetastaturen. Android usw. hat sowas ja auch schon.

  • Man könnte das natürlich ganz einfach mit nem Textfeld in einem Fenster realisren in das man den Cursor stellt und die beim Raspberry schon im Betriebssystem Raspian vorhandene virtuelle Tastatur nutzt um mit der Maus bzw. in unseren Fall Trackball die Tasten drückt. Aber wesentlich geiler wäre es auf ner Grafik von ner C64er Tastatur zu klicken. Dann müsste man (egal welche Sparache man zur realisierung nimmt) Die Koordinaten des Mauscursor im Fenster abfragen. Das wäre Tricky aber man könnte dann auch die Sonderzeichen und C64 eigenen Tasten direkt sehen und bedienen. Sonst ist das wie beim Vice Emulator wo man ständig ausprobieren muss welche Pc Tastatur Taste welcher Taste am C64er entspricht.

  • Wenn Du das einfach als Webseite machst, brauchst Du nur ein Foto von einer c64 Tastatur und reagierst dann auf JS OnClick, oder so?

  • So, die Platinen sind angekommen.

    Habe mal eine aufgebaut: Es funktioniert!!!

    Bitte melde dich an, um diesen Anhang zu sehen.

    Bitte melde dich an, um diesen Anhang zu sehen.

  • Ja super! Die MT8808 Chips sind auch aus China angekommen, und schon wieder weitergereist zum Erbauer der Hatdware welche im C64er sitzt. Muss gestehen das ich die letzten Wochen viel um die Ohren hatte und noch nicht weitergekommen bin mit der "virtuellen Tastatur" Software. Aber solange die Empfängerhardware noch nicht steht habe ich ja noch ein bisschen Luft. :smile: