Platform Galaksija - z88dk/z88dk GitHub Wiki

Classic library support (+gal)

  • Native console output
  • Native console input
  • ANSI vt100 engine
  • Generic console
    • Redefinable font (-subtype=galaxyp)
    • UDG support (-subtype=galaxyp)
    • Paper colour
    • Ink colour
    • Inverse attribute (-subtype=galaxyp)
    • Bold attribute (-subtype=galaxyp)
    • Underline attribute (-subtype=galaxyp)
  • Lores graphics
  • Hires graphics (-subtype=galaxyp)
  • PSG sound
    • ETracker (SAA tracker)
    • PSG Lib (SN76489)
    • Arkos2 Player (AY)
    • WYZ Player (AY)
    • Vortex tracker (AY)
  • One bit sound
  • Inkey driver
  • Hardware joystick
  • File I/O
  • Interrupts
  • RS232

Quick start

zcc +gal -create-app -o adventure adv_a.c

The binary converter (appmake) will create a file named "adventure.gtp" and an audio WAV file. "-Cz--fast" modifies the WAV file in a non standard, faster way.

The GTP file can be used directly on an emulator (i.e. MESS), or converted to WAV with the Galaksija Tools by Tomaz Solc.

Library support

Console drivers

The Galaksija library supports native output, ANSI (vt100) and generic (VT52) output drivers.

Galaksija Plus support

The hires screen of the Plus model is supported by both the generic console and the graphics library. The following screen modes are available:

  • Mode 0: 32x16 text
  • Mode 1: 256x208 monochrome graphics

Galaksija Plus support is enabled in the libraries by specifying the option -subtype=galaxyp

For text output in mode 1, a custom font must be provided, otherwise garbage instead of characters will appear.

The option -pragma-define:CLIB_DEFAULT_SCREEN_MODE=1 will make the program start in graphics mode 1 by adding the command GRAPH to the BASIC loader.

Compact graphics library

For low memory compiles where the generic console isn't used, the original lores graphics library can be linked in using -lgfxgaltext

Audio output

1-bit sound is provided via tape output. This is fully functional, although its usability is limited because the Galaksija turns off the screen while playing tape output sounds. Currently (as of 2022), 1-bit sound can only be tested on the real hardware, because the available emulators and the ZX-Uno core do not reproduce tape output sound.

PSG sound is available for the optional AY-3-8910 extension. This can be tested in MAME on the galaxyp system, in the JSGalMin emulator or on the ZX-Uno Galaksija core. The GALe online emulator does not provide AY sound emulation yet.

Emulator and FPGA notes

After attaching the tape file, type the command "OLD", in the Galaksija BASIC dialect it means "LOAD". Start the virtual tape transfer, and just type "RUN" at the prompt when LOADing is finished.

MAME

Attach the WAV tape file, type OLD and start the tape. You can now press Escape twice and then F10 to speed up emulation. Press F10 again to return to normal speed when loading is finished.

GALe Online Emulator

Open the online emulator in your browser. Click "Tape" and then "File" to attach a GTP tape file, then load the tape as described above. Loading happens instantly, so you can immediately type RUN afterwards.

Alternatively, you can drag and drop a GTP file into the emulation screen, it will be started automatically. Dropping the file onto the "Tape" button will only insert the tape.

JSGalMin Online Emulator

This is another online emulator, this one also emulates AY sound.

ZX-Uno

On the ZX-Uno, GTP files can be loaded from mass storage. Follow the instructions described here.

Links

http://www.tablix.org/~avian/blog/archives/2008/12/galaksija_gets_a_c_compiler/

http://emulator.galaksija.org/MagScans/index.html

http://galaksija.epizy.com/