Repository navigation
Releases: ntdevlabs/exynos9810-woa
Release list
v0.1.0
v0.1.0 — first public release
Windows 11 on the Samsung Galaxy S9+ (SM-G965F, Exynos 9810), installed end
to end from stock Android by the installer in this repository.
🎬 Watch the whole installation on YouTube, from
a stock Galaxy S9+ to the Windows desktop.
Get started
- Download
S9WoaInstaller-0.1.0-x64.zip(or-arm64.zipon an ARM PC), unzip it
and runS9WoaInstaller.exe. It is self-contained: nothing else to install. - On Set up, press Set up automatically: it installs adb and downloads the
UEFI images and drivers below, verified againstSHA256SUMS. Add Samsung's USB
driver, and for TWRP either the officialtwrp-3.7.0_9-0-star2lte.imgfrom
twrp.me orstar2lte-winre-recovery.imgfrom this release. - Choose your Windows 11 ARM64 media and follow the steps.
Assets
| File | What it is |
|---|---|
S9WoaInstaller-0.1.0-x64.zip, S9WoaInstaller-0.1.0-arm64.zip |
The installer (WinUI 3, self-contained). Runs as administrator. |
star2lte-winre-recovery.img |
The WinRE-look TWRP, prebuilt from the official TWRP 3.7.0_9-0 with open fonts (S9WoA Sans, from Microsoft's Selawik) and the built-in gears. Optional: the installer can also build it from the official TWRP on your PC, with Segoe UI from your Windows. |
firmware.json |
The UEFI firmware catalog: which image starts which Windows build. The installer picks the image for the Windows you install. |
star2lte-uefi-22621.2428.img |
UEFI for Windows 11 kernel 22621.2428 (media 22621.2428 / 22631.2428). Validated end to end with Windows 11 IoT Enterprise 23H2 ARM64 22631.2428. |
star2lte-uefi-22621.7582.img |
UEFI for Windows 11 kernel 22621.7582 (media 22621.7582 / 22631.7584). |
drivers.zip |
UFS storage (Exynos9810Ufs), HSI2C bus (Exynos9810Hsi2c) and touchscreen (S6SY761Touch) driver packages. |
SHA256SUMS |
SHA-256 of every asset. The installer refuses anything that does not match. |
NOTICE.txt |
Credits for the projects this release builds on, and the license texts they require. |
Not included, on purpose
- Windows. Bring your own Windows 11 ARM64 media (ISO, WIM or ESD). Each UEFI
build patches the boot loader and kernel of exactly one Windows build; other
builds get the nearest image and may stop at the Samsung logo.
Requirements and limits
- Galaxy S9+ SM-G965F only (not the S9, not the Snapdragon G965U/N).
- Installing erases Android. The installer backs up EFS, modem calibration and
the partition table to your PC first; keep that backup. - The drivers are test-signed (certificate "S9 WoA Test Signing"); the
installer turns on test signing in the Windows image it builds. - Windows starts at 275 DPI display scaling for the phone's screen.
- Cellular, camera, audio and GPU acceleration don't work yet.
Provenance
Exynos9810Ufs.sysrebuilds byte for byte fromdrivers/Exynos9810Ufs
(build-ufs.ps1 -WideUncached -DmaWindow, unsigned SHA-256a80b2229…eaa7).Exynos9810Hsi2c.sysandS6SY761Touch.sysare builds of the sources in
drivers/Exynos9810Hsi2canddrivers/S6SY761Touch; the only change after the
build is the PDB path in their debug directory, set toC:\build\<name>.pdb.- The UEFI images are the builds validated on the phone, from the research
lineage offirmware/; their debug paths name a neutral build folder. Every
image starts with a boot shim adapted from Renegade Project's edk2-msm
BootShim (via edk2-exynos); its BSD-2-Clause notice is inNOTICE.txt. - Every driver was re-signed with the project's test certificate; the driver
code is unchanged. star2lte-winre-recovery.imgis reproducible:tools/release/make-release-extras.ps1
on the official TWRP image gives this exact file. It is the official TWRP
3.7.0_9-0 for star2lte with the changes intools/twrp-winre(theme, original
artwork, scripts, our four GPL-2.0 kernel modules with sources) and a four-byte
kernel patch (PowerOffRoutePatch.cs). TWRP's own sources are at
https://github.com/TeamWin and the kernel's at https://opensource.samsung.com
(SM-G965F); ask in the issues for the corresponding source of this build.
Credits
This release builds on others' work, credited in full, with license texts, in
NOTICE.txt (attached):
- Project Silicium / Mu-Silicium
(Robotix22, N1kroks, halal-beef and contributors): the CNTFRQ_EL0 shellcode
Windows needs on this SoC (MIT), the DXE RAM-manager approach, and its Exynos
9810 Windows-boot work as the reference for this firmware. - Renegade Project / edk2-msm and
edk2-exynos: the boot shim
in every UEFI image (BSD-2-Clause) and the firmware's load layout. - WOA-Project: Lumia950XLPkg and
mu_andromeda_platforms (Ben (Bingxing) Wang, Gustave Monce, the DuoWoA
authors), whose structure the firmware follows, and the kernel-patching
approach from Samuel Tulach's rainbow. - TheMorc (Richard Gráčik): the
S6SY761 touch driver ours is derived from (GPL-2.0), built on Microsoft's
vhidmini2 sample and Gustave Monce's nt36xxx_win.
Licenses
Firmware, UFS driver, installer and tools: BSD-2-Clause-Patent. Touchscreen
driver: GPL-2.0-only. HSI2C driver: BSD-2-Clause-Patent AND MS-PL (framework
from Microsoft's SkeletonI2C sample). Recovery: TWRP is GPL-3.0 and its kernel
GPL-2.0; the recovery fonts are SIL OFL 1.1. The installer zips include the .NET
and Windows App SDK runtimes under their own terms (in licenses\). See NOTICE.
❤️ Support the Project
If this project has helped you, please consider showing your support! A small
donation helps me dedicate more time to projects like this.
