[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: GS 65816 Chip??
In article <3qetpp$ql4@triode.apana.org.au>,
Andrew Roughan <posty@triode.apana.org.au> wrote:
>
> Well, I've placed my 65816 into my platinum //e. (I use it to run Merlin16).
> So I'd like to hear the electrical reasons why this should not be done.
> Can someone explain exactly what damage is being done?
I don't know about "damage". There are several pins on the 65816 that
have different functions to the 6502/65802. The full list is as follows:
Pin(s) 6502/65802 65816
1 Ground Vector Pull (output)
3 Phase 1 (output) Abort (input)
5 No Connection Memory Lock (output)
7 Sync (output) Valid Program Address (output)
26-33 Data Bus Data Bus or Bank Address
35 No Connection Emulation Mode (output)
36 No Connection Bus Enable (input)
38 Set Overflow (input) Memory/Index Size (output)
39 Phase 2 (output) Valid Data Address (output)
The most serious problems I can see from the above:
1. Vector Pull is usually high, and will be tied to ground. This
will cause unusual power drain from this pin. I don't know whether
this can damage the micro.
2. The Sync output goes to all of the slots. If any card is relying on
this function, it won't work with a 65816 installed. (The Sync signal
is not available on the IIgs. It was replaced with M2SEL, which
indicates that the address bus contains a valid slow memory address.)
3. The data bus is OK during the second half of each cycle, but during the
first half, the 65816 will be outputting a bank address. This is the
video half of the cycle, and will conflict with video data coming from
the RAMs. Every cycle will result in a bus clash, which will cause
noise, extra power consumption, etc. and may interfere with video output.
Assuming the RAM chips have a higher drive capacity, the video will
probably "win" the bus clash.
4. The Abort and Bus Enable inputs will float. They probably have
internal pullups in the processor, so this is unlikely to cause
problems. It may cause unusual power drain, though.
There are other problems when using a 65816/65802 in a circuit
designed for a 6502, which are related to changed behaviour of the
processor rather than specific pin functions. The following points
are immediately obvious from the 65816 data sheet:
1. If a native mode interrupt or BRK occurs in a 65816 or 65802, the
vector is fetched from a different location, which does not contain
a valid vector in the IIe/IIc. For safety, interrupts should be
disabled at all times while in native mode, unless the language card
is enabled and 65802-specific vectors and handlers have been set up.
(Merlin-16 should do this, as it runs from the auxiliary memory language
card space.)
2. The COP instruction uses a vector which is not available in the IIe/IIc
ROM, so should not be used unless the language card is enabled with the
required vectors, as above.
3. The RDY signal is handled differently in the 6502, 65802 and 65816:
6502: RDY will only cause the processor to stop during a read cycle.
65802: When in emulation mode, RDY only causes the processor to stop
during a read cycle. When in native mode, RDY also causes the
processor to stop during a write cycle.
65816: RDY causes the processor to stop during any read or write cycle.
This may affect any I/O card which makes use of the RDY signal.
--
David Empson
dempson@actrix.gen.nz
Snail mail: P.O. Box 27-103, Wellington, New Zealand