Hacker News new | past | comments | ask | show | jobs | submit login

I wonder, apart from having fun and scratching some nostalgia itches, what are the outcomes of this? Do any of the things learned by doing this project help in working with present day hardware?



You can run Windows 3.1 which has a GUI more advanced than win 10 GUI. But 32 MB RAM ? Is there any Win 3.1 app which can use so much RAM ?


Probably not so much. Most of Win 3.1 is actually still 16bit even in Protected Mode (unless you count win32s which came much later), so everything over 1MB cannot even be addressed directly. While you can probably come up with something that makes use of the 32MB under Win 3.1, that would likely be rather artificial and not very typical of what was happening back in the day, not just because 32MB was considered absolutely massive then.

I vividly remember thinking how freaky it must be to have a PC that tests 32MB at boot (and how long it must take), and I think that was even during Pentium times already, not sure... my 486 had 8MB while many still had 4MB.


Protected mode using 16 bit segment:offset addressing could use more than 1 MB of memory.

The segments were 64K, but the base address of each individual segment was defined in a descriptor table and could point to anywhere within 24-bit addressable memory space on the 286 and 32-bit on the 386.

So the 286 was limited to 16 MB of ram in 16-bit protected mode. The 386 not so.

Incidentally, I had a 286 that was happy to use all the 4 MB of memory it had when running under Windows 3.1.

I remember using Turbo Pascal for Windows, and being amazed that I could allocate more than 640KB — albeit in 64K segments.


I know, hence why I said “addressed directly”, which 16 bit segments (like the major Windows portion living in vm86) couldn’t do, but they could still access it through windows (lowercase w, and no pun intended). EMS and XMS essentially did what you describe for example.


That much RAM on a 33Mhz 386DX would run OS/2 very comfortably, and you could actually use all of it. Or very early Linux distributions, of course. Imagine a Beowulf cluster of them!


Exactly. The requirement for my first personal PC was that it could run True Emacs on Linux (Sun 3 at my University had spoiled me), but I could only afford the absolute minimum: 386SX/25 MHz w/4 MiB. It was a Toshiba T1800 notebook, very nice but monochrome LCD, tiny harddrive, and not expandable.

With 4 MiB I was able to try X11, but not use it in practice. 32 MiB would have been incredible.


A 386DX actually has a full 32-bit address bus, so you can theoretically give it (almost, due to MMIO) 4GB of RAM. Memory testing might take a ridiculously long time, however, and I'm not sure if there's any stock BIOS that will handle it. All limitations that can be worked around, of course.


  Is there any Win 3.1 app which can use so much RAM ?
Maybe someone will start a new software project targeting the platform. That would be the second most interesting project.


There were some 32-bit extenders IIRC, but there's also Win32S.


I'd be surprised if the various compilers coudn't; especially Watcom.


Of course, electronics haven't changed, just gotten smaller, but the principles remain the same.




Consider applying for YC's Spring batch! Applications are open till Feb 11.

Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: