A85: VAT functions released (was Re: LZ: VAT functions... at least a few


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

A85: VAT functions released (was Re: LZ: VAT functions... at least a few.)



NTalbott7@aol.com wrote:

> Didn't Dines Justesen do a lot of the work? I don't want to be a third party
> taking up offense, I just want to make sure he gets proper credit, because he
> has done _a_lot_ to help the TI community with his never-ending delvings into
> the ROM. I'm sure you probably refined them some, Andreas, and I don't grudge
> you that at all, but make sure you give credit where credit is due, OK?
> 
> THANKS, DINES!

Some of the work was actually done by Rob Taylor, and when i took over
TI-ROM
a continued the work. Basically Rob Taylor and I found all the rom
version people 
are talking about.

So what did Andreas do ? After having found the resize function i did
not really 
have time to test it, and i only had acces to one calc. Andreas was kind
enough to
do almost all the testing of the function. Since Andreas was able to
test the function 
on more than one rom version we help check out all of them. All in all
andreas was 
a big help in finishing the work.

If Andreas Ess gave some the impression that he did all the work on this
i am sure 
he did not mean too, he have been working together for so lomg with out
problems.

Some people seem to think that Usgarrd "invented" the variable function,
but in riality
most of them where discovered in 1996, and the rest in 1st quater of
1997. The developers
of Usgarrd got thre information before every one else because they
helped testing 
the functions.

Why has the information not been released ? The answer is quite simpel,
lack of time. 
I have had too many other prolect to work on, and has therefore not had
the time to
finish ti-rom 1.1. I do not know when it will be released, but it will
hope fully be
before 1st of setember.

Since so many people have shown interest in these functions i have
decided to release 
a document which i wrote this spring. It contains the adresses for the
variable function
and should help the people who wants to use them to get started.

ADD.10 is only a part of the info which is going to be released with
tirom 11, but i 
hope you guys find it useful.

Dines

-- 
_______________________________________

Dines Justesen
Email: dines@post1.com or
       c958362@student.dtu.dk
WWW  : http://www.gbar.dtu.dk/~c958362/
_______________________________________
          TI85 Variabel allocation. Dines Justesen (c) 1997.
-----------------------------------------------------------------------------

Additions and corrections to TI-ROM.TXT 1.0.

+- Delete variable -+-------+-------+-------+-------+-------+-------+-------+
|                   |  2C58 |  2C5C |  2C5C |  2C5C |  2C60 |  2C0B |  2C25 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
Input: HL -> VAT entry
       DE -> Variable data

Result: The VAT entry and the data space is deleted.

+- Allocate memory -+-------+-------+-------+-------+-------+-------+-------+
|                   |  299B |  299F |  299F |  299F |  29A3 |  294E |  2968 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
Input: OP1 hols variable name and name length, A holds type of variable,
       HL = # of reals (10 bytes) to allocate.
Result: HL = pointer to VAT entry
        DE = pointer to data space
Note: This function does not set the length byte. The 2 bytes needed for the
      length byte is added to the # of bytes needed. This function calls the
      error handler in case of an error.

+- Allocate memory -+-------+-------+-------+-------+-------+-------+-------+
|                   |  29A7 |  29AB |  29AB |  29AB |  29AF |  295A |  2974 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
Input: OP1 hols variable name and name length, A holds type of variable,
       HL = # of bytes to allocate
Result: HL = pointer to VAT entry
        DE = pointer to data space
Note: This function does not set the length byte. The two bytes need for the
      length field of some var types is not added to the # of bytes needed.
      To have these bytes added call 6 bytes before (29A1 for 3.0A). This
      function calls the error handler in case of an error.

+- Resize variable -+-------+-------+-------+-------+-------+-------+-------+
|                   |  2AB0 |  2AB4 |  2AB4 |  2AB4 |  2AB8 |  2A63 |  2A7D |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
Input : HL = current size of variable. DE = new size of variable.
        (80D0) and (80D2) -> variable. OP1 holds variable info.
Result : The variables size is adjusted to the new size.
Note: This function has not been tested in anyway !

Besides the above function the rom contains a list of functions to allocate
memory for a specific var type. these function are listed below. All the
rutines below places the correct value in the data length field, if that is
needed for that var type.

+- Allocate variable -------+-------+-------+-------+-------+-------+-------+
| Real (0)          |  29D3 |  29D7 |  29D7 |  29D7 |  29DB |  2986 |  29A0 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Cplx (1)          |  29E1 |  29E5 |  29E5 |  29E5 |  29E9 |  2994 |  29AE |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Vect (2)       *1 |  29E8 |  29EC |  29EC |  29EC |  29F0 |  299B |  29B5 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Vect cplx (3)  *1 |  2A10 |  2A14 |  2A14 |  2A14 |  2A18 |  29C3 |  29DD |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| List (4)       *2 |  2A21 |  2A25 |  2A25 |  2A25 |  2A29 |  29D4 |  29EE |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| List cplx (5)  *2 |  2A3E |  2A42 |  2A42 |  2A42 |  2A46 |  29F1 |  2A0B |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Matrix (6)     *3 |  2A49 |  2A4D |  2A4D |  2A4D |  2A51 |  29FC |  2A16 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Matrix cplx (7)*3 |  2A56 |  2A5A |  2A5A |  2A5A |  2A5E |  2A09 |  2A23 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Const (8)         |  29D9 |  29DD |  29DD |  29DD |  29E1 |  298C |  29A6 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Const cplx (9)    |  29DD |  29E1 |  29E1 |  29E1 |  29E5 |  2990 |  29AA |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Equ (A)        *4 |  2A77 |  2A7B |  2A7B |  2A7B |  2A7F |  2A2A |  2A44 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| String (C)     *4 |  2A64 |  2A68 |  2A68 |  2A68 |  2A6C |  2A17 |  2A31 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| GDB (D)           |  2A87 |  2A8B |  2A8B |  2A8B |  2A8F |  2A3A |  2A54 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| GDB (E)           |  2A8B |  2A8F |  2A8F |  2A8F |  2A93 |  2A3E |  2A58 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| GDB (F)           |  2A8F |  2A93 |  2A93 |  2A93 |  2A97 |  2A42 |  2A5C |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| GDB (10)          |  2A93 |  2A97 |  2A97 |  2A97 |  2A9B |  2A46 |  2A60 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Pict (11)         |  2A80 |  2A84 |  2A84 |  3A84 |  2A88 |  2A33 |  2A4D |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
| Prgm (12)         |  2A97 |  2A9B |  2A9B |  2A9B |  2A9F |  2A4A |  2A64 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+
*1 = Number of elements in L
*2 = Number of elements in HL
*3 = Number of rows/cols in H/L
*4 = Number of chars in HL

+- Random ----------+-------+-------+-------+-------+-------+-------+-------+
| Call 37A63        |  39E8 |  39EB |  39EB |  39EB |  39EF |  39A7 |  39C2 |
+-------------------+-------+-------+-------+-------+-------+-------+-------+

References: