[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Enhanced //e with a 6503??!
In article <1143906324.297021.128670@g10g2000cwb.googlegroups.com>,
"BLuRry" <brendan.robert@gmail.com> wrote:
> What's the easiest way to detect a 65c02-compatible processor? I'm
> suspecting this odd 6503 beast is not compatible, because if memory
> serves correctly, the vulcan firmware requires an enhanced //e (e.g. it
> was probably written for 65c02) and it only wanted to crash on this
> processor.
>
VERY simple test -
POKE the hex equivalent of
LDA #$01
BRA JUNK
LDA #$00
JUNK:
JMP $FDDA ; PRBYTE ROM routine - prints contents of A in hex.
into memory starting at 768 then do a CALL 768 from BASIC.
If you get "01" printed on screen, you've got a "good" BRA instruction,
which means you're almost certainly running on a 65C02. Get anything
other than "01" showing up after you hit return, and you don't have a
65C02 under the hood.
(A "stray" BRA instruction in the ProDOS kernel code was the reason
ProDOS 1.3 would trash disks when you tried to run it on an unenhanced
//e - The code was correct for a 65C02 based machine, but on a 6502,
instead of branching like it was supposed to, it would fall through into
code that would fire up the drive in write mode and start writing
gibberish, causing all kinds of havoc with the formatting of the disk)
--
Don Bruder - dakidd@sonic.net - If your "From:" address isn't on my whitelist,
or the subject of the message doesn't contain the exact text "PopperAndShadow"
somewhere, any message sent to this address will go in the garbage without my
ever knowing it arrived. Sorry... <http://www.sonic.net/~dakidd> for more info