Main Page

From VisualChips

(Difference between revisions)
Jump to: navigation, search
m (Undo revision 286 by EdS (talk) hmm both undo and rollback seem to add a revision)
Line 5: Line 5:
The [[JssimUserHelp|online help for our JavaScript simulator]] is also here, to help you get the most from that. (Note that it's only a switch-level simulator - our data also supports more accurate models. For most purposes, there's no difference.)
The [[JssimUserHelp|online help for our JavaScript simulator]] is also here, to help you get the most from that. (Note that it's only a switch-level simulator - our data also supports more accurate models. For most purposes, there's no difference.)
-
= Projects and status =
+
* [[The reverse engineering process]]
-
See also the [http://visual6502.org/links.html links] and [http://visual6502.org/donate_hw.html status page] on our [http://visual6502.org main website].
+
* [[Chips listed by progress]]
 +
* [[Chips listed by manufacturer]]
 +
* [[People involved]]
-
For each chip, we follow these steps (see [http://visual6502.org/downloads.html the PDFs] for details):
 
-
* get a chip, or more than one, which we can depackage
 
-
* depackage it
 
-
* take many photographs through a microscope of the metal layer
 
-
* stitch into a single large image, correcting for distortions and overlaps
 
-
* capture the polygons - at least for metal, usually also for contact cuts - into a data file
 
-
* usually, deprocess the chip to expose the lower silicon layers
 
-
* photograph, stitch and capture
 
-
* convert the data files into a description we can simulate
 
-
* investigate the behaviour of the chip by simulation
 
-
* investigate the layout and logic design
 
-
* write up our results on this wiki
 
-
== MOS 6502 family ==
 
-
We have photographs of the metal and lower layers, the polygons captured, the circuit extracted and we have published [http://visual6502.org/JSSim a javascript simulator].  There is an [https://github.com/pmonta/FPGA-netlist-tools FPGA project] to implement the simulation in hardware. We have (as yet) unpublished simulators in python and C.
 
-
See the [[#6502 additional information|additional information]] further down this page
+
= Projects and status =
-
 
+
See also the [http://visual6502.org/links.html links] and [http://visual6502.org/donate_hw.html status page] on our [http://visual6502.org main website].
-
== Zilog Z80 ==
+
-
We have photographs of the metal layer, and have started capturing the polygons.  No public information yet.
+
-
 
+
-
== Atari support chips ==
+
-
* TIA (television interface adaptor) fully extracted and simulated, no data yet published.
+
-
* ANTIC layout is in the process of polygon capture or netlist extraction. Primary data not yet published, but see [http://www.atariage.com/forums/topic/172580-antic-decap-and-reverse-engineering/ these] [http://www.atariage.com/forums/topic/136706-internal-antic-and-gtia-schematics/ threads].
+
-
 
+
-
== Motorola 68000 ==
+
-
We have photographs of the metal layer, and have started capturing the polygons.
+
-
* [[Motorola 68000|68000 project page]] containing die photo and showing areas being captured
+
-
This chip will need further deprocessing and photography for the lower layers.
+
-
 
+
-
== Ferranti ULA family ==
+
-
Ferranti ULAs were used in Acorn's BBC and Electron computers, and Sinclair's ZX81 and Spectrum.
+
-
 
+
-
See [http://www.zxdesign.info/book/ Chris Smith's excellent book] for ULA background and lots of detail about the Spectrum ULA
+
-
 
+
-
* Spectrum ULA: photographed, circuit manually captured, original sources not presently public
+
-
* Electron ULA: photographed and stitched, nothing online yet
+
-
* Tube ULA: we have a 'spare' chip, yet to be decapsulated
+
-
 
+
-
= 6502 additional information =
+
-
 
+
-
== Primary Sources ==
+
-
* [http://visual6502.org/images/6502/index.html Photos of a MOS 6502D]
+
-
* [[Atari's 6507 Schematics]]
+
-
* [[Photos of R6502]]
+
-
 
+
-
== Secondary Sources ==
+
-
* [[Hanson's Block Diagram]]
+
-
* [[Balazs' schematic and documents]]
+
-
 
+
-
== Previous Analysis ==
+
-
* [http://impulzus.sch.bme.hu/6502/letolt.php3 Beregnyei Balazs: 6502 Reverse Engineering] ([http://www.downloads.reactivemicro.com/Public/Electronics/Reverse%20Engineering/ translation])
+
-
* [http://anyplatform.net/media/guides/cpus/65xx%20Processor%20Data.txt Mark Ormston: 65xx Processor Data (version 0.2b)]
+
-
* [http://www.textfiles.com/apple/6502.bugs.txt Ivo van Poorten: 6502 Bugs List]
+
-
* [http://www.llx.com/~nparker/a2/opcodes.html Neil Parker: The 6502/65C02/65C816 Instruction Set Decoded]
+
-
* [http://www.oxyron.de/html/opcodes02.html Graham: 6502/6510/8500/8502 Opcode matrix]
+
-
* [http://members.chello.nl/taf.offenga/illopc31.txt Freddy Offenga: 6502 Undocumented Opcodes]
+
-
* [http://www.zimmers.net/anonftp/pub/cbm/documents/chipdata/6502-NMOS.extra.opcodes Adam Vardy: Extra Instructions Of The 65XX Series CPU]
+
-
 
+
-
== Our Analysis ==
+
-
* collected [[6502Observations|observations]] of 6502 layout and behaviour.
+
-
* [[6507 Decode ROM]] (note that this describes the Atari 6507, not exactly the same as the NMOS 6502 used in the [http://visual6502.org/JSSim visual6502 simulator]
+
-
* [[6502 all 256 Opcodes|all 256 6502 opcodes]] including illegals and their actions
+
-
* [[6502 Stack Register High Bits|Stack Register]]
+

Revision as of 00:51, 27 January 2011

Welcome to the visualchips wiki. Please see also the visual6502.org site which contains the backstory, useful links, a FAQ, and a link to the project blog.

We're all about reverse-engineering popular chips from the 70's and 80's - initially the 6502 but others too. This wiki is for documenting our findings and recording our sources, and is of course a work in progress.

The online help for our JavaScript simulator is also here, to help you get the most from that. (Note that it's only a switch-level simulator - our data also supports more accurate models. For most purposes, there's no difference.)


Projects and status

See also the links and status page on our main website.

Personal tools