ZEsarUX - Le Bottin des Jeux Linux

ZEsarUX

🗃️ Specifications

📰 Title: ZEsarUX 🕹️ / 🛠️ Type: Tool
🗃️ Genre: Emulation 👁️ Visual: 2D
🏷️ Category: Emulation ➤ Engine ➤ Multi 🏝️ Perspective: First person (interface)
🔖 Tags: Emulation; Multi Emulation; HLE BIOS; SINCLAIR; ql; zx80; zx81; zx spectrum; MGT; sam coupé; Jupiter ACE; AMSTRAD; cpc464; cpc664; cpc6128; MICROSOFT; msx; COLECO; colecovision; SEGA; sg-1000; sms; Multi-platform; Local Multi; Online Multi; Keyboard; Mouse; Controller ⏱️ Pacing: Real Time
🐣️ Approx. start: 2022-02-27 👫️ Played: Single & Multi
🐓️ Latest: 2026-09-22 🚦 Status: 05. Tested & Working (status)
📍️ Version: Latest: 13.0 // Dev: 2b8bb99 ❤️ Like it: 3. 👍️⭐⭐⭐ (very good)
🏛️ License type: 🕊️ Libre 🎀️ Quality: 2. 🏅️⭐⭐⭐⭐ (good)
🏛️ License: GPL-3 ⭐ (temporary):
🎰️ ID: 16696 🐛️ Created: 2026-09-22

🚦 Entry status

💡 Lights on: 🚧️ Some work remains to be done:
📰 What's new?: 💥️ New 💭️ New version published (to be updated):
🦣️ Awaiting publication on Mastodon: 🎨️ Significant improvement:
🦺️ Work in progress: 🎖️ This work: 5 stars
📰 Previous News: 🛜️ RSS (on RSS Guard): ✓
👫️ Contrib.: goupildb 🛜️ Reading frequency: 0w (well-spaced updates)
🐜️ Updated: 2026-10-02

📦️ Deliverables

📦️ Package name: zesarux ..... 📦️ Arch: ✓
📄️ Source: ✓ ..... 📦️ RPM:
⚙️ Generic binary: ✓ ..... 📦️ Deb:
🌍️ Browser version: ..... 📦️ AppImage:
📱️ Mobile support: ..... 📦️ Flatpak:
🧹️ Not use: ..... 📦️ Snap:

📖️ Summary

📜️[en]: A libre, multiplatform emulator for several consoles (Sam Coupe, ZX80, ZX81, ZX Spectrum, Jupiter ACE, AMSTRAD, MSX1, Colecovision, SEGA SG1000, SMS, ...) and their variants. Notably, it features an HLE BIOS (no external BIOS required), emulation of the display and machine-specific features (such as video effects like interference, waves, lens distortion, blur, pixelation, etc.), compatibility with numerous storage formats (cassettes, Microdrives, floppy disks, MMC/SD cards, cartridges, screen recordings, or audio), a dedicated windowing system, a simulation of the ZX Spectrum desktop, joystick support, local network and online gaming, debugging tools, text adventure tools, cheat tools, translation tools, and accessibility features for the visually impaired. 📜️[fr]: Un émulateur libre et multiplateforme de plusieurs consoles (Sam Coupe, ZX80, ZX81, ZX Spectrum, Jupiter ACE, AMSTRAD, MSX1, Colecovision, SEGA SG1000, SMS, ...) et de leurs variantes. Il offre notamment un BIOS HLE (pas besoin de BIOS externe), l'émulation de l'affichage et des particularités des machines (comme les effets vidéo tel que les interférences, vagues, lentille, flou, pixellisation, ...), la compatibilité avec de nombreux formats d'enregistrement (cassettes, Microdrives, disquettes, cartes MMC/SD, cartouches, enregistrement d'écrans ou audio), un système de fenêtrage spécifique, une simulation du bureau du ZX Spectrum, le support du joystick, le jeu en réseau local/en ligne, des outils de déboguage, d'aventures textuelles, des outils de triche, de traduction, d'accessibilité pour les non voyants.

🎥️ Videos


🎮️ Showcase:
• (202508), (202508), (202509),

• (202508), (202508), (202509),

🕸️ Links

🏡️ Website & videos
• Website: [Homepage] [Dev site] [Features/About] [Screenshots]
• Videos: t(202xxx) gd(202xxx) gu(202xxx) r(202xxx) lp(202xxx) d(202508) d(202508) d(202509) d(202508) d(202508) d(202509) d(201907) d(202508) d(201905) d(202508) d(201905) d(202508) d(202508) d(202509) d(201507) d(202602) d(202509) d(202004) d(202509) d(202509) d(201808) d(201407) ht(202402) ht[fr](202xxx) ht[de](202xxx) ht[ru](202xxx) ht[pl](202xxx) ht[cz](202xxx) ht[sp](202xxx) ht[pt](202xxx) ht[it](202xxx) ht[tr](202xxx)]
• Doc: [WIKI] [FAQ]
• Updates: [RSS] / [Changelog 1(news/blog) 2(release notes) 3(tags) 4(commits)]

💰 Commercial
• (empty): [Support their work (Donate)]

🍩️ Resources

• 🗿️See also our entry: Resources - Emulation - AMSTRAD CPC
• 🗿️See also our entry: Resources - Emulation - Coleco ColecoVision
• 🗿️See also our entry: Resources - Emulation - Jupiter ACE
• 🗿️See also our entry: Resources - Emulation - MGT SAM Coupé
• 🗿️See also our entry: Resources - Emulation - Microsoft MSX
• 🗿️See also our entry: Resources - Emulation - SEGA Master System (SMS, Mark3)
• 🗿️See also our entry: Resources - Emulation - SEGA SG-1000 (Mark I, SEGA Game-1000)
• 🗿️See also our entry: Resources - Emulation - Sinclair QL
• 🗿️See also our entry: Resources - Emulation - Sinclair ZX Spectrum
• 🗿️See also our entry: Resources - Emulation - Sinclair ZX80 & ZX81

🛠️ Technical informations
[PCGamingWiki] [MobyGames]

🦣️ Social
Devs (ZEsarUX Team 1 2 [fr] [en]): [Site 1 2] [Chat] [mastodon] [Bluesky] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
Devs (Cesar Hernandez Baño (chernandezba) 1 2 [fr] [en]): [Site 1 2] [Chat] [mastodon] [Bluesky] [PeerTube] [YouTube] [PressKit] [Interview 1(202xxx) 2(202xxx)]
The Project: [Blog] [Chat] [Forums] [mastodon] [Bluesky] [PeerTube] [YouTube] [PressKit] [Lemmy] [reddit] [Discord]

🐝️ Related


