[A83] Re: A couple of questions


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

[A83] Re: A couple of questions





>
> I have a few questions...
> 1. Does anyone know the algorithim the 83+ uses to turn bcalled
> addresses into an offset and rompage?
> 2. detacheds.com appears to no longer point to the Detached
> Solutions webpage.  Has anyone else noticed this and/or know the
> new address?
> Thanks

1) I haven't looked into this, but I would imagine that bcall probably works
something like this:
BCALL = #define bcall(xxxx) rst 28h \ .dw xxxx

The RST 28h tells the calculator to call memory address 28h.  I imagine that
the calculator would pop off a word from the stack to find where the RST was
called, get the word directly after the RST (the .dw xxxx) and push the
return address back onto the stack.  I know the calculator has a "jump
table", if you will, of 2 byte offsets and 1 byte rompages (each set being 3
bytes, then)  The word would point to one such pair, find out what rompage
the routine is on, swap it, call the offset, swap the rompage back and
return.  At least I'm guessing thats something like how it works =P  If
anyone knows better, feel free to illuminate me.
- - Joe

joe@joepnet.com




Follow-Ups: References: