Re: A86: interrupts


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

Re: A86: interrupts




> Oh ok, well use IM 1 to restore the normal mode right? And IM 2 to use the
> routine.. I found this on the list posted earlier
> 
> ---
> im 2 - jump to (i*$100+v) where v is a value gotten of the bus (in ti
> calcs its random)  would crash the calc about 999 times outta 1000
> 
> No.  You can install a table of jumps that will account for every possible
> alue that can be put on the bus.  There's a mail about it a few months ago
> on he list.
> --
> 
> So I assume that explains why you need 256 byte table right? Why did someone
> mention you would need 257 bytes? And would the table just be a bunch of
> jumps to the interrupt service routine? If so, dont you need three bytes per
> call? What if it jumped in the table and right in the middle of the opcode
> but before the next opcode, wouldnt that crash the calculator?
> 

What it apparently does, is executes (random, i reg).  So if you load i
with, say $90, then everything between $9000 and $90ff will have to have
the same value, to acount for the unknown byte of the address.  Let's
say that you load $8d to every value in the vector table ($9000 -
$90ff); no matter what the random value is, the interrupt will always
jump to $8d8d.


References: