Skip to content

Releases: nullmoth/1401

1401 1.9.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 10 Oct 05:49

1401 1.9.0 for Windows

Includes the Mac app and NVIDIA driver 1.9.0 (release notes).
Something not working? nullmothsystems.com/help lists every known problem and exactly what to do.

Changes

  • Ryzen (AM5) boards stuck at the prohibited sign / EB.MM.AKM get one more setting to try. After every memory-map step had failed, 1401 used to go back to the default. It now tries DevirtualiseMmio on with SetupVirtualMap off first, the combination a Ryzen 5 7600 owner reached the desktop with. Rebuild from the stick's log (Send logs, then build again) to get it.
  • Sticks that refuse direct writes ("Windows error 5") are erased with Windows' own diskpart instead of stopping.
  • "The stick was erased but Windows did not show its new partition": 1401 now erases it with diskpart and looks again.
  • Apple's recovery server answering 502, timing out or resetting the connection is retried longer.
  • Everything from 1.8 and earlier still applies.

Keep the whole 1401 folder together and run 1401.exe.

1401 1.8.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 10 Oct 05:21

1401 1.8.0 for Windows

Includes the Mac app and NVIDIA driver 1.8.0 (release notes).
Something not working? nullmothsystems.com/help lists every known problem and exactly what to do.

Changes

  • Machines we've already solved build right the first time. When your board and CPU match a machine whose own boots showed what it needs, 1401 builds with those settings straight away instead of waiting for a failed start and a rebuild. The list grows as people report what works.
  • "Format-Volume: Invalid property" / "format.com: Required parameter missing" fixed. When Windows had not given the new stick a drive letter yet, 1401 read Windows' empty-letter marker as a letter and formatted nothing. It now waits for a real letter.
  • "FileNotFoundError: [WinError 2]" at the erase step fixed. 1401 now starts Windows' own PowerShell and diskpart by their full path, so a PC with a changed PATH still writes.
  • Sticks that refuse direct writes ("Windows error 5") are erased with Windows' own diskpart instead of stopping.
  • Apple's recovery server answering 502 or timing out is retried longer before giving up.
  • Everything from 1.7, 1.6, 1.5, 1.4 and 1.3 still applies.

Keep the whole 1401 folder together and run 1401.exe.

1401 1.7.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 10 Oct 04:33

1401 1.7.0 for Windows

Includes the Mac app and NVIDIA driver 1.7.0 (release notes).
Something not working? nullmothsystems.com/help lists every known problem and exactly what to do.

Changes

  • macOS gets your PC's ACPI table (DSDT) again on about 1 in 5 PCs. macOS's ACPI interpreter throws away the whole DSDT when a Scope() points at a device the firmware only creates later; Windows and Linux load the same table fine. This hit 43 of the 233 PCs whose tables users have sent (every Arrow Lake H laptop among them, and several AM5 boards). 1401 now finds those Scope()s and defers them, and ships the repaired table in your EFI. Every repaired table was checked to load in the same ACPI interpreter macOS uses. Rebuild your EFI with 1.7 to get it.
  • A stick that Windows re-mounts mid-download no longer ends the write ("PermissionError: [Errno 13]"). The piece is written again at the same place.
  • Everything from 1.6, 1.5, 1.4 and 1.3 still applies.

Keep the whole 1401 folder together and run 1401.exe.

1401 1.6.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 10 Oct 03:25

1401 1.6.0 for Windows

Includes the Mac app and NVIDIA driver 1.6.0 (release notes).
Something not working? nullmothsystems.com/help lists every known problem and exactly what to do.

Changes

  • A Linux USB probe report can be built into an EFI. A probe folder (report.json + acpi/tables) converts into the same hardware report the Windows scan makes (python -m p1401.probe_report), with each device's OpenCore path, ACPI path and Resizable BAR state read from the probe. If the Windows scan will not run on your PC, upload the probe and support builds your EFI from it.
  • Sticks whose serial number changes on every read are accepted. Some USB sticks (SMI controllers) report a new serial each time Windows asks, so every write stopped with "disk N is not the USB stick you picked any more". The stick now counts as the same one when it is the only USB disk of that exact size and model at the picked disk number.
  • The macOS download keeps going on networks that pause it for minutes. It now waits out up to about 15 minutes of empty connections (was about 2.5), asks Apple for a fresh download link along the way, and a reset on a resume no longer ends the download.
  • Driver 1.6.0: the driver no longer removes itself a few seconds after login on machines whose firmware ignores NVRAM changes made from macOS.
  • Everything from 1.5, 1.4 and 1.3 still applies.