📦️ Misc. repositories
[Repology] [pkgs.org] [Generic binary] [Arch Linux / AUR] [openSUSE] [Debian/Ubuntu] [Flatpak] [AppImage(author's repo)] [Snap] [PortableLinuxGames]

🕵️ Reviews
[HowLongToBeat] [metacritic] [OpenCritic] [iGDB]

🕊️ Source of this Entry: [Raster (20260922)]

🦣️ Social Networking Update (on mastodon)

🛠 Title: ZEsarUX
🦊️ Idea: A libre emulator for multiple machines
🏡️ -
🐣️ https://github.com/chernandezba/zesarux
🔖 #LinuxEmulation #MultiSystem
📦️ #Libre #Bin #Arch
📕️ https://lebottinlinux.vps.a-lec.org/LO.html

🥁️ Update: 13.0
⚗️ Major release(Stable)🍎️
📌️ Changes: https://github.com/chernandezba/zesarux/releases
🦣️ From: https://retro-gaiden.com/@raster/117316435768458366
🛜️ https://github.com/chernandezba/zesarux/tags.atom

🎮️ https://www.youtube.com/embed/bvqRN8TQ-x8
🎮️ https://www.youtube.com/embed/4w2n7BwTPWo
🎮️ https://www.youtube.com/embed/diXa9uKKgbE

🕶️ A view of its UI (v. 13.0, on my Linux PC) in a simplified version (without the optional ZX Spectrum desktop) featuring the game Dizzy VIII - Wonderful Dizzy, a free adventure and platformer also available on the ZX Spectrum (ZX Spectrum+ 128k) in which the protagonist is a character resembling "Mr. Potato”. He is (at the time the screenshot was taken) on the ground floor of a house, with a man on the ground floor and a woman upstairs near a ladder. Most of the window is taken up by the game; a banner at the bottom of the screen displays information about the emulated hardware (ZX Spectrum+ 128k, 50 FPS, 5% CPU, 37°C, and version 13.0 of ZEsarUX).

📚️ ZEsarUX is a libre, multiplatform emulator for several consoles (Sam Coupe, ZX80, ZX81, ZX Spectrum, Jupiter ACE, AMSTRAD, MSX1, Colecovision, SEGA SG1000, SMS, ...) and their variants. Notably, it features an HLE BIOS (no external BIOS required), emulation of the display and machine-specific features (such as video effects like interference, waves, lens distortion, blur, pixelation, etc.), compatibility with numerous storage formats (cassettes, Microdrives, floppy disks, MMC/SD cards, cartridges, screen recordings, or audio), a dedicated windowing system, a simulation of the ZX Spectrum desktop, joystick support, local network and online gaming, debugging tools, text adventure tools, cheat tools, translation tools, and accessibility features for the visually impaired.

🕵‍ 13.0: 👍️⭐⭐⭐
⚪️ I've only tested 10% of its capabilities— specifically with the AMSTRAD and the Sinclair ZX Spectrum
🟠️ An emulator that isn't easy to get the hang of (you'll need to spend some time with it before you can use it properly).
🟠️ Even though the AMSTRAD BASIC seems to work, I haven't been able to load any AMSTRAD 464/664 games (maybe I'm doing it wrong, but the whole thing didn't seem very intuitive to me).
🟢️ On the other hand, it turns out to be a very good ZX Spectrum emulator.

📕 Description [en]

📜️ "A libre emulator for multiple machines" 📜️


ZEsarUX - ZX Second-Emulator And Released for UniX

Created by Cesar Hernandez Baño

https://github.com/chernandezba/zesarux

It's a ZX Machines Emulator for UNIX based operating systems (and Windows), including all the Sinclair computers:

✅️ MK14
✅️ ZX80
✅️ ZX81
✅️ ZX Spectrum
✅️ QL
✅️ Z88

And also:

✅️ Microdigital TK80, TK82, TK82C, TK83, TK85, TK90X (Portuguese and Spanish), TK95 (Portuguese and Spanish)
✅️ Czerweny CZ 1000, CZ 1500, CZ 2000, CZ 1000 Plus, CZ 1500 Plus, CZ Spectrum, CZ Spectrum Plus
✅️ Timex Sinclair 1000, 1500, 2068
✅️ Timex Computer 2048, 2068
✅️ Inves Spectrum +
✅️ Sam Coupe
✅️ Pentagon
✅️ Chloe 140 SE, 280 SE
✅️ Chrome
✅️ Prism
✅️ ZX-Uno
✅️ ZX-Evolution BaseConf (beta)
✅️ ZX-Evolution TS-Conf
✅️ ZX Spectrum Next
✅️ Jupiter Ace
✅️ Amstrad CPC 464, CPC 4128, CPC 664, CPC 6128
✅️ Amstrad PCW 8256, PCW 8512
✅️ MSX1
✅️ Spectravideo 318/328
✅️ Colecovision
✅️ Sega SG1000
✅️ Sega Master System

ZEsarUX source code and binaries are distributed under GNU GPL license. ZEsarUX also includes a folder, "my_soft", which has some programs, games and data created by me and other members of my family. The entire folder is also covered by the GNU GPL license.

ZEsarUX also includes third-party roms, media, programs and games NOT covered by this license.

This is my second ZX Spectrum emulator after ZXSpectr https://github.com/chernandezba/zxspectr

I recommend you to read FEATURES, INSTALL and HISTORY files, as well as other documents in this emulator. You can open them from the help menu or from an external viewer.

ZEsarUX distributed under GNU GENERAL PUBLIC LICENSE v3. You may read it on the LICENSE file.

Please read the other licenses used in ZEsarUX, from the menu Help->Licenses or just open files from folder licenses/


DONATE

ZEsarUX is free software and you don't need to pay to use it. ZEsarUX will always cost you nothing to use, but that doesn't mean it costs me nothing to make. So if you want to demonstrate your appreciation to it and also help me cover the costs of my development servers, you can donate using Paypal. All donors will appear in the DONORS file.

Just click:

ZEsarUX donation

Thanks!

FEATURES

✅️ Runs on any UNIX based operating system and Windows: tested on GNU/Linux x86, GNU/Linux x86_64, GNU/Linux Raspbian, GNU/Linux RetroPie, FreeBSD x86_64, Haiku, Mac OS X, Windows native, Windows + Cygwin

✅️ Emulates:
• Science of Cambridge MK14
• Sinclair ZX80
• Sinclair ZX81
• Sinclair ZX Spectrum models: 16k, 48k (English and Spanish), 48k+ (English and Spanish), Spectrum 128k (English and Spanish), Spectrum +2 (English, Spanish and French), Spectrum +2A (English and Spanish), Spectrum +3 (English and Spanish)
• Sinclair QL
• Cambridge Z88
• Microdigital TK80, TK82, TK82C, TK83, TK85, TK90X (Portuguese and Spanish), TK95 (Portuguese and Spanish)
• Czerweny CZ 1000, CZ 1500, CZ 1000 Plus, CZ 1500 Plus, CZ 2000, CZ Spectrum, CZ Spectrum Plus
• Timex Sinclair 1000, 1500, 2068
• Timex Computer 2048, 2068
• Inves Spectrum +
• Sam Coupe
• Pentagon
• Chloe 140 SE, 280 SE
• Chrome
• Prism
• ZX-Uno
• ZX-Evolution BaseConf
• ZX-Evolution TS-Conf
• ZX Spectrum Next
• Jupiter Ace
• Amstrad CPC 464, CPC 4128, CPC 664, CPC 6128
• Amstrad PCW 8256, PCW 8512
• MSX1
• Spectravideo 318/328
• Colecovision
• Sega SG1000
• Sega Master System

✅️ Is the only emulator for machines: Chloe 140/280, Prism and Chrome
✅️ Almost perfect emulation of timing of all Spectrum machines
✅️ Emulates undocumented Z80 flags, features, and MEMPTR register
✅️ Emulates idle bus port, contended memory, ULA early/late timings
✅️ Emulates Motorola CPU 68008 (Sinclair QL)
✅️ Emulates SC/MP CPU - INS8060 (MK14)
✅️ Emulates perfect ZX Spectrum 16k/48k colour palette
✅️ Emulates ULAplus: Standard 64 colour palette, linear modes with 16 colours per pixel: Radastan Mode: 128x96, ZEsarUX modes: 256x96, 128x192, 256x192
✅️ Emulates Flash Color mode (128 colors)
✅️ Emulates Chroma81 ZX81 Colour mode
✅️ Emulates Spectra Video Modes
✅️ Emulates Amstrad PCW Colour Video Modes
✅️ Emulates Timex Video modes (Mode 0 standard, 1 dual screen, 2 hires colour 8x1, 6 512x192 monochrome)
✅️ Emulates Pentagon 16C mode
✅️ Emulates All Video modes from Prism machine
✅️ Emulates ZGX Sprite Chip
✅️ Emulates snow effect on Spectrum models
✅️ Emulates interlaced, scanlines and Gigascreen effects
✅️ Emulates hi-res modes on ZX Spectrum (rainbow effects and others) and ZX80/ZX81 (UDG, CHR$128, WRX, HRG and some other hi-res modes)
✅️ Supports lots of video effects:
• Reduce, Unsteady, Flip Vertical, Flip Horizontal, Rotate, Twirl, Interferences, Sea, Waves, Magnetic Field, Shear, Lens, Radar
• Zoom, Zoom Mouse, Pixelate, Blur, Shader Border, LED, LED RGB, Hsync lost, Vsync lost, Scroll Horizontal, Scroll Vertical, Fade In, Fade Out, Fade InOut
• Scanlines, Sepia, Red, RGB, Decolorize, Persistence, Contrast, Brightness, Nagravision, Random Lines, Decode Nagravision, Sortalike, Logo Rebound
• Restore Original, Copy to buffer, Mix from Buffer, Load BMP
✅️ Can generate Anaglyph images for 3D glasses (red-blue glasses)
✅️ Uses its own powerful window environment (ZX Vision) inside the program application window, having the same GUI style on all plattforms. Allows to have an extended display to hold menus and multitask windows in the GUI (ZX Desktop)
✅️ Partial support for Spanish and Catalan language on menus
✅️ Can be used with joystick and environments without keyboard, like Raspiboy / Retropie
✅️ Emulates all the oddities of the Inves Spectrum +: 64 KB RAM, RAM initialization with FF00H pattern, OUT ula AND RAM, EAR and MIC XOR, no contended memory, snow in border, colour ula delay, interrupt starts at end of top border (not at the beginning of the border), corrupt memory on every interrupt, no idle bus
✅️ Uses Video drivers: X-Windows, SDL, Cocoa (Mac OS X), Framebuffer, ncurses, aalib, cacalib, stdout(console), simpletext(console)
✅️ Uses Audio Drivers: PulseAudio, Alsa, SDL, DSP(OSS), One Bit Speaker (PC Speaker and Raspberry Pi GPIO speaker, without any kind of sound card), CoreAudio (Mac OS X).
✅️ Supports dumping audio & video to file
✅️ Allows to save screen to formats: SCR, PBM, BMP, TXT, STL (3D Model)
✅️ Supports loading from real tape (any external audio source, like tape player, mp3 player, etc)
✅️ Supports real tape loading of file formats: RWA, SMP, WAV, TZX, PZX, CDT, TAP, P, P81, O. It handles loading of turbo load tapes or any type of tape loading for standard/non standard loading routines
✅️ Handles binary tape format files (TAP, TZX, PZX, O, P, P81, CDT, CAS) on standard ROM routines for ZX Spectrum, ZX80, ZX81, Amstrad CPC, Jupiter Ace, MSX, Spectravideo
✅️ Handles real audio loading (RWA, SMP, WAV) on standard ROM routines for ZX Spectrum, ZX80, ZX81, Amstrad CPC, Jupiter Ace
✅️ Simulates real tape loading on standard ROM routines for ZX Spectrum, ZX80, ZX81
✅️ Handles snapshot formats: ZSF, ZX, Z80, SP, SPG, NEX, SNA, P, P81, O, Z81, ACE
✅️ Handles microdrive formats: MDR, RMD and MDV
✅️ Handles floppy disk formats: DSK
✅️ Handles MMC/SD card formats: HDF, IMG, RAW (.MMC)
✅️ Handles IDE hard disk formats: RAW (.IDE)
✅️ Handles cartridge formats: DCK, ROM, COL, SG
✅️ Handles RZX playback
✅️ Emulates the following Copy Interfaces: Defcon, Dinamid3, Hilow Barbanegra, Interface007, Microhobby Pokeador Automatico, Multiface (One, 128 and Three), Phoenix, Ramjet, Spec-Mate, Transtape
✅️ Emulates Dinamic SD1
✅️ Emulates Datagear/MB02 DMA, ZX-Uno DMA
✅️ Emulates Nec PD765 floppy disk controller, used on Spectrum +3, CPC 664, CPC 6128, PCW
✅️ Emulates ZX Microdrive on ZX Spectrum and QL: on ZX Spectrum supports MDR (standard file system format) and raw format (extension RMD). On QL is simulated by rom traps, accessing files from your computer and also from MDV (QLAY format)
✅️ Emulates Betadisk/TR-DOS. Direct support for .trd files. scl files can be converted from file selector pressing space
✅️ Emulates ZX Spectrum MMC Interfaces: ZXMMC, ZXMMC+, DivMMC
✅️ Emulates ZX Spectrum IDE Interfaces: DivIDE, 8-bit simple
✅️ Emulates ZX Spectrum ESXDOS file access using files from your computer
✅️ Emulates Sam Coupe IDE Interface: Atom Lite
✅️ Emulates ZXPand MMC Interface on ZX80 and ZX81
✅️ Emulates ZX Dandanator! Mini, CPC Dandanator! Mini
✅️ Emulates Speccy Superupgrade
✅️ Emulates Kartusho, iFrom interfaces by Antonio Villena
✅️ Emulates SamRam interface by Gerton Lunter (author of famous Z80 emulator)
✅️ Emulates LEC Memory extension
✅️ Emulates HiLow DataDrive
✅️ Handles RAM, EPROM, Intel Flash and Hybrid (RAM+EPROM) cards on Z88
✅️ Handles QL microdrive/floppy file access using files from your computer. Allows reading Q-emuLator file headers. Allows EXECuting files without headers
✅️ Handles compressed formats zip (with internal decompressor), and tar, rar, gz through external utilities
✅️ Emulates AY Audio Chip, Turbosound (2 AY Channels), 3 AY Channels, MIDI channels, different DAC: Specdrum, Covox, ACB/ABC/BAC/CBA Stereo
✅️ Emulates General Sound
✅️ Emulates SN76489AN Audio Chip
✅️ Emulates Quicksilva, ZON-X81, and VSYNC-based sound on ZX80/81
✅️ Emulates Speaker and Soundbox sound on Jupiter Ace
✅️ Experimental simulation of the Sam Coupe Audio Chip (SAA1099)
✅️ Emulates i8049 QL sound
✅️ Simulates Nagravision Audio effect
✅️ Supports RAM size up to 1024 KB on Spectrum and Pentagon
✅️ Supports RAM packs on ZX80/81 up to 56 KB
✅️ Supports RAM packs on Jupiter Ace up to 51 KB
✅️ Joystick emulation with real joystick and keyboard cursors: Kempston, Sinclair 1&2, Cursor Joystick, Cursor & Shift, OPQA, Fuller, Zebra, Mikro-Gen, ZXPand, SAM Coupe Cursors, CPC, MSX, Spectravideo, Cascade, DKTronics. Autofire function too
✅️ Allow to use a steering wheel joystick on Spectrum racing games as an analog controller
✅️ On Screen keyboard useful when playing with joystick, two types: one with keyboard letters, and another with words, useful for playing Text Adventures. Also a tool to extract words from text adventures (Daad, Paws, Quill and Gac)
✅️ Emulates Spectrum keyboard ghosting error feature
✅️ ZX Spectrum Recreated keyboard support
✅️ Emulates native turbo modes on ZX-Uno, Chloe, Prism and ZX Spectrum Next, and manual for other machines
✅️ ZX Printer emulation
✅️ Optical Input emulation: Emulates Gunstick from MHT Ingenieros S.L, Magnum Light Phaser, Stack Light Rifle, Defender Light Gun, Trojan Light Pen, Datel Lightwriter, Spectrum Doodler Lightpen
✅️ Kempston mouse emulation
✅️ Supports Network gaming using its own protocol (ZEsarUX Network Gaming protocol - ZENG), which allows you to play in two different ways: using two or more (up to 16) ZEsarUX instances, located each one on any part of the world or in a local network, or with a central server (ZENG Online). Games doesn't have to be modified, you can use any existing game
✅️ Uart bridge emulation: allows you to use a real uart-wifi device connected to your computer, on GNU/Linux only (Windows, Mac can simulate it)
✅️ Can browse online ZX81 games
✅️ Can browse online Spectrum games
✅️ Supports Send Text as keystrokes, reading from a text file or the system clipboard on systems: Mac, Windows, GNU/Linux (SDL2, Xwindow)
✅️ Supports drag & drop on systems: Mac, Windows, GNU/Linux (SDL2, Xwindow)
✅️ Supports reading Pokes from .POK files
✅️ Audio Chip Tools: For the 3 emulated audio chips (AY-3-8912, SN76489AN, QL i8049): Sheet, Piano, Registers, export music to midi (.mid) files
✅️ Real Time playback from Audio Chip Sound (AY-3-8912, SN76489AN, QL i8049) to external MIDI device
✅️ AY Player: allowing to play music from .AY files
✅️ AY Mixer
✅️ Visual Real Tape: you have an audio render of your tape, see tape blocks and rewind or move forward the cassette player
✅️ Visual Casette Tape: allow to see a real tape and the movement when loading a game
✅️ Visual Floppy: allow to see floppy activity: disk movement, reads, writes, head seek, etc
✅️ Visual Microdrive: allow to see microdrive activity
✅️ Supports ZEsarUX remote command protocol (ZRCP). This is a powerful communications protocol between a client and ZEsarUX, using a simple telnet client. One of the things you can do it is enhanced debugging on ZEsarUX from Visual Studio Code (see https://github.com/maziac/DeZog)
✅️ Can use a reduced Spectrum core, with some features disabled, useful on slow devices, like Raspberry Pi 1/Zero
✅️ Can generate Automatic Snapshots to RAM and also do a Rewind operation
✅️ Powerful debug features: Reverse Debugging, CPU History, Assembler, Registers, Dissassemble, Conditional Breakpoints using text expressions, Watches, Step-to-step, Step-over, Runto, Show TV electron position, Load source code, Hexadecimal Editor, View Sprites, View Tiles, Find bytes, Infinite lives finder, CPU Transaction log, View BASIC, View BASIC variables, View BASIC GOSUB stack, verbose messages on console
✅️ Text adventure debugger: On a Quill/Paws/Daad/Gac text adventure you can Step to Step condact, watch flags/objects, list messages (objects, user/system messages, locations, compressed tokens, vocabulary), connections, Text Adventure Map. Can also view graphics from a Quill, Paws, Daad or Gac aventure.
✅️ Use artificial intelligence to get realistic images for location description on Text Adventure games
✅️ File utilities menu: Allowing to view, expand and convert some common file formats: tap, tzx, pzx, trd, dsk, mdv, hdf, ddh, etc. Can also browse inside file system images (.mmc, .img, etc)
✅️ Accessibility support: Print char traps allows to capture generated text from almost any program or game, using standard ROM calls (RST 10H) or even non standard print character routines. Can send generated text from a game to a text-to-speech program. It's ready for text to speech support for blind or visually impaired people. Menu emulator can also be read by a text-to-speech program.
✅️ Translation support: Can translate text from almost any program or game using external scripts
✅️ Memory Cheat: useful to find counters of energy, bombs, ammo or any other cheat in a game
✅️ Simulates upper RAM memory refresh on Spectrum 48Kb, losing its contents when changing R register very quickly
✅️ Supports command line settings, configuration file settings and per-game configuration settings
✅️ Supports execution on Docker, tested on Debian, Ubuntu and Fedora containers
✅️ Other features: Visualmem menu, CPU Statistics, Toy ZXeyes, Toy ZXlife, Ascii Table, Sensors
✅️ Includes seven easter eggs. Can you find them? :)

📕 Description [fr]

Un émulateur libre de plusieurs machines, par la ZEsarUX Team, initié par Cesar Hernandez Baño (chernandezba).
En C/C++/Basic.

ZEsarUX est un émulateur libre et multiplateforme de plusieurs consoles (Sam Coupe, ZX80, ZX81, ZX Spectrum, Jupiter ACE, AMSTRAD, MSX1, Colecovision, SEGA SG1000, SMS, ...) et de leurs variantes. Il offre notamment un BIOS HLE (pas besoin de BIOS externe), l'émulation de l'affichage et des particularités des machines (comme les effets vidéo tel que les interférences, vagues, lentille, flou, pixellisation, ...), la compatibilité avec de nombreux formats d'enregistrement (cassettes, Microdrives, disquettes, cartes MMC/SD, cartouches, enregistrement d'écrans ou audio), un système de fenêtrage spécifique, une simulation du bureau du ZX Spectrum, le support du joystick, le jeu en réseau local/en ligne, des outils de déboguage, d'aventures textuelles, des outils de triche, de traduction, d'accessibilité pour les non voyants.


ZEsarUX - Émulateur ZX de deuxième génération disponible sous Unix

Créé par Cesar Hernandez Baño

https://github.com/chernandezba/zesarux

Il s'agit d'un émulateur des machines ZX destiné aux systèmes d'exploitation basés sur Unix (et Windows), prenant en charge tous les ordinateurs Sinclair :

✅️ MK14
✅️ ZX80
✅️ ZX81
✅️ ZX Spectrum
✅️ QL
✅️ Z88

Et également :

✅️ Microdigital TK80, TK82, TK82C, TK83, TK85, TK90X (portugais et espagnol), TK95 (portugais et espagnol)
✅️ Czerweny CZ 1000, CZ 1500, CZ 2000, CZ 1000 Plus, CZ 1500 Plus, CZ Spectrum, CZ Spectrum Plus
✅️ Timex Sinclair 1000, 1500, 2068
✅️ Timex Computer 2048, 2068
✅️ Inves Spectrum +
✅️ Sam Coupe
✅️ Pentagon
✅️ Chloe 140 SE, 280 SE
✅️ Chrome
✅️ Prism
✅️ ZX-Uno
✅️ ZX-Evolution BaseConf (bêta)
✅️ ZX-Evolution TS-Conf
✅️ ZX Spectrum Next
✅️ Jupiter Ace
✅️ Amstrad CPC 464, CPC 4128, CPC 664, CPC 6128
✅️ Amstrad PCW 8256, PCW 8512
✅️ MSX1
✅️ Spectravideo 318/328
✅️ Colecovision
✅️ Sega SG1000
✅️ Sega Master System

Le code source et les binaires de ZEsarUX sont distribués sous licence GNU GPL. ZEsarUX comprend également un dossier, « my_soft », qui contient des programmes, des jeux et des données créés par moi-même et d’autres membres de ma famille. L’ensemble de ce dossier est également couvert par la licence GNU GPL.

ZEsarUX comprend également des ROM, des fichiers multimédias, des programmes et des jeux tiers qui ne sont PAS couverts par cette licence.

Il s'agit de mon deuxième émulateur ZX Spectrum après ZXSpectr https://github.com/chernandezba/zxspectr

Je vous recommande de lire les fichiers FEATURES, INSTALL et HISTORY, ainsi que les autres documents inclus dans cet émulateur. Vous pouvez les ouvrir depuis le menu Aide ou à l'aide d'un visualiseur externe.

ZEsarUX est distribué sous licence GNU GENERAL PUBLIC LICENSE v3. Vous pouvez la consulter dans le fichier LICENSE.

Veuillez lire les autres licences utilisées dans ZEsarUX, depuis le menu Aide->Licences ou en ouvrant simplement les fichiers du dossier licenses/


FAIRE UN DON

ZEsarUX est un logiciel libre et son utilisation est gratuite. L'utilisation de ZEsarUX ne vous coûtera jamais rien, mais cela ne signifie pas pour autant que son développement ne me coûte rien. Si vous souhaitez donc me témoigner votre reconnaissance et m'aider à couvrir les coûts de mes serveurs de développement, vous pouvez faire un don via PayPal. Tous les donateurs figureront dans le fichier DONATEURS.

Il suffit de cliquer sur :

Don à ZEsarUX

Merci !

FONCTIONNALITÉS

✅️ Fonctionne sur n’importe quel système d’exploitation basé sur UNIX et sous Windows : testé sur GNU/Linux x86, GNU/Linux x86_64, GNU/Linux Raspbian, GNU/Linux RetroPie, FreeBSD x86_64, Haiku, Mac OS X, Windows natif, Windows + Cygwin

✅️ Émule :
• Science of Cambridge MK14
• Sinclair ZX80
• Sinclair ZX81
• Modèles Sinclair ZX Spectrum : 16k, 48k (anglais et espagnol), 48k+ (anglais et espagnol), Spectrum 128k (anglais et espagnol), Spectrum +2 (anglais, espagnol et français), Spectrum +2A (anglais et espagnol), Spectrum +3 (anglais et espagnol)
• Sinclair QL
• Cambridge Z88
• Microdigital TK80, TK82, TK82C, TK83, TK85, TK90X (portugais et espagnol), TK95 (portugais et espagnol)
• Czerweny CZ 1000, CZ 1500, CZ 1000 Plus, CZ 1500 Plus, CZ 2000, CZ Spectrum, CZ Spectrum Plus
• Timex Sinclair 1000, 1500, 2068
• Timex Computer 2048, 2068
• Inves Spectrum +
• Sam Coupe
• Pentagon
• Chloe 140 SE, 280 SE
• Chrome
• Prism
• ZX-Uno
• ZX-Evolution BaseConf
• ZX-Evolution TS-Conf
• ZX Spectrum Next
• Jupiter Ace
• Amstrad CPC 464, CPC 4128, CPC 664, CPC 6128
• Amstrad PCW 8256, PCW 8512
• MSX1
• Spectravideo 318/328
• Colecovision
• Sega SG1000
• Sega Master System

✅️ C'est le seul émulateur pour les machines suivantes : Chloe 140/280, Prism et Chrome
✅️ Émulation quasi parfaite de la synchronisation de toutes les machines Spectrum
✅️ Émule les indicateurs, les fonctionnalités et le registre MEMPTR non documentés du Z80
✅️ Émule le port de bus inactif, la mémoire en conflit, ainsi que les synchronisations précoces/tardives de l'ULA
✅️ Émule le processeur Motorola 68008 (Sinclair QL)
✅️ Émule le processeur SC/MP - INS8060 (MK14)
✅️ Émule parfaitement la palette de couleurs du ZX Spectrum 16k/48k
✅️ Émule l'ULAplus : palette standard de 64 couleurs, modes linéaires avec 16 couleurs par pixel : mode Radastan : 128x96, modes ZEsarUX : 256x96, 128x192, 256x192
✅️ Émule le mode Flash Color (128 couleurs)
✅️ Émule le mode couleur Chroma81 du ZX81
✅️ Émule les modes vidéo du Spectrum
✅️ Émule les modes vidéo couleur de l'Amstrad PCW
✅️ Émule les modes vidéo du Timex (mode 0 standard, 1 double écran, 2 haute résolution couleur 8x1, 6 monochrome 512x192)
✅️ Émule le mode Pentagon 16C
✅️ Émule tous les modes vidéo de la machine Prism
✅️ Émule la puce Sprite ZGX
✅️ Émule l'effet « neige » sur les modèles Spectrum
✅️ Émule les effets d'entrelacement, de lignes de balayage et de Gigascreen
✅️ Émule les modes haute résolution sur ZX Spectrum (effets arc-en-ciel et autres) et sur ZX80/ZX81 (UDG, CHR$128, WRX, HRG et certains autres modes haute résolution)
✅️ Prend en charge de nombreux effets vidéo :
• Réduction, Instabilité, Inversion verticale, Inversion horizontale, Rotation, Tourbillon, Interférences, Mer, Vagues, Champ magnétique, Cisaillement, Lentille, Radar
• Zoom, Zoom souris, Pixellisation, Flou, Bordure ombrée, LED, LED RVB, Perte Hsync, Perte Vsync, Défilement horizontal, Défilement vertical, Fondu entrant, Fondu sortant, Fondu entrant/sortant
• Lignes de balayage, sépia, rouge, RVB, décoloration, persistance, contraste, luminosité, Nagravision, lignes aléatoires, décodage Nagravision, effet Sortalike, rebond de logo
• Restaurer l’original, copier dans le tampon, mélanger à partir du tampon, charger un fichier BMP
✅️ Permet de générer des images anaglyphes pour lunettes 3D (lunettes rouge-bleu)
✅️ Utilise son propre environnement de fenêtrage puissant (ZX Vision) au sein de la fenêtre de l’application, avec un style d’interface graphique identique sur toutes les plateformes. Permet de disposer d’un affichage étendu pour accueillir les menus et les fenêtres multitâches dans l’interface graphique (ZX Desktop)
✅️ Prise en charge partielle de l’espagnol et du catalan dans les menus
✅️ Peut être utilisé avec un joystick et dans des environnements sans clavier, comme Raspiboy / Retropie
✅️ Émule toutes les particularités de l’Inves Spectrum + : 64 Ko de RAM, initialisation de la RAM avec le motif FF00H, ULA OUT ET RAM, XOR EAR et MIC, pas de mémoire en conflit, « neige » dans la bordure, délai de l’ULA couleur, interruption commençant à la fin de la bordure supérieure (et non au début de la bordure), mémoire corrompue à chaque interruption, pas de bus inactif
ncurses, aalib, cacalib, stdout (console), simpletext (console)
✅️ Pilotes audio pris en charge : PulseAudio, Alsa, SDL, DSP (OSS), haut-parleur 1 bit (haut-parleur PC et haut-parleur GPIO du Raspberry Pi, sans aucune carte son), CoreAudio (Mac OS X).
✅️ Prise en charge de l'enregistrement audio et vidéo dans un fichier
✅️ Permet d'enregistrer l'écran aux formats suivants : SCR, PBM, BMP, TXT, STL (Modèle 3D)
✅️ Prend en charge la lecture à partir d’une cassette physique (toute source audio externe, comme un lecteur de cassettes, un lecteur MP3, etc.)
✅️ Prend en charge la lecture à partir d’une cassette physique des formats de fichiers suivants : RWA, SMP, WAV, TZX, PZX, CDT, TAP, P, P81, O. Il gère la lecture des cassettes « turbo load » ou tout autre type de lecture de cassette pour les routines de lecture standard ou non standard
✅️ Prend en charge les fichiers au format binaire de cassette (TAP, TZX, PZX, O, P, P81, CDT, CAS) avec les routines ROM standard pour ZX Spectrum, ZX80, ZX81, Amstrad CPC, Jupiter Ace, MSX, Spectravideo
✅️ Prend en charge le chargement de fichiers audio réels (RWA, SMP, WAV) via les routines ROM standard pour ZX Spectrum, ZX80, ZX81, Amstrad CPC, Jupiter Ace
✅️ Simule le chargement réel de bandes via les routines ROM standard pour ZX Spectrum, ZX80, ZX81
✅️ Prise en charge des formats de sauvegarde : ZSF, ZX, Z80, SP, SPG, NEX, SNA, P, P81, O, Z81, ACE
✅️ Prise en charge des formats Microdrive : MDR, RMD et MDV
✅️ Prise en charge des formats de disquettes : DSK
✅️ Prend en charge les formats de cartes MMC/SD : HDF, IMG, RAW (.MMC)
✅️ Prend en charge les formats de disques durs IDE : RAW (.IDE)
✅️ Prend en charge les formats de cartouches : DCK, ROM, COL, SG
✅️ Prend en charge la lecture de fichiers RZX
✅️ Émule les interfaces de copie suivantes : Defcon, Dinamid3, Hilow Barbanegra, Interface007, Microhobby Pokeador Automatico, Multiface (One, 128 et Three), Phoenix, Ramjet, Spec-Mate, Transtape
✅️ Émule la Dinamic SD1
✅️ Émule le DMA Datagear/MB02 et le DMA ZX-Uno
✅️ Émule le contrôleur de disquette Nec PD765, utilisé sur le Spectrum +3, le CPC 664, le CPC 6128 et le PCW
✅️ Émule le ZX Microdrive sur ZX Spectrum et QL : sur ZX Spectrum, prend en charge le format MDR (système de fichiers standard) et le format brut (extension RMD). Sur QL, il est simulé par des rom traps, permettant d'accéder aux fichiers depuis votre ordinateur ainsi que depuis un MDV (format QLAY)
✅️ Émule Betadisk/TR-DOS. Prise en charge directe des fichiers .trd. Les fichiers .scl peuvent être convertis à partir du sélecteur de fichiers en appuyant sur la barre d'espace
✅️ Émule les interfaces MMC du ZX Spectrum : ZXMMC, ZXMMC+, DivMMC
✅️ Émule les interfaces IDE du ZX Spectrum : DivIDE, simple 8 bits
✅️ Émule l'accès aux fichiers ESXDOS du ZX Spectrum à partir des fichiers de votre ordinateur
✅️ Émule l'interface IDE du Sam Coupe : Atom Lite
✅️ Émule l'interface MMC du ZXPand sur le ZX80 et le ZX81
✅️ Émule le ZX Dandanator! Mini et le CPC Dandanator! Mini
✅️ Émule Speccy Superupgrade
✅️ Émule les interfaces Kartusho et iFrom d'Antonio Villena
✅️ Émule l'interface SamRam de Gerton Lunter (auteur du célèbre émulateur Z80)
✅️ Émule l'extension de mémoire LEC
✅️ Émule le HiLow DataDrive
✅️ Prend en charge les cartes RAM, EPROM, Intel Flash et hybrides (RAM+EPROM) sur le Z88
✅️ Gère l'accès aux fichiers du Microdrive et des disquettes QL à partir de votre ordinateur. Permet la lecture des en-têtes de fichiers Q-emuLator. Permet l'exécution de fichiers sans en-tête
✅️ Gère les formats compressés zip (avec décompresseur interne), ainsi que tar, rar et gz via des utilitaires externes
✅️ Émule la puce audio AY, Turbosound (2 canaux AY), 3 canaux AY, les canaux MIDI, ainsi que différents DAC : Specdrum, Covox, ACB/ABC/BAC/CBA stéréo
✅️ Émule le son « General Sound »
✅️ Émule la puce audio SN76489AN
✅️ Émule les sons Quicksilva, ZON-X81 et basés sur VSYNC sur ZX80/81
✅️ Émule les sons « Speaker » et « Soundbox » sur Jupiter Ace
✅️ Simulation expérimentale de la puce audio du Sam Coupe (SAA1099)
✅️ Émule le son i8049 du QL
✅️ Simule l'effet audio Nagravision
✅️ Prend en charge une mémoire vive (RAM) allant jusqu'à 1 024 Ko sur Spectrum et Pentagon
✅️ Prend en charge les modules de mémoire vive (RAM packs) sur ZX80/81 jusqu'à 56 Ko
✅️ Prend en charge les modules de mémoire vive (RAM packs) sur Jupiter Ace jusqu'à 51 Ko
✅️ Émulation de manette avec manettes réelles et curseurs clavier : Kempston, Sinclair 1&2, Cursor Joystick, Cursor & Shift, OPQA, Fuller, Zebra, Mikro-Gen, ZXPand, curseurs SAM Coupe, CPC, MSX, Spectravideo, Cascade, DKTronics. Fonction « tir automatique » également
✅️ Permet d'utiliser un joystick de type volant sur les jeux de course Spectrum comme manette analogique
✅️ Clavier à l'écran utile lors de l'utilisation d'un joystick, disponible en deux versions : l'une avec les lettres du clavier, l'autre avec des mots, pratique pour jouer aux jeux d'aventure textuels. Comprend également un outil permettant d'extraire des mots des jeux d'aventure textuels (Daad, Paws, Quill et Gac)
✅️ Émule le comportement de « ghosting » (doublage des touches) du clavier Spectrum
✅️ Prise en charge du clavier « ZX Spectrum Recreated »
✅️ Émule les modes turbo natifs sur ZX-Uno, Chloe, Prism et ZX Spectrum Next, et en mode manuel pour les autres machines
✅️ Émulation d’imprimante ZX
✅️ Émulation d’entrée optique : émule le Gunstick de MHT Ingenieros S.L, le Magnum Light Phaser, le Stack Light Rifle, le Defender Light Gun, le Trojan Light Pen, le Datel Lightwriter et le Spectrum Doodler Lightpen
✅️ Émulation de la souris Kempston
✅️ Prise en charge du jeu en réseau via son propre protocole (protocole ZEsarUX Network Gaming – ZENG), qui vous permet de jouer de deux façons différentes : en utilisant deux instances ZEsarUX ou plus (jusqu’à 16), situées n’importe où dans le monde ou sur un réseau local, ou via un serveur central (ZENG Online). Il n'est pas nécessaire de modifier les jeux, vous pouvez utiliser n'importe quel jeu existant
✅️ Émulation de pont UART : vous permet d'utiliser un véritable périphérique UART-Wi-Fi connecté à votre ordinateur, sous GNU/Linux uniquement (Windows et Mac peuvent le simuler)
✅️ Permet de parcourir les jeux ZX81 en ligne
✅️ Permet de parcourir les jeux Spectrum en ligne
✅️ Prend en charge l’envoi de texte sous forme de frappes clavier, à partir d’un fichier texte ou du presse-papiers système sur les plateformes suivantes : Mac, Windows, GNU/Linux (SDL2, Xwindow)
✅️ Prend en charge le glisser-déposer sur les plateformes suivantes : Mac, Windows, GNU/Linux (SDL2, Xwindow)
✅️ Prise en charge de la lecture des « Pokes » à partir de fichiers .POK
✅️ Outils pour les puces audio : pour les 3 puces audio émulées (AY-3-8912, SN76489AN, QL i8049) : partition, piano, registres, exportation de la musique vers des fichiers MIDI (.mid)
✅️ Lecture en temps réel des sons des puces audio (AY-3-8912, SN76489AN, QL i8049) vers un périphérique MIDI externe
✅️ AY Player : permet de lire de la musique à partir de fichiers .AY
✅️ AY Mixer
✅️ Visual Real Tape : vous disposez d’une représentation audio de votre cassette ; vous pouvez voir les blocs de la bande et rembobiner ou avancer le lecteur de cassette
✅️ Visual Cassette Tape : permet de visualiser une véritable cassette et son mouvement lors du chargement d’un jeu
✅️ Visual Floppy : permet de visualiser l’activité de la disquette : mouvement du disque, lectures, écritures, recherche de la tête, etc.
✅️ Visual Microdrive : permet de visualiser l’activité du microdrive
✅️ Prise en charge du protocole de commande à distance ZEsarUX (ZRCP). Il s’agit d’un puissant protocole de communication entre un client et ZEsarUX, utilisant un simple client Telnet. L’une des possibilités offertes est le débogage avancé sur ZEsarUX depuis Visual Studio Code (voir https://github.com/maziac/DeZog)
✅️ Possibilité d’utiliser un cœur Spectrum allégé, avec certaines fonctionnalités désactivées, ce qui est utile sur les appareils lents, comme le Raspberry Pi 1/Zero
✅️ Possibilité de générer des instantanés automatiques vers la RAM et d’effectuer une opération de retour en arrière
✅️ Fonctionnalités de débogage puissantes : débogage inversé, historique du processeur, assembleur, registres, désassemblage, points d’arrêt conditionnels à l’aide d’expressions textuelles, variables de surveillance, exécution pas à pas, exécution par saut, exécution en mode « Runto », affichage de la position de l’électron TV, chargement du code source, éditeur hexadécimal, affichage des sprites, affichage des tuiles, recherche d’octets, recherche de vies infinies, journal des transactions du processeur, affichage du BASIC, affichage des variables BASIC, affichage de la pile GOSUB BASIC, messages détaillés sur la console
✅️ Débogueur d’aventures textuelles : sur une aventure textuelle Quill/Paws/Daad/Gac, vous pouvez parcourir le code étape par étape, consulter les indicateurs et les objets, lister les messages (objets, messages utilisateur/système, lieux, jetons compressés, vocabulaire), les connexions et la carte de l’aventure textuelle. Vous pouvez également visualiser les graphismes d’une aventure Quill, Paws, Daad ou Gac.
✅️ Utilisation de l’intelligence artificielle pour obtenir des images réalistes permettant de décrire les lieux dans les jeux d’aventure textuels
✅️ Menu des utilitaires de fichiers : permet de visualiser, d’extraire et de convertir certains formats de fichiers courants : tap, tzx, pzx, trd, dsk, mdv, hdf, ddh, etc. Permet également de parcourir le contenu des images de système de fichiers (.mmc, .img, etc.)
✅️ Prise en charge de l’accessibilité : la fonction « Print char traps » permet de capturer le texte généré par presque tous les programmes ou jeux, à l’aide d’appels ROM standard (RST 10H) ou même de routines d’impression de caractères non standard. Permet d’envoyer le texte généré par un jeu vers un programme de synthèse vocale. Prise en charge de la synthèse vocale pour les personnes aveugles ou malvoyantes. Le menu de l’émulateur peut également être lu par un programme de synthèse vocale.
✅️ Prise en charge de la traduction : permet de traduire du texte provenant de presque tous les programmes ou jeux à l’aide de scripts externes
✅️ Triche mémoire : utile pour trouver les compteurs d’énergie, de bombes, de munitions ou toute autre astuce dans un jeu
✅️ Simule le rafraîchissement de la mémoire RAM supérieure sur le Spectrum 48 Ko, entraînant la perte de son contenu lorsque l’on modifie très rapidement le registre R
✅️ Prend en charge les paramètres de ligne de commande, les paramètres de fichier de configuration et les paramètres de configuration par jeu
✅️ Prise en charge de l'exécution sur Docker, testée sur des conteneurs Debian, Ubuntu et Fedora
✅️ Autres fonctionnalités : menu Visualmem, statistiques du processeur, Toy ZXeyes, Toy ZXlife, tableau ASCII, capteurs
✅️ Comprend sept easter eggs. Saurez-vous les trouver ? :)

🚧️ Installation ➜ 🚀️ Launching [fr]

⚙️ Installation à partir du binaire

📦️ Installation à partir du/des paquet(s) Manjaro/Arch :
• Il(s) est/sont dans les dépôts Manjaro/Arch, il suffit d'installer le(s) paquet(s).

⛓️ Installation à partir du binaire classique :
• Un binaire statique est disponible, décompressez le livrable, et rendez son binaire exécutable (clic droit sous votre gestionnaire de fichier).
↪ vous obtenez notamment le(s) livrable(s) suivant(s) : zesarux


📄️ Installation à partir du source

• Si vous souhaitez quelque-chose de très récent (versions de développement) et/ou qu'il n'y a pas de binaire disponible pour votre distribution/architecture (32/64-bits), la compilation du source est une bonne idée, voir un passage obligé.

▸ Téléchargement du source (sur GitHub) :
⚠️ Avertissement : Évitez le téléchargement du source via les liens https, car ils ne fournissent pas les dépendances
• Version stable, dans le répertoire souhaité, lancez : $ git clone -b "Nom_de_la_release" --recursive https://github.com/chernandezba/zesarux
(Nom_de_la_release : à remplacer par le nom d'une release valide indiquée sur la page de développement : sur GitHub, dans la section Release, le nom valide est l'étiquette située à gauche du titre, ou cliquez sur "Tags" pour obtenir la liste des étiquettes valides).
• ou Version récente (non stable), dans le répertoire souhaité, lancez : $ git clone --recursive https://github.com/chernandezba/zesarux

▸ Compilation :
• Dans son répertoire racine lancez successivement :
$ ./configure
$ make -j$(nproc)
↪ vous obtenez notamment le(s) binaire(s) et répertoire(s) : zesarux


🏕️ Installation du contenu / des données :

• ROMS de jeu : Cet émulateur vous permet de jouer sous Linux avec des ROMS téléchargées sur internet. Attention : le téléchargement de ROMS commerciales est illégal à moins de les avoir acquises financièrement.
• BIOS : Cet émulateur intègre son propre BIOS (HLE BIOS) compatible avec la console d'origine. Il est aussi possible d'installer celui de la console d'origine si vous l'avez acquis.


🚀️ LANCEMENT DE L'ÉMULATEUR

▸ Classique :
• Si vous l'avez installé à partir d'un paquet / dans l'un des répertoires système : [Alt+F2] zesarux ou en console : $ zesarux
• Ou, rendez son binaire exécutable (clic droit sous votre gestionnaire de fichier) et cliquez dessus, ou dans le répertoire où se trouve le binaire lancez : $ ./zesarux
💡 Nota : si vous l'avez installé via votre gestionnaire de paquets et ne connaissez pas le nom précis du binaire, sélectionnez le paquet dans votre gestionnaire, et dans l'onglet “Fichiers” recherchez son nom dans l'arborescence d'installation (le binaire est généralement installé dans /usr/bin/).

💡 Nota :
Quelques formats de fichiers utilisés pour les jeux/applications sur ces machines :

