Settings

Theme

Minecraft HDL, an HDL for Redstone

github.com

225 points by sleepingreset · 35 comments

Reader

13 threads
Aromasin

The only reason I ended up persuing Electronic Engineering at University, or eventually becoming an FPGA Engineer, was because I spent way too many hours playing with redstone in Minecraft as a teenager. Seeing a Verilog compiler for Minecraft is like seeing my career come full circle.

Arch-TK

This is an amazing timeline. I still remember the day redstone was added to Minecraft. I spent the entire evening and many days afterwards on the forum brainstorming how to implement various things. I think I had one of the first if not the first T flip flop, it "took an entire room" and was slow. It has been crazy watching things get compacted, repeaters getting added, pistons, comparators. I remember when BUDs got discovered and then eventually just added as a block.

Now* we have an entire HDL.

I honestly stopped keeping track of things around 2012 so I am completely lost looking at modern redstone contraptions.

*8 years ago

  • Dylan16807

    This is a cool tool but compared to modern redstone contraptions this is a sidegrade, not an upgrade. It's straightforward torch and dust logic, with each torch being a nor gate and dust being wires. And it doesn't consider timing at all. This could have been made the week redstone was added (with minor adjustments to not have repeaters), and it wouldn't have taken any newer insights.

    • Dilettante_

      I haven't looked at the code, but you could presumably extend it, or maybe expect further development on the logic?

      ->The repo says "Branch out from master and have fun!"

    • Arch-TK

      Ah, damn. I was envisioning something limited but not this limited.

  • johnisgood

    I loved redstone. At some point it got forked and the fork was named "redpower" if I remember correctly. Good stuff.

    There were other great mods (I forgot the name, something that has to do with turtles?) and I remember implementing a shell in Lua, among other things.

    • Arch-TK

      Red Power was (is... Kind of) an extension not a fork. Although you could call it more an reinterpretation.

      But really RP vs Redstone is more like C vs Assembly. I've seen crazy things done in both but I think I find it a bit more impressive when people use pure Redstone to get things done. There are so many dimensions where you both need to understand the mechanics and where there are opportunities for optimization.

      The turtle mod you are talking about is ComputerCraft.

      • johnisgood

        Yes, ComputerCraft! I have written so much Lua because of it. Only if I still had the scripts. :(

        I had no idea RedPower is not a fork, I just remember having switched to it because of no updates for Redstone or version incompatibility issues or something? It's been a really long time ago.

dang

Related:

Verilog to Minecraft Redstone Synthesizer - https://news.ycombinator.com/item?id=25195802 - Nov 2020 (12 comments)

(Reposts are fine after a year or so! https://news.ycombinator.com/newsfaq.html)

verdverm

I wonder if this takes account of any of the quirks or quasi-connectivity in redstone?

Mumbo Jumbo recently got a lesson in, and made a video about, computational redstone. Some seriously impressive builds in there (like ms paint). One of the major design constraints is tick/lag. The recent addition of copper bulbs turned the t-flipflop into a single block solution

https://www.youtube.com/watch?v=jTZaUz8bYW8

  • rbits

    It seems to only use redstone dust, repeaters, and torches. So quasi-connectivity wouldn't affect it

SLWW

I wrote a 8-bit ripple adder when I was 16 one night; I thought about this idea then but it seemed like a massive undertaking.

With all the additional redstone items/capabilities however I could imagine most circuits could be more and more compact..

All in all, really cool

eirikbakke

In case anyone needs a minimal CPU implementation in 65 lines of Verilog: https://people.csail.mit.edu/ebakke/fic/ https://people.csail.mit.edu/ebakke/fic/code/Fic.v

(I wonder if it would convert cleanly to a redstone circuit...)

  • lpribis

    This compiler does not support sequential logic, meaning no flip flops/registers.

paulwetzel

Super cool project :) Just the right level of, objectively useless - but really fun!

8note

Optimizing passes for this would be interesting.

Describing a flip flop as a villager minecart with some number of NaN minecarts beside it seems challenging to pick when to use it vs a copper bulb.

thedougd

I’ve been looking for any reason to relearn Verilog and this might give me my first idea.

Such a cool idea. Thank you.

throwaway290

Minecraft circuits can't have feedback? That's pretty sad:(

gatane

Amazing project!!

djmips

(2017)

Sweepi

> A 2-bit 7-segment display decoder in action (the display itself was not generated by MinecraftHDL)

Lame!(/s) I did this vanilla Minecraft(1.12?), including the display itself.

Keyboard Shortcuts

j
Next item
k
Previous item
o / Enter
Open selected item
?
Show this help
Esc
Close modal / clear selection