Pretty cool.<p>The program itself was written in an existing intermediate language called URCL, which was then compiled to CHUNGUS2 assembly. CHUNGUS2 is the processor made with Minecraft's redstone mechanics. The processor was emulated for development, but the demo is running on MCHPRS, a Minecraft server that uses Wasmtime's Cranelift to JIT the redstone operations, which are represented as a weighted directed graph. Before MCHPRS, optimizing redstone performance using compiler techniques was not thought to be possible. With MCHPRS the demo takes 9 hours to run, it would take decades using Minecraft.<p><a href="https://github.com/sammyuri/minecraft" rel="nofollow">https://github.com/sammyuri/minecraft</a><p><a href="https://github.com/MCHPR/MCHPRS" rel="nofollow">https://github.com/MCHPR/MCHPRS</a><p>As for CHUNGUS2 itself, it's a proper RISC processor, it has a 4-stage instruction pipeline, 64 byte 8-way associative data cache, even branch prediction.<p><a href="https://www.youtube.com/watch?v=FDiapbD0Xfg" rel="nofollow">https://www.youtube.com/watch?v=FDiapbD0Xfg</a>
This is truly amazing.<p>Comment from one of the creators;<p><i>This build does NOT run in real time. It runs on MCHPRS, the server developed by StackDoubleFlow, which speeds up the game roughly 10-20,000x while running redstone. That brings the framerate to a much more reasonable 0.1fps, so the long timelapses in the video only took 9 hours to record in in total.</i>
I worked on a CPU in Minecraft years ago and designed it to be a 7-bit CPU. I chose that number because it gave me the an appreciable number of operations plus space for arguments. I had only 6 bytes of RAM and about 32bytes of ROM. The ROM was just a circle of transparent blocks (zero) and solid blocks (one) pushed around by pistons.<p>The whole thing was real slow, but it was so much fun trying to design something that would perform interesting calculations. I stopped working on it as at the time Minecraft had some odd bugs with pistons that would cause non-deterministic behavior.<p>I think the most challenging aspect wasn't the programming or circuits, which were well understood and mapped out, but trying to create modules I could copy-paste inside a special Minecraft save editor to make the machine quickly, then manually dragging out data/command lines to hook the modules together.
Don't miss the other video showing the overview of the CPU, it's seriously impressive: <a href="https://youtube.com/watch?v=FDiapbD0Xfg" rel="nofollow">https://youtube.com/watch?v=FDiapbD0Xfg</a>
I think we will see more of these amazing Minecraft technical creations as people who played Minecraft as children are now finishing up their higher educations.
The video description says:<p>> 3D Minecraft in Minecraft with no command blocks, no datapacks and no mods.
Features include an 8x8x8 fully 3D-rendered world with 16 different block types, 32 different items, and dozens of game mechanics including mining, crafting, smelting, building, chests, random ticks<p>Is "3D Minecraft" a Minecraft clone for low-powered hardware? It looks like their emulated CPU only has <10KB RAM and a 96x64 display, which screams "TI-83 program" to me.
The 0.1fps time scale makes no difference to people living within this minecraft universe. From their perspective a second is a second and a day is a day. Funny.<p>See Greg Egan's <i>PERMUTATION CITY</i> for more on that.
Reminds me of Conway’s Game of Life, emulated inside Conway’s Game of Life:<p><a href="https://m.youtube.com/watch?v=xP5-iIeKXE8" rel="nofollow">https://m.youtube.com/watch?v=xP5-iIeKXE8</a>
I wonder if it's possible to run this outside of Minecraft in some way. I assume the developers weren't debugging the program in Minecraft itself.
What's with the code?<p>I don't know much about Minecraft, but I assumed the CPU would be built purely from blocks which act like transistors. Yet there's a part of the video where the show code written in-game(?). What's up with that? Isn't it cheating?
Can someone explain to a clueless person (me) how a 1Hz CPU manages to achieve even 0.1fps frame rates. That is only ten clock cycles per frame. I don't know what the IPC of Chungus 2 is but that doesn't seem a lot of cycles to calculate each new frame.<p>Thinking about this another way. Real world CPUs have clock speeds at least 1 billion times faster than this and they only run Minecraft a few 1000 times faster than is claimed here. How do these numbers add up?
If you like to ponder physiological implications and deeper themes of such worlds in worlds and what it can mean, in a fun way, I recommend the (sci-fi) book Permutation City (Greg Egan), from 1994. It also contains an artificial world, called the Autoverse that felt to me like Minecraft when I read the story. But it is taken a lot further...
How would someone get into designing/simulating CPUs and computers other than Minecraft? Is there any software for learning and implementing "simple" logic circuits, memory, etc?
A lot you can do with NOR gates!<p>A fun thought experiment is whether you could ever imagine that block build growing complex enough and becoming intelligent.<p>If AI can become intelligent (generally, i.e. GAI), then it could be implemented with redstone. If human level intelligence requires something more, then it can not, and the search for redstone 2.0 continues…
Ha, that's so needlessly inefficient! Now let me get back to work with my Electron code editor while I communicate with my team in four different Electron chat apps and code a web page which requires 2.5MB of assets to load (not counting the massive autoplaying background video).
Do people use circuit simulators and compile to blocks, or copy/paste units from previous projects? Seems like such a massive undertaking where a single misplaced item ruins everything.
You’re all going to hate on me for this, so first let me say that this is amazing. I’m awed by it. Truly. And I am very familiar with minecraft and even have been known to do a bit of redstone hacking myself I love seeing the cool things some folks do with it. (I’ve some redstone sorting algorithms and I’m esp fond of redstone Turing machines!)<p>But this! This is like sending a person to mars!<p>And I have the same question for the geniuses who did this that I have for the ones working on that:<p>Aren’t there cures for cancer and perovskite solar cells to discover? Why are you using your excellent minds, and apparently enormous amount of free time, building cool but very slow virtual computers out of virtual sand, when you could be proving the smoothness of the Navier–Stokes equations?<p>It’s one thing, to my mind, when athletes climb huge mountains because they’re there. It’s quite another, again, to me, when obvious genius goes to waste.<p>There. I feel better for having said it. I only wish I could say it to Elon Musk re Mars, and get my son to spend a fifth as much time on his math homework as he does playing minecraft. This incredibly cool hack is just going to exacerbate the situation! :-)
Derp: here is the video link: <a href="https://www.youtube.com/watch?v=-BP7DhHTU-I" rel="nofollow">https://www.youtube.com/watch?v=-BP7DhHTU-I</a><p>@dang can you update this post to link to the video?