4 ms·
Show HN: GentleOS – A pair of hobby OSes for vintage 32-bit and 16-bit PCs
Hello HN,
I've been working on a simple OS for tinkering and running bare metal apps on vintage PCs.
Since I couldn't quite decide whether to target pure 16-bit, or slightly more capable 32-bit machines, I ended up with two separate versions:
- GentleOS/32 (https://github.com/luke8086/gentleos32 https://github.com/luke8086/gentleos32) works on i386+, requires 4MB of RAM and VGA display supporting 640x480x16 mode or any 256-color VESA mode.
- GentleOS/16 (https://github.com/luke8086/gentleos https://github.com/luke8086/gentleos) works on 80186+, requires less than 192KB of RAM and a CGA display supporting 320x200x4 mode.
You can find more details in the repos.
- mohammad_dev 4mo ago[flagged]
- xtiansimon 4mo ago[flagged]
- Aldipower 4mo agoSo, you poop everywhere you go. Interesting.
- darkwater 4mo agoI don't really understand GP's message. User's comment history seems pretty normal, why would they drop a random IG link here? Wrong article?
- LastTrain 4mo agoThe link is to a designer talking about how technology has led us to a design world that is mostly driven by nostalgia. I personally don’t see it as being applicable here as it deals with big design houses not hobbies, but I can see why someone might think it is.
- cestith 4mo agoWhat a designer might call nostalgia an actual user of an OS might call standard, or maybe even intuitive. The point of an operating system is to be used. If it’s pretty, that’s a bonus. Usability by the target audience is the primary concern.
- nosioptar 4mo agoTo anyone interested in the video, but without an Instagram account, gramsnap sometimes works. (Imginn.com sometimes works for viewing IG profiles.) https://gramsnap.com/en/instagram-reels-viewer/ https://gramsnap.com/en/instagram-reels-viewer/
- xtiansimon 4mo ago> “User's comment history seems pretty normal” Wow. I’ve been investigated. If you don’t understand my comment, ok. It was offered with zero comment. What’s to understand? If you’re saying you don’t understand the _juxtaposition_ of a fashion designer talking about trends in fashion, and how that language compares to the language surrounding trends in OS GUI. Well, then you can take the whole idea with the same regard I gave in making it. Do you see? It’s just an _idea_, and you’re welcome to reject it (-4 and counting).
- dang 4mo agoPlease don't do this here.
- nosioptar 4mo agoThat video's bullshit. People prefer old UIs because modern ui is shit, not because they're not creative. Computer programs are tools. It doesnt do anyone any good if they're unusable in the name of chasing moronic trends.
- reconnecting 4mo agoI have a theory that corporations make new UIs to entertain people through them. First, to create the feeling that something is happening, and second, to increase screen time. Old interfaces were far more practical for getting work done, and therefore obviously boring. For me, as someone who is supposed to use technology as a tool and not as a source of amusement, the new interfaces of the major OSes feel unacceptable. But the other billion people chatting and scrolling are the real consumers, not me — and as a result, we now have the interfaces we have.
- alterom 4mo agoNot really a theory. Software makers treat UIs the way auto makers treat paint and body styling.
- latexr 4mo agoThat’s one reason corporations make new UIs, yes, but the other is users demanding them for the sake of novelty. Reddit (but not only) is filled with people with no design sense complaining about how something which works (because it was relentlessly iterated on) looks “stale” and “old”. They’re the same users who jump from app to app willy nilly just chasing novelty. Any turd, if hyped enough, is ailed as “the future”, “modern”, “innovative”, which is repeated drivel from what the corporations tell you when they introduce their next thing.
- LastTrain 4mo agoLike almost all bullshit that is believable by a multitude, it is couched in some very small truths.
- luciferin 4mo agoI think there's a couple of different forces at play in the convergence of GUI design that we're seeing in the past 20 years. First, there's been a huge amount of widely accepted research that shows what the most accessible way to design an interface is. Things like Google's Material Design and Apples Human Interface Guidelines come to mind. Second, the widespread availability of those two specific design guides make it increasingly common for developers to just create to those. It ensures that things just work and are increasingly portable. Third, we're in a landscape where API stability and design is prized. That's partially because of the number of times that design has been broken by updates and version changes. It takes many years for developers to update their applications when a new back-end is developed, and the time in between gives broken applications, and ugly looking fallback. You can look at running GTK1 apps on modern GNOME, or X11 apps rendering on Wayland over the past decade for an example of this. All that said, I truly miss the days when we had interface skinning. There was a skin for OS X called UNO that was absolute perfection in my eyes, and it was ported to an old version of Android back when skinning was a thing. There's nothing like it available now. Even GNOME is highly against theming and skinning now, apparently because they like breaking with every single release rather than maintaining an API/ABI and skinning support. The themes that were available for Windows XP were so much fun, even if you had to swap out DLLs to get them working.
- iamnothere 4mo agoThis is great, thanks for releasing your work. Very impressive. You may get some interest from others in the retrocomputing/permacomputing sphere if you implement an Uxn emulator; it is extremely simple and can run on very limited hardware. https://100r.co/site/uxn.html https://100r.co/site/uxn.html Vintage hardware would be a great host for Uxn programs, so I suspect this would generate some excitement.
- sandos 4mo agoHeh, the "small virtual machine" was NOT a lie! Is that less than 200 lines? Very nice! Now I feel like integrating that into various things....
- luke8086 4mo agoThank you so much! Somehow I haven't heard about Uxn before, but it seems very cool and I'll definitely look into it.
- iamnothere 4mo agoYou’re welcome. You’d probably appreciate its focus on long-term stability; the authors wanted an environment for their software that would ensure code could stay frozen in a working state forever. The only thing that may need updates is the VM, as the host OS and userland will shift over time, but the VM is designed to be exceptionally easy to implement and maintain. That comes at the cost of some capabilities, but they were specifically aiming for simpler software, so it works out.
- Aldipower 4mo agoA pre-build floppy disk image would be great, so I could run it on my IBM PS/1 from a floppy.
- valleyer 4mo agoThere seems to be an 8 meg image here: https://github.com/luke8086/gentleos32/releases/download/2026-06-07/gentleos32-disk.img https://github.com/luke8086/gentleos32/releases/download/202...
- ginko 4mo agoSomeone prepare a set of floppy disk images so you can get the proper installation experience.
- RobotToaster 4mo agoIncluding the mandatory corruption on the last one.
- Aldipower 4mo agoThis is a hdd image, I guess.
- luke8086 4mo agoFor PS/1 you'll need the 16-bit version from https://github.com/luke8086/gentleos https://github.com/luke8086/gentleos. A floppy image is provided in releases. Note you only need to copy the first 64KB, the rest is just padding for emulators.
- Aldipower 4mo agoAh, even though the 386SX-25 is 32bit in my PS/1? Will try it eventually.
- gunapologist99 4mo ago
- mysterydip 4mo ago> The only future plans are bugfixes, optimizations, and adding more apps. Perfect. Nice to see a platform target stability instead of constantly reinventing itself and its APIs. Definitely want to give it a go!
- reconnecting 4mo agoGUI looks a but BeOS inspired, but somehow even cleaner.
- tecleandor 4mo agoI think it's that yellow bar what it makes it look like BeOS. And maybe the right hand menu bar. But once you check a B/W version, it doesn't look like BeOS that much.
- luke8086 4mo agoGood catch, the yellow and blue colors are totally inspired by BeOS :D I'm even adjusting the default VGA palette to get the right tints in 16-color mode.
- MisterTea 4mo agoMore like a Win 3.1 theme with BeOS colors and a NeXT desktop.
- shevy-java 4mo ago> A hobby operating system for vintage 32-bit PCs. I am all in favour of great projects, but why a differentiation between 32-bits or 64-bits? I don't understand that. Is a computer that is 32 bit or 64 bit, either way which, not worthy? Edit: I understand a motivation if it is on simplicity choosing one or the other, but other than that I don't see why that should ever be a goal worthy to be pursued. Software should really "just work" no matter the number of bits and bytes.
- ReptileMan 4mo ago32 is vintager vintage
- grebc 4mo ago“Vintage” 64 bit PC’s aren’t a thing. > Edit: I understand a motivation if it is on simplicity choosing one or the other, but other than that I don't see why that should ever be a goal worthy to be pursued. Software should really "just work" no matter the number of bits and bytes. Not really how software works.
- Aldipower 4mo ago> “Vintage” 64 bit PC’s aren’t a thing. Just sold my SGI Indigo 2 for 900 $ ! Vintage 64 bit is absolutely a thing. :-)
- amuradbegovic 4mo ago
- gt0 4mo agoMade me think of Breadbox Ensemble, which is GEOS, and was really lovely.
- kolesnikov-arch 4mo agoThe GUI is absolutely gorgeous. Reminds me of the early BeOS days but somehow cleaner. Does this run reliably on bare metal, or is it mostly optimized for QEMU right now?
- mdct 4mo agoThis reminds me of the era when operating systems felt more approachable and visually distinct. Modern UIs are often cleaner, but many of them have lost some of the personality that older systems had.
- nosioptar 4mo agoI think this is fantastic! I love that the code is so clean my dumb ass can understand it despite not using C much.
- sixothree 4mo agoThe code is cleaner that what I was expecting from a C repo. Also, it's quite a feat to fit this into 4 MB on a 386.
- lproven 4mo ago> it's quite a feat to fit this into 4 MB on a 386. I had 2 different Librex 386SX laptops, with 4MB of RAM, on long-term loan from work around 1992. One was quite chunky, the 2nd was a slimline thing with an off-centre hinge. I ran OS/2 2.0 on them both. So I could run multiple DOS apps, and a WinOS2 VM containing Windows 3.0, meaning I could run Win16 apps as well. And native OS/2 apps, although I didn't have many. Here's a pic of the original Librex: https://books.google.im/books?id=tDwEAAAAMBAJ&pg=PA27&redir_esc=y#v=onepage&q&f=false https://books.google.im/books?id=tDwEAAAAMBAJ&pg=PA27&redir_... And the 2nd model: https://www.reddit.com/r/vintagecomputing/comments/10gepdd/laptop_l%C3%ADbrex_386sxl/ https://www.reddit.com/r/vintagecomputing/comments/10gepdd/l... TL;DR A 386 with 4MB is small now but at the time this was a fairly serious workstation-level PC. At the time my work desktop was a 386DX but it had only 1MB of RAM. In its time a 4MB 386 could run any one of multiple multitasking 32-bit protected-mode OSes, including OS/2 2.x, SCO Xenix, Coherent 3 or 4, DR Concurrent DOS/386, and so on. This was a high-end bit of kit and with one of these OSes, or even with Quarterdeck DESQview, it could multitask half a dozen large and demanding DOS apps, or maybe a couple of the still fairly new Windows apps such as WinWord 1, or Excel 2.
- icedchai 4mo agoMy first Linux box was a 386SX with 3 megs of RAM (1 meg on the motherboard plus a 2 meg expansion.) It was a tight fit (SLS Linux, I think?) This would've been around 1992 or 93.
- NoGravitas 4mo ago
- hansvs 4mo agoNice! The project also has a 16-bit variant https://github.com/luke8086/gentleos https://github.com/luke8086/gentleos, not clear if it works on 8086 IBM PC, but I'll give it a go. Been looking for a reason to power up my IBM PC again.
- neofrog 4mo ago[flagged]
- linkdd 4mo ago[flagged]
- Damjanski 4mo ago<3<3<3
- amelius 4mo agoPart of why these images look so nice is because these systems were not so locked down.
- vortegne 4mo agoWhat a lovely-looking OS! Also great to hear that the project isn't aiming for infinite changes! Will be digging out some old hardware to test it out very soon, this is exciting!
- phendrenad2 4mo agoLove the photos of it running on 386/486 laptops. So cute!
- rasz 4mo agoAm I crazy or are the "photos" generated? I did have T1800 and it never looked like this. It had a very early very bad grayscale LCD wiht fiddly contrast control, not a perfect crisp vibrant OLED like this page shows. example how one looks like irl https://allegrolokalnie.pl/oferta/laptop-toshiba-t1800 https://allegrolokalnie.pl/oferta/laptop-toshiba-t1800 https://www.youtube.com/watch?v=sxIc_UVKxvc https://www.youtube.com/watch?v=sxIc_UVKxvc
- bor_real 4mo agoPerhaps a new panel was retrofitted into it?
- rasz 4mo agoOLED panel? that would be a bigger hack than this OS :) Either all pictures are AI generated using QEMU templates that were there previously https://github.com/luke8086/gentleos32/commit/d40576226b7020cb307dea5898fc4a686942f984 https://github.com/luke8086/gentleos32/commit/d40576226b7020... or those are real pictured beautified by AI. YT loves doing that to thumbnails, example https://hackaday.com/2026/06/03/hydraulic-drive-for-your-lawn-tractor/#comment-8305444 https://hackaday.com/2026/06/03/hydraulic-drive-for-your-law...
- luke8086 4mo agoThe only AI-generated artifact is the cyberpunk wallpaper from the last photo, I'll admit that :) Btw. the QEMU screenshots are still in the repo in https://github.com/luke8086/gentleos32/tree/main/doc/appimg https://github.com/luke8086/gentleos32/tree/main/doc/appimg
- luke8086 4mo agoAll the photos are real, though it took me *lots* of time to get them somewhat right. The display on T1800 is indeed "challenging". What helped was: - Letting it warm for a while - Putting windows in the right places, because each one generates its own artifacts - Setting background to dark with the white pattern - Fiddling with the contrast knob and matching it with the right viewing angle - Using 2x zoom To be fair, the default photo app of iPhone 16 automatically reduced some of the artifacts. The only post-processing done myself in GIMP was very basic stuff like adjusting white balance, exposure and contrast. Here you can see a few very quick-n-dirty photos I just took for comparison - https://imgur.com/a/6Xz6vc8 https://imgur.com/a/6Xz6vc8
- ge96 4mo agoAhh the Librettos... I had a couple of 50s at one point, one of those looks cool unusable thing and the brittle plastic damn, I opened it and the hinge snapped lmao my heart my soul Unusuable because of how small the keys are
- Waterluvian 4mo agoKind of an odd statement I think, but I really like the aesthetic of early OS GUIs where you could tell half the tools were pretty much there as developer tools.
- Dwedit 4mo agoThere weren't too many GUIs that used the PC-BIOS font. Most of them wanted to get away from that.
- aktau 4mo agoI clicked around in the kernel section and the other commenters highlighting the simplicity weren't lying. It's beautiful in its simplicity. Seeing the screenshots I was kind of expecting this was a pre-emptive multi-tasking OS (forgetting what I read in the submission). Things that thus surprised me on a cursory look: - noticed krn_main() ends with `while (1);` [1]. I would've expected a "schedule" call or something. I assume there's no real busy loop burning CPU, maybe it's never meant to reach this code? - I'm reminded of the "bare metal OS" when I see one of the apps call `krn_\*` functions directly [2]. [1]: https://github.com/luke8086/gentleos32/blob/main/kernel/main.c#L28 https://github.com/luke8086/gentleos32/blob/main/kernel/main... [2]: https://github.com/luke8086/gentleos32/blob/ea691f14635c023da16cbc8c7bccffe95513897f/apps/about.c#L125 https://github.com/luke8086/gentleos32/blob/ea691f14635c023d...
- luke8086 4mo agoThanks, so glad people like the code! I keep looking for ways to make it simpler and more obvious. > - noticed krn_main() ends with `while (1);` [1]. I would've expected a "schedule" call or something. I assume there's no real busy loop burning CPU, maybe it's never meant to reach this code? Yeah, `gui_main()` takes over and is not supposed to return, so the code is unreachable. The loop is just an old idiom used in such places (e.g. [1]), though I've now replaced it with a comment and a call to `halt()` to better convey the intention. > - I'm reminded of the "bare metal OS" when I see one of the apps call `krn_*` functions directly [2]. Yeah... but at least the kernel doesn't call the apps... which it could ;^) [1] https://github.com/freebsd/freebsd-src/blob/main/sys/x86/x86/cpu_machdep.c#L570 https://github.com/freebsd/freebsd-src/blob/main/sys/x86/x86...
- j1greene 4mo agoDoes this OS (either the 16 bit or 32 bit version) require apps built for it, or is it compatible with DOS or Windows 3.x or any other OS.
- ajxs 4mo agoReally awesome work! A simple OS for retro x86 hardware is a really cool project! I wish I still had some era-appropriate hardware I could test-drive it on.
- itomato 4mo agoThis might be nice on one of those pocket x86 machines, but I'm not nostalgic enough to try it out.
- nubinetwork 4mo agoDo you plan on releasing any documentation on the internals? I'm curious about the memory management and process scheduling, but I'm too lazy to read the source code. :)
- pkphilip 4mo agoI just wish there were opensource OSs (not AOSP) like this for smartphones with full support for GPS, gyro, maps etc. But I guess that is not going to happen with all of the binary blobs.
- neurocontrarian 4mo agoThank you, I'll try it with my old thinkpad
- iberator 3mo agoYou are the right person to ask as you understand the core of the problem: Why all modern(ish) kernels require 4MB of ram as a hardcoded value? Is it because of the ram page size or what?