NetBSD 1.0 i386

It had just hit me that I’d never actually installed NetBSD 1.0

So here we go!  For whatever reason Qemu and NetBSD 1.0 see the floppy as a 1.2 MB, so I had to make 1.2 MB images.  For anyone feeling like shuffling a whole lot of floppies here you go!

For everyone else, here is a pre-installed VMDK + Qemu all set to run (for Windows).

I’ve setup the networking, so you can telnet into the VM, and of course access outside, but remember with SLiRP, things like FTP & NFS aren’t going to work.

NetBSD 1.0 on Qemu

NetBSD 1.0 on Qemu

6 thoughts on “NetBSD 1.0 i386

    • Looking at the changelogs, NetBSD 4.0 removed 386 support from the GENERIC and INSTALL kernels, but kept it in other configurations like GENERIC_TINY. 5.0 got rid of 386 support entirely. So your best bet is to install NetBSD 3.1. You could try upgrading to 4.0.1 from sources, but that probably isn’t worth the effort.

  1. Thanks for sharing this! I want to poke around Tcp implementation in 4.4 BSD lite. NetBSD 1.0 is a good candidate.

    I made it to run with networking in QEMU 4.1.1 from Fedora 31

    qemu-system-i386 \
    -hda netbsd-1.0.vmdk \
    -netdev user,id=net0,hostfwd=tcp::20023-:23\
    -device ne2k_isa,netdev=net0,irq=10,iobase=0x320 \
    -m 64 \
    -no-reboot \
    -rtc base=localtime \
    -k en-us

    I wonder if there is any developer guide for NetBSD 1.0 so that I can build the kernel and deploy it.

    Also, when I telnet to there, it didn’t support modern terminal type. I have trouble when using vi and less. That makes my exploring impossible. Do you have any good suggestion?

    Thanks!

    • > I wonder if there is any developer guide for NetBSD 1.0 so that I can build the kernel and deploy it.

      The kernel source is right there in /usr/src/sys. The SMM (https://web.archive.org/web/19970131195705/http://www.netbsd.org/Documentation/lite2/smm/index.html) should mostly apply. You’ll likely also want to read config(8).

      > Also, when I telnet to there, it didn’t support modern terminal type. I have trouble when using vi and less. That makes my exploring impossible. Do you have any good suggestion?

      When using telnet, I’ve had decent amount of success with the vt100 terminal type. That means sticking to 80×24, else things break horribly. termcap(5) seems to exist, but I’m not sure where it’s changed. That might help you, too.

    • I know I’ve read it somewhere, as I obviously didn’t know how to build a BSD kernel from the get go, but basically you edit a config file, run the config program, and then build from there.

      Go to the /usr/src/sys/arch/i386/conf directory, and copy the file GENERIC to something else. In my pre-built image it’s QEMU. Then run config QEMU (or whatever you called yours). You’ll get the message “Don’t forget to run “make depend””.

      Then you need to go to the ‘build’ directory, which in the case of QEMU is:

      cd /usr/src/sys/arch/i386/compile/QEMU

      Then go ahead and build away…

      make depend;make

      If everything works you’ll get a file called ‘netbsd’

      -rwxr-xr-x 1 root wheel 573229 Dec 13 12:35 netbsd

      Install the kernel (by copying it) and reboot!

      cp netbsd /netbsd;reboot

      And that should do it.

      As far as the terminal goes, I always end up using the vt100 emulation as it’s a good LCD (Lowest common denominator). I suppose there may be better things, but I found xterm & putty don’t get along so well. Of course it’s YMMV across the board, but welcome to circa 1994 which really is the fallout year from the AT&T vs BSDi/CSRG lawsuit, and people were scrambling to get a building system, no real time for niceties.

Leave a Reply