Discrete 6502 processor sucked into Linux by a BeagleBone

Often when we see projects using embedded Linux we think of them as not being hardware hacks. But this is a horse of an entirely different color. [Matt Porter] is leveraging a little known feature to directly access a 6502 processor from inside a Linux environment. In other words, this hack lets you write code for a 6502 processor, then load and execute it all from the same Linux shell.

The project leverages the best parts of the BeagleBone, which is an ARM development board running embedded Linux. It’s got a lot of GPIO pins that are easy to get via the boards pin sockets. And the design of the processor makes it fast enough to work well as a host for the 6502 chip. Which brings us back to how this is done. The Linux kernel has support for Remote Processors and that’s the route [Matt] traveled. With everything wired up and a fair amount of kernel tweaking he’s able to map the chip to the /dev/bvuart directory. If you want all the details the best resource is this set of slides (PDF) from his talk at Embedded Linux Conference – Europe.

This is one way to get out of all that hardware work [Quinn Dunki] has been doing to build her own computer around a 6502 chip.

[Thanks Andrew via Dangerous Prototypes]

Comments

  1. mikemac says:

    Very interesting! I imagine the Beaglebone could emulate the 6502 faster than the 14MHz the chip is running at. But of course that’s not the point! I may have to pull out one of my Z80s and see what can be done with it. After I figure out what exactly a “PRUSS” is! :-)

    • chango says:

      PRUSS is an I/O coprocessor for the main ARM CPU. The BeagleBone’s SoC has two of them. Think of it like using an Arduino to offload real time tasks from a PC, or dedicating a couple of cogs to bitbanging a peripheral in a Propeller.

  2. Davepsfksosdf says:

    Been done about 30 years before! Have a look at the second processors for the BBC Micro.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 93,781 other followers