Created by Chris Freeman.
Download the latest release: unzip and run Mega65Gui.exe (Windows 10/11, 64-bit, nothing to install).
A Windows application for maintaining, updating and using a MEGA65.
It brings together:
- the MEGA65 Filehost;
- the official mega65-tools (
m65,mega65_ftp,etherload); - a guided Update My MEGA65 workflow;
- the working goal of feature parity with M65Connect.
Status: in development. Tested on a real MEGA65 R6 over USB/JTAG: updates (including the closed ROM via your Filehost account), the SD card browser, PRG/SID/ROM/HICKUP loading, PAL/NTSC, screenshots, the terminal and remote keyboard, and running a core over JTAG from the Core Manager (Vixen-32). Ethernet is not yet verified on hardware. The app's Features page shows each feature's status.
- Finds your model.
- Picks the right official release from the Filehost.
- Downloads and verifies it.
- Compares it file by file with your SD card.
- Backs up anything it will replace.
- Writes only what you approve.
- Stages the matching core for MEGAFLASH.
- Verifies the result and saves a report.
- Search and browse all 520+ public files.
- Read details and version history.
- Download into a local cache that also works offline.
- Sign in with your own account to reach owner-only packages, such as releases that include the closed ROM.
- Upload a new file, or a new version of one of your files, straight to the Filehost, with every field the website's My File Uploads has: title, type, description, search tags, short link, PAL/NTSC, platforms, access, core and ROM version, intro disk and highscore.
- Fill from GitHub: paste a repository link and the newest release is downloaded and filled in: title, description (release notes converted to the Filehost's format), suggested search tags, version and comment.
- Sync from GitHub: link a file to its repository and each new release is uploaded as a new version, optionally checked when the app starts.
- Add, view and delete previews (screenshots, video or audio, or a video link).
- A Website Preview shows the description as the Filehost will show it.
- You choose the task first, and nothing is uploaded or changed until you confirm.
- Keep a library of FPGA cores (
.corand.bit, or a.zip/.7zcontaining them). Each file is checked (header, CRC32), stored once (SHA-256), and can have favourites, categories, tags, notes and artwork. - Find alternate, arcade and official cores on the Filehost, download them into the library, and see when a newer version is published.
- Compatibility comes only from what a core's header says and what the MEGA65 reports. Boards named in file names are hints, and
.bitfiles are never treated as confirmed. - Three separate actions:
- Run now: load a core temporarily over USB/JTAG. Nothing is written to flash.
- Start a flash slot: restart from a slot. Nothing is written.
- Install to a flash slot: copy the
.corto the SD card with approval, backup and verification, then follow the guided MEGAFLASH steps.
- Copy a core's own SD-card files (for example Vixen-32's
vixen-32folder) to the card exactly as its package lays them out, with the same approval, backup and verification. If another core is running, the app asks you to switch the MEGA65 off and on, then reconnects and carries on. - List the cores stored on the SD card. A core stored on the card is not installed: the MEGA65 cannot start a core from the card.
- Why the MEGA65 cannot start cores straight from its SD card, and what could get around the eight-slot limit: Core loading feasibility.
- Connect over USB/JTAG or Ethernet. Port lists name each COM port ("COM5 – MEGA65 USB/JTAG", "COM3 – Bluetooth (not a MEGA65)") and only pick one that could be the MEGA65.
- Reset, switch C64/MEGA65 mode (also without a reset: Go 64 / Go 65), send PRGs (with drag-and-drop) and take screenshots, shown on the page.
- PRG options: load without a reset, load to the address in the file (
,8,1), PAL/NTSC, and over Ethernet mount a D81 from the card with the program. - Disk from this PC: use a
.D81on your PC as the MEGA65's drive 8 over the USB cable, without copying it to the card (a backup copy is made first). - A BASIC editor that types your listing into the MEGA65, and a
mega65_ftpconsole for remote SD-card access. The output can be saved to a text file.
- Your PC on one side, the SD card inside the MEGA65 on the other, over USB/JTAG or Ethernet. Drag files and whole folders either way, or from Windows Explorer.
- For each file already there: Replace, Skip, Replace all or Skip all. A progress bar shows the copy, and Stop ends it after the current file.
- Names the MEGA65 cannot load (a leading
$, commas, colons, quotes), empty files and broken D81 sizes are pointed out before copying. Optional capital names. - Card space and the ROMs on the card; a card in this PC's card reader can be picked as the PC side and ejected safely.
- The MEGA65's serial monitor, memory dumps and breakpoints, and a remote keyboard with the MEGA65's own keys (ESC, TAB, ALT, HELP, NO SCROLL, F9–F14, CTRL and MEGA combinations). The text can be saved.
- D81 disk images: create, add, extract, rename, delete, and copy files from another D81.
- ROM start-up settings (speed, font, colours), with presets you can save and load onto the next ROM.
.rdfROM patches: apply, or make one from an original and a changed ROM (officialromdiff).- Core files: check a
.cor, build one from a.bit, save the.bitinside a.cor, or make an.mcsfor Vivado (officialbit2mcs).
Installs the official mega65-tools builds from the Filehost.
- Report a problem (sidebar or About): shows the app's details (version, page, connection, COM ports, tools) and opens a GitHub issue with them filled in. Nothing is sent until you post it, and no passwords, tokens or account names are included.
- At start-up the app checks GitHub for a newer version and shows a link in the sidebar. Nothing is downloaded by itself; turn the check off on the About page.
- You approve every write. Planning is read-only.
- Nothing on your card is deleted. Replaced files are backed up first.
- FPGA flash is never written automatically. The official tools cannot flash R4–R6 from a PC, so the app guides you through MEGAFLASH.
- Uploads to the Filehost need your confirmation every time, including GitHub syncs, and go only to your own files.
- Owner-only Filehost downloads (the closed ROM) use your own Filehost account. You sign in inside the app and the Filehost decides what you can download. Your password is never stored unless you ask, and then only DPAPI-encrypted.
- Architecture
- Filehost integration notes
- M65Connect feature parity
- Licensing review
- Roadmap
- Releasing
- Core loading feasibility (SD, flash slots, JTAG, Pico loader)
Requires the .NET 10 SDK on Windows.
dotnet test Mega65Gui.slnx
dotnet run --project src/Mega65Gui.App
- Report a problem: use Report a problem in the app, so the details come with it; or GitHub Issues for problems and feature requests.
- Source and documentation: https://github.com/freemchr/mega65gui
- Support the project: if MEGA65 GUI helps you, you can buy me a coffee.
- The official MEGA65 tools (
m65,mega65_ftp,etherload,romdiff) by the MEGA65 project, GPL-3.0. MEGA65 GUI downloads them from the Filehost and runs them as separate programs. - The MEGA65 Filehost: releases, ROMs and software.
- M65Connect's documentation: used as a feature reference. No M65Connect code is included.
- Libraries: SharpCompress, CommunityToolkit.Mvvm and .NET, including System.Management (MIT).
MEGA65 GUI is an independent project and is not an official MEGA65 product.
MEGA65 GUI is free software under the GNU General Public License v3.0. Copyright © 2026 Chris Freeman.







