Skip to content

[CONTENT] ReactOS 0.4.16 press release - #144

Draft
cbialorucki wants to merge 3 commits into
reactos:masterfrom
cbialorucki:reactos-0416-released
Draft

[CONTENT] ReactOS 0.4.16 press release#144
cbialorucki wants to merge 3 commits into
reactos:masterfrom
cbialorucki:reactos-0416-released

Conversation

@cbialorucki

@cbialorucki cbialorucki commented Jul 2, 2026

Copy link
Copy Markdown
Contributor

This is currently a draft

@reactos-buildbot

Copy link
Copy Markdown
Collaborator

Thanks for your contribution!
I have built and deployed your changes to https://pr144.web-content.reactos.org and will also do that for your future changes.

@cbialorucki
cbialorucki force-pushed the reactos-0416-released branch from 230bff0 to 077f08a Compare July 2, 2026 20:54
@cbialorucki
cbialorucki force-pushed the reactos-0416-released branch from 077f08a to 15dca41 Compare July 2, 2026 20:58
During 0.4.16 development, core developer The_DarkFire_ recognized that the kernel was running out of system page table entries (PTEs) when loading third party drivers.
This limitation was most apparent with graphics drivers, which allocate more memory than most other drivers.
The_DarkFire_ changed the memory layout used by our memory manager to increase the amount of system PTEs.
This fixed a hard-to-debug slowdown bug with Nvidia graphics drivers, increased the success rate of using AMD graphics drivers, and got Intel graphics drivers to load much further.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

thiis like 5% of what actually happened here. I'll make a comment improving this section a lot in the next few days

@obsolete-is-better obsolete-is-better Jul 3, 2026

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

One correction I initially thought the PTE fixes solved the Nvidia slowdown bug partially due to regressions that made it difficult to determine the exact point it was solved.

julenuri and i verified it was the combination of P6CACHE enablement in both videoprt and ntoskrnl

discussion is in this jira report
https://jira.reactos.org/browse/CORE-20298

and the relevant fixes but note between Hervé Poussineau and Adam Słaboń fixes there is a videoprt regression that lead to the confusion.

https://git.reactos.org/?p=reactos.git;a=commit;h=59ae6b3e15d78df2d86efa7c55fc88fa08c9636b
https://git.reactos.org/?p=reactos.git;a=commit;h=afbadf5c4418ad3da09b7af4c819f2939d71f8e3

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

For 0.4.15 development, core developer hpoussin put in the ground work for multimonitor support and vga fallback when display drivers fail. The foundation put into 0.4.15 allowed us to continue striving for better video driver compatibility in 0.4.16. For years ReactOS has been plagued by different issues with all of the major video driver vendors.
NVIDIA GPUs in particular had been plagued by a slow down issue that many talented contributors and developers attempted to investigate. Eventually core developer The_DarkFire_ recognized that the kernel was running out of system page table entries (PTEs) when loading third party drivers. This limitation was most apparent with graphics drivers, which allocate more memory than most other drivers. The_DarkFire_ with guidance changed the memory layout used by our memory manager to increase the amount of system PTEs. This fixed a hard-to-debug slowdown bug with Nvidia graphics drivers. AMD was a different story where the OpenGL window would end up blank, this was resolved by rewriting ExtEscape inspired by the initial patch by late core developer Jimtabor. While these improvements stand out to get GPU drivers from all 3 vendors working, it involved an incredible amount of research and guidance from many of the contributors and developers to improve stability, handle resource management of the new devices, and fix many edge case bugs in our win32k.

date: 2026-07-02
tags: [ "release" ]
---

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Here we probably need to say hello to our followers first I guess:

Suggested change
Hello ReactOS followers!

or even better like this:

Suggested change
Greetings ReactOS followers!

ReactOS 0.4.16 introduces asynchronous connection support.
This greatly improves networking performance by allowing applications to execute networking operations without stalling.
This also improves application compatibility as many programs assume that these asynchronous connection APIs are always present.

@oleg-dubinskiy oleg-dubinskiy Jul 3, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It definitely makes sense to mention recent audio improvements made during 0.4.16-dev in this place too (e. g., new HDAudBus bring-up (and KMDF required by it), audio volume control support improvements and fixes, audio devices enumeration fix which fixes non-working audio device detection with some sound cards (e. g., Realtek HD Audio) etc.).
I can even write an initial article for that if you prefer (it might be improved/fixed later as well). 😉
Like this:

Suggested change
## HD audio support
For a couple of years, ReactOS had unstable and very incomplete High Definition (HD) audio controllers support,
which is represented by HD audio bus driver (hdaudbus.sys), required and widely used by a lot of 3rd party HD audio codecs (AMD, IDT, NVIDIA, Realtek, SigmaTel etc).
Its implementation written by Johannes Anderwald in the far past, was mostly stubbed and non-working at all,
causing blue screens each time when attempting to install any audio codec for an appropriate HD audio controller.
But now, our core developer Oleg Dubinskiy imported a new modern HD audio bus driver which was initially written
for Windows 10, from the following repository: https://github.com/coolstar/sklhdaudbus (BSD-3-Clause license).
And Justin Miller has imported a new functionality from (open source) Microsoft Kernel Mode Driver Framework (KMDF), which is used by that driver as well.
This allows to properly support a lot of HD audio controllers which are compatible with (and have a codec driver for) Windows XP and Windows Server 2003.
For example, Realtek High Definition (HD) audio codec R2.74 for Windows XP has been successfully tested and is confirmed to be working properly in ReactOS
with Realtek ALC660 HD audio controller on Asus-F5R test notebook at least:
https://private-user-images.githubusercontent.com/26385117/584169871-b6474c2c-160b-4eb8-992c-3608854c92f5.mp4?jwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpc3MiOiJnaXRodWIuY29tIiwiYXVkIjoicmF3LmdpdGh1YnVzZXJjb250ZW50LmNvbSIsImtleSI6ImtleTUiLCJleHAiOjE3ODMwNjY1MjAsIm5iZiI6MTc4MzA2NjIyMCwicGF0aCI6Ii8yNjM4NTExNy81ODQxNjk4NzEtYjY0NzRjMmMtMTYwYi00ZWI4LTk5MmMtMzYwODg1NGM5MmY1Lm1wND9YLUFtei1BbGdvcml0aG09QVdTNC1ITUFDLVNIQTI1NiZYLUFtei1DcmVkZW50aWFsPUFLSUFWQ09EWUxTQTUzUFFLNFpBJTJGMjAyNjA3MDMlMkZ1cy1lYXN0LTElMkZzMyUyRmF3czRfcmVxdWVzdCZYLUFtei1EYXRlPTIwMjYwNzAzVDA4MTAyMFomWC1BbXotRXhwaXJlcz0zMDAmWC1BbXotU2lnbmF0dXJlPWE0YTk1NzZjMzk4Njk5ODVjOGQwYjI5M2VlOTJhNDY5NWViMzhiNzQ2Mzc4MmJjZmY2MTFiZTM4OWFlZjNkODAmWC1BbXotU2lnbmVkSGVhZGVycz1ob3N0JnJlc3BvbnNlLWNvbnRlbnQtdHlwZT12aWRlbyUyRm1wNCJ9.FlnzOhDvwcJ-_Td4pbK12ZEQugwYisVGQqA0guMNi8Y
## Other audio enhancements
ReactOS 0.4.16 also introduces other audio improvements and fixes.
In particular, Oleg also fixed improper volume control handling (audio volume level changing) from Control Panel -> Sound Properties (mmsys.cpl) and Audio Volume Mixer (sndvol32.exe).
So now, the volume sliders are moving correctly, actually changing volume level and volume balance properly.
For an HD audio codecs, the volume level set by user is also properly saved and restored upon OS reboot.
Another fix he made, is fixing audio devices enumeration code, which allows to properly enumerate all audio devices and skip invalid/improperly detected ones,
and hence fixes incorrectly detected audio input/output and non-working sound with some audio cards.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Newlines to be added and wording to be corrected in some places.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No worries, this is just the working draft. I wanted to get it out so people can start thinking about how they want to add onto it 🙂

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://private-user-images.githubusercontent.com/<super_very_long_SUS_URL>

I'm sure there's a way to simplify that (also "private" on github may not be available to everyone -- I tested the link and I just get a black empty webbrowser page).

@oleg-dubinskiy oleg-dubinskiy Jul 6, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

https://private-user-images.githubusercontent.com/<super_very_long_SUS_URL>

I'm sure there's a way to simplify that (also "private" on github may not be available to everyone -- I tested the link and I just get a black empty webbrowser page).

Yeah, seems it needs to upload that video into Web-Content directly, to make able to play it on the page directly, as in the following example:
https://github.com/reactos/web-content/blob/master/content/blogs/newsletter-104.md#audio-improvements
(looking to the video file URL, it's actually inside Web-Content repository)

@oleg-dubinskiy oleg-dubinskiy Jul 30, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, added some newlines now and corrected wording a little bit in my suggestion above.

@oleg-dubinskiy oleg-dubinskiy Aug 8, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ OK, now re-formatted and improved the wording in my audio improvements suggestion much more.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Now only GitHub's video URL is to be fixed I guess.

## Graphical Installer and the All-in-One Boot CD
Historically, ReactOS offered two images for download, a livecd which let you test ReactOS in a read-only environment, and a bootcd which let you install ReactOS to your harddisk using a text-based installer.
With ReactOS 0.4.16, we are introducing a new graphical installer and a combined bootcd and livecd.
Now you can test and install ReactOS using the same image.

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I would suggest linking to parts 2 and 3 of the blogs, that described the overhauling of the setup:
https://reactos.org/blogs/gui-setup-part2-partitioning/
https://reactos.org/blogs/gui-setup-part3-first-testing-problems/
(or maybe only the part 3 maybe??)

Comment thread content/project-news/reactos-0416-released.md Outdated
@HBelusca

HBelusca commented Jul 5, 2026

Copy link
Copy Markdown
Collaborator

For reviewers: please have a look also at #138 .

Co-authored-by: Hermès BÉLUSCA - MAÏTO <hermes.belusca-maito@reactos.org>
This was a huge help to ReactOS then, but today UniATA is responsible for slow boot times and failing to load on many devices; leading to the dreaded INACCESSIBLE_BOOT_DEVICE (0x7B) bug check.
ReactOS 0.4.16 introduces a new ATA driver developed by contributor disean.
This new ATA driver allows ReactOS to boot in far more environments, including inside Hyper-V.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It makes sense to add a separate title for this section, since the following two items actually belong to standard applications ant tools, not to storage drivers.

Suggested change
## Utilities and applications


In 2021 we imported and enabled the open-source Microsoft FastFAT driver.
Unfortunately, this broke our ability to repair FAT partitions using chkdsk.
Core developer Doug Lyons fixed our FAT chkdsk routines to work with the Microsoft FastFAT driver.

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Minor wording improvement.

Suggested change
Core developer Doug Lyons fixed our FAT chkdsk routines to work with the Microsoft FastFAT driver.
Core developer Doug Lyons fixed our FAT chkdsk routines to properly work with the Microsoft FastFAT driver.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants