ZxPoly

Émulateur v2.3.4

ZxPoly est un émulateur Java spécialisé dans l’exécution du ZX Spectrum 128, mais aussi du système ZX-Poly, une architecture expérimentale conçue pour exploiter quatre instances parallèles du ZX Spectrum 128 afin d’améliorer la gestion des couleurs. Ce projet, né d’une idée originale de l’émulateur Igor Maznitsa, repose sur une synchronisation avancée des CPU et des signaux pour simuler une séparation des composantes R, G, B et Y, sans modifier le firmware original.

Sur macOS, l’émulateur propose des builds natifs pour Apple Silicon (ARM64) et Intel (x64), incluant une machine virtuelle Java préconfigurée. Il prend en charge les formats de sauvegarde classiques (.SNA, .Z80) ainsi que ceux spécifiques à ZX-Poly (.ZXP), les cassettes (.TZX, .TAP) et les disquettes (.TRD). La gestion des périphériques, comme les manettes, est également intégrée. L’interface se concentre sur la compatibilité avec le mode ZX-Poly par défaut, nécessitant une activation manuelle pour le mode Spectrum 128 classique. Le projet est distribué sous licence GPLv3.

Dernière mise à jour :

Plateformes

Architecture

Mac OS X - macOS Mac OS X - macOS Intel x86 Intel x86 Apple Silicon Apple Silicon 64 bits 64 bits

Téléchargement et liens

Historique des versions

v2.4.1-S
__2.4.1 (SNAPSHOT)__ - "Try use less resources" sleeps until the next frame instead of waking continuously, and steady borders use less CPU - keep full emulation speed when the window is not focused - demos no longer drop to half speed when a frame misses the 20 ms budget - Java Sound no longer inserts silence gaps between AY frames - opening the menu or pausing emulation silences the speaker again - the embedded JDK has been updated to 27+36 - fixed the main menu not appearing on Linux with JDK 27, and changing Look & Feel no longer hides menu titles or crashes - updated input4j to 1.4.0 - updated dependencies - fixed packaged start scripts (Linux single-instance lock, Windows JVM flags and working directory, macOS CLI arguments, AppImage desktop entry) - fixed Linux speaker noise that stayed until the sound device was restarted, without adding delay between sound and action - fixed video timing so INT-synced border effects match real 48K, 128K and Pentagon machines and stay aligned with the paper - unused window space around the screen is filled with the current border color - fixed Low Pass Filter stereo balance and made the strength slider Mild–Strong - fixed undocumented XF/YF and WZ of repeating Z80 block instructions on the extra 5 T-states - WAV recording stays on after choosing a file until it is stopped manually
v2.4.0
  • Nouveauté majeure :

    • Mise à jour de la version minimale de Java (JDK) à la 22, ce qui améliore la compatibilité avec les dernières versions de Java et réduit les risques de problèmes liés aux anciennes versions.
  • Amélioration des contrôles :

    • Remplacement de JInput par Input4J pour la gestion des manettes de jeu, offrant une meilleure compatibilité et une gestion plus moderne des périphériques.
  • Fonctionnalités utilisateur :

    • Sauvegarde automatique des dossiers TAP, SNAPSHOT et FLOPPY entre les redémarrages, évitant la perte de données en cas d’interruption.
  • Optimisations techniques :

    • Basculé vers le garbage collector ZGC et ajustement des flags JVM pour une meilleure performance et une consommation mémoire réduite.
    • Mise à jour de l’embedded JDK intégré à la version 26.0.1+10, incluant des correctifs de sécurité et des améliorations de stabilité.
  • Amélioration audio :

    • Ajout d’un filtre passe-bas (Low Pass Filter) pour le son, permettant un réglage plus précis des fréquences et une meilleure qualité audio.
Changelog complet
__2.4.0 (14-may-2026)__ - __minimal JDK version lifted up to 22__ - __replaced JInput with input4j for game controllers__ - added save of last TAP, SNAPSHOT, FLOPPY folders between restart - improved JVM flags, switched to ZGC garbage collector - the embedded JDK has been updated to 26.0.1+10 - added Low Pass Filter for sound output
v2.3.4
  • Amélioration majeure : mise à jour de la version minimale requise de JDK 17 → 21 (impactant la compatibilité avec les systèmes anciens, notamment macOS pré-13).

  • Correction critique : améliorations et corrections dans l’émulation du CPU Z80, avec un refactoring interne pour stabiliser les performances et la précision.

(Aucune mention spécifique à macOS ou Apple Silicon dans ce changelog.)

Changelog complet
__2.3.4 (07-dec-2024)__ - the minimum required JDK version has been raised to 21 - the embedded JDK has been updated to 23.0.1+13 - upgraded the JInput library to 2.0.10 - refactoring, fixes in Z80 CPU emulation