\

Show HN: GentleOS – A pair of hobby OSes for vintage 32-bit and 16-bit PCs

52 points - last Sunday at 3:45 PM


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) 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) works on 80186+, requires less than 192KB of RAM and a CGA display supporting 320x200x4 mode.

You can find more details in the repos.

Source
  • mysterydip

    today at 10:44 AM

    > 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!

    • nosioptar

      today at 12:15 PM

      I think this is fantastic! I love that the code is so clean my dumb ass can understand it despite not using C much.

        • sixothree

          today at 1:53 PM

          The 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

              today at 3:35 PM

              > 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_...

              And the 2nd model:

              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.

                • nosioptar

                  today at 5:39 PM

                  That's a wonderful machine. I'd love to see that style of keyboard on new stuff.

                  Its wild to me to think of how much old computers could do relative to new. WordPerfect for DOS was always responsive and quick wheb I used it. I've seen ms word cludge up machines that should have plenty of power to run a word processor.

                    • lproven

                      today at 6:26 PM

                      > I'd love to see that style of keyboard on new stuff.

                      OMG yes please. :-)

                      Yep, WP for DOS was quick. Rather clunky UI compared to MS Word for DOS, IMHO, but fast. A friend of mine used a simple method to demo its speed: on his cheap monochrome 286 home computer, he loaded the book he was working on -- one big file, a few hundred pages -- and just held down the cursor key to scroll through the whole thing. It kept the entire doc in RAM and the text just blurred as it zoomed through the entire book in under a minute.

                      Compared then (early 1990s) to Windows where a similar text took tens of minutes, as my faster computer struggled to load in pages of text from disk, render the fonts, etc.

                      In the late 1980s, Amstrad introduced new CP/M machines, the PCW range:

                      https://www.cpcwiki.eu/index.php/PCW

                      They sold for over a decade and shifted about 8 million units. A CP/M computer, in the early Windows era.

                      Maybe it's time to do that again: a very low-spec machine, but with a crisp e-ink screen and a great premium-grade mechanical keyboard, shipping with a modern FOSS DOS, a compilation of free DOS apps, and some nice friendly graphical launcher. Wrapped up as an easy appliance that doesn't do Internet stuff at all, but makes it trivially easy to save your work on USB media or zap it to modern devices wirelessly.

                      Form factor of a big late-20th-century laptop, with a massive battery so it can double as a power bank for your phone or something.

                  • icedchai

                    today at 4:44 PM

                    My 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

                      today at 4:52 PM

                      I had a 386SX-16 running OS/2 from 2.1 to 3.0. It was usually fine, you could multitask several OS/2 and DOS applications or a WinOS2 session. It was very easy to get it swapping, though, and when it was swapping, it ground to a halt. It helped a lot putting 8MB on it, though 4 of those were on an ISA card and very slow.

                        • lproven

                          today at 6:30 PM

                          Reminds me of my early-1990s home network server: a late-1980s IBM PS/2 Model 80, a 386 tower built with a moulded iron case. Super tough, fancy 32-bit IBM expansion bus. 4MB of RAM on the motherboard, another 4MB in an expansion slot.

                          I attached a couple of big SCSI drives and ran Windows NT 3.51 Server on it. When not logged in, it only used a couple of megs of RAM for the OS so file serving performance was tolerable -- and the hardware was literally bulletproof. I dropped one down a flight of stairs in my first job. The computer survived but it knocked lumps out of the concrete stairs on the way down.

          • iamnothere

            today at 12:05 AM

            This 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

            Vintage hardware would be a great host for Uxn programs, so I suspect this would generate some excitement.

              • sandos

                today at 2:28 PM

                Heh, 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

                  today at 4:33 PM

                  Thank you so much! Somehow I haven't heard about Uxn before, but it seems very cool and I'll definitely look into it.

                    • iamnothere

                      today at 5:27 PM

                      You’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.

              • Waterluvian

                today at 3:21 PM

                Kind 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.

                • Aldipower

                  today at 10:17 AM

                  A pre-build floppy disk image would be great, so I could run it on my IBM PS/1 from a floppy.

                    • Aldipower

                      today at 1:04 PM

                      Ok, I built the floppy image now. dd'ed it on a floppy and powered my IBM PS/1 up. Despite some nasty sounds of the HDD bearings that went away after 30 seconds, the floppy does not boot on this machine. Just a black screen. 386SX-25 2MB RAM. Maybe 2MB RAM too less, but I thought at least something will happen. :-)

                        • luke8086

                          today at 5:06 PM

                          Even on 2MB, you should be able to at least see GRUB, which would tell you that it can't load the kernel. Does it go blank before that? This could mean an issue with either GRUB or the floppy.

                      • valleyer

                        today at 10:27 AM

                        There seems to be an 8 meg image here: https://github.com/luke8086/gentleos32/releases/download/202...

                          • ginko

                            today at 10:55 AM

                            Someone prepare a set of floppy disk images so you can get the proper installation experience.

                              • RobotToaster

                                today at 12:20 PM

                                Including the mandatory corruption on the last one.

                            • Aldipower

                              today at 11:33 AM

                              This is a hdd image, I guess.

                          • sillywalk

                            today at 4:24 PM

                            I'm curious what model of PS/1? My first PC was a PS/1 model 2011, with a 286@10Mhz.

                            Also, there's an emulator for PS/1 machines at https://www.ibmulator.org/

                            • luke8086

                              today at 12:24 PM

                              For PS/1 you'll need the 16-bit version from 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

                                  today at 3:02 PM

                                  Ah, even though the 386SX-25 is 32bit in my PS/1? Will try it eventually.

                                    • luke8086

                                      today at 5:12 PM

                                      Oh sorry, a quick google check told me PS/1 had 286. 386SX itself should be supported, the monochrome Toshiba on the photo has 386SX/20 with 10MB RAM.

                                      • gunapologist99

                                        today at 3:49 PM

                                        Yes, the CPU is full 32-bits, but the bus in a 386 SX is only 16 bit. Those PS/1's are such a cool piece of computing history!

                                        https://en.wikipedia.org/wiki/I386#80386SX

                                          • wtallis

                                            today at 4:20 PM

                                            The data bus was only 16 bits wide, but that doesn't really have much impact on OS compatibility; it just means that transferring a 32-bit value to or from memory takes two bus clock cycles instead of one. The address bus is only 24 bits wide, but that only affects physical memory address space; it still uses 32-bit pointers and a 32-bit virtual address space.

                            • hansvs

                              today at 12:20 PM

                              Nice! The project also has a 16-bit variant 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.

                              • reconnecting

                                today at 11:04 AM

                                GUI looks a but BeOS inspired, but somehow even cleaner.

                                  • luke8086

                                    today at 12:36 PM

                                    Good 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.

                                    • tecleandor

                                      today at 11:16 AM

                                      I 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.

                                      • MisterTea

                                        today at 1:10 PM

                                        More like a Win 3.1 theme with BeOS colors and a NeXT desktop.

                                    • gt0

                                      today at 11:34 AM

                                      Made me think of Breadbox Ensemble, which is GEOS, and was really lovely.

                                    • amelius

                                      today at 1:09 PM

                                      Part of why these images look so nice is because these systems were not so locked down.

                                      • Dwedit

                                        today at 3:24 PM

                                        There weren't too many GUIs that used the PC-BIOS font. Most of them wanted to get away from that.

                                        • ge96

                                          today at 2:59 PM

                                          Ahh 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

                                          • rasz

                                            today at 2:51 PM

                                            Am 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://www.youtube.com/watch?v=sxIc_UVKxvc

                                              • luke8086

                                                today at 6:13 PM

                                                All 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

                                                • bor_real

                                                  today at 4:16 PM

                                                  Perhaps a new panel was retrofitted into it?

                                            • phendrenad2

                                              today at 2:34 PM

                                              Love the photos of it running on 386/486 laptops. So cute!

                                              • vortegne

                                                today at 1:42 PM

                                                What 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!

                                                • Damjanski

                                                  today at 12:47 PM

                                                  <3<3<3

                                                  • mohammad_dev

                                                    last Sunday at 3:50 PM

                                                    [flagged]

                                                    • kolesnikov-arch

                                                      today at 11:49 AM

                                                      [dead]

                                                      • mdct

                                                        today at 11:58 AM

                                                        This 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.

                                                        • xtiansimon

                                                          today at 11:27 AM

                                                          [flagged]

                                                            • nosioptar

                                                              today at 12:04 PM

                                                              That 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

                                                                  today at 12:44 PM

                                                                  I 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.

                                                                    • latexr

                                                                      today at 3:38 PM

                                                                      That’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.

                                                                      • alterom

                                                                        today at 1:33 PM

                                                                        Not really a theory.

                                                                        Software makers treat UIs the way auto makers treat paint and body styling.

                                                                    • luciferin

                                                                      today at 1:22 PM

                                                                      I 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.

                                                                        • zozbot234

                                                                          today at 1:31 PM

                                                                          > First, there's been a huge amount of widely accepted research that shows what the most accessible way to design an interface is.

                                                                          Focus-group based and UX research was a lot more intense in the 1990s compared to today, and late 1990s UIs are still among the best available.

                                                                          • nosioptar

                                                                            today at 2:23 PM

                                                                            Google's Material Design is fucking awful from an accessibility standpoint. There's no contrast. Clickable items don't look clickable. With a keyboard/remote, you can never tell what's selected.

                                                                            Material is what made me hate google. It makes everything so difficult. It doesnt even look good. It's a low contrast sea of modern bullshit.

                                                                            I sincerely hope that the material designers go to hell when they die and are forced to use their own garbage designs for all eternity while those of us who dont suck can use properly designed software.

                                                                        • mftb

                                                                          today at 3:54 PM

                                                                          I generally agree with you about UIs (if by shit you mean they've thrown away a ton of utility), but I don't think his video was bs, maybe just moved too far from it's original context.

                                                                          • LastTrain

                                                                            today at 1:01 PM

                                                                            Like almost all bullshit that is believable by a multitude, it is couched in some very small truths.

                                                                        • Aldipower

                                                                          today at 11:34 AM

                                                                          So, you poop everywhere you go. Interesting.

                                                                            • dang

                                                                              today at 4:07 PM

                                                                              Please don't do this here.

                                                                              • darkwater

                                                                                today at 11:49 AM

                                                                                I 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

                                                                                    today at 12:04 PM

                                                                                    The 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

                                                                                        today at 1:30 PM

                                                                                        What 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

                                                                                      today at 12:14 PM

                                                                                      To 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/

                                                                                        • LastTrain

                                                                                          today at 1:03 PM

                                                                                          The video is a word salad of self-aggrandizement and judgement. Don't bother. The dude holds up fashion as if it is some paragon of virtue.

                                                                                            • nosioptar

                                                                                              today at 1:15 PM

                                                                                              The first sentence of your comment seems to describe 99% of social media.

                                                                          • neofrog

                                                                            today at 12:42 PM

                                                                            [flagged]

                                                                              • linkdd

                                                                                today at 2:30 PM

                                                                                [flagged]

                                                                            • shevy-java

                                                                              today at 11:25 AM

                                                                              > 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.

                                                                                • luke8086

                                                                                  today at 12:41 PM

                                                                                  In this context, 32-bit means the minimal requirement. You can absolutely run even the 16-bit version on a 64-bit PC, provided it has BIOS/legacy-boot mode.

                                                                                  It only won't work on modern pure-UEFI systems because that would require writing full stack of USB drivers for keyboard and mouse, and that would be a huge task.

                                                                                  • grebc

                                                                                    today at 11:34 AM

                                                                                    “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

                                                                                        today at 11:36 AM

                                                                                        > “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

                                                                                            today at 11:40 AM

                                                                                            they said PCs

                                                                                        • trashb

                                                                                          today at 12:14 PM

                                                                                          The DEC 3000 would like to have a word with you.

                                                                                            • nocman

                                                                                              today at 3:07 PM

                                                                                              Yeah, DEC Alpha was the first thing to come to my mind. I guess some might argue it wasn't a "PC" - if you don't include what used to be called "workstations". This is largely because PC meant "personal computer", and very few people could afford their own DEC Alpha - they were very pricey ($20k at some point in the 90's, I believe).

                                                                                              • Aldipower

                                                                                                today at 12:25 PM

                                                                                                It even has 64 bit "word" size!

                                                                                            • RobotToaster

                                                                                              today at 12:27 PM

                                                                                              Itanium was released 25 years ago now...

                                                                                                • hnlmorg

                                                                                                  today at 12:44 PM

                                                                                                  Whilst that’s definitely old in computer terms, even “retro”, is it old enough to be “vintage”?

                                                                                                  Personally I’d have said it isn’t. But these terms are subjective.

                                                                                                    • rob74

                                                                                                      today at 1:29 PM

                                                                                                      "Vintage" usually refers to actually old stuff, while "retro" refers to new stuff that looks/sounds/feels like old stuff. So GentleOS is a retro OS designed to run on vintage hardware.

                                                                                                      (That distinction wasn't clear to me either, so I had to look it up - TIL).

                                                                                          • trashb

                                                                                            today at 12:12 PM

                                                                                            x86 boots in 16-bit real mode. Then you need to specifically transition into 32-Bit, and from 32-Bit it can be transitioned to 64-Bit Architecture...

                                                                                            The last step (32-bit to 64-bit) can a bit of a can of worms especially on older platforms where 64-bit implementations can differ greatly and 32-bit "just works tm". 32-bit is quite well supported and has enough resources to make some interesting programs work without much hassle.

                                                                                            I think the author has made the decision not to support 64-bit mode due to needing to balance the complexity and usability of the project. It is a hobby project after all.

                                                                                            Since the author maintains a 16-bit and 32-bit for this project I suppose if you wanted you can always fork and maintain a 64-bit version if you wanted to.

                                                                                            • pjc50

                                                                                              today at 11:52 AM

                                                                                              Don't worry, this is portable to both vintage word sizes: 32 and 16.

                                                                                              • today at 2:05 PM

                                                                                                • ReptileMan

                                                                                                  today at 11:30 AM

                                                                                                  32 is vintager vintage

                                                                                                    • Aldipower

                                                                                                      today at 11:37 AM

                                                                                                      32 bit vinteger ;-)

                                                                                                        • bayindirh

                                                                                                          today at 11:59 AM

                                                                                                          You can do 32 bit voolean too, great for that vintage bitmasks to store application flags. =]