The last few days have been especially productive, and the biggest milestone is that Windows 2.10 for 286 now boots cleanly inside daveemu and stays stable without the graphical glitches that were blocking progress before.

The root cause was a particularly difficult EGA/VGA rendering bug under Windows 2.10/286. After finally fixing it, the system now reaches a stable desktop state and renders correctly. I want to dedicate the next post entirely to that work, because it deserves a deeper technical write-up than this short update.

Windows 2.10 running in daveemu

Another visible change is mouse capture mode, now available with F11. For the moment this is the most practical solution and makes testing guest software much easier. Longer term, I still plan to write proper mouse drivers for Windows 2.0, 2.1, 3.0 and 3.11 so host/guest integration can feel complete rather than approximate.

I also fixed timing around the clock and PIT/PIC handling. There was a bug where part of the timing path was effectively being counted twice per cycle. Correcting that recovered a few MHz of performance and made timekeeping behave properly again.

The main menu has been extended as well. Pause/resume, restart and stop actions are now wired in, which makes day-to-day testing much less awkward.

Another component back in a stable working state is the HDD synthesizer. There is now a fresh demo here: watch on YouTube.

I also decided to make rolling-release nightly builds available. You can download them here: rolling nightly builds. This is still a pre-alpha 0.1.0 stage, so please do not expect stability yet; for now it is better treated as a technical demo than a production-ready release.

Behind the scenes, I also spent part of the last days splitting the project into more shared library modules (.dll / .so). That has already improved build times, and it should also make it possible to keep LTO enabled more reliably in the future. Before that split, the project had grown large enough that GCC/MSVC LTO could crash during builds.

One more major addition is a new settings window:

New settings window

This is still moving quickly, and I will share more details in the next post.

Previous Post Next Post