Skip to content

Releases: ntdevlabs/exynos9810-woa

Release list

v0.1.0

Choose a tag to compare

@ntdevlabs ntdevlabs released this 30 Sep 20:07

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.

Windows 11 on your Galaxy S9+. The installer is out.

🎬 Watch the whole installation on YouTube, from
a stock Galaxy S9+ to the Windows desktop.

Get started

  1. Download S9WoaInstaller-0.1.0-x64.zip (or -arm64.zip on an ARM PC), unzip it
    and run S9WoaInstaller.exe. It is self-contained: nothing else to install.
  2. On Set up, press Set up automatically: it installs adb and downloads the
    UEFI images and drivers below, verified against SHA256SUMS. Add Samsung's USB
    driver, and for TWRP either the official twrp-3.7.0_9-0-star2lte.img from
    twrp.me or star2lte-winre-recovery.img from this release.
  3. 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.sys rebuilds byte for byte from drivers/Exynos9810Ufs
    (build-ufs.ps1 -WideUncached -DmaWindow, unsigned SHA-256 a80b2229…eaa7).
  • Exynos9810Hsi2c.sys and S6SY761Touch.sys are builds of the sources in
    drivers/Exynos9810Hsi2c and drivers/S6SY761Touch; the only change after the
    build is the PDB path in their debug directory, set to C:\build\<name>.pdb.
  • The UEFI images are the builds validated on the phone, from the research
    lineage of firmware/; 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 in NOTICE.txt.
  • Every driver was re-signed with the project's test certificate; the driver
    code is unchanged.
  • star2lte-winre-recovery.img is 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 in tools/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.

Patreon | PayPal | Ko-fi