Live data from Hacker News

68 Katy – 68000 Linux on a Solderless Breadboard

bigmessowires.com

31–40 of 40 posts

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#31
post #21
post #7

This is amazing! It's pretty surprising to me how little there is on the board. It looks comprehensible. I wonder if you could do this with a modern CPU and RAM. What would it look like?

userbinator's comments are good, and to extend his remarks obviously the solution to clock skew is to simply lower the clock rate. Good luck using a solderless breadboard at 500 MHz digital LOL. But breadboards work just fine at single digit MHz rates. There is a problem. Many processors use dynamic registers and require a clock above a certain rate to refresh the registers. Yes, no kidding, dynamic ram cells as CPU…

Cheapest possible toaster oven + cheap multimeter thermocouple for manual temperature control + {paste flux, solder paste+stencil} works better than you'd think for soldering BGAs. Even honest-to-goodness reflow ovens can be had on eBay for $300-$400 (search "T962"), which would give you another one or two nines of reliability by circulating the air and having more precise temperature control.

Schmartboard also makes 1.0mm pitch BGA adapter boards, but a lot of the high-end stuff these days is moving to 0.8/0.5/0.4mm pitch. Of course, for those kinds of things, the extra parasitics of an adapter board are probably a no-no in any case.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#33
post #9
post #4

The article spoke about a suspected memory leak in setenv(), I assume it uses uClibc but it was a bit light on the details (no source code links in the article, that I could find). I dug up this link: http://git.uclibc.org/uClibc/tree/libc/stdlib/setenv.c?id=30... which I believe is the relevant function. Unsurprisingly for this level of library code, it's not 100% super-obvious or easy to understand. Especially the…

The whole putenv()/setenv()/unsetenv()/environ API is inconsistent hack that is essentially impossible to implement without introducing memory leak in at least one of these operations without introducing some complex additional book keeping. The good news is that there aren't that many reasons to actually use these functions, as only reasonable usecase for modifying environment is changing environment of spawned subp…

I used the older uC-libc, not the newer uClibc (no dash in the name). You're right. There's a tiny leak in this version of setenv(), when you set a value for an environment var that already exists. It leaks the old value, which seems to be an intentional design choice, in case anything was holding on to a pointer to it.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#35
post #11
post #3

That is seriously good work and an amazing DIY project! I remember when I was a kid, trying to just get a pre-made Linux-image boot on my Amiga. I had a 68020 CPU, but due to no MMU and no FPU (neither being "normal" accessories at the time) I just couldn't get the thing to boot at all. Later, when I acquired a 68030 CPU, I at least had the MMU covered, but I was still a kid and didn't have a budget for a FPU. So I s…

Your post just brought back a flood of memories for me about the frustration I went through as a kid trying to port free software to 68k BSD. I started out running MachTen [1] which ran under System 7 on the Mac. There was something odd about the way it did dynamic linking, I can’t remember now, but it just turned any port into a nightmare. I don’t know why it took me so long to figure out there was a mac68k NetBSD,…

[deleted]

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#37
post #31
post #21

Earlier quoted context omitted.

userbinator's comments are good, and to extend his remarks obviously the solution to clock skew is to simply lower the clock rate. Good luck using a solderless breadboard at 500 MHz digital LOL. But breadboards work just fine at single digit MHz rates. There is a problem. Many processors use dynamic registers and require a clock above a certain rate to refresh the registers. Yes, no kidding, dynamic ram cells as CPU…

Cheapest possible toaster oven + cheap multimeter thermocouple for manual temperature control + {paste flux, solder paste+stencil} works better than you'd think for soldering BGAs. Even honest-to-goodness reflow ovens can be had on eBay for $300-$400 (search "T962"), which would give you another one or two nines of reliability by circulating the air and having more precise temperature control. Schmartboard also makes…

For prototyping you can also solder BGAs with any hot air rework station. Even if you don't already have one, Atten 858D only costs around $60. Here's an example (not my video): https://www.youtube.com/watch?v=L8EWqWj2srg

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#38
post #32

I would love to take a class for building a computer like this.

The hardware is remarkably simple. It's the software that's tricky. It's nowhere near the level of insanity (all for good reason) you find on modern PCs where you boot without knowing how exactly you'll get to your RAM.

Re: 68 Katy – 68000 Linux on a Solderless Breadboard

#39
post #30

Earlier quoted context omitted.

Wasn't uClinux merged into mainline a long time ago?

You can build it from the mainline git repo, but what you get is a version of the kernel with defining features of Linux/Unix missing.

What's missing? I haven't used uClinux before but I consider it on a cortex m4 - what should I be wary of?
Post reply on HN