Chip-8 Emulator

    This site uses cookies. By continuing to browse this site, you are agreeing to our Cookie Policy.

    • Chip-8 Emulator

      Hallo an alle.


      Hat sich hier im Forum schon mal jemand mit dem Gedanken einen Emulator zu bauen beschäftigt?
      Also sowas wie eine kleine Game-Console die etwas an die frühen Videospiele erinnert.

      Hier gibt es erste Infos: Wikipedia

      Der verwendete Controller nennt sich Chip-8. Man findet viele Seiten darüber im Netz, und auch in Youtube.
      Eine Seite ist diese: How to Write an Emulator

      Der verwendete Chip, der damals verwendet wurde nennt sich CHIP-8.
      Den gibt es heute ja nicht mehr. Aber man kann den recht einfach emulieren, indem man die Maschinen-Instructionen interpretiert.

      Der Reiz daran ist, wie ich finde, zu lernen wie ein Emulator funktioniert. Man kann es ausprobieren und es ist ein interessanter Einstieg.
      Und im Netz finden sich auch Programme, die darauf laufen.

      Das wäre doch mal ein nettes Gymmick, sowas in Bascom mit einem einfachen Display (128x64) zu programmieren.

      Wäre doch mal schön, wenn man sich hier darüber austauscht, damit irgendwann zumindest mal ein lauffähiger Code entsteht.
      Im Prinzip wäre das dann ein Gemeinschaftsprojekt aller Bascomforum-Nuter.

      Man müsste also erst mal einen Controller aussuchen bzw.festlegen (AVR-MEGA), der die notwendigen Anforderungen erfüllt (Speicher, Anzahl Pins, etc). Denn daran muss ein Display und eine Tastatur angeschlossen werden. Und irgendwie müssen ja auch die Programme da rein kommen, also brauchts auch ein Interface, um den Chip-8 Code in den S-RAM zu bekommen (z.B. UART).
      Hardware könnte man auf Steckboards aufbauen, damit jeder, der mitmachen möchte, auch die Software testen kann.

      Vielleicht habe ich euer Interesse geweckt.

      Ich habe mal versucht, den Interpreter ein Stück weit (ohne Hardware) umzusetzen.
      Den bisherigen Code stelle ich hier mal als Orientierung ein, damit man einen Eindruck bekommt, wie man das umsetzen könnte.
      Der Code ist natürlich nicht vollständig und so auch nicht lauffähig. Es fehlen noch Opcodes, die noch nicht dekodiert werden, auch ist ein Display und Tastatur noch nicht implementiert. Wie gesagt: Code ist nur mal ein Versuch, den Interpreter (Emulator) umzusetzen.
      Files
      Kaum macht man es richtig - und schon geht's!
    • @six1
      Ich weis nicht recht, was du mir damit sagen willst. Dass es solche Emulatoren gibt ist mir klar. Und auch, dass die teils bessere Grafik-Auflösung haben. Aber es geht ja darum zu lernen, wie sowas funktioniert. Und wie man etwas in der Art in Bascom machen kann.

      Daher auch der einfache Chip-8, der quasi als Einstieg fungiert.
      Kaum macht man es richtig - und schon geht's!