Re: A83: Re: quick question about ti83plus


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

Re: A83: Re: quick question about ti83plus




No.

To be a little more detailed, that would work fine on a TI-83 (though I
assume you mean 'jp' instead of 'jump'.) because the equate is an actual
executable address on the currently loaded ROM page.  On the 83 Plus this is
not the case.  The equate is just a pointer to an address on page $1B.  This
address on page $1B in turn is just a pointer to another address on another
page.  This is done so that the ROM entry point page does not need to be
loaded for you to access ROM routines (otherwise external applications
wouldn't be possible).

When you B_CALL something, what you're actually doing is this:
    rst    28h
    dw    callequate
The reset calls a routine which looks at the data word of the equate, looks
it up on page $1B, and then calls it.  So if you tried to just 'call' a ROM
routine on the 83 Plus, you'd end up calling some "random" location on
whatever ROM page was currently loaded.  If you tried to jump there, you'd
get the same result.  B_JUMP is used for when you want to return control to
the system from an application.  It resets the stack, loads the correct
monitors, and will load the homescreen (or some other screen, depending on
what you B_JUMP).  You should not use B_JUMP to jump to ROM entry points
other than JForce's.  You should use B_CALL \ ret instead.

Note: The B_CALL and B_JUMP routines are a bit more complicated that what
I've described, but that's the general idea.

-Dan Englender

----- Original Message -----
From: "Hyperbyte" <central@hyperfield.com>
To: <assembly-83@lists.ticalc.org>
Sent: Wednesday, December 13, 2000 5:44 PM
Subject: RE: A83: Re: quick question about ti83plus


>
> If I read some docs correctly, in regular ASM 83+ programming, call can
also
> be used instead of bcall, maybe "jump _puts" would work...
>
>
> Greets,
> Peter Martijn
>
> -----Oorspronkelijk bericht-----
> Van: owner-assembly-83@lists.ticalc.org
> [mailto:owner-assembly-83@lists.ticalc.org]Namens D Weiss
> Verzonden: woensdag 13 december 2000 21:53
> Aan: assembly-83@lists.ticalc.org
> Onderwerp: Re: A83: Re: quick question about ti83plus
>
>
>
> I tried that, VTI crashed after I quit ion.  I guess you can't do that
> optimization.
>
> >From: "David Phillips" <david@acz.org>
> >Reply-To: assembly-83@lists.ticalc.org
> >To: <assembly-83@lists.ticalc.org>
> >Subject: A83: Re: quick question about ti83plus
> >Date: Wed, 13 Dec 2000 13:30:06 -0700
> >
> >
> >Yes.
> >
> > > Can the code:
> > > bcall(_puts)
> > > ret
> > >
> > > be optimized to:
> > > bjump(_puts)
> > >
> > > like on the regular 83?
> >
> >
> >
>
>
____________________________________________________________________________
> _________
> Get more from the Web.  FREE MSN Explorer download :
http://explorer.msn.com
>
>
> ____________________________________________________________
> Get your free domain name and domain-based e-mail from
> Namezero.com. New!  Namezero Plus domains now available.
> Find out more at: http://www.namezero.com
>
>
>
>




References: