Name: BasicLib
Author: Alban Gervaise
Date: 5/04/1999 
Version: 1.1 

PRINCIPLE: 
	BasicLib is a library for basic. its goal is very simple: to bring to the basic programmers others functions... but without using the asm since BasicLib requires no other asm programs or libraries: BasicLib is completely autonomous. 


INSTALLATION: 
	Its installation is therefore very simple, you just have to send by the link the file basiclib.89z on your Ti89. There is also an extension : Memlib v1.0 by Philippe Gervaise. It allow to use text and files. Get it at http://www.i-france.com/candyman.


HOW DOES IT WORK:
	To work, BasicLib requires a messenger, a variable that can give from the basic informations to the assembly. This variable exists and has been called ' b_l ' (Basic_Lib) and it is a string in which you write instructions that BasicLib will execute. Then you launch BasicLib that will execute automatically the instructions that it finds in the variable b_l (in fact, the first variable of the VAR-LINK that is called b_l). So BasicLib executes functions in asm for more of speed and more of power...

SYNTAXES: 
	BasicLib v1.1 contains 27 functions that allow to manage files, graphics or other functions which are impossible to manage with the basic.
BasicLib must recognize the different functions, it is necessary to know syntaxes of each function. But the general syntax is still the same: 
* The simplest is the case of an unique function and without arguments: 
	fonction"->b_l:basiclib () 
for example, the Off function (which turn off the Ti89): 
	"Off"->b_l:basiclib () 
* But a function can have several arguments, so the title of the function is followed by a ': ' and between two arguments, there's a comma ', ': 
	"fonction:argument1,argument2,argument3,..., argument n"->b_l:basiclib () 
for example, the ST_busy function has one argument and its syntax is: 
	"ST_busy:0"->b_l:basiclib () 
* Then, several functions can link themselves and are separated with a ' | ' of value 124 (corresponds to the F on the Ti89...) the general syntax is: 
	"fonction1[:arg1,..., arg n][|fonction2 |... function n]->b_l:basiclib () 
for example, we can have the function Off followed by ST_showHelp and Idle_loop that gives the syntax: 
	"Off|ST_showHelp:string|Idle_loop"->b_l:basiclib () 

(For more informations about functions, see fonctions_eg.htm and examples...) 


OTHER THINGS...:
	If b_l is used to communicate from the basic to the assembly, the inverse is also true. Thus, for every function, BasicLib returns a value that depends of the executed function and of the result of this execution. 
But, BasicLib sends back the variable b_l as a list whose first element is: 
	0 if a mistake occurred during the execution 
	1 if the function has been executed successfully 
But some functions as GetSize send back b_l as a string containing a number... In the nomenclature, all functions that send back a value of b_l is which is not 0 or 1 are signalled and the content of b_l is described. 


As the version 1.0, BasicLib v1.1 has many protections to avoid the Ti89 tocrash. Moreover, some mistakes have been corrected (Sprite for example...) 

BasicLib v1.0 the 25/03/99: 
	First version 
	24 functions (and some mistakes...) 
	
BasicLib v1.1 the 05/04/1999: 
	Second version modified with the collaboration of CandyMan 
	3 new functions (Break often asked..., Error and ST_Folder) 
	more comments (by CandyMan of course!) 
	better routines 
	Partnership with MemLib of CandyMan (other functions...)
      (to get Memlib, go at http://www.i-france.com/candyman)
	More examples.
	
	
If you have suggestions, of questions or informations to ask, contact me at: 
GefunS@I-France.com 

Web site : 
  http://www.i-france.com/candyman

By Alban Gervaise 
The 5/04/99 
