A86: I've got questions about registers and interupts, maby someone can


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

A86: I've got questions about registers and interupts, maby someone can aswer?




What follows is a list of all the registers and the names/uses of them,
as I know them could someone please correct this list if it is wrong.

A  - acender
F  - flags
B  - base
C  - counter
D  - data
E  - extra
HL - 16-bit register commonly used as a mem pointer
IX - index register
IY - index register
AF' \
BC' |- shadow registers
DE' | 
HL' /
R  - memory refresh register (see questions about below)
I  - interupt register (see questions about below)
PC - program counter
SP - stack pointer

R  - What does the memory refresh register do?  Is the register a count
down timer until memory refresh, then why is it a multiple of 2?  Or,
does the register change after every register?  And of what uses is it,
other than a pueso-random number generator (that is no good)

I - Is I the interupt vector?  i.e. when an interupt occurs does the PC
now point to I?  And how does that work I is only 8-bit.  And what does
the interupt call do to the stack, and why do you have to return with an
RETI ($ED$4D), or do I have that wrong?

Interupt Modes
There are 3 interupt modes im 0, im 1, and im 2.  Can someone tell me
the difference between the 3?  I'm assuming that im 0 means no
interupts, which BTW tends to kill the calc (I think because it
disactivates (kinda) the get key routine).  What are the different
interupts, I know the clock (200Hz) and the ON key, any one know of any
others?

Also, I have been thinking about getting the processor into a state
where the ROM has no influence what so ever.  I think I can do it by
starting a program that removes all the interupts and than I can have
that same program recive a transver through the link port to fill the
rest of the ram with code.  Just an idea.

   -Gen_Witt
     Gen_Witt@aloradus.com


Follow-Ups: