[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Eprom reading question



Ernest writes ...
> 
> "Rubywand" <rubywand@swbell.net> wrote
 ....
> >
> >      You could go into the monitor-- from the usual
> > Applesoft prompt type in
> > CALL -151 (and press Return).  Then, to display a
> > block of stuff in, say, the
> > $F8xx ROM, you could enter
> >
> > F800.F87F
> 
> OK, I did that but all I see is a bunch of letters and numbers. Is there a
> way to convert that stuff to something that I can make sense of?
> 
 ....

     Using the monitor L (list) command gets you 20 lines of a disassembled
listing starting at the address used.

F800L

would show 20 lines of disassembled machine code (e.g. 20 47 F8) plus assembly
mnemonics (JSR  $F847) starting at $F800. Subsequent "L"'s would continue the
listing.


     On a II+ (with a 40-col display) the first few lines starting at $F800
(with interpretations added) are ...


F800-  4A         LSR          Logical Shift Right the value in Accumulator
F801-  08         PHP          Push Processor Status onto the Stack
F802-  20 47 F8   JSR  $F847   Jump to Subroutine at $F847
F805-  28         PLP          Pull Processor Status from Stack
F806-  A9 0F      LDA  #$0F    Load the Accumulator with the value $0F
 ....


     With no additional information, making sense out of something like the
above is not especially easy. (For one thing, it is a very basic sort of
listing which uses no labels.)

     Fortunately, Apple includes a disassembler listing of the contents of the
"Auto-Start ROM" with labels for subroutines, etc. and comments about what's
going on in the back of the 1979 Apple II Reference Manual (which covers the II
and II+). So, for example, you know that the routine beginning at $F800 is
named "PLOT" and the JSR to $F847 is a JSR to a routine named "QBASCALC".

     The listing for the old ROM (used in the II) is also included. It's very
similar to the newer ROM and has more comments.

     Other good guides to what's going on are PEEKS & POKES charts and listings
of monitor subroutines with brief descriptions of function.



Rubywand