Cross-platform (Windows / macOS / Linux) GUI for the microM8 Apple II Emulator
Go to file
April Ayres-Griffiths 719868a94c Merge branch 'master' of github.com:paleotronic/microm8-gui 2019-05-26 20:43:50 +10:00
backup Update profiles / add irata to menu 2019-05-26 20:43:24 +10:00
lib/x86_64-win64 Update profiles / add irata to menu 2019-05-26 20:43:24 +10:00
README.md Update README.md 2019-04-21 14:34:55 +10:00
api.md api doc 2019-04-19 19:43:53 +10:00
main.lfm Update profiles / add irata to menu 2019-05-26 20:43:24 +10:00
main.pas Update profiles / add irata to menu 2019-05-26 20:43:24 +10:00
mixer.lfm missing mixer class 2019-04-13 11:51:32 +10:00
mixer.pas missing mixer class 2019-04-13 11:51:32 +10:00
poc.ico fix app name/icon 2019-04-13 20:31:33 +10:00
poc.lpi Update profiles / add irata to menu 2019-05-26 20:43:24 +10:00
poc.lpr memory editor, remove focus delay 2019-04-14 10:43:40 +10:00
poc.lps Update profiles / add irata to menu 2019-05-26 20:43:24 +10:00
poc.res Update profiles / add irata to menu 2019-05-26 20:43:24 +10:00

README.md

microm8-gui

GUI for the microM8 Apple II Emulator https://paleotronic.com/microm8/

Recently weve had requests from users for both an API (an interface for controlling our microM8 Apple II emulator externally) and a GUI (a graphical user-interface native to the host operating system).

The lack of a native GUI has always been an issue for users: microM8 is designed using a cross-platform OpenGL framework called GLFW, but GLFW offers little in the way of UI controls. Also, an API would allow people to automate emulation functions, for example to test .WOZ-format disks created with Applesauce.

We realised that we could kill two birds with one stone we could build a GUI “frontend” application, and then have it control microM8. For efficiency, we used a cross-platform GUI development kit called Lazarus, which is based on FreePascal.

Now the GUI is not perfect: because the GUI and microM8 are two separate applications, there can be the occasional issue keeping them synchronised, especially if you swap between multiple applications. But if youre using microM8+GUI alone or on its own screen then they seem to generally behave themselves. Also, while the Lazarus framework is very cool, its not perfect either. But we felt we had got it to a point where it would be usable for most users, and give those who are less comfortable using microM8 s keyboard-based interface another option.

And the GUI serves as a great example of what you can do with the API! The microM8 GUI is GPLv2 licensed.