AMSTRAD :
(voir [CPC WIKI (List of file formats)]
- ".cpr" (format de cartouches CPC Plus)
- ".dsk" (format de disquette)

ZX Spectrum :
(voir [WorldOfSpectrum (File Formats)]
- ".tap" (format d'image de cassette),
- ".tzx" (autre format de cassette, reproduction plus fidèle de ce format. Il est également utilisé pour reproduire ce type de support pour les Amstrad CPC, Commodore 64, Enterprise, Jupiter ACE et SAM Coupe)
- ".trd" (format "TR-DOS")
- ".dsk" (format de disquette protégée)
- ".z80" (instantanés de mémoire, aka snapshot mémoire),
- ".mdr" (format des cartouches microdrive),
-".dck" (émulation Warajevo ZX Spectrum : type de fichier vidéo)



📑️ PARAMÉTRAGE

💡 Nota : L'objet de cette section est de fournir quelques suggestions / Conseils

Simplification de son interface (c'est une affaire de goût) :

• Sous son interface, sélectionnez/cliquez sur “Settings” ➜
“ZX Desktop Settings” ➜
☐ (désactivation) ZX Desktop (la zone de droite avec le bureau est alors masquée, et l'on navigue en ouvrant un menu contextuel via le clic droit sur l'interface)

“ZX Vision” ➜
☐ (désactivation) Allow set char size > 8
Char width [8]
Char width [8]
☐ (désactivation) tooltips
☐ (désactivation) First aid help


Sélection de l'émulation souhaitée :
• Sous son interface, sélectionnez/cliquez sur “clic droit” ➜ “machine” ➜
⊡ exemple pour le ZX Spectrum 128K : “Sinclair Research” ➜ “ZX Spectrum+ 128k”


Paramétrage des périphériques d'entrées :

• Gamepad(s) de test :
- Logitech Rumblepad (2 analog pads, one digital pad, + force feedback).

• Sous son interface, sélectionnez/cliquez sur “clic droit” ➜ “Settings” ➜ “hardware” ➜ “Real joystick” ➜ “Joystick to events” ➜ (associez les touches et la croix directionnelle)


⌨️🖱️🎮️ CONTRÔLES :

• Il se contrôle au clavier (en jeu, le plus facile), à la souris (pour les menus de l'émulateur) ou au gamepad (en jeu, difficile).

• Valider / Démarrer : [SPACE]

🕵️ Test [fr]

● 📜️ Préambule :
⚬ 1ere édition : le 22 septembre 2023 sous Manjaro. Par : goupildb. ⏱️ Durée du test : 120 minutes. 🎯️ Objectif : Initialisation de l'entrée, tests et premières impressions.


● 💻️ PC specs :
Linux distribution: Manjaro
Kernel: 7.1.13-2-MANJARO +iw (pour le wi-fi) + acpi_call-dkms + rapiddisk-dkms + uwurandom-git-dkms + v4l2loopback-dkms
Graphics driver: NVIDIA 610.57.04 (proprietary version, via Manjaro)
Desktop environment: X-Cinnamon (6.6.9) / Xorg 11.0 (21.1.24)

CPU: AMD Ryzen 7 2700X (3,7GHz, 8 cores)
Motherboard: MSI B450 GAMING PRO CARBON AC (RVB) + (zenpower-dkms + zenpower3-dkms + iwlwifi-ax101-dkms)
RAM: 32Go DDR4 (2x16GB)
Graphics card: GeForce RTX 2070 (TU106)
Hard disk: 1TB NVMe Force MP510 + 2x4TB Seagate Barracuda + 2x12TB Seagate IronWolf
Monitors: 1 x ASUS ROG Swift PG348Q (3440x1440) (The other died after a micro-power cut 😤️) + 1 x ASUS ROG Swift OLED PG48UQ 47,5" (3840x2160) (Get used to it 🦒️)
Webcam: Logitech HD Pro Webcam C920 (1080p@30FPS, stereo mic.)
Microphone: Samson G-Track pro Condenser
Keyboard: Keychron K1 Pro
MIDI keyboard: ARTURIA Minilab 3
Mouse: G-Lab Kult-Iridium (RVB)
Tablet: WACOM PTZ-930 (Intuos 3) (input-wacom-dkms-patched required)
Printer: brother MFC-L2800DW (brother-mfc-l2820dw (Print) + brscan5 (Scan) required).
Gamepads (test: jstest-gtk):
- (USB): Logitech Rumblepad (2 analog pads, one digital pad, + force feedback).
- (Bluetooth): Microsoft Xbox Elite Wireless Controller Series 2 (xpadneo-dkms required + Plugging & unplugging the gamepad to load the driver. If necessary, leave the gamepad connected)(drift | not recognized by games if battery low)



● 🫕️ Installation :
‣ (✘ v. 13.0) Binaire classique : NE FONCTIONNE PAS. xxxxx ↪ (...) error while loading shared libraries: libncurses.so.6: cannot open shared object file: No such file or directory
‣ (🧪️not_tested) Paquet Arch/AUR : NON TESTE.
‣ (✔ v. 13.0) Source : FONCTIONNEL.
🟢️ Son source se compile facilement et fonctionne bien,


● 🍔️ Contenu :

▸ 🕹️ Emulation
🟢️ Cet émulateur donne accès à un contenu très important,

🟢️ 1982 - Coleco Colecovision & Coleco Adam : la Colecovision est une console de 2eme génération (CPU Z80 8 bits 3,58MHz, 1ko de RAM, un contrôleur vidéo TMS9928A avec 16Ko de mémoire séparée affichant 16 couleurs avec une définition jusqu'à 256x192) sortie en 1982. Elle utilise des cartouches, un joystick et un Keypad numérique. Il est possible d'ajouter différentes extensions (volant, clavier, trackball, compatibilité Atari 2600, ...). Le Coleco Adam est un module d'extension pour la Colecovision la transformant en ordinateur personnel (il a aussi été vendu séparément en tant qu'ordinateur personnel) comprenant 64KB de mémoire, un clavier, un lecteur de cassette (pouvant lire des données compressées), une imprimante à marguerite (avec alimentation) et 2 connecteurs d'extension (un lecteur 5"1/4 et un modem sont aussi disponibles). Sa ludothèque comprend près de 400 titres.
🟢️ 1982 - Sinclair ZX Spectrum : c'est un ordinateur personnel de 2eme génération (CPU Z80 8 bits 3,5 MHz, jusqu'à 128Ko de RAM, 16 couleurs avec une définition jusqu'à 256x192) sorti en 1982. Il utilise des cassettes avec un magnétophone. Il est possible d'ajouter différentes extensions (imprimante thermique, carte sonore, port RS-232, réseau local, microdrives, manette de jeu, cartouche ROM, ...). Sa ludothèque comprend plus de 4000 titres.
🟢️ 1983 - SEGA SG-1000 et SC-3000 : la SG-1000 est une console de 3eme génération (8 bits, processeur Z80, RAM de 1ko, avec une définition de 256x192 en 16 couleurs) sortie en 1983 (en même temps que la Famicom de Nintendo). Le SC-3000 est un micro-ordinateur pour débutants intégrant la SG-1000. Sa ludothèque comprend une centaine de titres.
🟢️ 1983 - Standard MSX : le standard MSX (pour Machines with Software eXchangeability) est mis en œuvre par différents fabricants nippons pour produire des machines compatibles entre elles de 3eme génération (8 bits, processeur Z80, RAM de 8ko à 512ko, ROM ou BIOS jusqu'à 96ko, processeurs pour les graphismes et le son, avec une définition jusqu'à 512x212 en 16 couleurs parmi 512). Ce standard est sorti en 1983, décliné en 4 générations (MSX1, MSX2, MSX2+ et MSX turbo R). Il intègre MSXBasic et MSX-DOS (de Microsoft). Sa ludothèque comprend plus de 1480 titres.
🟢️ 1985 - SEGA Master System (aka SMS, Sega Mark III au Japon) : c'est une console 8 bits (CPU Z80) de 3eme génération sortie en 1985, elle succède à la SG-1000. Elle dispose de 8ko de RAM, 8ko de ROM, d'une définition de 256x192 en 32 couleurs (parmi 64). Elle entre en concurence avec la NES de Nintendo. Elle peut lire des cartes mémoires et des cartouches de jeux, et propose un pistolet optique et des lunettes stéréoscopiques. Sa ludothèque comprend moins d'une centaine de titres.


● 🌻️ Premières impressions :

🟢️ C'est une usine à gaz. La caisse à outil de l'émulation d'anciens matériels. On sent tout de suite que cet émulateur a été conçu avec amour depuis pas mal d'années :).
🟢️ L'interface propose dès son lancement une myriade d'options de paramétrage avec des suggestions.
🟠️ L'intuitivité n'est pas sont point fort. Impression renforcée par des menus fortement inspirés de ces machines (polices de caractères de l'époque, menus compliqués et arides, gestionnaire de fichier interne peu lisible, ...).

🟠️ Je me suis laissé entraîné dans certaines options d'aide qui m'ont gênés par la suite (fenêtre d'aide intempestive).
🟠️ Il m'a manqué des menus classiques et clair en haut de l'interface. J'ai opté dès le début - sans trop savoir ce que je faisais (ce qui est le principe lorsque l'on découvre un émulateur pour la première fois) pour le bureau ZX Spectrum (voir la zone de droite sur la copie d'écran). Je pense que c'était une erreur de ma part (c'est désactivable dans les options, voir plus bas) car les icônes sont nombreux et ne correspondent pas forcément à ce que l'on imaginait.
🟠️ Sur le même thème de reproches (concerne une grande majorité d'émulateurs) : beaucoup d'émulateurs (dont celui-ci) émulent le plus fidèlement possible le matériel de l'époque (ok) mais aussi les accessoires (ici aussi) et pour certains (dont celui-ci) l'interface originelle. Et là on est vite perdu. Il manque souvent une transposition simple au matériel d'aujourd'hui (le gamepad est parfois difficile à paramétrer, les menus de chargement / sauvegarde des jeux sont des usines à gaz (il accepte le glisser-déposer des jeux - mais celui-ci n'est pas fiable - voir ci-après) et ils émulent des tonnes de matériels de l'époque que 95% des utilisateurs ne connaissent ni n'utilisent - ce qui élève la courbe d'apprentissage. Bref, il m'a manqué une version allégée par défaut (il faut laisser aux Geek la possibilité de complexifier l'interface et le paramétrage du matériel qui ne se fait plus mais dans les options) avec l'ouverture de fichiers, la sauvegarde d'état et le paramétrage du matériel actuel - et rien que lui.
🟠️ Pas moyen de fermer l'interface sans cliquer sur le bouton "Exit" (la touche F10 est réservée à un usage multimédia sur mon clavier), charger manuellement un fichier est difficile (l'interface graphique reproduit la police de caractère originale, avec une barre de défilement - elle aussi graphique, moins efficace que celle des gestionnaires de fichiers actuels, des images des jeux ou du contenu binaire apparaissent en popup lors du défilement des fichiers - ce qui est très perturbant et diminue fortement la lisibilité).
🟠️ L'activation/désactivation des options dans les menus est difficile et imprécise (j'ai testé par exemple "Set big font" et ai souhaité revenir à l'ancienne fonte : je n'y suis pas parvenu - heureusement j'ai pu quitter sans enregistrer et revenir ainsi en arrière).

🟢 Finalement j'ai opté pour :
Dans Settings :
- dans ZX Desktop Settings : la désactivation du Desktop (la zone de droite avec le bureau est alors masquée, et l'on navigue par le clic droit sur l'interface)
- dans ZX Vision Settings : la désactivation des tooltips, du background windows et du first aid help, opté pour des caractères en 8 pixels
🟢 Une fois ceci fait, on revient à un émulateur plus discret, qui met le jeu au premier plan.
⚪️ Le jeu au gamepad : le gamepad semble reconnu. Les sticks ne semblent pas reconnus (on joue avec la croix directionnelle et les boutons, çà reste du binaire).
⚪️ Les types de jeux : il vaudra mieux privilégier les RPG ou jeux d'arcade (qui soit laissent le temps de la réflexion, soit utilisent un set de touches limité) plutôt que les simulateurs (du fait de la lenteur du système, du graphisme assez pauvre et de la difficulté à trouver toutes les touches utilisables).

🟠️ Le glisser-déposer de jeux sur l'interface échoue souvent avec une erreur - alors que ces mêmes jeux fonctionnent via le "smart load" (clic droit puis "smart load...") - au moins pour l'émulation ZX Spectrum
🟢 Pour l'émulation ZX Spectrum, un grand nombre de jeux fonctionnent (à condition de ne pas utiliser le glisser-déposer, et de passer par la commande "smart load").


● 🧪️ Tests effectués :

▸ 🧫️ Conditions du test, objectif(s)

‣ 🔍️ (v. 13.0) : ✔ tested
‣ ◀️ Test binaire de fonctionnement : ✔ tested
‣ 🕵️ Test plus précis : ✔ tested

‣ ⌨️ Keyboard : ✔ tested
‣ 🖱️ Mouse : ✔ tested
‣ 🎮️ Logitech Rumblepad (USB) : ✔ tested

‣ 📺️ AMSTRAD CPC : ✔ tested
‣ 📺️ Coleco ColecoVision emulation : (🧪️not_tested)
‣ 📺️ Jupiter ACE : (🧪️not_tested)
‣ 📺️ MGT SAM Coupé : (🧪️not_tested)
‣ 📺️ MICROSOFT MSX : (🧪️not_tested)
‣ 📺️ Sinclair Ql : (🧪️not_tested)
‣ 📺️ Sinclair ZX 80 : (🧪️not_tested)
‣ 📺️ Sinclair ZX 81 : (🧪️not_tested)
‣ 📺️ Sinclair ZX Spectrum+ 48k : ✔ tested
‣ 📺️ Sinclair ZX Spectrum+ 128k : ✔ tested
‣ 📺️ SEGA SG-1000 (Mark I, SEGA Game-1000) emulation : (🧪️not_tested)
‣ 📺️ SEGA Master System (SMS, Mark3) emulation : (🧪️not_tested)

▸ 🎲️ Résultat des tests
‣ 🔍️ (v. 13.0) : (⭐⭐)


‣ 📺️ Sinclair ZX Spectrum+ 48k :
🔍️ 3D Stock Car Championship : (⭐)
⚪️ Un jeu de stock car avec un aspect visuel à la "Death Rally" (petites voitures sur un circuit en 2.5D entièrement visible à l'écran)
🪶️ [MyAbandonware]
🟠️ Se joue avec les touches "E/R/I/K". Il faut appuyer plusieurs fois en maintenant la/les touches enfoncées. Jouable mais difficile et ... bof.

🔍️ 3-Deep Space : (⭐)
⚪️ Un shooter spatial horizontal.
🪶️ [MyAbandonware]
🟠️ Se joue avec les touches "I/J/O/P". Moche et gameplay très pauvre.

🔍️ 3D Starstrike : (⭐)
⚪️ Un shooter spatial
🪶️ [MyAbandonware]
🟢️ Fonctionne avec le gamepad (croix directionnelle) à condition de le paramétrer au préalable. Les contrôles ne sont pas très précis, mais çà fonctionne à peu près. Pas renversant mais jouable (à peu près :).

🔍️ Arkanoid II - Revenge of Doh : (⭐⭐⭐)
⚪️ Un casse-brique célèbre
🪶️ [wikipedia]
🟢 ️Un excellent jeu. Les touches : SPACE (démarrer), V (gauche), B (droite),


‣ 📺️ Sinclair ZX Spectrum+ 128k :

🔍️ Dizzy VIII - Wonderful Dizzy : (⭐⭐⭐)
⚪️ Un jeu d'aventure gratuit.
🪶️ [The Oliver Twins] [The Code Masters Archive]
🟢️ Un très joli jeu d'aventure. Les touches : Z (gauche), X (droite), K (sauter), M (s'asseoir), ENTER (action, valider), Q (redémarrer),


‣ 📺️ AMSTRAD CPC 464 / 664 : (🐞️)
🟠️ La commande "smart load..." semble échouer avec les jeux testés. Parfois elle ramène l'émulation sur le ZX Spectrum avec un très petit écran - sans pour autant lancer le jeu (confusion du type de machine cible ?). J'ai tenté le glisser-déposer, dans ce cas l'émulation reste sur l'AMSTRAD (affiché en bas de l'écran) mais il ne semble pas reconnaître le support.
🟠️ J'ai tenté plusieurs jeux et différents supports d'enregistrement des jeux (formats ".cpr" et ".dsk"), mais aucun ne se lance (l'affichage reste sur le BASIC v.1.1 - qui sert d'interface de démarrage de l'AMSTRAD).


● 🧭️ Conclusion :

🕵️ Impression globale : 👍️
❤️ Like it: 👍️⭐⭐⭐ (very good)
🎀️ Quality: 🏅️⭐⭐⭐⭐ (good)
🕵‍ 13.0: 👍️⭐⭐⭐

⚪️ Je n'ai testé que 10% de ses capacités - notamment avec l'AMSTRAD et le Sinclair ZX Spectrum
🟠️ Un émulateur qui ne se laisse pas apprivoiser facilement (il vous faudra y passer un peu de temps avant de parvenir à l'exploiter correctement).
🟠️ Même si le BASIC AMSTRAD semble fonctionner, je ne suis pas parvenu (je m'y prend peut-être mal, mais l'ensemble ne m'a pas semblé très intuitif) à charger de jeux AMSTRAD 464/664.
🟢️ En revanche, il se révèle être un très bon émulateur du ZX Spectrum.
👏️ ❤️ Un grand bravo et merci (notamment pour la version Linux !) à son/ses auteur(s) !