For this year’s Hackaday Prize, we’re doing something special. We’re introducing achievements for Prize projects. Think of them as merit badges. If your Hackaday Prize project has multiple parts that come together into one unified, awesome whole, you get the Voltron achievement. If you’ve built a musical instrument that unexpectedly blows everyone’s minds, you get the Diva Plavalaguna Achievement. A select few entries will earn the Pickle Rick achievement. What’s this? It’s a jaw-dropping build that makes you shake your head in the totality of engineering perfection.
Here’s a project that nails this achievement. It’s a homebrew computer, made out of relays, that runs a custom instruction set. It’s built on Brainf*ck. It is, by far, the most absurd and amazing homebrew computer you’ve ever seen.
First, the hardware. This CPU is built out of about 800 Soviet reed relays, RES64, RES55, and RES-43 relays, if you want some part numbers. These relays are mounted on logic cards connected to a backplane. Each backplane consists of thirty-two of these cards, and it takes two backplanes to build up a 16-bit full adder. The 16-bit instruction pointer and 16-bit address pointer each fit on half a backplane.
Moving up one level, the instruction set for this computer is based on Brainf*ck, with a few additions. The ‘+’ instruction adds to the current value, the ‘>’ instruction still increases the current memory address, but there are a few new instructions that make this CPU not an interminable world of suffering. There’s now a ‘write current data value to register’ commands, and logical XOR instructions.
Have relay-based computers been done before? Yes, and so have Brainf*ck ISAs. The combination is rarely seen, and we’ve never seen one that performs this well. Below, you can see a video of this computer counting at 500 operations per second (or 500 Hz from a frequency counter). This is really unimaginable with any other relay computer we’ve seen, and it’s all thanks to those really tiny Soviet tubes. If you want a Hackaday Prize project that’s jaw-dropping, here you go.
If this can be built, then I can finish my $4 bradboard computer. (Which cost me maybe £20) — Inspiring!
Outstanding!
At that clockspeed, it needs a programmable clock and a program to respond to MIDI. That would be really messed up, but potentially musical…
Don’t worry – this would be done.
The video shows it’s not actually counting, just toggling relays :-)
More relays : https://hackaday.io/project/11798-relay-based-projects
Amazing. No EMP problem here.
Next up a fluidic computer.
And what do you intend to power it with? :P
Well, technically, if you zap it with a high voltage potential all the relay coil insulators will fail and the circuit shorts out.
Relay coils are more susceptibe to EMP because they induce high voltages out of high transient magnetic fields.
Respectfully different strokes for different folks I guess, and I don’t see how this fit’s in the 2018 Hackaday competition. A note to creators. In the event you have to use an asterisk in your products name, your not being clever, and are potentially limiting growth of your product’s use. While’s is only my opinion, when someone publishes something, they do so in part, they hope it could be useful to others. I’m labor, oilpatch labor at that, so crude language does’t sting me. Age and health have taken me out of the work force but I volunteer to assist in technology instruction at local schools. I can’t use Kashkanov’s work as examples of experiments the student may want to consider trying for themselves.
+10
I don’t even want to hang out with someone who thinks that is a cool name to be made public. Not that they would want to hang with me, which they would, if they could, but they can’t.)
Please do go around schools and public places talking like Gordon Ramsay, and see how long before people shut you out.
Btw. the power of swearing is exactly because it’s a social taboo. If you normalize it, you might as well not do it at all because you’re not expressing anything special – it’d be like saying “pants” every now and then.
Point being, if we normalize a word like “fuck” so you could go around a kindergarden telling the kids to eat their fucking porridge and nobody bats an eyelid, the meaning of the word devalues. Expressions like “brainfuck”, “clusterfuck”, “fubar” etc. become equivalent in emphasis to “braintrouble”, “multiple problems”, “broken beyond repair” etc.
Then we’d have to invent an new socially taboo word for when we really want to say something is fucked up, and we’d be having this conversation again where the “smart” people are calling others idiots for feeling so strongly about it.
But that’s the whole point of swearing. It’s like, if everyone went around with their tits and cocks hanging out in public, people get desensitized and porn would lose most of its appeal. People would turn to all sorts of crazy fetishes to get their kicks.
I hope you realize that BrainF*ck is a pretty old esoteric language, and was not made up for this project.
Besides, it isn’t that hard to think up a replacement name (Turing Machine, maybe?) and find-replace the offending words.
When you see BFPC name and you know about BF language at the same moment you undestand what this project is about. And thats the reason of this name.
And I don’t want to change it. BFPC is official acronym for BrainfuckPC and I think it’s enough.
The creator of this machine didn’t use an asterisk in the name – as it should be.
This is a computer that executes a modified Brainfuck instruction set. Brainfuck is the proper name of an old esoteric programming language that is IIRC nearing 30 years old. It is a well known name, a well known language (among those into intentionally weird programming languages) and one of the earliest such ones. False is another though it is terse due to practicality rather than being weird as a design goal.
This name was chosen intentionally, as soon as I realized that I wanted to create a computer for this old, well-known esoteric language.
I was aware of all the possible difficulties associated with this name, but ..
PC for brainfuck language is called brainfuckPC.
Yeah. Sorry about that. The language’s name is what it is.
We hyphened it out b/c a ton of people are reading HaD on the jobk, and we don’t need to give the automatic pattern-matching censors any more to chew on. We respect people’s right to slack off^H^H^H^H read stimulating engineering-related content while at work.
OTOH, if some kid is like “oooh! dirty words” and then masters the insane programming lanugage, eventually growing up into the next Woz, well, mission accomplished.
…and this is better than an abacus? :P
Thumbs up for the work done and the nice pictures, but who wants to replicate a Brainfuck machine, which is very esoteric anyway – apart from the name. There are other Relay Computers I had a look at with a normal structure that you can understand better and write an assembler for.
Many things are done because they can be done. :)
-Why??
-Why Not
Anyway, you can’t use any relay computer for practical purposes – it’s slow and there is a lot of risks that PC would be broken. So if no practical moment why we can’t create something special?
I’m surprised by how negative the comments are here. This clearly took a tremendous amount of effort, as it was built from the ground up to perform a nonstandard task. It’s impressive for that alone. People don’t have to be serious all the time, and this can be seen as a learning exerience.
Thanks for the support!
To be clear it’s funny to read this thread :) If something can init some negative reaction to someone, this two definitely find each other.
It’s the negative comments that repel me from reading the comments most days. Why spoil a good day… I don’t see how so many people can’t show a little appreciation for all the thought and creativity that went into this project. Suppose these same people don’t understand works of art in general, something missing or broken between the ears. An artist tries to provoke an emotional response from the audience, both positive and negative emotions show success in his work. I think envy is the predominate emotion in the comment sections here, since those that can’t, do their best to destroy.
Everytime I do read these very negative comment about great projects on Hackeday I always think ” so what did you build then?” Answer is probably nothing more then a blinking LED.
Yeah, I kind of wonder about that too. Building stuff gives you an appreciation for the work and time others put into their projects. Tend to believe the negative comments mostly come from college dropouts, who don’t have the time or resources to build much, since the student loan and other debts forces them to spend all their time and energy trying to survive financially. Seems most of the negativity involves making a profit, or getting rich, the urgency, not much room for just enjoying life, doing what you find interesting.
A lot of times, I don’t dare scroll down to the comment portion of an article, as the project really doesn’t deserve to be torn apart, but I sort of know where the comments will go.
It’s a function generator, not a frequency counter.
What a crazy cool project, I think they could’ve built one of these as a code breaker in WWII and been faster than what they had.