A cross-platform, cycle-accurate IBM PC/XT emulator written in Rust, designed for retro PC development and debugging.
MartyPC is a cross-platform emulator written in Rust that accurately emulates early 8088-based PCs like the IBM PC, XT, PCJr, and Tandy 1000. It provides a highly accurate, cycle-by-cycle emulation environment specifically designed to aid in retro PC software development and to run demanding demos. The project prioritizes accuracy and developer tooling, offering extensive debugging features over user-friendliness.
Retro PC developers and enthusiasts who need a cycle-accurate emulation environment for writing, testing, and debugging software for early IBM-compatible systems. It is also valuable for demo scene creators pushing the limits of these old systems.
Developers choose MartyPC for its hardware-validated, cycle-accurate 8088 CPU emulation and comprehensive debugging tools, which are essential for precise retro development. Its unique selling point is the ability to run notoriously demanding demos like 8088 MPH and Area 5150 with high accuracy, supported by a WebAssembly build for browser-based execution.
An IBM PC/XT emulator written in Rust.
The 8088 CPU emulation is validated against real hardware using an Arduino, achieving 99.9997% cycle-accuracy on the 8088 V2 Test Suite, crucial for precise retro development and demo execution.
Features a debugging GUI with disassembly, memory viewer, breakpoints, and cycle logging, providing deep visibility into code execution for developers, as highlighted in the README.
Runs on Windows, Linux, macOS, and includes a WebAssembly build that allows running demos like 8088 MPH directly in web browsers, enhancing accessibility.
Capable of running cycle-critical demos such as 8088 MPH and Area 5150 with high accuracy, a feat emphasized in the README as unique among emulators.
The README admits several devices are not fully implemented, such as the 8259 PIC missing advanced features, DMA transfers being 'faked', and parallel port functionality being minimal.
Prioritizes accuracy over user-friendliness, requiring manual editing of configuration files rather than offering a graphical interface, which can deter newcomers.
Emulation of devices like the Adlib sound card is noted as CPU-heavy in the README, necessitating a fast host computer for smooth operation.
Preliminary support for systems like the IBM PCjr and Tandy 1000 is described as 'buggy and unstable' in the README, limiting reliability for those platforms.
A Flash Player emulator written in Rust
High-level emulator for iPhone OS apps. This repo is used for issues, releases and CI. Submit patches at: https://review.gerrithub.io/admin/repos/touchHLE/touchHLE
Full featured Cross-platform GameBoy emulator by Rust. Forever boys!.
Highly compatible N64 emulator
Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.