Live data from Hacker News

Visual 6502 in JavaScript

visual6502.org

1–10 of 21 posts

Re: Visual 6502 in JavaScript

#3
I recently wrote a "remix" of visual6502 (just for fun), with C (and a bit of C++), compiled to WASM to see whether the rendering performance of the chip visualization can be improved while still running in browsers, and also to improve the "UX" a bit:

https://floooh.github.io/visual6502remix/

Check Help -> About for a list of dependencies used in that project (lots of good stuff in there), the two most important being the original data sets from visual6502, and a C re-implementation of the transistor-level simulation, called perfect6502 https://github.com/mist64/perfect6502)

Re: Visual 6502 in JavaScript

#7
post #4

Is there any information on the program the simulator runs by default? I couldn't find anything in the user guide or the FAQs.

Here’s the source code (or at least comments about the assembled op codes) to the example program: https://github.com/trebonian/visual6502/blob/master/testprog...

It looks like that subroutine they call at $0010 has a special hook that writes to the console whenever they write to memory address $0f.

Re: Visual 6502 in JavaScript

#8

When this came out in 2010/11 (not sure when I first heard about it) it blew my mind. However, I was really, really hoping that we'd have a version for the Z80 by now.

Here you go :)

http://www.visual6502.org/JSSim/expert-z80.html

But AFAIK nobody really knows yet whether it works in all situations, because not all of the "trap transistors" had been found yet which the Zilog designers put in to make reverse engineering harder.

...maybe it would have been better to decap one of the "unlicensed clones" of the Z80, like the East German U880, because that definitely had the trap transistors fixed ;) The U880 had some minor differences in the undocumented behaviour too though.

Re: Visual 6502 in JavaScript

#9
post #4

Is there any information on the program the simulator runs by default? I couldn't find anything in the user guide or the FAQs.

It's an infinite loop that increments/decrements registers. This emulator is too slow to run real-world programs.
Post reply on HN