[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: ARM and 6502
Regnirps writes ...
>
> ARM Simulation of 65C02
>
....
>
> The main idea is to treat 65C02 instructions as tokens like in BASIC or Java or
> some forms of Forth.
....
> From here
> on you simply disect the actions of the instruction and do them as if you were
> the �microcode� inside a 65C02.
>
So far, so good. ARM sounds a lot like a 32-bit version of the old
29xxx series from AMD.
> Lets say the 6502 program counter points to some location that contains an
> instruction -- always true at this point in the code. We fetch the byte and
> multiply by 16 to get the address of the code to simulate this instruction.
....
> Well, if this keeps up, we get about a 2/1 ratio which implies:
>
> 40 MHz ARM7500 = 20 MHz 6502
> 60 MHz ARM 7500 = 30 MHz 6502
> 200 MHz SA1100 = 100 MHz 6502
>
> I�m sure a good ARM programmer can do better.
Maybe, but a 1:2 speed conversion is not at all bad.
Regarding memory. Is it fair to say that 32M of 32-bit memory
translates into about 128MB of 65C02 mem?
There are some instructions which would be very nice to have. One
would be an address-relative JSR. Another is some way to handle data and
code address bank switching. (Another is a way to set up multiple large
stacks.) Anyway, it looks like ARM makes it possible to define a 'super
6502'. Is this the case?
Rubywand