Re: LZ-Adv: ZShell for TI-82 -- Ideas..


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

Re: LZ-Adv: ZShell for TI-82 -- Ideas..



On 24 Oct 96 at 13:22, Jason C. Wenger wrote:


> >Yeah sure, that would have been much more user-friendly. But this was
> >just thought as an experiment to see if it worked. Also, it is meant to
> >work on a TI-82 and I don't know what TI-82 variables are named like,
> >maybe just A,B,C,D etc like on the TI-81?
> >
> >I think the best way would be to just use this method to install an
> >interrupt on the calc. This interrupt could then check to see if
> >ON+enter is pressed and then call the shell program (which is stored
> >in a normal variable). The variable with the modified pointer could
> >then be deleted in order to prevent accidental crashing. Of course,
> >there would have to be function in the shell to make such a variable
> >again in case you want to copy to another calculator.
> 
> My point was the if this works, now we have a way to call ZShell programs
> from a TI-BASIC program.  Good idea using the interrupt routine instead
> of the keypress routine. Couldn't you use the exact same method described
> for the keypress routine and just change the addresses to point to the
> interrupt routine?  You know, store the int. sub. address in A, so that
> every time there's an interrupt, the program calls the interrupt routine,
> and when we change A to point to our code, it'll call the interrupt, and
> then call ZShell?


Such a program already exists. It's called Ulterior Motive, made by 
Jiankang Xu. It installs an interrupt routine that lets you run asm 
programs from TI-basic programs.


> The interupt routine happens very regularly, doesn't it?  if not, there
> has to be some other routine that happens regularly.  What about maybe a
> screen refresh routine, or maybe the code that checks too see if a key
> has been pressed?  (not the keypress routine, but the thing that shecks
> for keypresses and calls te keypress routine if there is one)


Yup, the interrupt routine happens  ~ 200 times / second.
 
> BTW, I'm almost positive that the -82 has A-Z and theta for variables. 
> What about using a PIC variable?  you could use the first couple of bytes
> for the pointer, and the rest of the space for the ASM code.  But how
> could you edit the pointer?  Maybe recall the PIC and edit it with DRAW
> commands, then store it again?  Sure, it's cumbersome, but at least you
> can keep one of your 27 real variables.  Can the -82 store strings?  how
> about using one of those in the same way?  You could edit the pointer
> using SUB() comands, or something like that.  Maybe string concatenation
> would work? ("AB" + "CD" = "ABCD" using AB as the new pointer, and CD as
> the asm code?)


My original idea actually was to use pic variables and recall, edit and
save them. That didn't work however, probably because TI-85 writes a
FC03 in the beginning of every pic variable, (03FCh = 1008d = n:o of 
bytes in a pic var.) , and it's impossible to put any asm code at 03FC. 
Reals are more flexible in this aspect.


Strings would have been the best alternative, but I don't think there
are strings on the TI-82. I'll have to get myself a TI-82 so I can do 
some research..


  Mattias


<pre>
--
 Mattias Lindqvist
 d96mli@efd.lth.se
 www.efd.lth.se/~d96mli
</pre>


References: