Ancestors

Written by FozzTexx on 2025-01-03 at 20:53

Checked out #Linux kernel v3.7.10 to see if I can strip it down enough to run on the 386 with 4MB of RAM in the Toshiba T5200. My plan is to do something very similar to what I did in my blog post where I targeted a 486 (https://www.insentricity.com/a.cl/283), but this time use LOADLIN.EXE to load the kernel from DOS since I don't have a working floppy drive.

[#]RetroComputing #VintageComputing.

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-03 at 21:02

No make tinyconfig on v3.7.10. That's going to make stripping it down a lot more work. #Linux #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-03 at 22:46

Setup a Debian 7 Wheezy docker environment to build in. But already running into compile problems which seem to be caused by lack of 386 support:

In file included from include/linux/irq_work.h:4:0,

             from arch/x86/kernel/irq_work.c:8:

include/linux/llist.h: In function 'llist_add':

include/linux/llist.h:160:11: error: 'boot_cpu_data' undeclared (first use in this function)

[#]Linux #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-04 at 02:22

Looks like v3.3.8 was the last version that could be built for 386. After that there's some change that prevents the kernel from compiling. #Linux #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-04 at 03:08

Hey, an error message is progress, right? #Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-04 at 03:30

I’m not sure that’s better. No error messages at all. #Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-04 at 17:48

Still can’t get my kernel to boot. Went and got the Slackware 1 kernel and used LOADLIN and that’s at least something! Maybe I should try to fix the floppy drive so I can do a traditional Linux install? #Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-04 at 19:58

If I change the BIOS Memory config so that everything above 640k is Extended instead of some being Expanded then my custom kernel doesn't immediately reboot. Instead it just hangs with a cursor on the screen and doesn't print anything. Getting annoyed with the lack of a reset button on the T5200 too.

Would be nice if there was a way I could get qemu to act exactly like the T5200 so I don't have to keep testing on the real hardware.

[#]Linux #RetroComputing #VintageComputing

=> View attached media | View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-04 at 23:29

For anyone who wants to play along, I've put the docker environment and my current Linux config here: https://github.com/FozzTexx/old-wheezer

I'll try to keep it updated as I progress.

[#]Linux #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-06 at 16:12

Thanks to @nina_kali_nina I've switched to using PCem instead of qemu since it does a better job replicating the experience I get on the T5200. I've been going through old and older distros trying to find one that has a kernel that boots on the emulated 386DX. So far it seems that no distro with a 2.x kernel will work. Newest so far is Slackware 2.3 with a 1.2.8 kernel. Bumping the RAM up to 32MB doesn't get 2.x kernels working either. Very strange.

[#]Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-06 at 18:24

Newest kernel I can get to boot so far is 2.0.18 from Debian 1.1 from here: https://grumbeer.dyndns.org/ftp/linux/dist/debian/1.1.11/buzz/disks-i386/SpecialKernels/

It will boot using the boot floppy, but if I extract the kernel from the floppy it will NOT boot with LOADLIN and instead the computer reboots.

Also not sure where to get the kernel config that was used for that v2.0.18 kernel. Or where to get the v2.0.18 linux kernel source either, git repo only goes back to v2.6.

[#]Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-06 at 22:26

Found a v2.4.22 kernel built as a bzImage which boots on the emulated 386 here: https://smalllinux2.sourceforge.net/

That proves that it is possible to get a bzImage to boot, so far I've only had luck with older zImage kernels. Unfortunately there is no kernel config to be found anywhere for that distro.

#Linux #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-07 at 15:57

It seems like my main problem is with the loaders. If I take a kernel which I've had success with booting and move it to a different loader, it fails to boot. If I try to take the 2.4.22 kernel from its floppy and load it with LOADLIN or SYSLINUX it won't boot. If I take my custom 2.4.22 kernel and stick it on the floppy that had 2.4.22 it won't boot.

Until I can find a reliable way of loading the kernel I'll never know if the kernel itself is bad.

[#]Linux #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-07 at 21:14

Found LINLD and I'm able to get my own custom v2.4.37 kernel to load on an emulated 386 with 4MB of RAM! I had to put the root filesystem on /dev/fd0 since there's not enough RAM for an initrd.

Not sure where the source for LINLD is, I found a copy of the .COM file here: https://distro.ibiblio.org/slitaz/boot/

#Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-07 at 21:16

If I bump up the emulated RAM to 8MB then I can also use LINLD to get gray386 to boot and give me a shell.

[#]Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-08 at 05:16

Got gray386 to load in 4MB! I recompiled the kernel to move PHYS down to 0x100000, extracted the initramfs and put it on an ext2 formatted floppy. Loaded with LINLD and root=/dev/fd0. Can't try this on the Toshiba yet since the Toshiba doesn't have a working floppy drive. #Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-08 at 19:31

Got it to boot on the Toshiba! It’s seriously RAM starved and gray386 doesn’t even have swapon. It looks like I’m probably going to have to roll my own distro just for this computer. Many many tools missing and I need to add modules to the kernel. #Linux #RetroComputing #VintageComputing

=> View attached media | View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Toot

Written by FozzTexx on 2025-01-09 at 01:35

What?!? Where's the i386 option, buildroot? #Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Descendants

Written by FozzTexx on 2025-01-10 at 16:44

Got a more complete busybox running on T5200! Started with buildroot commit before 386 support was completely removed, hunted down by @jason_duerstock. Fought getting it to compile because of cross-compile issues and slightly incomplete 386 support. Should give me a base to build on top of. Not sure yet if I want to go full "roll your own distro" w/package manager or manually compile things I want to add. Doubt anyone else wants to run Linux on a 386.

#Linux #RetroComputing #VintageComputing

=> View attached media | View attached media | View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-12 at 19:15

2 days of fighting with buildroot trying to get Tiny C onto the Toshiba by crafting my own package/tcc/tcc.mk. tcc runs and prints help but it didn't install all the rest of the stuff it needs in order to compile. 😖🤦‍♂️

cc: @nina_kali_nina @bigkrimpin @nanochess @huronbikes @anthk

[#]Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-14 at 17:19

TWO MORE days of fighting with buildroot and TinyCC and finally I can compile a Hello World! And it doesn’t swap itself to death even though it has very little RAM available.

[#]Linux #RetroComputing #VintageComputing

=> View attached media

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by FozzTexx on 2025-01-15 at 21:26

After making a couple of small patches to the header files that were borrowed from buildroot, I was able to get GNU make to bootstrap itself with TinyCC (using a Docker container with just the buildroot rootfs). One step closer to Python3 on the 386! #Linux #RetroComputing #VintageComputing

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Jason Duerstock on 2025-01-09 at 01:58

@fozztexx https://gitlab.com/buildroot.org/buildroot/-/commit/6cb4814c87cb1282b4a1d35e73743e8dd1b12ec5

=> More informations about this toot | More toots from jason_duerstock@oldbytes.space

Written by FozzTexx on 2025-01-09 at 02:04

@jason_duerstock wonder if I can reverse it

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Jason Duerstock on 2025-01-09 at 03:05

@fozztexx Worth a shot, or find the last version of buildroot that supported it.

=> More informations about this toot | More toots from jason_duerstock@oldbytes.space

Written by FozzTexx on 2025-01-09 at 03:06

@jason_duerstock reverting sort of worked. But the packages that I want to build don't seem to want to support 386. I might be able to tell buildroot to use older versions of those.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Pa on 2025-01-09 at 02:08

@fozztexx openwrt is another option than buildroot but it's only network. Old routers are still used so that's best bet. I doubt you can run X11 though, maybe older xfree86.

=> More informations about this toot | More toots from 7adi@mastodon.social

Written by FozzTexx on 2025-01-09 at 02:12

@7adi I have zero interest in pointy-clicky on the 386, so I don't think not being to run X11 matters.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Óscar Toledo G. on 2025-01-10 at 16:50

@fozztexx @jason_duerstock it isn't complete until it runs Rogue and a C compiler 😛

=> More informations about this toot | More toots from nanochess@mastodon.social

Written by FozzTexx on 2025-01-10 at 16:53

@nanochess @jason_duerstock I'm not sure how useful running the C compiler on it would be. Thing is so RAM starved it will probably swap itself to death just to compile Hello World. Although I guess now I need to find out…

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by root42 on 2025-01-10 at 16:56

@fozztexx @nanochess @jason_duerstock I remember compiling kernels on my 486SX 25. :)

=> More informations about this toot | More toots from root42@chaos.social

Written by Jason Duerstock on 2025-01-10 at 16:56

@fozztexx @nanochess For what it's worth, back in the day I could compile a kernel in 5MB of RAM on a 386sx/16. It took about eight hours or so, but it did work.

=> More informations about this toot | More toots from jason_duerstock@oldbytes.space

Written by FozzTexx on 2025-01-10 at 16:59

@jason_duerstock @nanochess I don't remember how much RAM was on the 386 that I originally used for Linux. I do remember the 8 hour kernel compile time. It was a hand-me-down 386 in 1993 from some other department on campus, so I doubt it had much.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Nina Kalinina on 2025-01-10 at 19:16

@fozztexx could you please try compiling tcc for it? It should be super lightweight in footprint

=> More informations about this toot | More toots from nina_kali_nina@tech.lgbt

Written by FozzTexx on 2025-01-10 at 19:22

@nina_kali_nina That's easier said than done. Buildroot doesn't really share the toolchain it made for compiling everything for the 386.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Nina Kalinina on 2025-01-10 at 19:25

@fozztexx I used to have a buildroot recipe for tcc a long time ago, but I've lost it :< It's okay, no worries

=> More informations about this toot | More toots from nina_kali_nina@tech.lgbt

Written by FozzTexx on 2025-01-10 at 19:32

@nina_kali_nina Well I've got to figure something out because I need a way to compile other things for the 386. I thought I was going to be able to shove the rootfs in a docker container but was surprised to discover that buildroot doesn't have a gcc target package.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Nina Kalinina on 2025-01-10 at 19:33

@fozztexx adding new targets to buildroot is relatively straightforward. Please let me know if I can help with figuring this out!

=> More informations about this toot | More toots from nina_kali_nina@tech.lgbt

Written by FozzTexx on 2025-01-10 at 19:35

@nina_kali_nina Found this: https://luplab.cs.ucdavis.edu/2022/01/06/buildroot-and-compiler-on-target.html

Going to see if I can get it to work.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Nina Kalinina on 2025-01-10 at 19:47

@fozztexx I suppose that'd work if you will run it in an emulator!

=> More informations about this toot | More toots from nina_kali_nina@tech.lgbt

Written by FozzTexx on 2025-01-10 at 21:07

@nina_kali_nina I can't get that gcc target package to work. gcc needs too many things that 386 doesn’t support. Don’t want to keep going back to older and older buildroots trying to get gcc.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by James Mitchell on 2025-01-10 at 20:44

@fozztexx @nanochess @jason_duerstock there was definitely a time in my life where I spent a lot of quality time doing kernel builds on a 386. Not sure if the kernel building was primarily with 4 or 8 mb of RAM, but I definitely started out with 4 and sat at 4 for a long time waiting for prices to improve

=> More informations about this toot | More toots from wotsac@mastodon.social

Written by Eloy on 2025-01-10 at 16:55

@fozztexx @jason_duerstock oh I am interested! :)

=> More informations about this toot | More toots from eloy@hsnl.social

Written by Nina Kalinina on 2025-01-10 at 19:18

@eloy @fozztexx @jason_duerstock +1, I have a 386SX with 3.9MB of RAM - it isn't great for Win95 but maybe busybox will run fine there (probably not). Still worth trying!

=> More informations about this toot | More toots from nina_kali_nina@tech.lgbt

Written by theothertom on 2025-01-10 at 23:20

Gotta be able to say hi on some IRC channel at the very least - a 386 should be plenty for that :)

CC: @eloy@hsnl.social @fozztexx@fozztexx.com @jason_duerstock@oldbytes.space

=> More informations about this toot | More toots from theothertom@social.cobaltqu.be

Written by andy diller on 2025-01-10 at 17:05

@fozztexx @jason_duerstock - what else will they run on a 386 w/ plasma screen?

=> More informations about this toot | More toots from dillera@bitbang.social

Written by FozzTexx on 2025-01-10 at 17:12

@dillera @jason_duerstock Pretend it's a GRiD and run an Aliens robot sentry simulator?

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by andy diller on 2025-01-10 at 17:33

@fozztexx @jason_duerstock - sure, that is fun for .0001 ms and then you still want to do something with it.

=> More informations about this toot | More toots from dillera@bitbang.social

Written by FozzTexx on 2025-01-10 at 18:07

@dillera @jason_duerstock I think everyone else just wants to run DOS. And a few weirdos want to run Windows.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by ∴ a highly-entropic being ∴ on 2025-01-10 at 17:16

@fozztexx nice! love that plasma display! <3

=> More informations about this toot | More toots from d6@merveilles.town

Written by The September Agenda 🇨🇦 on 2025-01-10 at 23:22

@fozztexx If my T5200 had more than 2mb RAM, I might attempt it. Might.

=> More informations about this toot | More toots from septemberagenda@mastodon.sdf.org

Written by Nina Kalinina on 2025-01-12 at 19:35

@fozztexx good job! TCC comes with its own super tiny libc/crt, you should be able to cross-compile it with tcc itself, as long as the architecture is right

=> More informations about this toot | More toots from nina_kali_nina@tech.lgbt

Written by FozzTexx on 2025-01-12 at 19:37

@nina_kali_nina I think tcc did that already, but for some reason it didn’t get installed into the rootfs.tar.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Óscar Toledo G. on 2025-01-12 at 22:30

@fozztexx @nina_kali_nina @bigkrimpin @huronbikes @anthk@paquita.masto.host yess!

=> More informations about this toot | More toots from nanochess@mastodon.social

Written by Stephen McNamara on 2025-01-14 at 17:20

@fozztexx this is the kind of awesome content i love about mastodon

=> More informations about this toot | More toots from noflcl@mastodon.social

Written by Michael Engel on 2025-01-14 at 18:18

@fozztexx Can you compile the kernel for that machine with TinyCC? https://github.com/seyko2/tccboot

=> More informations about this toot | More toots from me_@sueden.social

Written by FozzTexx on 2025-01-14 at 18:26

@me_ Beats me, and I doubt I’ll try it. Building the kernel on a modern machine works great. If you’re curious to give it a shot though, I’d be happy to share my rootfs to help you get started!

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Jason Duerstock on 2025-01-19 at 07:56

@fozztexx Not exactly what you were looking for, but near it, at least: https://www.youtube.com/watch?v=u2Juz5sQyYQ

=> More informations about this toot | More toots from jason_duerstock@oldbytes.space

Written by FozzTexx on 2025-01-19 at 16:01

@jason_duerstock tl;dw: kernel + busybox. Done.

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Jason Duerstock on 2025-01-19 at 16:34

@fozztexx Fair. I'd rather it be a blog post too, but he does some interesting stuff beyond what you've done.

=> More informations about this toot | More toots from jason_duerstock@oldbytes.space

Written by FozzTexx on 2025-01-19 at 18:50

@jason_duerstock What are the interesting things?

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Written by Jason Duerstock on 2025-01-19 at 18:52

@fozztexx Minimizing the kernel, testing with qemu, making a minimal /sbin/init with just system calls and no [g]libc.

=> More informations about this toot | More toots from jason_duerstock@oldbytes.space

Written by FozzTexx on 2025-01-19 at 19:02

@jason_duerstock I tested with qemu early on (the method described in my 486 blog post) but it would happily boot kernels that I couldn't get to boot on the Toshiba (which I think was actually a LOADLIN problem). Is there more to minimizing the kernel than disabling pretty much everything? (Sucks 3.x kernel has no make tinyconfig.)

=> More informations about this toot | More toots from fozztexx@fozztexx.com

Proxy Information
Original URL
gemini://mastogem.picasoft.net/thread/113795828787018084
Status Code
Success (20)
Meta
text/gemini
Capsule Response Time
618.956242 milliseconds
Gemini-to-HTML Time
34.704668 milliseconds

This content has been proxied by September (3851b).