43 points
*

If you’re skeptical that this feat is possible with a raw 4004, you’re right: The 4004 itself is far too limited to run Linux directly. Instead, Grinberg created a solution that is equally impressive: an emulator that runs on the 4004 and emulates a MIPS R3000 processor—the architecture used in the DECstation 2100 workstation that Linux was originally ported to. This emulator, along with minimal hardware emulation, allows a stripped-down Debian Linux to boot to a command prompt.

that is 2^8 levels of insane! and of course its Debian.

edit: 4bit data 12bit addressing make it an 8bit processor ; -)

I will slowly corrode on this hill.

permalink
report
reply
9 points
*

Why mips and not RiscV? I would assume it’s easier to emulate in software and has good support in linux

EDIT: found it

Some architectures had arbitrarily-shifted operands all the time (ARM), some have shitty addressing modes necessitating that they would be slow (RISCV), some would need more than 4KB to even decode instructions (x86), and some were just too complex to emulate in so little space (PPC).

Could it be the pc relative addressing often used on risc-v would be slow to run on 4004?

permalink
report
reply
21 points

I want to see the neofetch output lol

permalink
report
reply
35 points

Better go with fastfetch, it might save you a couple days’ runtime.

permalink
report
parent
reply
4 points

There is one in rust, not feature comparable but instant

permalink
report
parent
reply
2 points

Fastfetch is more feature-complete than neofetch and is quite fast. Not sure what numbers you’d be looking at on hardware that old though.

permalink
report
parent
reply
15 points

Here you go:

                   -`
                  .o+`                 user@intel4004
                 `ooo/                 ----------------
                `+oooo:                OS: Arch Linux BCD oriented
               `+oooooo:               Host: Intel 4004 @ 740 KHz
               -+oooooo+:              Kernel: 0.0.1-custom
             `/:-:++oooo+:             Uptime: 3 hours, 12 mins
            `/++++/+++++++:            Packages: 3 (pacman)
           `/++++++++++++++:           Shell: sh 0.5
          `/+++ooooooooooooo/`         CPU: Intel 4004 (4-bit) @ 740 KHz
         ./ooosssso++osssssso+`        Memory: 0.64 KB / 8 KB
        .oossssso-````/ossssss+`       Storage: None (Using Paper Tape)
       -osssssso.      :ssssssso.      GPU: None (Terminal Only)
      :osssssss/        osssso+++.     Display: None (TTY Only)
     /ossssssss/        +ssssooo/-     Network: None (Hand-delivered punch cards)
   `/ossssso+/:-        -:/+osssso+`
  `+sso+:-`                 `.-/+oso:
 `++:.                           `-/+/
 .`                                 `/
permalink
report
parent
reply
6 points

$ doom

permalink
report
reply

Linux

!linux@programming.dev

Create post

A community for everything relating to the linux operating system

Also check out !linux_memes@programming.dev

Original icon base courtesy of lewing@isc.tamu.edu and The GIMP

Community stats

  • 2.3K

    Monthly active users

  • 408

    Posts

  • 3K

    Comments