[A82] Re: writeback?


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

[A82] Re: writeback?




inside

----- Original Message -----
From: "Henk Poley" <HPoley@DDS.nl>
To: <assembly-82@lists.ticalc.org>
Sent: Tuesday, May 15, 2001 00:40
Subject: [A82] Re: writeback?


>
> Oh, sorry, that was exactly the thing I ment to say...
>
> So, ASH and CrASH relocate the program-variable just like Rigel (Ti85) and
> Venus (Ti83) do?
>

Yes.

> If so, whats then the 'fix' that's needed for GET_KEY?
> You know, the Cr_KEYHAND call. I thought that call did move the
> program-data from $9104 back into the programs variable, call GET_KEY, and
> then move the data back to $9104 and return the key that was pressed...
> (else the TIOS would crash if you pressed [2nd]+[On])


CR_KHAND does just what you said. It de-relocates the program, calls KHAND,
and re-relocates the program afterward.
This is needed because none of the system pointers in the VAT are updated
when Cr/Ash does its relocation.

> Another question: Is there already found a romcall like _chkfindsym? Or do
> you have to do things by hand?
>

Taken from 82-ROM.TXT:

---- CALL 20EB ---- Search for program by
name ------------------------------
Searches the program VAT for a program. info in OP1.
Result: HL = pointer to VAT entry
        DE = Pointer to data space

---- CALL 213E ---- Serach for variable by
token/name -----------------------
Seraches VAT to find variable. infor in op1. works for all types.
Result: HL = pointer to VAT entry
        DE = Pointer to data space

---- CALL 2143 ---- Search for variable by
token ----------------------------
Same as rst 10. Does not work for programs. Info in OP1.
Result: HL = pointer to VAT entry
        DE = Pointer to data space
        A = (OP1) = type of var





References: