Nifty v0.5 - Nifty Is Formatted Text for You - (c) Peter Martijn Kuipers
						   (nifty@hyperfield.com)

--Initial info:
This is verion 0.5 of Nifty, all that is finished before the Detached
Solutions programming contest. A lot is yet unfinished: Better looks, reading
archived files and the ability to see if you're on the last or first page.
However, I think this version gives a good impression of the potention of
this program, so I'll just let the program speak for itself.

--Terminology:
;//         - Comment, used in code-examples, ends on end-of-line
Nifty       - this program
NML         - Nifty Markup Language (v0.5 is current developement version),
	      the structure of a Nifty file
Nifty files - Files that contain NML

--What Nifty is:
Nifty is a TI-83+ program, which reads Basic-Text files, and prints them in 
small fonts on the screen. Nifty checks the basic file for certain control 
tokens, which will affect the way the basic program is displayed.

--What Nifty does:
Nifty will automatically detect programs which comply to NML-v0.5 
(Nifty Markup Language) this means: 
Nifty files start with (leading :'s are add by the basic-editor):
:Stop:NIFTY	      ;// Stop will make it inrunnable from TIOS
		      ;// NIFTY is to identify it to NIFTY
:[filename]	      ;// The name of the file. Please keep it <17 tokens
...nifty text..	      ;// text to be displayed
{...text...}	      ;// inverted text
[enter]		      ;// forced newline
Pause		      ;// forced page end
->		      ;// store token, tab (10 spaces)
...end nifty text...  ;//
:End		      ;// End of file. You MUST include this!!!!
		      ;// if you don't include it, thing will get messy.
		      ;// (I included a failsafe, but don't rely on it!!)
:[everything you want to have in the file, but not in the viewer]

Nifty has a maximum capacity of 128 pages memory storage, any pages that lie 
beyond that range are simply not displayed, this is to prevent system crashes.
Also, only Nifty Files that reside in normal RAM are available for viewing,
this will be fixed in a next release.


--Who made Nifty:
 I'm Peter Martijn Kuipers, student in the final year on the VWO (some sort of
 High school(+) equivalence). I live in the Netherlands.

--How Nifty can be of use:
!-Teachers can make studycards or notes On-Calc, so their students can view 
  them. Teachers no longer have to use a computer with graphlink to make 
  such files.
+-Studens can make digital notes, that can be viewed orderly, right in the
  classroom, without paper, so the notes can be distributed to classmates 
  without loss of meaning that occurs when copying notes by pen.
--Due to the way Nifty reads its programs it can be used to transport data
  in hidden files (files where the first character of the name is a space, if
  I recall correctly), so you can hide data, not ment for others. Please do not
  use this feature for cheating, but if you do: the only one you're cheating is
  yourself...
 
--Known Problems, bugs:
-Archived Nifty files are not yet supported

-There is no indication of the page you're on (up/down) arrows are considered

-When you use tokens that are larger than 4 pixels, the Soft Return feature
 might get compromised, be sure not to use them on Line endings.

-Due to the nature of TI-Basic, Nifty files can be considerably larger than 
 their ASCII equivalents, however, I think that the feature of being 
 able to edit files On-Calc is of more importance than this.

-There is no programmed-in limitation to the amount of niefty programs, 
 however, if you have a lot of them (30/40+, I estimate), you may crash your
 calculator, because of some overwritten memory.

--Future enhancements:
-The ability to read archived programs
-Nifty as an app ;-)
-See if you're on the first or last page
-Display a list of all the files and let the user choose fron this
-A compiler for normal texts to NML
-Images (with Pic0(with,height,left,top,[Hex-Data]) for example)
 or including of the Pic0-9 files... that display.
-More formatting tokens (ideas are welcome)

--Tips&Tricks
-You can use TI's Graphlink program to paste normal text into a nifty file

-You can introduce Nifty to your teacher, for giving notes.

-Nifty can read and display ANY TI-Token, this is ideal for Math notes, because
 you can include normal lines of calculation tokens, like "sqrt(3/4)" with the
 square root token.

-You may be able to use TI-Standard tokens like "If" or "And" to inter-
 nationalize your NML files, since those will be changed with language 
 localisation. 

-You can put "hidden" text after the End directive, it will than be in 
 the file, but not displayed by nifty.

--Be sure to check out the example Nifty file!

--Thanks go to the following people:
-Dan Englender,  for helping me with the TI83+ Token Reading system, and
		 modifying the TI83Plus.inc Include file for use with TASM
-James Matthews, for writing the ASM Guru, that is a great help, even when
		 learning TI83+ ASM

--Legal Stuff:
 Nifty is distributed Open Source, this will probably be GPL by version 1.0,
but in the meantime, here's my own version of an Open Source Developement 
License:

-You may view, edit, and build the source, for your own use, without 
distributing the source in public. You are allowed to distribute a build from 
a modified source within your class, and ONLY in your class or among 5 friends 
who are not in your class. You are not allowed to distribute your modified 
source to anyone but yourself and me.
-The unmodified source is available to everyone, for building, viewing,
learning or improving purposes
-If you make any modifications to the source, which are a definate improvement
such as bug fixes and added functionality, you MUST mail them to me, at
(nifty@hyperfield.com).
-You may not remove any copyright notices from the code. You may add your name,
if you have added an improvement. Exception to this is when you remove, damage
or mutilate part of the Nifty code, in that case you must add a statement which
clearly states that you changed the code, to both your source and your modified
program.

OK, that's it. Version 1.0 will be GPL, but until that time, I don't want any 
modified sources around.

Greetings to all users. And I hope you will have many uses for Nifty.










