Visual 6502 in JavaScript

January 10, 2011 at 10:22 am 5 comments

You have to visit Visual 6502 in JavaScript. It’s stunningly cool.  There are lots of things that could be done to improve it (e.g., use a simpler processor, make a little more obvious what the VLSI design means), but the fact that it exists — and in a browser in JavaScript — is amazing.  What does that suggest about our ability to create new kinds of pedagogical tools, that can be delivered just through the Web?  (Thanks to both Ian Bogost and Alan Kay for sending me this.)

Entry filed under: Uncategorized. Tags: .

MIT OpenCourseware is still Wikipedia Keeping Women in Science and in Computing

5 Comments Add your own

  • 1. Aaron Lanterman  |  January 17, 2011 at 5:00 am

    It’s hard to get simpler than the 6502, actually, which I guess is one of the points of that work.

    • 2. Alan Kay  |  January 18, 2011 at 12:33 pm

      Actually, the 6502 is a bit of a kludge, and is not nearly as simple as a comparably powerful (or more) CPU can be. The Data General Nova (from which the 6502 took a few ideas) was simpler and better. A very simple and pretty and powerful design was the original ARM. The Xerox PARC Alto was really simple and really powerful (one of the best use of a few transistors I’ve seen).

      And, pedagogically, one can go considerably simpler than this without having to invoke “extreme Turingisms” (e.g. just “subtract and branch on less than zero, etc.).

      Again, the more “meta” the machine designer is thinking, the simpler and more powerful the CPU will be.



      • 3. gasstationwithoutpumps  |  January 21, 2011 at 12:00 pm

        While the 6502 is a “bit of a kluge”, it was not nearly as bad as processors like the 4004, 8008, and 8080. Personally, I liked the PDP-11 instruction set, though it was not as easy to implement in a tiny chip.

      • 4. munch  |  July 10, 2011 at 8:49 pm

        @Alan — The 6502 is as simple as it gets for 8-bit, Turing-architecture processor designs. Going simpler *will* turn the system into an extreme Turing-ism, so long as you desire to keep the 8-bit opcode space.

        The Nova architecture is a 16-bit architecture, allowing much of their simplicity to come from horizontally-encoded instructions. Likewise, the ARM does the same, albeit with 32-bit instructions.

        Your critique would carry more weight if you compared apples to apples.

  • 5. Greg James  |  January 26, 2011 at 4:27 pm

    Hi – It’s great to see your interest in our project. We’d really like to develop some clear educational material around the project, like an introduction to microchip circuits and chip design. There’s also a huge space of work we could do to illustrate what’s going on in the visual simulation. If you’d like to get involved or contribute, please send a note to the contact email listed on our donations page:
    We’re especially interested in engaging with academia and cross-disciplinary projects.
    -Greg James, founder


Leave a Reply

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

You are commenting using your 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 )

Connecting to %s

This site uses Akismet to reduce spam. Learn how your comment data is processed.

Trackback this post  |  Subscribe to the comments via RSS Feed

Enter your email address to follow this blog and receive notifications of new posts by email.

Join 10,184 other followers


Recent Posts

Blog Stats

  • 2,039,340 hits
January 2011

CS Teaching Tips

%d bloggers like this: