Zeta

From Kangaroo Effects
Jump to navigation Jump to search

Zeta is a ZZT emulator by Asiekierka.

Instead of re-implementing ZZT, Zeta emulates a pared-down x86 system which can run ZZT and Super ZZT. Zeta offers several quality-of-life benefits over using DOSBox to emulate ZZT, such as more responsive handling of keyboard input, better CPU usage, and easy deployment options.

Prebuilt binaries are available for Windows and HTML5.


Links

Zeta Homepage with more info and download links

Zeta Source Repository


Build Notes for Raspberry Pi 3 B+ running Raspbian

Here are some notes from 3 May 2019 when I built Zeta Beta 9 for Raspberry Pi / Raspbian -- YMMV. Shortly after I wrote this, Asie released Beta 10 which has several improvements.


  • Download and extract the Zeta source, and navigate to the parent directory.
  • zeta_sdl.sh is the build script. It should be marked as executable, but if not, use chmod:
$ chmod +x zeta_sdl.sh


  • If the script fails because you are missing the SDL2 development libraries, install them:
$ ./zeta_sdl.sh
src/frontend_sdl.c:30:22: fatal error: SDL2/SDL.h: No such file or directory
 #include <SDL2/SDL.h>
                      ^
compilation terminated.

$ sudo apt-get install libsdl2-dev


  • If the script complains about build/zeta86 missing, check that the "build" directory exists:
$ ./zeta_sdl.sh 
/usr/bin/ld: cannot open output file build/zeta86: No such file or directory
collect2: error: ld returned 1 exit status

$ mkdir build

$ ./zeta_sdl.sh


  • As of this writing (May 3rd 2019), Zeta does not support OpenGL ES. Performance of the native build may be slow if Raspbian does not have experimental desktop OpenGL support enabled (though the web build's performance in Chromium is enough to run basic games like Town of ZZT). It can be enabled for Raspbian in the raspi-config command line tool. You'll need to reboot the device after saving these changes. Be warned that this mode is still in the experimental stage and could potentially cause issues with other parts of the system, so make these changes at your own risk.


$ sudo raspi-config
  • Choose '7 Advanced Options', then 'A7 GL Driver', then either 'G1 GL (Full KMS)' or 'G2 GL (Fake KMS)'.