27 comments

[ 2.9 ms ] story [ 55.3 ms ] thread
Original title: It’s Linux, On A Sega Megadrive
Really odd decision for it to be changed away from this original title.

And if I'm being pedantic (and I am) it's Sega Mega Drive.

Repo, which says Sega MegaDrive, is at: https://github.com/LinuxMD/linuxmd

And it really is on a MegaDrive as I only tested this stuff on a Japanese MegaDrive.
Absolutely nuts and squirrels.

Then again, I did know that the Mega Drive's CPU loadout (68000 and Z80) is the same as the first Unix machine I ever used (a TRS-80 Model 16), so running some form of Unix on it was therefore, theoretically, possible...

It runs Doom, now it runs Linux
There's a future front page post waiting for whoever uses one to host their blog. I believe modem attachments existed.

Bonus points if they also developed the blog on a MegaDrive.

Very cool to see, so pointless it just had to be done.

I was wondering how it was squeezed into 64KB of RAM but it uses the 4MB on the Everdrive cart. With that it makes sense, considering Linux can run on an N64 with 4MB of RAM.

RAM is hardly the only difference between the N64 and megadrive. The N64 has an MMU for one thing
If this runs on a megadrive (Genesis), would this also boot on a Sega Nomad, the portable version of a genesis?
I have such fond memories of my time back in the day owning a MegaDrive. It wasn't my first or last games console, but it was my formative one. It was a time in my life when I was into video games (Sonic 2 being the only game I ever played to completion). It pleases me to realise there's still a community around the MegaDrive and - as others has said - this is so crazy but wonderful to see!
Ya same here. Sonic and on the PC, Jazz Jackrabbit. I loved that hare.
That's my experience as well - my family had a 2600, but the Genesis was our first modern (for the time) game console.

I remember fondly all the trips to the video rental store and flea market hoping to find games we could afford.

Genesis does what Nintendon't.

> The lowly 68000 in the Sega doesn’t have a memory management unit required for the full Linux experience, so what’s really running here is a kernel compiled with the -nommu option.

Huh... I thought Linux actually required MMUs. I was under the impression it'd never run on these old consoles because of that. Learned something new today.

> A QEMU fork that emulates enough of the MegaDrive and the EverDrive to play with this without the real hardware is included.

That's seriously impressive.

There was no MMU in the Macintosh Classic/SE lineup which used the 68k as a CPU, but they still support the microcontroller targeted distros like uClinux. Unfortunately the tight integration with the ToolBox ROM makes it a fairly Herculean task. Microsoft bizarrely enough released Xenix for the Apple LISA as well, but that's more of a historic oddity.

Similarly, Basilisk II is a very worthy emulator for Mac 68k emulation so there's a lot to draw on for QEMU and the like.

Still got my Mega Drive, purchased circa 1994. Recently brought it back to life with a Level Hike (I know, apparently RAD2x is better, anyway works well enough for me) HDMI adapter (otherwise sadly it doesn't work with new digital-only TVs), the main unit and all my old games (Sonic 1 and 2, Columns, Alex Kidd in the Enchanted Castle, Wonder Boy in Monster World, Shining Force (needed new battery in cartridge for save state), Sword of Vermilion) still functioning perfectly after all these years (just needed some vigorous dusting of bottom of cartridges). Got my kids on it, they love it: "dad, so cool, boots up instantly, no lag, no ads" (unlike the rubbish apps on their other devices!).

Awesome to hear that Linux has arrived on Mega Drive. Just need it to boot up (how Sonic 1 boots up saying "seee-gaah") and to drone out "liii-nuux", hahaha.

Sword of Vermilion, that's not a common one.
If this inspires anyone to bust out an MD/ Genesis emu, I recommend "Subterrainia." I found it too hard in my youth, but I see now it has a near perfect learning curve. The more you play, the better you get. The controls seem impossible at first, but then you SLOWLY get comfortable with it. (Kind of like learning how to Rollerblade at age 50).
For my American friends who may not know this: The Sega MegaDrive console from the late 80's early 90's is what we call the Sega Genesis. When I saw this post, I assumed it was some kind of optical drive or the later released Sega CD (which the rest of the world called Mega-CD). We had a lot of good times playing Street Fighter II and Sonic on this system back in the day.
Yeah I had originally titled this as "Linux on the Sega Genesis" because I thought more people would be familiar with the Genesis, but then of course I was chastised for changing it and dang changed it back lol.
What a Wow, this brings back memories from my own Sega Mega Drive hacking days. About 35 years ago I built my own hardware development kit from scratch as a way to learn more about the hardware.

I documented the project here if anyone is curious: https://nestenius.se/hardware/how-i-built-my-own-sega-mega-d...

It's really fun to see Linux running on the Mega Drive. I never would have expected that back then.

Why is the Genesis so slow? I've used Linux on other m68k "workstations" and it seemed ok.
The 68000 isn't very fast to start with and: To get the code to fit into memory the kernel is compiled with -Os and GCC makes some poor inlining choices (keeping a call to a function that writes a value to an address in a register instead of just writing to the register, ~5 instructions vs 1), the Mega Drive only has vblank for interrupts, and so on.