NetBSD 10.x kernel MATH_EMULATION
This is my battle-worn, falling-apart laptop rocking an
#i486SX CPU from the early ’90s. It’s so ancient that it doesn’t even have an FPU (Actually, that’s not true, they just cut-out FPU from i486DX to make CPU cheaper)! Anyway, I’ve always dreamed of running a modern UNIX-like OS on it.
So, I spent some time resurrecting math emulation in the
#NetBSD-10.x kernel, and guess what? I did it! But here’s the kicker—the very moment I finished compiling the kernel, ready to test my work, my laptop decided to stop recognizing the Enter key. Just like that. Now, I have no idea if my FPU emulation actually works or not!
So,
#retrocomputing folks—if anyone out there has an i486SX machine and is willing to give this a spin, I’d really appreciate it!
UPD: 11.03.2025: Significant progress[]FPU-emulation code is triggered by the kernel – done[]First successful addition operation using FPU instruction: fadd 3.5 + 2.5 for single precision short real – done- All other instructions and formats to be checked and probably fixed.
UPD: 31.03.2025: Results delivered to the user
Today the simple, yet correct, calculation results were successfully delivered to the user!
UPD 2025.04.27:🚀
First Release is Here! 🚀
I’m excited to announce the first release of
i486SX_soft_FPU — a software FPU emulator for the classic Intel 486SX CPU, running on
NetBSD 10!
This project brings floating-point support back to life for 486SX machines, even though modern NetBSD versions no longer natively support processors without a hardware FPU.
If you’re into retrocomputing, operating system hacking, or just love old-school hardware, check it out!
👉 Project page:
https://github.com/mezantrop/i486SX_soft_FPUContributions, feedback, and testing are all very welcome!
Let’s keep these vintage machines alive! 🔥🖥️
#retrocomputing #NetBSD #486SX #opensource
UPD 2025.05.03: 86BoxJust successfully tested
#NetBSD-10.1 with
#i486SX #FPU_emulation on
#86Box
#486SX #86Box #FPUEmulation #FPUEmulation #i486SX #NetBSD #opensource #retroComuting #retrocomputing
