What is this?
Who made this?
The idea, design and code behind this website was done by Stian Søreng.
The development platform for this project was a 1.25GHz Mac Mini running MacOSX 10.4.6 with Safari 2.0.3. It should also work in Internet Explorer version 6+, Opera 8+, and Firefox 1.0+.
All but a few instructions from the 6502 are implemented. Those left out
are CLI, RTI and SEI - simply because interrupts are not supported (yet). The
commands will be compiled and executed, but have no effect. For a complete
list of all available instructions, see
Instruction timing and cycles
The emulator part of this project does not take timing or cycles in consideration - it simply tries to execute the code as fast as possible.
Zero Page hack
On a typical 6502-based machine, you will find the ZP ranging from $00 through $FF. This is the case here as well, except the last two are read-only: $FE is a random generator and $FF contains the ASCII code of the key pressed (or zero if none). They are not truly RO, you can overwrite the values, but only until the next value is generated.
The screen and palette
The address space for the screen is from $200 (top left corner) to
$5ff (lower right corner). For your convenience the screen is 32 by 32
pixels - 1024 in total. Moving one line down is simply done by shifting
five times to the left. The palette is a direct rip-off from the C64,
and the colours are as follows:
Light red ($a)
Dark gray ($b)
Light green ($d)
Light blue ($e)
Light gray ($f)
The colors on the screen are always ANDed by $f, so no matter what value you poke into the memory, you will get one of these colours.
I need some inspiration
I hope this will help:
Not as slow as it was a month ago.
It doesn't work / I noticed a bug
Send an email to firstname.lastname@example.org.