Keep the whole 1401 folder together and run 1401.exe.

1401 1.5.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 10 Oct 02:22

1401 1.5.0 for Windows

Includes the Mac app and NVIDIA driver 1.5.0 (release notes).
Something not working? nullmothsystems.com/help lists every known problem and exactly what to do.

Changes

  • The macOS download finishes on networks that cut it off. Where the first connection got exactly 1 MB and every retry got nothing ("after 9 resumed connections, 8 in a row with no progress"), 1401 now fetches the image in small pieces that get under the limit, backs off between failed tries, and checks every piece against Apple's signed list.
  • Everything from 1.4 and 1.3 still applies.

Keep the whole 1401 folder together and run 1401.exe.

1401 1.4.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 10 Oct 01:54

1401 1.4.0 for Windows

Includes the Mac app and NVIDIA driver 1.4.0 (release notes).
Something not working? nullmothsystems.com/help lists every known problem and exactly what to do.

Changes

  • PCs whose ACPI tables crashed the disassembler. Some firmware made the ACPI tool crash outright ("could not read this PC's ACPI tables"). 1401 now records the crash and keeps the table, and the build continues.
  • Partial hardware scans are accepted. A scan missing the USB or Storage Controllers section was rejected as a whole; the build now continues with what is there.
  • Sticks that Windows renumbered or re-detected after erasing are found again by serial and keep their drive letter; the EFI copy survives the stick blinking out.
  • Everything from 1.3: resume-from-last-byte downloads, reuse a stick that has macOS/Windows on it, the EXITBS boot-freeze ladder, basic display for unsupported-only PCs.

Keep the whole 1401 folder together and run 1401.exe.

1401 1.3.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 10 Oct 00:16

1401 1.3.0 for Windows

Includes the Mac app and NVIDIA driver 1.3.0 (release notes).
Something not working? nullmothsystems.com/help lists every known problem and exactly what to do.

Changes

  • Apple downloads finish on networks that cut connections. Some networks close every download connection after 1 MB; 1401 keeps what arrived and continues from that byte (1.2.0 restarted the 10 MB chunk and stopped with "stream ended at 1048576/10485760").
  • Reuse a stick that has macOS or Windows on it. A stick holding a macOS or Windows partition was refused; 1401 names what is on it and asks before erasing.
  • Sticks that failed to erase or format now work. The partition table is cleared before the raw write, a refused write is retried with the disk taken offline, formatting falls back to the built-in formatter if Windows Storage refuses, and after erasing, the stick is found again by serial and keeps its drive letter. This fixes "the requested object could not be found," "Windows error 1," Format-Volume failures, and disks that change number mid-write.
  • PCs that freeze handing off to macOS (EXITBS:START). With the stick plugged in, 1401 reads the startup logs on it and steps through the memory settings that get past the freeze — on Intel and AMD.
  • PCs with no supported graphics card build anyway. A PC whose only card is a GTX 10, RX 7000 or Intel Arc now builds and runs macOS on the firmware's display (basic display, no graphics acceleration) instead of stopping.
  • macOS appears in the OpenCore picker without pressing Space.
  • If a step stops unexpectedly, the report now says which part of 1401 it came from, so it can be fixed faster.

Keep the whole 1401 folder together and run 1401.exe.

1401 1.2.0 for Windows

Choose a tag to compare

@nullmoth nullmoth released this 09 Oct 19:16

1401 1.2.0 for Windows

Includes the Mac companion 1401 1.2.0 and the NVIDIA driver 1.2.0 (release notes).

Changes

  • A stick that failed to start is read before it is erased: when you write the stick again, 1401 first rebuilds with that stick's startup log, so the AMD memory-map steps and the other log-based fixes now reach the next build.
  • Sticks that already have EFI or MSR partitions are accepted.
  • Stalled Apple recovery downloads resume; a refused download retries with a new session.
  • macOS 10.13 and 10.14 targets.
  • Mirror downloads retry dropped connections.
  • Firmware tables that define one device twice (seen on AM5 boards) no longer stop the build.

Keep the whole 1401 folder together and run 1401.exe.

1401 Windows 1.1.0

Choose a tag to compare

@nullmoth nullmoth released this 08 Oct 21:03

1401 Windows 1.1.0

This release is paired with the macOS driver and Mac app 1.1.0: https://github.com/nullmoth/nvidia-macos-driver/releases/tag/v1.1.0
Unzip, keep the 1401 folder together, and run 1401.exe. The checksum file covers the Windows ZIP.

Changes

  • Pair framebuffer, allocation and accelerator interfaces so queued work cannot use a recycled allocation identity.
  • Retain display backing until the replacement flip is latched; bound the surface cache and serialize display and allocation transactions.
  • Query and reset the mapped NVIDIA flip notifier for each committed surface. Accept the initial console handoff without prematurely releasing its backing.
  • A display request the GPU rejects (for example an unsupported cursor size) now fails only that request. Previously one rejected request could stop presentation and block every later resolution and refresh change until restart.
  • Balance asynchronous callback references across scheduling, cancellation and shutdown.
  • Move the Mac Send logs authorization dialog onto the main thread and show its authorization status. Retain local reports and exact-byte upload confirmations from the logging maintenance updates.
  • Require startup-partition ownership evidence before internal EFI operations; remove the timestamp-only fallback.
  • Windows: repair EFI Doctor panic parsing, retry recovery downloads and forced USB dismounts, handle duplicate kexts, improve firmware guidance and display scaling, and use verified dependency mirrors.
  • Preserve signed recovery loading with SecureBootModel enabled.
  • Allow bounded cold-start CIM queries to finish inside the existing hardware-worker timeout.
  • Include matching 1.1.0 Mac companion and driver payload in the Windows bundle.

Validation

  • macOS 15.8.1, RTX 5060, two physical displays: guarded reboot, refresh changes (60, 75 and 100 Hz) committed on the changed display with WindowServer running throughout, and a verified 4096-byte Metal buffer copy.
  • Native allocation, callback and mapped completion tests with address/undefined-behavior sanitizers; paired kernel builds and macOS 15 auxiliary collection validation.
  • Windows source and packaged startup, report lifecycle, native hardware capture and regression checks are recorded in VALIDATION.json.
  • Public artifacts and source are scanned before publication; downloadable payloads have SHA-256 checksums.

Known issue

  • With two displays connected, changing the refresh rate or resolution of one display can make the other display flash or go blank until the Mac is restarted. A fix is planned for 1.2.

Scope
This update installs the revised paired driver on macOS 15 only. Device-table coverage is broader than physical validation. RTX 5090, macOS 26, switching between integrated and discrete graphics, DRM and full Firefox/Blender/Geekbench behavior are not qualified by these checks. Optional DTrace capture and automatic internal EFI migration remain unavailable pending their separate security and runtime qualification. Existing compiler, GPU userland and firmware binaries are preserved; this is not a new direct machine-code compiler release.

1401 Windows 1.0.24

Choose a tag to compare

@nullmoth nullmoth released this 08 Oct 14:05

1401 Windows 1.0.24

This update saves a unique local diagnostic record before every engine scan, build or USB-writing attempt, and a final record after completion or failure. Reports include the operation, exit code, observed app/engine/tool hashes when available, declared companion pins and bounded redacted output. Engine launch failures and malformed results now offer a saved report instead of returning without one. Reports remain available after restart and unsuccessful uploads. Failure to save is shown explicitly; an attempt does not start when its initial report cannot be saved.

Dependency ZIP downloads are staged in separate temporary files and checked for a readable central directory before replacing an existing archive. Invalid ZIP responses retry up to three times and retain the previous archive. Diagnostics record failed response size and hash without response body content. Existing checksum requirements remain enforced. This check does not qualify ZIP extraction paths or establish the cause of an unmatched report.

The package includes Mac 1.0.18 and helper 1.0.11. The Mac companion saves collected reports before sending, retains unsuccessful sends across restarts, and checks server acknowledgments against the report hash. Hardware routing protections, firmware settings and graphics payloads are unchanged. No new MUX, GPU, application, DRM or macOS 26 support is claimed. An ACPI compiler crash requires its exact input and tool evidence before a machine-specific fix can be qualified.

Validation requires the compiled Windows local-report lifecycle fixture, full application build, packaged startup/version and native collector checks, alongside the Python download and early-build regressions. Process termination or unavailable storage can leave only the attempt-start record; reports are never described as saved if saving failed.