ViceSharp
github.com
Spec sheet
- Purpose
- ViceSharp is a C# port of VICE, the Versatile Commodore Emulator, targeting .NET 10.Read 8 Oct 2026 · github.com
- Product
- ViceSharp is a C# port of VICE, the Versatile Commodore Emulator, targeting .NET 10.Read 7 Oct 2026 · github.com
- Intended users
- The maker describes a library-first emulator with packages for developers who want to embed its emulation core in their own app.Read 8 Oct 2026 · github.com
- Support
- The repository directs users to file regressions in its GitHub issues and asks them to include the commit SHA, .NET SDK version, invocation, and reproduction details.Read 8 Oct 2026 · github.com
- License
- The project is licensed under GNU GPL version 2.0 or later.Read 8 Oct 2026 · github.com
- Capture and control
- The host surface includes gRPC capture and diagnostics services, and the architecture lists gRPC/protobuf contracts and generated client/server types.Read 7 Oct 2026 · github.com
- Console shell
- ViceSharp.Console is offered as a .NET global tool and provides the reference command-line shell.Read 8 Oct 2026 · github.com
- Current emulation
- The project says its C64 core is complete and its VIC-20 core has passed 10-second PAL and NTSC lockstep checks against native VICE.Read 7 Oct 2026 · github.com
- Desktop app
- The Avalonia desktop UI is available as a .NET global tool and as a self-contained Windows MSI.Read 8 Oct 2026 · github.com
- Desktop UI
- ViceSharp provides an Avalonia desktop UI and a Console reference shell.Read 7 Oct 2026 · github.com
- Developer use
- The project describes itself as library-first and offers a ViceSharp.Core package for embedding the emulation core in another app.Read 7 Oct 2026 · github.com
- Emulation features
- The repository lists C64 features including CPU, VIC-II, CIA, SID, 1541/D64 attach and sector reads, TAP pulse reads, standard cartridge mapping, snapshots, and media capture.Read 7 Oct 2026 · github.com
- Library packages
- The maker lists ViceSharp.Core and individual NuGet packages for embedding and related components.Read 8 Oct 2026 · github.com
- Limits
- The repository says C128, PET, and Plus/4 are planned iterations, and notes that some VIC-20 parity, input, and peripheral work remains open.Read 7 Oct 2026 · github.com
- Media capture
- The desktop app can save PNG or BMP screenshots, record SID audio as WAV, and export BMP sequences or muxed video using ffmpeg.Read 8 Oct 2026 · github.com
- Media limits
- The user guide says non-D64 disk formats such as G64, D71, and D81 are not yet supported.Read 8 Oct 2026 · github.com
- Platforms and packaging
- The project describes Windows desktop MSI and winget packaging, Linux/macOS build scripts, and MacOS, Android, and iOS host shell packages.Read 7 Oct 2026 · github.com
- Remote control
- The host exposes gRPC services for capture and diagnostics, with generated client and server types in the protocol package.Read 8 Oct 2026 · github.com
- ROM requirement
- ViceSharp does not include Commodore ROM images, so users need ROM assets from an installed VICE package or another legal source.Read 8 Oct 2026 · github.com
- Security and state handling
- The project says all state changes flow through an auditable mutation queue and identical inputs produce bit-exact deterministic replay.Read 7 Oct 2026 · github.com
- Supported machines
- The repository describes working C64 emulation and a VIC-20 core, while C128, PET, and Plus/4 are listed as not yet supported.Read 8 Oct 2026 · github.com
- VICE compatibility
- The Launcher library provides VICE-compatible argument parsing and binary-name topology dispatch, while the Console shell accepts flags such as -8, -9, -cart, and +truedrive/-truedrive.Read 7 Oct 2026 · github.com
- VICE compatibility limit
- VICE-compatible argument parsing exists in a library, but standalone VICE-named binaries are not shipped and some parsed disk and drive flags are not wired into the console entry point.Read 8 Oct 2026 · github.com
Where Specifiction places it
- Commodore 64 Emulators#21 of 317.1