A83: Re: ROMcall reference


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

A83: Re: ROMcall reference



Usual disclaimer: all of the following information is from the 83 Plus.
 
PPutAwayPrompt - This calls PPutAway and PutAway, and resets the flag that is used to tell whether or not there is an input prompt currently open.
 
The next few calls are all of the same type.  They let the currently running application (application meaning Y= editor, home screen, graph screen, etc) that something is happening and it needs to do something about it.  They all call an address kept in a certain address.  For PPutAway, it calls cxPPutAway, for SizeWind, it calls cxSizeWind etc.  The page that these routines are on is held in cxPage.  There's a copy of all the vectors for the previous application (and appflags) in cxPrev.
 
PPutAway - Partial Put Away is called when an application is exited.  It handles some of the "clean up" procedures.  For example, when you change from the home screen to another application, Partial Put Away saves the textShadow to cmdShadow.
 
PutAway - The same idea, this routine is called on application termination.  It's not of much (I can't think of any) use to TI-83 programmers, but it can be of use to TI-83 Plus application programmers because you can change the address set in cxPutAway and control actions on application termination (IE. link activity, 2nd+Off) that you normally wouldn't be able to.
 
SizeWind - This calls the routine pointed to by the cxSizeWind vector.  It's used when the screen area available to an application is being changed.  When this happens, the application will have to decide if it needs to do anything about the window resize.  On the TI-83 this is just about always caused by the RCL command, but on a TI-85 or TI-86, the menus would cause a window resize as well. 
 
ErrorEP - This calls yet another application vector.  It's used when you're in an edit prompt, an error occurs, and the user choose Goto. 
 
CallMain - This is the last of the monitor vector calls.  It calls the application's Main routine (held in cxMain).  This is called whenever a key is pressed when the application is running.  If you press a key that starts a new application, the key is passed to the starting application, not the one that is being exited.
 
MonErrHand - The TIOS error handler basically.  It fixes up the stack, displays the error message, then jumps to a routine that handles all the input and resolution of the error.
 
AppInit - This routine loads the application monitor vectors for all those routines I discussed earlier.  The vector table you want to load should be pointed to by HL.  Here's the actual code for what it does:
    ld    de,cxMain
    ld    bc,12
    ldir
    ld    a,(hl)
    ld    (flags+appFlags),a
    in    a,(6)
    ld    (cxPage),a
    ret
 
AppInitIfDec - This routine doesn't exist on the 83 Plus to my knowledge, so I have no idea.
 
Initialize - This is just like it sounds, it initializes the calculator.  (Definitely not something you want to call).  It clears all of RAM, sets up the stack and initial values and stuff like that.  It's called as part of the 0000 restart routine (what happens when the calculator crashes), and is also called when you Reset RAM from the memory menu.
 
 
Hope this helps,
-Dan Englender
 
----- Original Message -----
From: Henk Poley
To: assembly-83@lists.ticalc.org
Sent: Friday, January 26, 2001 1:02 PM
Subject: A83: ROMcall reference

Okay, been a long time...

Now for some ROMcalls from which I really don't know what they do.
Although I suspect that it isn't wise to call them.
They feel like belonging to the TIOS-main routine to me...

Henk Poley

------

+- _PPutAwayPrompt -+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  403E |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  0585 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ?? has something to do with quiting a program ??

+- _PPutAway -------+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  4042 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  0590 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ?? has something to do with quiting a program ??

+- _PutAway --------+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  4046 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  0599 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ?? has something to do with quiting a program ??

+- _SizeWind -------+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  404A |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  05AC |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ????

+- _ErrorEP --------+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  404E |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  05BD |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ????

+- _callMain -------+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  4052 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  05D2 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ????

+- _monErrHand -----+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  4056 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  05E4 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ????

+- _appInit --------+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  405A |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  0603 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ?? Same as 405A ?? .DB CD,03,06,C9

+- _appInitIfDec ---+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  405E |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  0603 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ?? Same as 405A ?? .DB CD,03,06,C9

+- _initialize -----+-------+-------+-------+-------+-------+-------+-------+
| SQUISH.INC        |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  4062 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Call to:          |  ???? |  ???? |  ???? |  ???? |  ???? |  ???? |  073C |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
input:
output:
destroyed:
description: ????


Follow-Ups: References: