Minecraft Mod Adds Emulated 6502 Processor
New submitter Direwolf20 writes "The Red Power 2 mod for Minecraft has recently been updated, and it adds a fully emulated 6502 processor that can be programmed in assembly, but comes with a Forth interpreter. From the article: 'Eloraam calls it the 65EL02, because "it supports all the 6502, 65C02, and part of the 65C816 instruction set" as well as "a set of completely new instructions and two addressing modes. Since the 65EL02 is an 8-bit CPU, Eloraam didn't have as many options for programming environments as we have on today's 64-bit computers. While it's possible to program the 65EL02 in assembly language, for general use she chose to implement a Forth interpreter. Further technical information about RedPower Control's 65EL02 is available on Eloraam's blog RP Control Internals, and on the RedPower wiki's page for Red Power Control.' (Fair disclosure: The video linked in the article is mine.)"
No. But you'd know that if you had bothered to look up what a 6502 was.
For large sets, this will be our guide even unto death, for the LORD will work for each type of data it is applied to...
So what type of Mhz can you get out of this thing? Is it feasible on modern hardware for it to run at a clock rate equal to or higher than say, the stock speed of a Commodore 64? And what about I/O interfaces like audio, video and joysticks? How far can this really be taken?
My impression of the metagame that is Minecraft is that doing things the hard and/or rube-goldberg way is part of the charm. There is some reason why people are trying to build ALUs in crap redstone logic rather than just alt-tabbing to the logic circuit simulator of their choice(or a VM, or an emulator of some popular retro architecture).
Given that, at what point do mods that improve minecraft's program-ability go too far and turn it from a perverse simulation game of enormous popularity into a really dreadful IDE?
Since we are talking about implementing 6502s in questionably efficient ways, it seems like a good time to plug http://visual6502.org/. Efficient? No. Logic-accurate emulation of a 6502 implemented in javascript based entirely on photographs of a decapped 6502 die? Fuck Yeah.
With that in mind, I found the following quote from the creator of this processor amusing:
Please consider this account deleted, I just can't be bothered with the spam anymore.
It got my son interested in programming. Not this mod, but another. He actually programmed a pong game on his own over the course of a week using lua in a minecraft mod that has a computer that runs lua.
Nobodies Prefect
Tidbits for Techs Technology Blog
I think a large part of it is the "because I can" factor. People often have some weird sideline projects on the go - I've hunted for the first three books in pi (by ISBN) and written a directed evolution program which is building a picture of Charles Darwin from random ellipses. Other people built computers in a game running on a computer just for the hell of it. No, it's never going to be the best 6502 emulator, the point is it's the best emulator written in Minecraft. Which is cool, obviously.
I'm looking forward to seeing what happens with 0x10^c, Notch's new game, which has an inbuilt and fully emulated 16 bit for each player. I wouldn't be at all surprised to see a new ultra-low-power OS come out of it.
Please consider this account deleted, I just can't be bothered with the spam anymore.
...because the only logical conclusion from there is Minecraftduino.
See this video of Conway's Game of Life, in Minecraft, using only native bricks in a very old version of the game. Everything from abacuses to basic calculators and full processor simulations have been done, so this may well just be all of that "landscape" wrapped into a more manageable few bricks and a GUI stuck on it.
Please consider this account deleted, I just can't be bothered with the spam anymore.
What's the emulated hardware organization like? The 6502 didn't actually have designated input or output instructions, so as I recall, a programmer had to read or write to specific memory locations that were hardware mapped to various devices, especially peripheral devices.
Discounting the memory mapped IO locations, how much RAM does the emulated system have to play with? What sort of firmware is loaded into the emulated ROM?
File under 'M' for 'Manic ranting'
Because the environment "feels" real. You can run around and see the circuit pathways and actually visually understand how the processor works... as apposed to having some abstract flowchart or diagram.
No. But you'd know that if you had bothered to look up what a 6502 was [wikipedia.org].
Except that this is Doom we're talking about, and despite its x86-centric origins, it's been ported to just about every damn platform in existence. So there's probably a version out there for a 6502-based machine, along with others for the Intel 4004, the the Colossus and for a half-broken abacus some guy found on a skip.
Though in the case of the abacus, you do need floating-point beads apparently.
"Slashdot - News and Chat Sites Deviant". (Click "homepage" link above for details).
sys 64738
comment rebooted
Yes, programmers shouldn't program in their off time, just like artists shouldn't draw and singers shouldn't sing. Which, unfortunately, a lot of people believe.
"What are you doing?" parents and peers always say. "You're wasting your life." And they keep doing it because they want to.
I say screw people like you, and more power to people like them.
Because the model that a JavaScript- or Python- based emulator uses can be implemented just as easily in other languages. The goal is to have a reference implementation against which other implementations' accuracy can be checked.
Since the only mod I know of that uses LUA and has programming, it very likely _is_ the same mod. RedPower2. This is just the newest version with a bigger "computer"
Its not RedPower2.
http://computercraft.info/
He also runs a minecraft server on our VPS.
Nobodies Prefect
Tidbits for Techs Technology Blog
We heard you like computers so we put a computer in your computer
Korma: Good
I doubt the 6502 has the horsepower for it...
You do know that you can run an Emulator with arbitrary speed? It is not the instruction set or register layout or memory model that is restricting performance. It's the hardware itself that puts a limit on that.
Heck, even if you use real hardware, you could produce a >1GHz 6502 CPU, if you wanted to do it. It will be identical to the 6502 in everything but the clock speed and some minor hardware layout alterations to cope with these speeds (even small bends in the wires start to act as an antenna at these speeds).
And if you use a software emulator (which this Minecraft Mod is for all intents and purposes), you can run it as fast as your host platform allows. This is why you can run a Nintendo Emulator at >200x the real speed of the original hardware.
My son is the same, he's 11 and wanting to create Minecraft Mods has caused him to:
- Learn Java (he had a few brief experiences with Processing but now he's reading the Nutshell books)
- Decompile Minecraft
- Find and follow instructions on how to do all this (Web and YouTube it seems)
- Write his own mods
He's currently at the stage where he's letting his brother have his mods, and we're starting to talk to him about the implications of distribution (support, licensing etc.).
I'm doing very little except providing the right tools at the right time (IntelliJ has been excellent for navigating the code base).
Very impressed with Minecraft and how much he's been motivated to learn. I had tried to teach him some programming before but never really got anywhere, now he's so deep into aspects of Java that I can't really help him... and I've not had to utter a single word of encouragement or assistance.
Minecraft feels like it is the BBC Model B of his generation.
Work blog: http://elnblog.com Personal blog: http://simoncoles.org