6502 -> 65816

Replace your 6502 processor with its big 16-bits brother, the 65816.



DISCLAIMER

  • All names with a copyright are acknowledged.
  • If the reader uses information from this document to write software or build hardware, then it is on his own account. I cannot be held responsible for blowing up your computer, mother-in-law or whatever; it will always be your own fault.
  • I'm not a sexist, with 'he' and 'him' I also mean 'she' and 'her'.


Copyrights

  • You may copy every bit on this page, including the source code, for NON-commercial use. I hope you enjoy it. If you use it, just give me at least some credit like "Stolen from Ruud" :-)



What is it?
This projects tells you how you to make a very small module so you can replace a 6502 with a 65816. Except de-soldering your 6502 (if needed at all), no other soldering to the original board is needed.


The (dis)advantages of replacing your 6502
I got two mails with messages like: "I replaced my 6502 but my system didn't become faster and how can I address 16 MB?" So before you start to grep your soldering iron, ask yourself: "Do I need this modification?"

First remark: Replacing a 1 MHz 6502 with a 4 MHz 65816 does not mean that the system suddenly becomes four times faster: a 65816 is as fast as the clock it is fed with!
I haven't studied the specs of the 65816 that well but it is possible that the 65816 optimised the speed of some opcodes. So it is possible that a system with a 65816 executes some programs a little bit faster then with a 6502.

Second remark: The 65816 has more opcodes. And the new ones replaced some old "illegal" opcodes. So if you run programs using these illegal opcodes, you certainly will run in some kind of trouble.

Third remark: The 65816 is capable of addressing 16 MB. But it needs extra hardware to be able to do this trick! And I'm quite sure that your 6502 system does not have this hardware.

Disadvantage:

  • except not to be able to run the original illegal opcodes, none AFAIK.
Advantage:
  • You are able to learn how to use the extra features and opcodes on a system you're familiar with.


The story
In 1985 I could lay my hands on a 65816 processor. During my first experiments to replace the 6502 of a VIC-20 with this uP it broke down :( In 1997 I could lay my hands on several 65816's for peanuts. So after 12 years I could resume my experiments. This resulted in a small module that you simply put in the place of the original 6502.


The differences
The main differences between both processors are:

Pin     65816   6502
---   -------  --------
 1      VP      GROUND
 3      ABORT   CLK1
 5      ML      NC
 7      VPA     SYNC
35      E       NC
36      BE      NC
38      M/X     SO
39      VDA     CLK2
The 65816 lacks the CLK1 and CLK2 clocksignals so we have to provide them ourselves. That's where the 74F04 comes in place.
ABORT and BE are 816-specific inputs and only need a pull-up resistor.
The 65816 has no SYNC or equivalent but we have to supply this output with a level and IMHO the safest level is (L). AFAIK the only system using SYNC is the KIM-1 and the Elector Junior.
The 65816 also lacks the SO-input. The only systems I know of using the SO-input are some of the C= drives like the 1541.


The module
You only need:

  • 2 IC-sockets
  • one 74F04
  • three 10K-resistors
  • some non-flexible wire
  • and a 65816 of course
One of the sockets has to be of the type with the rocket-shape pins (R-socket). If you understand Dutch: "gedraaide voetjes". The other one can be of the type with the two V-shaped metal tongues which grep the pin of the IC (V-socket). The pins of this socket are as thick as the pins of an IC. It also can be of R-type as well but the intention is to use this socket to replace the original 6502 and the rather thick pins of the R-socket could stress the original socket the 6502 was placed in. If you have to desolder the 6502 and want to solder the module to the board, then there is no problem. An advantage of using two R-types is that they are easier to solder on top of each other in a later stadium of the project.
  • cut pin 2, 8, 10 and 12 of the 74F04.
  • cut pin 3 to 7 as well but not too short, leave some 3 mm free.
  • Cut pin 1, 3, 5, 7, 35, 36, 38 and 39 of the R-socket.
  • Lay the R-socket on its back and lay the 74F04 on its back between the pins of the socket so that pin 14 of the 04 is near pin 8 of the socket and pin 7 of the 74F04 near pin 40 of the socket. Place the 74F04 with its pins 8/14 close to pins of the socket. You'll need the space on the other side later.
  • Connect pin 14 of the 74F04 with pin 8 of the socket. Do the same with 13 and 7, 11 and 5 and 9 and 3.
  • Bend pin 1 of the 74F04 to the middle of the IC.
  • Solder a wire to pin 7 of the 74F04 and connect it with pin 21 of the socket. Bend the wire so that it can be soldered to pin 1 of the 74F04 as well.
  • Use a wire to connect pin 3 of the 74F04 with pin 37 of the socket.
  • Solder a wire of 3 cm long in the HOLES of pin 1, 3, 7 and 39 of the SECOND socket. (The V-socket in my case)
  • First bend the wires flat on the socket.
  • Then bend the wire of pin 1 so that it pops up alongside pin 7 of the 74F04 if you place the first socket on top of the second.
  • Bend the wire of pin 3 of the V-socket so that it pops up between pin 4 and 5 of the 74F04.
  • Bend the wire of pin 39 of the V-socket so that it pops up between pin 6 of the 74F04 and the plastic carrier of the R-socket. (this why you needed the space mentioned above)
  • Bend the wire of pin 7 of the V-socket so that it pops alongside the wire going to pin 21 of the Rsocket.
  • Place the R-socket on top of the V-socket and solder the pins to each other. This can be difficult using a V-socket. You'll need a fine soldertip for this work and a lot of patience.
  • Solder the wires to the pins of the 74F04:
    1  ->  7
    3  ->  4 AND 5 (!)
    39 ->  6
    7  ->  wire towards 21
    
  • Solder a 10K resistor on the outside of the R-socket between pin 8 and pin3.
  • Solder a resistor to pin 36 and connect the other end to the wire leading towards pin 8.
  • Place the 65816 in the R-socket and you're ready to use it.
Time needed: 2 hours.


Using the complete 16 MB range
Please see: 65SC816.



You can email me here.


[Homepage]