Forgot your password?
typodupeerror
Games Technology

Minecraft Mod Adds Emulated 6502 Processor 96

Posted by Soulskill
from the reasons-minecraft-is-an-early-version-of-the-matrix dept.
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.)"
This discussion has been archived. No new comments can be posted.

Minecraft Mod Adds Emulated 6502 Processor

Comments Filter:
  • Clock Rate? (Score:3, Interesting)

    by Narcocide (102829) on Wednesday May 23, 2012 @05:50PM (#40093971) Homepage

    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?

  • Apropos... (Score:5, Interesting)

    by fuzzyfuzzyfungus (1223518) on Wednesday May 23, 2012 @06:18PM (#40094275) Journal
    Since we are talking about implementing 6502s in questionably efficient ways, it seems like a good time to plug http://visual6502.org/ [visual6502.org]. Efficient? No. Logic-accurate emulation of a 6502 implemented in javascript based entirely on photographs of a decapped 6502 die? Fuck Yeah.
  • Up or down? (Score:4, Interesting)

    by History's Coming To (1059484) on Wednesday May 23, 2012 @06:39PM (#40094521) Journal
    There's an interesting school of thought which says that advanced forms of life will eventually create countless virtual worlds for fun or research, and asks the question "what are the odds that we're in an 'original' reality?". (See Nick Bostrom, Oxford University [simulation-argument.com], he's a philosopher rather than a computational scientist or theoretical cosmologist, but they all seem to be nudging each other these days.

    With that in mind, I found the following quote from the creator of this processor amusing:

    Infinite loops are fine. RP Control is carefully designed so that you won't screw up your world even if you crash the virtual computer. It's actually not especially hard to crash the virtual computer, since the whole OS is loaded into its RAM and you can easily write to that RAM. Still, since the computer is fully virtualized, it won't hurt your world or even cause a slowdown.

  • by History's Coming To (1059484) on Wednesday May 23, 2012 @06:49PM (#40094617) Journal
    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.
  • by WrecklessSandwich (1000139) on Wednesday May 23, 2012 @06:54PM (#40094675)
    ...because the only logical conclusion from there is Minecraftduino.
  • What's inside? (Score:4, Interesting)

    by mark-t (151149) <markt@lynx . b c.ca> on Wednesday May 23, 2012 @07:02PM (#40094753) Journal

    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?

  • by Charliemopps (1157495) on Wednesday May 23, 2012 @07:12PM (#40094847)
    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.
  • Re:Clock Rate? (Score:4, Interesting)

    by Pseudonym (62607) on Wednesday May 23, 2012 @11:50PM (#40096635)

    I've toyed with building the 6502 in redstone logic. If you know anything about the internals of the 6502, it actually lends itself to emulation better than, say, the Z80, since it doesn't use microcode and has a data path which is simply laid-out geometrically. Plus, there are quirks in the 6502's design which mean that the delay in getting a slow clock signal around the device wouldn't be a problem in practice.

    The complication is that the 6502 has two logical internal busses (the data bus and the secondary bus) which are connected by a set of bypass MOSFETs which are bidirectional: they can pass data in either direction. That's okay when you're realising the 6502 in analogue electronics (which is what transistors are, after all), but it makes it difficult in digital electronics. At the very least, you'd need to separate the one control signal into two (one for each direction). It's a bit of a mess.

  • by Jappus (1177563) on Thursday May 24, 2012 @03:23AM (#40097481)

    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.

  • by simoncoles (31429) * on Thursday May 24, 2012 @10:27AM (#40099487) Homepage

    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.

Live within your income, even if you have to borrow to do so. -- Josh Billings

Working...