z88dk v2.2 released
Posted: Sat Jul 23, 2022 11:07 am
A little later in the year than usual, I've just snapshotted the nightly build from last night and promoted to release.
As usual, there's 100s of changes, the major features for this release include:
* Source code debugging support for programs compiled with sccz80
* Enhanced and optimised 8080/8085/gbz80 support
* Macros and improvements to z80asm
* <features.h> for cross target compatibility
* SDCC has been upgraded to v4.2.0 r13131
Targets added or improved significantly in this release are:
* Sam Coupé (+sam)
* PC88 (+pc88)
* Micro85 (+micro85)
* Radio 86 (+radio86)
* Bondwell 2 (via +cpm)
* PTC Sol 20 (+sol20)
* GSX Graphics (+cpm)
* RC2014 8085 support (+rc2014)
Some Additional Details
z88dk-gdb - IDE debugging is now supported using CLion/VSCode with MAME, or FUSE (Spectrum Emulator).
z88dk-z80asm - Is now a MACRO assembler, supporting all of the classic macro assembly key words. Additionally many synthetic instructions have been added across all platforms. A new FLOAT directive allows the assembly of floating point numbers in any one of the library's formats. The Intel 8085 undocumented instructions are now supported, as are all Z80N extension instructions.
z88dk-zsdcc - The latest stable release SDCC 4.2.0 has been patched to support z88dk and is included. The traditional z88dk calling conventions (__z88dk_fastcall & __z88dk_callee) have been retained.
Further integration of the classic and new libraries has been completed. To a large extent Z80 machines now share the same code base across both libraries. For the other machine types found in the classic library (I8080, I8085, and GBZ80) code has been organised for hierarchical inheritance, rewritten to be re-entrant, and provide callee support wherever possible.
The floating point maths libraries have been extended, with the Microsoft mbf32 library receiving code optimisation paths with I8085 and Z80 specific instructions. The IEEE single-precision math32 Z80 support has been further performance optimised. The am9511 APU maths library now works with I8085 CPUs and the classic library.
Improved or new support for many machines including the GL6000, the homebrew Micro85, the Radio86 family, the SAM support was extensively reworked, the NEC PC-88 video was reworked, and support for the PTC Sol 20 was added. Support for the RC2014 using the I8085 CPU was added, making use of the tighter integration between classic and new libraries. The CP/M target has been extended to support disc creation for Amstrad, Televideo, and Bondwell systems, and Amstrad PCW Graphics support was added. A generalised CP/M GSX graphics library is also now available.
And finally, building z88dk from source on ARM64 (AArch64) architecture (eg Apple M1, or Raspberry Pi 3 or later) is now supported, enabling a new generation of host systems.
Downloads are available from:
* GitHub: https://github.com/z88dk/z88dk/releases/tag/v2.2
* Sourceforge: https://sourceforge.net/projects/z88dk/files/v2.2/
* Snapcraft: Latest release has been promoted to the beta channel
As usual, there's 100s of changes, the major features for this release include:
* Source code debugging support for programs compiled with sccz80
* Enhanced and optimised 8080/8085/gbz80 support
* Macros and improvements to z80asm
* <features.h> for cross target compatibility
* SDCC has been upgraded to v4.2.0 r13131
Targets added or improved significantly in this release are:
* Sam Coupé (+sam)
* PC88 (+pc88)
* Micro85 (+micro85)
* Radio 86 (+radio86)
* Bondwell 2 (via +cpm)
* PTC Sol 20 (+sol20)
* GSX Graphics (+cpm)
* RC2014 8085 support (+rc2014)
Some Additional Details
z88dk-gdb - IDE debugging is now supported using CLion/VSCode with MAME, or FUSE (Spectrum Emulator).
z88dk-z80asm - Is now a MACRO assembler, supporting all of the classic macro assembly key words. Additionally many synthetic instructions have been added across all platforms. A new FLOAT directive allows the assembly of floating point numbers in any one of the library's formats. The Intel 8085 undocumented instructions are now supported, as are all Z80N extension instructions.
z88dk-zsdcc - The latest stable release SDCC 4.2.0 has been patched to support z88dk and is included. The traditional z88dk calling conventions (__z88dk_fastcall & __z88dk_callee) have been retained.
Further integration of the classic and new libraries has been completed. To a large extent Z80 machines now share the same code base across both libraries. For the other machine types found in the classic library (I8080, I8085, and GBZ80) code has been organised for hierarchical inheritance, rewritten to be re-entrant, and provide callee support wherever possible.
The floating point maths libraries have been extended, with the Microsoft mbf32 library receiving code optimisation paths with I8085 and Z80 specific instructions. The IEEE single-precision math32 Z80 support has been further performance optimised. The am9511 APU maths library now works with I8085 CPUs and the classic library.
Improved or new support for many machines including the GL6000, the homebrew Micro85, the Radio86 family, the SAM support was extensively reworked, the NEC PC-88 video was reworked, and support for the PTC Sol 20 was added. Support for the RC2014 using the I8085 CPU was added, making use of the tighter integration between classic and new libraries. The CP/M target has been extended to support disc creation for Amstrad, Televideo, and Bondwell systems, and Amstrad PCW Graphics support was added. A generalised CP/M GSX graphics library is also now available.
And finally, building z88dk from source on ARM64 (AArch64) architecture (eg Apple M1, or Raspberry Pi 3 or later) is now supported, enabling a new generation of host systems.
Downloads are available from:
* GitHub: https://github.com/z88dk/z88dk/releases/tag/v2.2
* Sourceforge: https://sourceforge.net/projects/z88dk/files/v2.2/
* Snapcraft: Latest release has been promoted to the beta channel