C64 Emulator for Flash Player 9

I’m happy to finally be able to let the cat out of the bag. Darron Schall and myself have been working on a low level 6502/6510 emulator and, based on that, on a Commodore C64 emulator/simulator.

The emulator is completely written in Actionscript 3 and runs on Flash Player 9. It loads the original binary C64 Kernel ROMs at runtime, and executes them just like the original hardware would do.

The sources are released under GPL, get them here:
Trac: https://mirror1.cvsdude.com/trac/osflash/fc64/
SVN: http://svn1.cvsdude.com/osflash/fc64/

Quoting Darrons blog post from today:

It’s still a work in progress, and we’re looking for hardware-nerds to step up to the plate and help us finish it. The CPU code is complete, but hasn’t been extensively tested. The memory code is a work in progress, and we haven’t had a chance to start on the display code yet. Still though, it’s a good start.

At this point, we’re just running the CPU as fast as possible without trying to get the timing completely accurate. On the debug Flash Player, it runs at ~2.5 MHz. On the release Flash Player, it runs at closer to 6 or 7 MHz. This is a good thing, as the original Commodore chip only runs at 1 MHz. So, in theory, it should be possible to emulate the games in real-time without any slow down or speed delays (holy @#!@).

5 thoughts on “C64 Emulator for Flash Player 9

  1. Awesome – if only I understood how to work with bytecode.

    I’m really looking forward to seeing the source, seeing how you are loading the ROMs etc. So theorectically now we have access to byteArray does that mean anything (cpu and memory withstanding) can now be done? I was reading the other day about a guy who has been making dynamic sounds with AS3 – which itself is an awesome feat seeing as there are no built in classes to handle that sort of stuff.

    Can’t wait to see where we are with this stuff in a year or so :D

  2. Yup, now that we have ByteArray and the JIT-compiled speed of ActionScrtip 3, the door has been opened for a whole new breed of Flash applications.

    The ROMs are loaded via URLLoader, setting the dataFormat to DataFormat.BINARY in order to access the ROM data as a ByteArray.

  3. Massa cara!
    Sounds really amazing. Subversion is still password protected. Can’t wait to sneak into the code ;)


    20 GOTO 10

    theres one SID browser plugin somewhere
    maybe one way to get the sid run too

    abraços flasheiros

Comments are closed.