Platform Cambridge Z88 - marinus-lab/z88dk GitHub Wiki
The z88 operating system, OZ, provides a lot of functionality for programmers which permit multiple applications to co-exist and conserve resources (i.e. memory) as necessary. z88dk aims to hide away a lot of the details and provide a relatively simple solution to developing of applications.
For details of the functionality OZ exposes, it's advisable to read the Z88 Developer Notes. The notes describe a lot of detail that is skipped over here.
The z88's floating point routines are supported, to use them, add -lmz
to the command line. Note: if you are using zsdcc to compile an application then
only -lmath48
is available.
By default, z88dk generates binaries that can be LOADed into the BBC Basic application and run. Using this target is the easiest way to get an application up and running on the z88.
zcc +z88 .....
e
Z88dk can be used to create a z88 Applications that can be run from the Main Menu. Both good, bad and ugly applications can be constructed.
zcc +z88 -subtype=app -create-app ...
The output of this command will be a .epr file (suitable for insertion into Emulators) and .63 (.62, .61, .60) files representing the individual banks.
To generate files suitable for Installation with OZ4.5+ and OZ5 use -subtype=installer. Both 4 and 5 installer files will be created, (.app, .apX for OZ4.x and .a5p for OZ5).
Only useful for OZ3.x and OZ4.0
Z88dk can create Packages (shared libraries) that allow code to be shared between applications. ZSock was built using this technique to provide TCP/IP services for the z88.
As for applications, i.e.:
zcc +z88 -create-app -subtype=app app.c
The z88 shell is a unix-like shell providing command line file manipulation on the z88. Naturally, z88dk supports generating applications that can be run from the command line.
zcc +z88 -subtype=z88shell -create-app cmd.c
The above command line will create commands that run under the Forth shell written by Garry Lancaster for OZ3. For the shell built into OZ5 use the following commands:
zcc +z88 -subtype=z88shell5 -create-app cmd.c
ZSock devices can be compiled with z88dk, these are raw binary blobs that sit at address 8192 and cannot use a stdio resources.
zcc +z88 -subtype=zsockdev
zcc +z88 -clib=net