The release of the free emulator RustZX 0.15, fully written in the Rust programming language and distributed under the MIT license, has taken place. Developers highlight the following project features:
- Complete emulation of ZX Spectrum 48k and ZX Spectrum 128k;
- Sound emulation;
- Support for compressed gz resources;
- Ability to work with resources in tap (tape storage), sna (snapshots), and scr (screenshots) formats;
- High-precision emulation of the AY chip;
- Emulation of Sinclair and Kempston game controllers with support for the extended ZX Spectrum 128K keyboard;
- Support for fast saving and loading of emulator state.
- Cross-platform compatibility.
Changes in the new version:
- New audio backend cpal, which will allow porting RustZX to WebAssembly in the future;
- Added support for non-standard gaming keys on Kempston keyboards;
- Fixed a bug that caused a panic in case of integer overflow when loading tapes;
- Added integration tests for rustzx-core;
- Fixed cyclic dependency between rustzx-core and rustzx-utils.
RustZX is installed using the Cargo package manager. The installation requires a C language compiler and a CMake build automation system (needed to build the sdl2 library). For Linux, the libasound2-dev package must also be available in the system.


Source: opennet.ru
