Zpic 1.31
TI-83 Plus ASM
(C) Kevtiva

Can Recall Pics directly from FLASH ROM!  No need to UnArchive!
Now (83+ ver. only) ZPIC can recall w/o clearing graph.
Now optimized to use up less memory in programs using ZPIC!  

FAQ:
----

Q:I have a lot of questions on this program.  Where can I get help?

A: Post a message at:
 http://ikevtiva.com/webboard.html .  I am working on a tutorial
which will explain in greater depth how to use zpic, devpic, 
hexstr, listpic, and other useful programs.

Q: How do I get 255 pics? 

A: Well, you can get 255 by hacking (see our website for details).
If you only need pics 1-40, you can download DevPic from our website.

Q: I have a TI-83+. How can I tell what version of ZPIC I have on my calc?

A: It depends on the size.  To find the size of ZPIC, press 2nd mem/del
and select programs.  Look for ZPIC.  v1.2 is 78 bytes, v1.3 is 121 bytes,
and v1.31 is 150 bytes.

Version Info / Compatibilty:
----------------------------

All new versions of ZPIC for the TI-83+ are backwards compatible with 
previous versions of ZPIC.*  This means, if an old program you have uses
zpic 1.1, and you give the program zpic 1.2 or 1.3, or 1.31, it will
still work with it.  See the version history for info, or if you got
zpic with a game, see your game's documentation for the required zpic
version.

New versions add features and optimizations to zpic for programmers
to use!

*Exception: v1.0 is no longer supported.  Only versions newer than 1.0
are backwards compatible.

Basic Information:
------------------

ZPIC RECALLS PICTURES VERY swiftly, WITH NO ERRORS. To use ZPIC, use the
following syntax:

Pic#->X
83 Plus: Asm(prgmZPIC

To recall pic one:
1->X:Asm(prgmZPIC
To recall pic two:
2->X:Asm(prgmZPIC
To recall pic zero (which is really pic ten):
10->X:Asm(prgmZPIC

Advanced Features Not present in v1.1 (83+)
-------------------------------------------

If you don't want to clear the graph first, make X a negative number instead
of positive.

Example:

-5->X:Asm(prgmZPIC

I'll admit: the above command takes up a lot more memory than RecallPic 5.
Here's how to make it take up a lot less memory:

Firstly, you don't need to use X anymore!  If you want your program to use the
ANS variable (Ans is the variable which contains the answer after you do a math
problem on your calc), here's how to enable it:

at the beginning of your program: (the L is the little L found in the list menu,
and the -> is the sto arrow).  

Use this command: "->LZPIC .  This creates a list with zero for a dimension. 

Now all you have to is this:

1:Asm(prgmZPIC will recall pic one.

-2:Asm(prgmZPIC will recall pic two w/o clearing the graph.

But it gets even better!  Use prgmP, included in the zip file:

1:prgmP works just as well, too, replacing: 1->X:Asm(prgmZPIC.

That reduces the # of bytes used from 11 to just 4!

*********
*WARNING*
*********

At the end of your program, don't forget to use the following command
(if you used the above optimization trick):

DelVar LZPIC

If you don't delete LZPIC, and another program which ONLY uses X comes
around, that program might not work properly!  

Questions, bugs, comments?  Send to the email at the bottom of this file.

Versions:
---------
Changes since v1.3: 83 Plus version now optimized with new optimization
features.  See above advanced features section for more.  Still backwards
compatible with version 1.3, 1.2, and 1.1.  

Changes since v1.2: 83 Plus version can recall pics w/o clearing the graph!
If you want this feature in the 83 version, email me.

Changes since v1.1: 83 Plus version now can recall pics directly from FLASH
ROM!

Changes since v1.0:smaller, uses X instead of N, Small bug fixed.

Solutions:
----------

If your program has lines that look like this:
ClrDraw
If X=1
RecallPic 1
If X=2
RecallPic2
If X=3
RecallPic3
Etc.....
Or if your program uses ARCHIVED pics...
Then YOU SHOULD use zpic to make your program run faster.

Bugs:
-----

-ERR:UNDEFINED means X is not defined. Solution: store a number to X.

Info:
-----

Kevtiva Interactive
http://calc.kevtiva.com/
email me:gardenerbm@netzero.net

Thanks to James Matthews for asmguru.hlp, which allowed me to create this
program. Other information provided by the Texas Instruments SDK, and Ion.inc
(Joe Wingermuehle). Thanks to Dan Englender <dan@calc.org> of the TCPA for
his help.

(C) 2000, 2001 Kevtiva Interactive