Live data from Hacker News

ELKS: Linux for 16-bit Intel Processors

github.com

101–110 of 119 posts

Re: ELKS: Linux for 16-bit Intel Processors

#101
post #92

Earlier quoted context omitted.

Around 1996/97 timeframe, you could fit a kernel and userspace. I remember building a 1.44 setup that booted a compressed kernel and had enough user space tooling to bring up telnet, ftp, and the radio stack to drive the long haul radio cards (we were replacing JNOS [0] IIRC at an ISP ). Even had writable space at the end of the floppy (the kernel etc were readonly) to write overrides of the config; poor man's overla…

That's pretty cool about the radio stack! We don't support a compressed kernel anymore but have a way to compress user executables which saves about 30%. Sadly, even with straightforward decompression, that process on ancient 8088's sometimes takes longer than reading an uncompressed executable. But we're finally at the point of having "too much stuff" to fit on a floppy. And of course everyone wants games. (Don't as…

Check NeHaBodi. Nethack 3.4.3 or Slashem 0.7f might compile under elks, slashem itself shouldn't need ncurses, but it would need some colour support to differentiate some mons (not as a requeriment, but it helps a lot on the gameplay).

Re: ELKS: Linux for 16-bit Intel Processors

#102
There was a version of KA9Q NOS with multitasking that could serve telnet, ftp, smtp, bbs, convers, and more plus give you multiple switchable terminals for telnet, ftp, all at the same time on an 8088 and connect to a packet driver for modem, ethernet, or AX25. It was a port of BSD networking with its own multitasking capability.

Also PC/MIX was pretty cool.

Re: ELKS: Linux for 16-bit Intel Processors

#103
I had tried to get some version of Linux running on my 386SX / 25MHz / 8MB RAM but only succeeded in getting BasicLinux[1] running bootstrapped from a DOS boot first. Somehow I had never found ELKS! But I was just able to trivially make a floppy and boot the system[2]. Amazing. Looking forward to playing with this.

[1] https://distro.ibiblio.org/baslinux/

[2] https://mastodon.social/@incanus/113777573079528868

Re: ELKS: Linux for 16-bit Intel Processors

#104

Earlier quoted context omitted.

Very awesome work indeed... I haven't looked at ELKS in a long time and seeing everything it can do now is heartwarming. The 8018x/ROM mode sounds like it could make for a fun breadboarding project, not that I'll likely wind up doing it myself. Is there any way to run it in emulation? Running native compilers on XT/286 hardware does indeed sound sloooow. At least it can be tested, probably automatically, in emulators…

If you go back 15 years, to January 2010, you find x86-64 hardware that you could install modern Linux on as easily as running the installer off a USB stick. The unibody 2009 MacBook Pro was out by then, so your computer could even look totally normal at a Starbuck’s today (and connect to the WiFi just fine). That machine will take 8 GB of RAM and run the COSMIC desktop written in Rust for Wayland (run it well-I have…

Oh well... At least, in 1980 we got Xenix.

Re: ELKS: Linux for 16-bit Intel Processors

#105

Earlier quoted context omitted.

Very awesome work indeed... I haven't looked at ELKS in a long time and seeing everything it can do now is heartwarming. The 8018x/ROM mode sounds like it could make for a fun breadboarding project, not that I'll likely wind up doing it myself. Is there any way to run it in emulation? Running native compilers on XT/286 hardware does indeed sound sloooow. At least it can be tested, probably automatically, in emulators…

If you go back 15 years, to January 2010, you find x86-64 hardware that you could install modern Linux on as easily as running the installer off a USB stick. The unibody 2009 MacBook Pro was out by then, so your computer could even look totally normal at a Starbuck’s today (and connect to the WiFi just fine). That machine will take 8 GB of RAM and run the COSMIC desktop written in Rust for Wayland (run it well-I have…

[deleted]

Re: ELKS: Linux for 16-bit Intel Processors

#107
post #76
post #47

Thanks for the comments! ELKS will run on an 8088, but also runs on any x86 PC using the legacy "real mode" which runs in 16-bit segmented architecture without an MMU or any hardware protection. It can be fun to boot a PC and see a close resemblance to Linux, but run the way things used to be, using only 16-bits. It'll also run in ROM, e.g. using a 8018x CPU w/onboard PIT and PIC. The point of ELKS today is about "sm…

Could nethack be compiled under elks? Frotz? Inform6?

There was a DOS port of nethack, so likely it could be made to run on elks.

Re: ELKS: Linux for 16-bit Intel Processors

#108
post #9
post #3

Wait, "ROM-based systems"? Were there such x86 micros and is this saying you could run Linux from ROM? That's super interesting.

Some of the Tandy 1000 computers (such as the HX) had MS-DOS 2.11 in ROM. So it's not unheard of for an IBM-Compatible PC to have an operating system in ROM. Also the "Macintosh Classic" had System 6.0.3 in ROM as well, but you had to use a keyboard shortcut to boot from there. It did not run normally.

IBM itself made PS/2s with PC-DOS in ROM. The 5150 had ROM BASIC and that also continued through to the early PS/2s.

Re: ELKS: Linux for 16-bit Intel Processors

#109
post #35
post #9

Earlier quoted context omitted.

Some of the Tandy 1000 computers (such as the HX) had MS-DOS 2.11 in ROM. So it's not unheard of for an IBM-Compatible PC to have an operating system in ROM. Also the "Macintosh Classic" had System 6.0.3 in ROM as well, but you had to use a keyboard shortcut to boot from there. It did not run normally.

Are those real ROM-based-systems, that could execute code directly from ROM, without loading it to RAM first? The only ROM-based-systems I worked with are the Atmel AVR microcontrollers. They don't need to load code into RAM for execution, they have the ROM memory mapped into the address space. I think they can't even run instructions from RAM, which makes remote code execution physically impossible.

Memory devices were not accessed via exotic interfaces at the time. ROM was directly addressable on the bus in early PCs. They executed their ROM code directly as the access time was sufficient for low speed clocks. That is what the BIOS is. Any additional OS/BASIC environment worked the same. Later BIOS implementations had shadow RAM options to allow execution without wait states as bus speeds eclipsed ROM access times.

Re: ELKS: Linux for 16-bit Intel Processors

#110

I had tried to get some version of Linux running on my 386SX / 25MHz / 8MB RAM but only succeeded in getting BasicLinux[1] running bootstrapped from a DOS boot first. Somehow I had never found ELKS! But I was just able to trivially make a floppy and boot the system[2]. Amazing. Looking forward to playing with this. [1] https://distro.ibiblio.org/baslinux/ [2] https://mastodon.social/@incanus/113777573079528868

If you can compile and install TCC you might compiler further useful software and games.

Also, check delicate linux:

http://delicate-linux.net/

Do not try X under Delicate Linux, it will run dog slow with 8MB of RAM.

If you can upgrade it to 16MB and some 486, X would be fine, with icewm set to a light plain theme, no desktop icons.

Post reply on HN