Repository navigation
Games now get every pixel of a Retina display, and Hadron opens Windows programs that are not on Steam.
New: native resolution. A game sees the Mac's display at its real resolution, 3024×1964 on a 14-inch MacBook Pro instead of 1512×982 scaled up, as on a Windows laptop with a high-density screen. Pictures are sharper; drawing four times the pixels costs frame rate, so a game that runs slower than before can be set to 1512×982 or lower in its own graphics settings. A windowed game looks half as large as before for the same reason.
New: open any Windows program. Drop an .exe on Hadron, choose Hadron under Open With, use File → Open a Windows Program…, or run hadron run program.exe in the terminal. Steam isn't needed. Programs share one Windows folder in ~/Library/Application Support/Hadron/programs, and get the same memory watchdog as games.
New: video and .NET. Hadron now ships GStreamer, so games that play video or sound files through Media Foundation (Unity's video player, Unreal's media framework) get them, and Wine Mono, so .NET games and launchers start instead of failing at once.
Fixed:
- Teardown in fullscreen on an external monitor at a scaled resolution showed only the top-left part of the game. Resolution changes are now emulated, as native Mac games do, on every display.
- Programs whose shared memory sections don't line up with Apple silicon's 16 KB pages failed to load. GameMaker games (ROAM, for one) start now.
- Jurassic World Evolution 2 stopped on a Metal error at startup (D3D12 buffer views larger than the device allows).
- Memory freed by a game could keep its old contents on Apple silicon's 16 KB pages, without slowing anything down. Thanks to Lennard (@Moeweneier).
- A Direct3D 11 device could read uninitialized memory while starting (DXMT). Thanks to Lennard.
- The memory watchdog now measures memory the way Activity Monitor does, warns before it stops a game, and in the installed app only steps in when the Mac is really out of memory or disk. Thanks to Lennard.
- The Compatibility page in a game's properties shows only the options Hadron uses (Metal HUD, MetalFX upscaling).
- Hadron's window says more clearly where Steam's setup stands and what to do next. Thanks to Lennard.
- Each game's app bundle declares itself a game. macOS still doesn't turn Game Mode on for Hadron's games (#54).
Known problem: Steam's "Access Steam features from overlay" message at launch is sometimes cut off, and an overlay window can open off-center (#97). The overlay itself works.
Other known problems are in the issues, and the list of games tried says what runs. If something goes wrong, save a report from Hadron's window and open an issue.
Updating: Hadron 0.3.0 offers this update itself when you open its window (or run hadron update). With Homebrew, brew upgrade --cask hadron. Then open Hadron and click Repair.
New here? Hadron is a compatibility tool that lets the native Mac Steam client install and run Windows games on Apple Silicon. It needs macOS 27 and Steam for Mac.
brew install --cask broyojo/hadron/hadron
or download Hadron-0.3.1.dmg below, drag Hadron to Applications, open it and choose Set up Steam. The README has the steps.
Setting up modifies and re-signs Steam.app; Uninstall in Hadron undoes it. Hadron is unofficial and not affiliated with Valve.
What's Changed
- D3D12: clamp the typed companion of a raw view to the device's limit (Jurassic World Evolution 2) by @Broyojo in #66
- Compatibility page: show only the options Hadron's renderers read by @Broyojo in #68
- Display modes: emulate resolution changes, as native Mac games do by @Broyojo in #73
- Ship Wine Mono, and stop switching mscoree off (Fable Anniversary) by @Broyojo in #67
- Ship GStreamer so Media Foundation can play video and audio by @Broyojo in #70
- DXMT: initialize the device before command helpers by @Moeweneier in #80
- App: clarify Steam setup status and primary actions by @Moeweneier in #81
- Watchdog: measure physical footprint and warn before emergency stops by @Moeweneier in #77
- Wine: clear partial decommit boundaries without relaxing neighbour protections by @Moeweneier in #79
- Wine: load images whose shared sections don't line up with 16 KB pages by @Broyojo in #87
- Game Mode: declare per-game bundles as games; probe what else it needs by @Broyojo in #89
- Retina displays: games get the display's pixels by @Broyojo in #90
- Open any Windows program with Hadron, not only Steam games by @Broyojo in #91
New Contributors
- @Moeweneier made their first contribution in #80
Full Changelog: v0.3.0...v0.3.1