Project description

WozMania is an Apple ][ emulator on ARM processors that I wrote during my spare time. It works fine, but for the moment it's text-mode only.

https://github.com/Bischoff/wozmania

I'd like to add a graphical screen emulation to it, without losing the possibility to run it as a pure text terminal application. Therefore there might be some mechanism needed to make the core communicate with the graphical part (shared memory ? pipes ? callbacks? ...)

Goal for this Hackweek

The real hidden purpose of this project is not really the emulator. It's rather to perfect my ARM assembler skills, and have fun resolving the modularization problem described above.

Resources

See bibliography at the end of the github project documentation.

Looking for hackers with the skills:

assembly arm emulation 6502

This project is part of:

Hack Week 21

Activity

  • over 3 years ago: e_bischoff started this project.
  • over 3 years ago: mbrugger liked this project.
  • over 3 years ago: e_bischoff added keyword "assembly" to this project.
  • over 3 years ago: e_bischoff added keyword "arm" to this project.
  • over 3 years ago: e_bischoff added keyword "emulation" to this project.
  • over 3 years ago: e_bischoff added keyword "6502" to this project.
  • over 3 years ago: e_bischoff originated this project.

  • Comments

    • e_bischoff
      over 3 years ago by e_bischoff | Reply

      Completed:

      • a GUI window running as a standalone program (written with Qt 5)
      • bidirectional communication with the emulator through Unix domain sockets
      • an option to choose between text or GUI mode

      Missing:

      • display of blinking text
      • GUI menus
      • low resolution graphics
      • high resolution graphics

      It will be done in my free time after the hackweek.

    • e_bischoff
      over 3 years ago by e_bischoff | Reply

      x

    Similar Projects

    pudc - A PID 1 process that barks to the internet by mssola

    Description

    As a fun exercise in order to dig deeper into the Linux kernel, its interfaces, the RISC-V architecture, and all the dragons in between; I'm building a blog site cooked like this:

    • The backend is written in a mixture of C and RISC-V assembly.
    • The backend is actually PID1 (for real, not within a container).
    • We poll and parse incoming HTTP requests ourselves.
    • The frontend is a mere HTML page with htmx.

    The project is meant to be Linux-specific, so I'm going to use io_uring, pidfs, namespaces, and Linux-specific features in order to drive all of this.

    I'm open for suggestions and so on, but this is meant to be a solo project, as this is more of a learning exercise for me than anything else.

    Goals

    • Have a better understanding of different Linux features from user space down to the kernel internals.
    • Most importantly: have fun.

    Resources