Apr  10 —  After years of development by TIBD members, the TIBasic Starter Kit has been completed. 
Here are some review exercises to help you practice your optimization skills.
1. Write a program that, given a string in Ans containing letters AZ, will return a list with the alphabetic positions of those letters.
Example:
"AZ
AZ
prgmLETTONUM
Ans
{1,26}
2. Change this short program so it doesn't flicker and then optimize it as much as possible.
:0→X:0→Y:Repeat 0
:ClrHome
:Output(Y,X,"X")
:getKey→K
:If K=24:X1→X
:If K=25:Y+1→Y
:If K=26:X+1→X
:If K=34:Y1→Y
:End
<< Summary  Table of Contents  Starter Kit Review >> 
In this chapter, you learned some optimization techniques to make your programs smaller and faster.
 The Output( command can be used to display multiple lines of text by taking advantage of text wrapping.
 The Text( command can automatically concatenate multiple arguments into one output
 Storing large data used in multiple locations can save space.
 Using implied multiplication and factoring out like terms in expressions can save space and time.
 Understanding logical operators can help you eliminate extra parentheses to save space.
<< Graph Screen  Table of Contents  Exercises >> 
Returns the arc length of expression1 from start to end with respect to variable var.
arcLen(expression1,var,start,end)
Menu Location
Describe how to get the command from a menu.
This command works on all calculators.
X byte(s)
The arcLen() command uses the integral arc length formula to calculate the arc length of a function over the specified interval.
arcLen(cos(x),x,0,π)
3.82019...
Advanced Uses
The arcLen() command also works on lists of expressions:
arcLen({sin(x),cos(x)},x,0,π)
{3.820... 3.810...}
Separate unrelated advanced uses with a horizontal bar.
Optimization
This section includes both ways to optimize use of the command, and other common pieces of code that this command can replace in an optimization. Make sure to mention if the optimization improves speed of the program, size, or both. Sample code should be included too, preferably in the following format:
:∫(√(1+d(f(x),x)²),x,a,b)
can be
:arcLen(f(x),x,a,b)
Related Commands
author: 'Kydapoot, optimized by Trenly and ZacharyPi'
version: 1.1.1
summary: 'This is the optimized version of my previous quadratic program. The functions are the same, but there are no errors and it is much more compact.'
description: 'This is the optimized version of my previous quadratic program. The functions are the same, but there are no errors and it is much more compact. This is a program where you input A,B, and C and it calculates the vertex of the parabola and then the roots (if any). If there are two roots they all be listed, if there is one root, it will be listed twice. If there are no roots, you will get imaginary numbers. As well as calculating these values, it also graphs the equation (stored into Y1). This is not shown in the program, but can be viewed after exiting. The program also includes a list of equation forms and a square root finder for calculating discriminants. It does not require anything other than a few variables to run. The program is not locked.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '1'
compatibility: bb
download: 'archivefile:quadplus3/QUADPLUS.8xp'
image: 'archiveimage:capture15/Capture1.png'
fileSize: '391'
fileSizeUnit: '1'
dateMade: '1459227600'
author: Kydapoot
version: '1.0'
summary: 'This is a program where you input A,B, and C and it calculates the vertex of the parabola and then the roots (if any). As well as calculating these values, it also graphs the equation (stored into Y1). This is not shown in the program, but can be viewed after exiting. The program also includes a list of equation forms and a square root finder for calculating discriminants. '
description: 'This is a program where you input A,B, and C and it calculates the vertex of the parabola and then the roots (if any). If there are two roots they all be listed, if there is one root, it will be listed twice. If there are no roots, ERR:NONREAL ANS comes up. Simply press enter twice from here to resume the program. As well as calculating these values, it also graphs the equation (stored into Y1). This is not shown in the program, but can be viewed after exiting. The program also includes a list of equation forms and a square root finder for calculating discriminants. It does not require anything other than a few variables to run. They are deleted after the program is finished. The program is not locked, to the best of my knowledge.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '1'
compatibility: bb
download: 'archivefile:quadrtc1/QUADRTC.8xp'
image: 'archiveimage:capture11/Capture1.png'
fileSize: '447'
fileSizeUnit: '1'
dateMade: '1459227600'
author: 'Kevin Gomez (kg583)'
version: '1.2'
summary: 'Color port of the mobile game Flow Free.'
description: "The goal of each puzzle is to fill the board by connecting colored pipe ends. This port comes with 100 archived levels, tutorial level, achievements, and custom keybinds. See the readme for specific details about each feature.\nHappy playing!\n\nUpdated in v1.2:\nRemoved assembly code and increased pipe thickness"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: gg
download: 'archivefile:flowv12/FLOWv12.zip'
image: 'archiveimage:flow113/Flow_11.gif'
fileSize: '13600'
fileSizeUnit: '1'
dateMade: '1458882000'
CSS
div.code { counterreset: linenumber; } div.code p { counterincrement: linenumber; margin: 0; } div.code p::before { content: counter(linenumber); width: 2.25em; display: inlineblock; textalign: right; borderright: 1px dashed #DDD; paddingright: 3px; marginright: 6px; webkituserselect: none; /* Chrome/Safari */ mozuserselect: none; /* Firefox */ msuserselect: none; /* IE 10+ */ userselect: none; /* Likely future */ }
Correct Format
:Full
:FnOff
:AxesOff
:0→Xmin:1→ΔX
:0→Ymin:1→ΔY
:ClrDraw
:Vertical Xmin
:Vertical Xmax
:Horizontal Ymin
:Horizontal Ymax
:60→A:92→B
:2→C:2→D:25→G
:PxlOn(A,B
:PxlOn(C,D
:Text(1,28,31,"READY?
:Pause
:For(E,26,36
:Line(29,E,67,E,0
:End
:Repeat G=45 or not(pxlTest(A,B) and pxlTest(C,D
:getKey
:If Ans
:Ans→G
:A+(G=34)(G=25→A
:B+(G=26)(G=24→B
:1+pxlTest(C+1,D
:Ans+(Ans=2 and pxlTest(C,D1
:Ans+(Ans=3 and pxlTest(C1,D→F
:C+(Ans=1)(Ans=3→C
:D+(F=4)(F=2→D
:PxlChange(A,B
:PxlChange(C,D
:End
Incorrect Format
:Full
:FnOff
:AxesOff
:0→Xmin:1→ΔX
:0→Ymin:1→ΔY
:ClrDraw
:Vertical Xmin
:Vertical Xmax
:Horizontal Ymin
:Horizontal Ymax
:60→A:92→B
:2→C:2→D:25→G
:PxlOn(A,B
:PxlOn(C,D
:Text(1,28,31,"READY?
:Pause
:For(E,26,36
:Line(29,E,67,E,0
:End
:Repeat G=45 or not(pxlTest(A,B) and pxlTest(C,D
:getKey
:If Ans
:Ans→G
:A+(G=34)(G=25→A
:B+(G=26)(G=24→B
:1+pxlTest(C+1,D
:Ans+(Ans=2 and pxlTest(C,D1
:Ans+(Ans=3 and pxlTest(C1,D→F
:C+(Ans=1)(Ans=3→C
:D+(F=4)(F=2→D
:PxlChange(A,B
:PxlChange(C,D
:End
Code Block
:Full
:FnOff
:AxesOff
:0→Xmin:1→ΔX
:0→Ymin:1→ΔY
:ClrDraw
:Vertical Xmin
:Vertical Xmax
:Horizontal Ymin
:Horizontal Ymax
:60→A:92→B
:2→C:2→D:25→G
:PxlOn(A,B
:PxlOn(C,D
:Text(1,28,31,"READY?
:Pause
:For(E,26,36
:Line(29,E,67,E,0
:End
:Repeat G=45 or not(pxlTest(A,B) and pxlTest(C,D
:getKey
:If Ans
:Ans→G
:A+(G=34)(G=25→A
:B+(G=26)(G=24→B
:1+pxlTest(C+1,D
:Ans+(Ans=2 and pxlTest(C,D1
:Ans+(Ans=3 and pxlTest(C1,D→F
:C+(Ans=1)(Ans=3→C
:D+(F=4)(F=2→D
:PxlChange(A,B
:PxlChange(C,D
:End
StoreGDB 1
Func
AxesOff
FnOff
PlotsOff
ClrHome
ZStandard
ZSquare
{0,0,0→L₁
Ans→L₂
Circle(0,0,9.9
For(A,0,2π,π/6
Line(9cos(A^^r^^),9sin(A^^r^^),9.9cos(A^^r^^),9.9sin(A^^r^^
End
Repeat getKey
Line(0,0,L₁(3),L₂(3),0
getTime
If not(fPart(Ans(3)/30
Then
Line(0,0,L₁(1),L₂(1),0
Line(0,0,L₁(2),L₂(2),0
End
2π^^r^^(Ans+{Ans(2)/60,.5(Ans(3)≥30),0})/{12,60,60}+90°→L₂
{6,8,8.6}cos(Ans→L₁
{6,8,8.6}sin(L₂→L₂
Line(0,0,L₁(3),Ans(3
Line(0,0,L₁(1),Ans(1
Line(0,0,L₁(2),Ans(2
startTmr
Repeat checkTmr(Ans
End
End
ClrDraw
RecallGDB 1
DelVar GDB1
ClrHome
"
<< Math Review Exercises  Table of Contents  What is Optimization >> 
A thorough understanding of math commands is essential to the mastery of TIBasic. It is strongly recommended that you practice using these commands in different situations so that you will know which ones to apply when necessary.
Commands Introduced
<< Complex Numbers  Table of Contents  Exercises >> 
Mode command that puts the calculator into Classic mode.
MATHPRINT
Press:
 MODE
 DOWN until you reach Mathprint or Classic
 ENTER on Mathprint
Alternatively, use the catalog.
TI84 2.53MP or later
2 bytes
MATHPRINT will put the calculator into Mathprint mode as opposed to Classic mode. In MathPrint mode, enhanced homescreen input formatting is available. The Classic mode will make the calculator display everything as a calculator of lower OS would, including input. For instance, rather than superscripting exponents as Mathprint mode would, Classic mode uses the simple caret syntax (^).
Mathprint mode:
2^{4}
16
Classic mode:
2^4
16
When in Mathprint mode, text and numbers are displayed much slower than classic on the home screen and the function menus load slower. This can be inconvenient in games that use the home screen, but can also make solving equations that involve fractions and exponents easier as the numbers are in their correct positions and are the appropriate size.
Related Commands
This page contains tables detailing which features were added with each operating system release. Taking this information into account can help you maintain a level of backwards compatibility. Commands that are crossed out were removed in that version.
TI83+/SE
OS Version  Notable Changes 

1.03  Initial version 
1.10  
1.12  
1.13  
1.14  
1.15  
1.16  
1.17  
1.18  
1.19 
TI84+/SE
OS Version  Notable Changes 

2.21  setDate(, setTime(, setDtFmt, SetTmFmt(, timeCnv(, dayOfWk(, getDtStr(, getDate, getTime, getDtFmt, getTmFmt, isClockOn, ClockOff, ClockOn, OpenLib(, ExecLib, checkTmr(, startTmr 
2.22  
2.30  ManualFit, χ²GOFTest(, invT(, LinRegTInt, invT( 
2.40  
2.41  
2.43  
2.53MP  MATHPRINT, CLASSIC, DEC Answer, FRAC Answer, randIntNoRep(, ►F◄►D, logBASE(, summation Σ(, Un/d, ZFracX, remainder( 
2.55MP  statwizardoff, statwizardon 
TI84+CSE
OS Version  Notable Changes 

4.0  Added support for the color screen (although it is really just the BW OS with some color commands) 
4.2 
TI84+CE
OS Version  Notable Changes 

5.0  Get(, Send( 
5.0.1  
5.1.0.0110  
5.1.5.0019  Get(, Send(, timed Pause 
Admin
Suspends execution for a specified amount of time
Wait [seconds]
2ND CATALOG to enter the Catalog.
W to go to commands starting with W.
TI84+ CE OS 5.2 or higher
2 bytes
The Wait command was introduced in TIOS 5.2 for the TI84+CE. The Wait command tells the calculator to wait for a specified number of seconds before continuing. The specified amount of seconds can be a decimal, as it is not limited to whole numbers. This command can be useful for displaying information momentarily before proceeding in a program. The Wait command functions similarly to the Pause command, but without the extra arguments.
:Disp "WAIT FOR IT!
:Wait 4
:Disp "Surprise
Advanced Uses
The Wait command is useful for facilitating automatic linking within programs. Since the Get( and GetCalc( commands only work when the sending calculator is in a preemptible state, including a small Wait delay will allow the other calculator to receive data.
Because the Wait command is relatively new, it may be advisable to avoid using it to ensure compatibility with older operating systems. Similar functionality can be achieved with the second optional argument to the Pause command.
Optimization
Traditionally it was recommended to use either a For( loop or the rand( command to create a delay within a program. The For( loop takes more space, and the rand( command uses more memory during execution.
:rand(100
can be
:Wait 1
Error Conditions
 ERROR: INVALID is thrown if the Wait command is executed on the home screen.
Related Commands
Please see the AsmPrgm page. The functionality and use is the same between both commands. However, the Asm84CEPrgm is only available on the TI84+CE calculator. Keep in mind that hexadecimal for the monochrome calculators may not work on color calculators. This token does not work on OS 5.3.1, it has been deprecated by Texas Instruments for no good reason. Even uploading a program with this token in it will not work as it will throw an INVALID error.
author: RebStrike
version: 'Dev. Build 132'
summary: ''
description: "This is an RPGtextadventure game where its April Fools Day and you get a call from your friend who asks, \"Thinking of doing any pranks?\". You can choose to do the airhorn+seat prank, put a thumbtack on the teacher's seat, put a funny picture on the world map, or not do one at all. And when the pressure's on you can choose to blame your friend, take the blame, or keep quiet. This is a game all about choice.\n"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '1'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:prankday1/PrankDay.zip'
image: null
fileSize: '15'
fileSizeUnit: '2'
dateMade: '1455858000'
author: Minxrod
version: '0.9 beta'
summary: 'A program that asks for a DNA or RNA sequence, then gives the complementary sequence and displays it!'
description: "This quick little program can generate a complementary DNA/RNA sequence for DNA/RNA, and then displays the result. In color!\n\nCurrently functional  it works if you 'play by the rules.' Invalid characters will crash the program, and the display looks strange if you have too small of a sequence.\n\nPlanned: \n1.0  Main release, character check, will include key on diagram (what color is what base)\n1.0/1.1  Optimizations and bugfixes, a readme that is 'slightly' helpful (instructions that are mostly self explanator)\n\nTo install, just send the file ACTG.8xp to your TI84+CSE or TI84+CE."
arcade: '0'
graphics: '1'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '1'
compatibility: ff
download: 'archivefile:actg1/ACTG.8xp'
image: 'archiveimage:dnapic31/DNAPIC3.png'
fileSize: '603'
fileSizeUnit: '1'
dateMade: '1455253200'
author: VersePerMile
version: 4.2.5
summary: ''
description: 'This game allows the player to chose what range they would like, and also make a custom one. it even asked (after a couple of tries) if the player wants a hint. please report any bugs to me Thx!!'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:guess435/GUESS435.8xp'
image: null
fileSize: '790'
fileSizeUnit: '1'
dateMade: ''
author: 'earthnite, jonbush'
version: '1.0'
summary: 'TIPlow is a popular singleplayer seasonal puzzle game for mobile devices.'
description: "Help Timmy the plow truck driver plow all the snow in the city. However, due to budget cuts, Timmy will lose his\njob if he drives the plow over areas that don’t have any snow: that would waste fuel, time, and money. Try not to take too long, the city doesn’t pay overtime.\n\nTIPLOW features 100 handmade levels for your enjoyment. Race against the clock to complete each level perfectly. Can you beat them all this season?"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:tiplow84/TIPLOW_84.zip'
image: 'archiveimage:plow/plow.gif'
fileSize: '4828'
fileSizeUnit: '1'
dateMade: '1450857600'
Finds the area of any regular polygon.
N,S
F
{$variable}
TI83/84/+/SE/CSE/CE
[{$download}]
:ClrHome
:Input "NUMBER OF SIDES: ",N
:Input "SIDE LENGTH: ",S
:NS^2/(4tan(180/N→F
:Pause F
:ClrHome
This program uses the tangent ratio to find the area of a regular polygon when giver the number of sides and side length.
This article is under construction and needs to be completed. You can help by expanding it.
Filename
Summary
Authors
Site URL
Ticalc.org URL
Release Date
Compatibility
Language
Product Intro
Product Screenshot
(Screenshot of Product)
Significance of Product
 Why product was important to TI community
 Any controversy or interesting circumstances surrounding product
 Awards won, fond memories that people have
Documentation
 How to use the product
 Can copy the author's readme file (if available)
Development History
 A chronological overview of the product's development
Miscellaneous
Related Products
Sets all lines to be drawn using a series of individual pixels.
This command is executed with no additional arguments
Go to Catalog, press [ALPHA][X^1], and scroll down
TI84+CSE/CE
2 bytes
The DotThin command sets all lines in the current function type to be drawn using a series of individual pixels at each interval of TraceStep. The command can be called on the homescreen or within a program.
:ClrDraw
:AxesOn
:DotThin
Error Conditions
 ERR:SYNTAX is thrown if the command is executed with any additional arguments
Related Commands
Sets all lines to be drawn using a series of thick points
This command is executed with no additional arguments
Go to Catalog, press [ALPHA][X^1], and scroll down
TI84+CSE/CE
2 bytes
The DotThick command sets all lines in the current function type to be drawn using a series of thick points, about the size of a point drawn using PtOn(, at each interval of the TraceStep. This command can be called on the homescreen or within a program.
:AxesOff
:RectGC
:DotThick
Error Conditions
 ERR:SYNTAX is thrown if any additional arguments are used with the command
Related Commands
Sets all graphing lines to be 1 pixel wide.
This command is executed by itself with no additional arguments
Go to Catalog, press [ALPHA][4], and scroll down.
TI84+CSE/CE
2 bytes
The Thin command will set all lines in the current function type to be only 1 pixel wide (hence "Thin"). The command can be run on the homescreen or within a program.
:AxesOff
:GridOff
:Thin
Error Conditions
 ERR:SYNTAX is thrown if additional arguments are put on the command.
Related Commands
Converts all lines to Thick (23 pixel wide) lines
The command is called by itself with no additional arguments
Go to the Catalog, press [ALPHA][4], and scroll down.
TI84+CSE/CE
2 bytes
The Thick command converts all lines in the current function type to be drawn using a 23 pixel wide line (hence "Thick"). This mode is the default line drawing mode. It can be called on the homescreen or in a program.
:AxesOff
:GridOff
:Thick
Error Conditions
 ERR:SYNTAX is thrown if any character is included in the same line as the Thick command.
Related Commands
author: Mewcancraft
version: '1.0'
summary: 'A basic Connect 4 game for local multiplayer. Compatible with MirageOS.'
description: "This program features a very basic Connect 4 game. The idea and interface were taken from a program made by CodeMaster123 that you can check out at http://tibasicdev.wikidot.com/forum/t1441297/connect4. I looked at his program and rewrote it from scratch to improve it whilst keeping his design, so feel free to download his too.\n\nFor those of you who don't know Connect 4, it's very easy. A typical Connect 4 game has two players: one who has a bunch of yellow (light) coins and one who has red (dark) coins. The board, which is an upright standing grid of slots, each slot the size to hold one coin, has walls between each of said grid's columns to seperate them from each other, meaning that when one drops a coin in a column, that coin will go all the way down to the first available slot in the same column. Every slot has a hole smaller than a coin on both sides, meaning that the two players can see what colour the coin inside that slot has. The players take turns on dropping their coins in the grid. The goal of the game is to get 4 coins of your colour in one line without being seperated by one of the other player's coins: this line can be horizontal, vertical or diagonal.\n\nThat said, these are the controls for this digital version of said game: You control the cursor (your \"hand\") with the left and right arrow keys and drop the coin in the designated column using Enter. Every time somebody drops a coin, the program will calculate whether or not 4 coins of the same colour were connected. This calculation takes approximately two seconds. After that, the playernumber in the bottom right will change, signifying that it's the other player's turn. Since this game is local multiplayer, you hand the calculator you're playing on to the opponent, so they can drop their coin. Then they pass it back to you, etc…\n\nPlayer 1's coins are light, player 2's coins are dark. The first to connect 4 of their coins, wins. Have fun!"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '1'
sports: '0'
casino: '0'
board: '1'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:connect4/CONNECT4.8xp'
image: 'archiveimage:screenshot2/screenshot.gif'
fileSize: '851'
fileSizeUnit: '1'
dateMade: '1447369200'
author: Codemaster123
version: '1.1'
summary: 'A 2player connect 4 game.'
description: 'New Update! Not a big one though. All I added was an intro animation.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '1'
sports: '0'
casino: '0'
board: '1'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:connect4v11/Connect4V11.zip'
image: null
fileSize: '7857'
fileSizeUnit: '2'
dateMade: '1447218000'
Welcome to TIBasic Developer (TIBD), the TIBasic information repository! If you are a firsttime visitor, please check out the welcome pack to get you up to speed on using the site. We encourage you to become a member and to get involved in the community, and to come back often to see what changes have occurred. And above all else, enjoy your stay! 
New to Nspire Basic? 
These pages provide an overview of Nspire Basic, and are designed to help you quickly get started learning and using Nspire Basic. 
Did You Know... 
The ListPages module does not work recursively. 
Development 
The ListPages module does not work recursively. 
Recent News  Recent Posts  Recent Edits 
The ListPages module does not work recursively. 
You could run into the problem of parallel lines. Since they have infinite solutions, you could...
(by UBERhelp1 06 Dec 2019 18:38, posts: 8)
The only way I know to do this is with strings, since you can't really store to a list to make it...
(by Trenly 06 Dec 2019 08:33, posts: 2)
I am writing a program that asks the user to input two lists: L1 for Xvalues of Vertical...
(by ProfLisa 06 Dec 2019 04:11, posts: 2) 
The ListPages module does not work recursively. 
Search the Site 
There is a wide range of Nspire Basic content available on this site, so we recommend using the search engine or referring to the sitemap. If you can't find what you're looking for, leave a post in the forums and somebody will assist you. 
Nov  8 —  Due to the release of the TI84+CSE and TI84+CE calculators, new commands have been added to the Command Index. 
This is the page with a list of screenshots displayed on the homepage.
Nov  1 —  The homepage screenshots now link to their respective programs on TIBASIC Developer. 
author: 'earthnite, jonbush'
version: '1.2'
summary: 'TIFLOW is a port of Flow Free for the TI84 Plus monochrome series of calculators. Flow is played by two simple rules: connect each lettered pair of dots (nodes), and fill every space. Flows are also not allowed to cross themselves or flows of a different letter. Can you complete every level perfectly?'
description: "TIFLOW is a port of Flow Free for the TI84 Plus monochrome series of calculators, created by Pablo Yong (earthnite) and Jonathan Bush (jonbush).\n\nFlow is played by two simple rules: connect each lettered pair of dots (nodes), and fill every space. Flows are also not allowed to cross themselves or flows of a different letter.\n\nFeatures:\n A clean and fully functional GUI for selecting and playing TIFLOW levels\n Includes 400 playable levels separated into 4 packs that can be loaded individually.\n The TIFLOW Pack Creator Java program allows users to create their own packs and levels.\n TIFLOW will dynamically save your progress\n\nCan you complete every level perfectly?\n\nSee TIFLOW_README.pdf for more in depth information.\n\nEnjoy!"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:tiflow/TIFLOW.zip'
image: 'archiveimage:tiflow1/tiflow1.gif'
fileSize: '11373'
fileSizeUnit: '1'
dateMade: '1445756400'
Mancala is an ancient game in which player take turns dropping stones (or seeds) into holes (or houses) that form a 6x2 grid with an extra house on either end, which are the players' end houses. Player choose a house on their side of the grid, pick up the stones in that house and distribute them in the consecutive houses going in a counterclockwise manner. There are many rule sets to mancala, just as there were many civilisations that played versions of it. This page gives two versions: The "kahla" rule set widely used in the United States and coded by user kg583, and another rule set coded by TIGBR (rules are explained).
Version 1: Kahla
— Programmed by kg583 and optimised by the TIBasic Developer community (see credits for details)
— Compatible on both grayscale and color calculators
Version 1 rules:
See wikipedia page describing "kahla" rules of play  "KAHLA" mancala
The Code, Version 1, Kahla Mancala
ClrHome
14→F
F→dim(L1
Fill(3,L1
0→Xmin
1→deltaX //The little triangle X
{5,6→L2
If Xmax=94
L2{1,5→L2
L2(1→C
L2(2→D
DelVar J1>P
Lbl M
For(X,1,6
Output(C1,D+2X+(X>3),L1(X
Output(C+2,D+2X+(X>3),L1(FX
End
L1(7→H //Saves a couple of bytes to do this
L1(F→I
Output(C,D+(I>=9),"_ _ _
Output(C+1,D+F,"_ _ _
Output(C,D+(I>=9),I //Greater than or equal to 9
Output(C+1,D+F,H
If J
Then
Pause
ClrHome
If H>I
Disp "Player 1 Wins!
If H<I
Disp "Player 2 Wins!
If H=I
Disp "Draw!
Pause
Goto Q
End
D+2>A
C1+3(P=2>B
Repeat K=21
getKey>K
Output(B,A1,">
Output(B,A+1,"<
If K
Then
Output(B,A1,"_ //One space here and the next line
Output(B,A+1,"_
End
A+(K=26)(A=D+6)+2(K=26)(A≠D+13)(K=24)(A=D+9)2(K=24)(A≠D+2→A
If K=45
Goto Q
End
.5(AD(A>D+6→X
F(P=2)X+2X(P=1→X
L1(X→V
0→L1(X
If not(V
Goto M
While V
X+1→X
If X=15
1→X
1+L1(X→L1(X
V1→V
End
If X/7≠P
Then
If 1=L1(X
Then
1+L1(7P)+L1(FX→L1(7P
0→L1(X
0→L1(FX
End
3P→P
End
If not(sum(L1,1,6 //Tried to a piecewise thing here; had to settle for two If's
Then
L1(F)+sum(L1,8,13>S
L1(7→T
Fill(0,L1
S→L1(F
T→L1(7
1→J
End
If not(sum(L1,8,13
Then
L1(7)+sum(L1,1,6→S
L1(F→T
Fill(0,L1
S→L1(7
T→L1(F
1→J
End
Goto M
Lbl Q
ClrList L1,L2
ZStandard
ClrHome
Version 2:
— Programmed by TIGBR and optimised by the TIBasic Developer community (see credits for details)
Version 2 rules:
board 6 by 2 active houses with 4 stones starting in each, and two wells, one at either end.
Picture at start(Its been stretched a little)
Each player, on their turn, chooses a house on their side of the board. (6 options)
the stones from that house get distributed by picking them up, and placing 1 stone in each house consecutive to the last, going around in a counterclockwise pattern until the stones run out. If the last stone falls in one of the wells, then the player gets another turn. The first player to clear their side of the board of stones wins.
Player 1 goes again.
Now its player 2's turn.
End of game image:
Player 2 has won.
The Code, Version 2
:Clrhome //setup
:14>dim(L1
:Fill(4,L1
:0>L1(7
:0>L1(14 //L1 setup finished here; board ready
:DelVar WDelVar K1>L
:"PLAYER_
:For(P,1,8
:Output(P,1,sub(Ans+"2",P,1
:Output(P,16,sub(Ans+"1",P,1
:End
:Repeat W // Main loop, Keep playing until W is no longer = 0, (equals 1 or 2)
:If L!=7 and L!=14 //Does not switch player if L = 7 or 14, allows for extra turns
:1+(P=1>P //switch player between 1 and 2
:1>L //Initialize L
:For(A,1,6 // Display the board after clearing possible extra numbers. See L1 schematic below.
:Output(A+1,6,"_
:Output(A+1,5,L1(A
:Output(A+1,12,"_
:Output(A+1,11,L1(14A
:End
:Output(8,8,L1(7
:Output(1,8,L1(14
:1>R //initialize R which is the row input number
:Repeat K=105 and L1(R(P=2)+(14R)(P=1))!=0 //repeat input routine until user presses enter and the current house is not empty
:Output(R+1,4(P=2)+13(P=1),sub("<>",P,1 //Display the appropriate cursor at the relative R coordinate and at the x value of 4 if P=2 and at 13 if P=1
:Repeat Ans // getkey
:getkey>K
:End
:Output(R+1,4(P=2)+13(P=1),"_ //Delete the cursor
:min(6,max(1,R+(K=34)(K=25>R //Depending on input, add or subtract 1 from R, within the bounds
:End // End input routine
:R(P=2)+(14R)(P=1)>L //Calculate L Based on R and the player number (right now, L is the list element number that was chosen)
:L1(L>S //Set S to the number of stones in the chosen lest element
:0>L1(L //Remove the stones from the chosen list element
:While S //Distribution loop ends when S = 0
:L+(L<14)13(L=14>L //Select the next list element. If The current List element is 14, the next is 1 (loops around)
:1+L1(L>L1(L //These two commands add one to the list element house (determined by L), and take one away from the supply (S)
:S1>S
:End //End Distribution loop, check S
:seq(L1(M),M,1,6 // take Player 2's Houses list from L1
:If not(max(Ans // If none of player 2's Houses have stones
:2>W //then store 2 to W, Game will end.
:seq(L1(M),M,8,13 //take Player 1's Houses from L1
:If not(max(Ans //If none of player 1's Houses have stones
:1>W //then store 1 to W, Game will end.
:End // End main loop, check W
:Clrhome // clear screen
:SetupEditor
:"CONGRATS_PLAYER"+sub("12",W,1 //display winner
Vars used:
L1  list of number of stones in each house
R  Input row number from which L is derived (can be equal to any #16)
P  Player 1 or 2
L  Chosen List element (house) to empty  equals: R if P+2 and equals: 14R if P=1
W  Win or continue playing and for which player if win. Can equal 0,1, or 2, if 1 or 2, game ends
S  number of stones left to distribute during distribution routine.
A  a counting var used in For( loops.
Credits
The original version 1 was coded by kg583
It was then optimised by the TIBasic community, Including:
 kg583
 earthnite
 TIGBR
 lirtosiast
The original version 2 was coded by TIGBR
It was then optimised by the TIBasic community, Including:
 TIGBR
 earthnite
 kg583
 jonbush
This was a COMMUNITY PROJECT and was developed in the Projects page
THANK YOU to everyone who participated in this community project!
If anyone experiences problems with the code on this page, please post on the "Discuss" page for this page. See the tools below.
It seems that we are ready to make a mancala page. once it is made, feel free to edit it to relative perfection. Both games will be published, And credit given to those who worked on this community project. THANK YOU to all those who participated. we are starting a new ABSTRACT STRATEGY BOARD GAMES project featuring Isola. Please come participate in this continuation of this page, if you want to.
ISOLA
This is a continuation of Abstract strategy board games in which we programmed Mancala.
the same rules apply to this community project
" In publication on the games page, credit will be given to the original contributor(s) of the code, and to those who helped optimise it. If there are many small optimisations, credits for the optimisations will be given to the TiCommunity, with a link to this page for clarification."
This project is dedicated to Isola, since Pedro, a guest, posted his code for Isola on the first Abstract strategy board games.
Here I will put the code that Pedro posted:
Lbl 2
ClrHome
DelVar [A]{10,16→dim([A] // [A] represents the map, 1 is a wall, 0 is a free space
11→X:2→Y:10→I:9→J //X and Y are the coordinates of player 1, I and J for the player 2
For(A,1,10 //i put walls on the sides of the map
1→[A](A,1
1→[A](A,16
End
For(A,2,15
1→[A](1,A
1→[A](10,A
End
For(A,1,6
Output(A,1,sub("Joueur",A,1
End
Output(Y1,X1,"O //i display the position of players O=player 1 and θ=player 2
Output(J1,I1,"θ // the 1 is because there is a space between the screen and the matrix, to hide the sides of the map
1→[A](2,11 //put the positions of players in the matrix
1→[A](9,10
While 1
X→M:Y→L //to test if the player moved
Repeat X≠M or Y≠L
Output(8,1,"1 //for player 1
Repeat Ans=24 or Ans=25 or Ans=26 or Ans=34 //asking for move
getKey→K
End
Output(Y1,X1,"X //X is a wall on the screen
X+(K=26)(0=[A](Y,X+1))(K=24)(0=[A](Y,X1→X //moves of the players
Y(K=25)(0=[A](Y1,X))+(K=34)(0=[A](Y+1,X→Y
Output(Y1,X1,"O
1→[A](Y,X
End
1→C //test if the other player can move
For(A,⁻1,1,2
If not(min(seq([A](J+A,I),A,⁻1,1,2))) or not(min(seq([A](J,I+A),A,⁻1,1,2:DelVar C
End
If C:Goto 1 //memory leaks but it happens only one time at each game
I→M:J→L //same thing for player 2
Repeat I≠M or J≠L
Output(8,1,"2
Repeat Ans=24 or Ans=25 or Ans=26 or Ans=34
getKey→K
End
Output(J1,I1,"X
I+(K=26)(0=[A](J,I+1))(K=24)(0=[A](J,I1→I
J(K=25)(0=[A](J1,I))+(K=34)(0=[A](J+1,I→J
Output(J1,I1,"θ
1→[A](J,I
End
1→C
For(A,⁻1,1,2
If not(min(seq([A](Y+A,X),A,⁻1,1,2))) or not(min(seq([A](Y,X+A),A,⁻1,1,2:DelVar C
End
If C:Goto 1
End
Lbl 1
For(A,1,3
Output(A+3,2,sub("Win",A,1
End
Pause
Goto 2
This is a repost of the code, because it is more organised to have a separate project for Isola.
Here is the page describing Isola: Isola (isolation)
Lets see what we can do to optimise this!
Link to the original Posts: Here
We have optimised the two games to a good point. They both work. the next step is to publish them on a new page titled "Mancala" under the games page.
Symbolic Division is a method of finding the roots and factors of a polynomial given at least one factor.
This is a function, rather than a program, and can be used in graphs, other functions, and programs.
Rather than returning a list of factors as a result, we return an expression.
Code
:synthdiv(colist,ftr)
:Func
:Local count,ansList,xexp,ansExp
:expr("x")→xexp
:0→ansExp
:newList(dim(colist))→ansList
:colist[1]→ansList[1]
:For count,2,dim(ansList)
:colist[count]+ansList[count1]*ftr→ansList[count]
:EndFor
:For count,1,dim(ansList)
:ansExp+ansList[count]*xexp^(dim(ansList)count1)→ansExp
:EndFor
:ansExpansList[dim(ansList)]/xexp+ansList[dim(ansList)]/(xexpftr)→ansExp
:Return ansExp
:EndFunc
What's Going On?
First, this is a function, not a program! To make a function, press F1 in the program editor, choose "3:New", and make sure the "Type:" is "Function"
This takes 2 arguments, a list, and a number. We assume that's what we are given, and don't bother to check the type of the arguments.
The first argument, colist, should be a list of all the coefficients in your expression. The second, ftr, is one single factor or root of your expression.
Variables
We then set up a few variables for our function.
Functions can read global variables, but cannot write or create global variables!
count is used in our For loops.
ansList is a list of all the factors we want to return
xexp is the expression "x". We use it to create the returned expression.
ansExp is the factors in expression form.
To prevent errors when making our expression, we set our answer expression ansExp to zero.
We create the answer list using newList() with the number of elements in our given colist
In symbolic division, you "drop" your first coefficient. We just store the first element of colist as the first element of our answer list ansList
Dividing
Now we start a For loop. We start from 2 since we already found our first answer above.
The next line multiplies the previous answer by the factor, and adds that to the current coefficient, storing it in the next element of our answer list.
Prettifying the Answer
We start another For loop.
Then we add our current expression to the answer list element times "x" to the power of the appropriate power. and store that as our answer expression.
Fixing an Error
After we prettify the answer, we have a mistake. Since the answer is an expression, we can easily subtract the mistake, and add our correction.
Returning the Answer
All Functions must return something using Return
Examples
Here are a few examples of use.
synthdiv({5,.46,84,.50,7},1/5)
5x^{3}45x^{2}+75x35
synthdiv({1,5,6},1)
12
 +x+6
x1
author: Michael2_3B
version: '1.2'
summary: 'Merge tiles together to rack up points! This is like a combination between Tetris and 2048.'
description: 'Shades is a simple, zenlike game for the TI84 Plus CE. It is like a merge between Tetris and 2048. Combine tiles together in order to rack up the most points you possibly can! Just don''t let the tiles stack to the top of screen! This is a port of the original iOS game created by UOVO. See the README for more info.'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: ff
download: 'archivefile:shades84pce/SHADES84PCE.zip'
image: 'archiveimage:shades/SHADES.gif'
fileSize: '2002'
fileSizeUnit: '1'
dateMade: '1445317200'
So, We have decided to work on Mancala first.
Since there are so many rules to this game, we are developing two mancala games. Both need to be optimised for size and speed though! If you are good at optimisation, please come help us. Also, If you are interested in Helping us program a different board game please post about it, and we can move on to that one after mancala is finished. As far as I can tell, we only have a few participants in this project at the moment.
This is your Basic connect 4 game. Drop Checkers down any of the 7 columns, taking turns until either the board is filled of one player gets four in a row. Try to understand the code. It uses Matrix [A] to track the game board, Var P as one or two to track whose turn it is, V as the inputed column, L2 as the height of the columns, And Z as the counter for the possible number of turns.
The Code
DelVar [A]{6,7→dim([A] //sets [A] to 6x7 all 0's
Disp"
Disp"++++++++
For(A,1,5
Disp"]
End
Output(8,1,"]
For(A,3,8
Output(A,15,"[
End
For(A,1,8
Output(A,16,sub("PLAYER_ _",A,1 //"_" is a space
End
DelVar θ2→P
7→dim(L₂
Fill(6,L₂
For(Z,1,42
If θ
Goto 1
(P=1)2+(P=2)→P
Output(8,16,P
2→V
Repeat K=105 and L₂(.5V
Output(1,V,"v
Repeat K
getKey→K
End
Output(1,V,"_
V+2(K=26 and V≤12)2(K=24 and V≥4→V
End
.5V→V
P(P=1)+(P3)(P=2→[A](L₂(V),V)
If P=1
Output(2+L₂(V),2V,"0 //zero
If P=2
Output(2+L₂(V),2V,"O //letter O
0→θ
If L₂(V)≤3
Then
For(A,7,5,1
cumSum(seq([A](AI,V),I,1,4
If Ans(4)=4
1→θ
If Ans(4)=4
1→θ
End
End
For(A,0,3
cumSum(seq([A](L₂(V),A+I),I,1,4
If Ans(4)=4
1→θ
If Ans(4)=4
1→θ
End
V+L₂(V>B
If B≥5 and B≤10
Then
seq([A](1,BI),I,(B≤7)(B1)+6(B≥8),(B≤7)+(B≥8)(B7),1→L₁
For(A,1,dim(L₁)3
cumSum(seq(L₁(M),M,A,A+3
If Ans(4)=4
1→θ
If Ans(4)=4
1→θ
End
End
L2(V)V→B
If B≤2 and B≥3
Then
seq([A](I,IB),I,(B≤1)+(B+1)(B≥0),6(B≥0)+(B+7)(B≤1→L₁
For(A,1,dim(L₁)3
cumSum(seq(L1(M),M,A,A+3
If Ans(4)=4
1→θ
If Ans(4)=4
1→θ
End
End
L₂(V)1→L₂(V
End
Lbl 1
ClrHome
"PLAYER_
If θ=1
Ans+"1
If θ≠1
Ans+"2
Ans+" WINS!
If Z=42
"CAT GOT THE GAME
Ans
Credits
This Game was coded by TIGBR and optimized by jonbush and earthnite.
See development page
Our games page is already quite long, but it could be better. Lets program some board games
For anyone who is interested, there are several games that could be programmed. We would need to do them one at a time, posting code, optimising it, changing it, and then publishing it on the games page. here are some examples
1. peg solitare
2. Go
3. Isola (Isolation)
4. Mancala
… there are many possible others. If you're interested in participating in this community project, please post about your interest and which game you'd like to start on first, so we can get started. In publication on the games page, credit will be given to the original contributor(s) of the code, and to those who helped optimise it. If there are many small optimisations, credits for the optimisations will be given to the TiCommunity, with a link to this page for clarification.
This is useful for factoring large nth degree polynomials (and finding their roots, of course), as well as finding an upper and lower limit for the roots of an nth degree polynomial, as per the remainder and factor theorems and some others.
It uses L₁ for input of the coefficients of the starting polynomial, uses X for r in (xr) (what you're dividing by), so have those variables predefined (or put :Input L₁:Input X at the the beginning of the program), and it outputs L₂ as the answer with the last list entry as the remainder.
L₁  the coefficients of the polynomial you want divide by (xr)
L₂  the coefficients of the answer and the remainder is stored as the last list entry
L₁, L₂, A, R, Ans
TI83/84/+/SE
TIGBR, optimized by earthnite
dim(L₁→dim( L₂
L₁(1→L₂(1
For(A,2,dim(L₁
L₁(A)+R(L₂(A1→L₂(A
End
L₂
Synthetic division works for problems in the following format.
(a_{0}x^{n} + a_{1}x^{n1} + a_{2}x^{n2} + … + a_{n1}x^{1} + a_{n}x^{0}) / (xr)
Where a_{0}≠0
For example,
Problem: find the roots of x^{3}x^{2}2x12=0
First we need to find all possible (r) in (xr)
Factor a_{n}:12 {±1,±2,±3,±4,±6,±12
Factor a_{0}:1 {±1
List of a_{n}/a_{0}:{±1,±2,±3,±4,±6,±12
this last list is the list of all possible r in (xr)
Now for synthetic division.
See the wikihow website
Using the program.
Input L1 with the polynomial's coefficients, {1,1,2,12→L1
Input R for r in (xr), 3→R
We get a L2 as an answer, the last entry in the list is the remainder, if this is 0, we know that (xr) is a factor.The other entries in the list represent the coefficients of the quotient, a polynomial of 1 degree less than the starting polynomial.
so for starting polynomial f(x) divided by (xr) , f(x)= (xr) * q(x) +R, where q(x) is the quotient of 1 degree less than f(x) and R is the remainder. if R is =0 (xr) is a factor of f(x) and f(x) can be broken down into q(x)*(xr)
Now, remember we found all possible r's? Well, do synthetic division for each of those r's until the remainder (R, the last entry on L2) is 0. when you have that, you rewrite your equation, so in our problem 3 for r gives 0 for R so we would rewrite the problem, using the coefficients as:
Input: {1,1,2,12→L1
Input: 3→R
Output {1,2,4,0
This means that (x^{3}x^{2}2x12) / (x3) = x^{2}+2x+4
(x3) is a factor of (x^{3}x^{2}2x12
Then use the quadratic formula with x^{2}+2x+4 to find the other factors.
Author: TI73 File Size: 21b 
To Fake The Home Screen 
author: Mewcancraft
version: '1.0'
summary: 'Based on the ancient reallife puzzle, I bring you a semianimated digital version of the Tower of Hanoi! Features include: a toggleable move counter and timer, customizable difficulty, a builtin instructions booklet, MirageOS compatibility, a special hidden gamemode and more!'
description: "NOTE: IT IS RECOMMENDED TO READ ALL OF THIS INFORMATION THROUGH BEFORE PLAYING THE GAME, AS IT WILL BE EASIER TO UNDERSTAND HOW EVERYTHING WORKS.\n\nHello there! My name is Mew, and may I firstly thank you for visiting my game's page! A lot of hard work has been put into the game, and I'm glad people appreciate that! Now, let me give you some info on it:\n\nTHE CONCEPT:\n\nBased on the ancient reallife puzzle, you start out with 3 pegs, the first one having a chosen amount of layers stacked decreasing in size on it. Your job is to move that stack, in the same order, from the first peg onto the last one, obviously following the rules.\n\n\nTHE RULES:\n\nThese are the rules you have to follow while solving the puzzle. Obviously it isn't possible to not do that anyway, since I programmed them in.\nI also included a shortened version of the rules (along with the controls) in the game itself, so that when somebody needs them but doesn't have access to this page, at least they have that.\n\n1. Thou shalt not move more than 1 layer at a time. This is pretty obvious, because otherwise you would be able to just move the whole stack at once.\n\n2. Thou shalt not move nonatop layers. Together with rule 1 this means that you can only move a layer if it is the upmost layer on its stack.\n\n3. Thou shalt not put big layers on small ones. This rule makes it so that at any given moment in time, there are no layers forming an upside down cone shape in the game.\n\n\nCONTROLS:\n\nWhile in the menus, you navigate using the arrow keys and the Enter key. While in the game itself, you use the left and right arrow keys to move your cursor, the up arrow key to lift a layer and the down arrow key to drop it. At any time in a game, you can restart by pressing 2nd, or Alpha to return to the main menu. \nAlso, so that you don't forget what peg you are taking from/adding to (due to e.g. distraction), there are arrows designating your choice of movement.\n\n\nFAQ\n\nQ: Why is there no leaderboard for highscores?\nA: There are 3 reasons for this: 1. I ran out of space on the menu screens, so I would have to redesign the whole menu system (which I'm not going to do) just to add a single extra option, 2. Because it would mean that for every number of layers I would need to have a leaderboard for time and amount of moves, meaning I would need 8 different leaderboards. I can't imagine how much extra navigatingcode would have to be put into that… Finally reason 3: as I said already, I would need 8 different leaderboards, which obviously need to be stored somewhere outside of the program. I don't want to infest people's calculators with extra memoryconsuming parts, which they may not know are taking memory. I don't want anyone thinking they have just the right amount of memory to use my program, but eventually get an out of memory message. I've had it happen before, it's not cool. So why are there time and move counters then? Well, you could use it just for personal measure, but if you really wanted to compete with friends (assuming you have them) you could always make a leaderboard yourselves.\n\nQ: Why is there a sentence on my homescreen when I quit, what does it mean and how do I get rid of it?\nA: The reason it is there is because it's my signature. Every program I write in TIBasic I give a fitting phrase when it gets stopped. You can delete it like you delete your history, put your cursor on it and press delete. \nAs far as the meaning is concerned, it's a reference to the legend about the temple of Hanoi, where the priests guarding the temple have the same game (but in real life), which uttilises 64 golden rings. When the priests complete that puzzle (following the same rules as you have to in this game), it is said that that will be the end of the universe, or at least of humanity*.\n\nQ: Did you implement easter eggs?\nA: Maybe… It TOTALLY does not involve a secret code starting with K that rhymes with \"thee\" that has to be typed on the main menu using the arrow keys, 2nd, Alpha and Enter…\n\nQ: I can't use any of the options, is that a bug?\nA: Nope. To use an option, you first have to select it by pressing Enter, which will lock the cursor. Then, you can customize your options.\n\nQ: What do I do if I accidentally choose a wrong peg to take from/add to?\nA: Since there isn't an undo button for your last action, I would suggest selecting that same peg in the other direction: this makes the layer stay put, although it does add +1 to your move count.\n\nQ: Why does lifting a layer up and dropping it on the same peg count as a move?\nA: Because if you were to pick up a layer in real life and then put it on the same peg again, it would rather be seen as doing something as opposed to nothing.\n\nQ: I found a bug! What do I do?\nA: Post it below! I'd love it if others would like to help me improve my game by notifying me of bugs! After all, I'm only one person, and there might be flaws I didn't notice that others have.\n\nQ: What do I do if I have a question that's not listed in the FAQ?\nA: Like with the bugs, don't hesitate to post them below! I'll try to reply to everyone as well as I can.\n\n\n*This might not be such a crazy idea if you think about it. The minimum amount of moves required to solve the puzzle is 2^n1, where n is the amount of layers in the puzzle. This means that for the puzzle the legend is talking about, that would be 2^641~1,844674407e19 moves! So, let's say hypothetically that from start to finish there's not a single interruption, every move is the right move to eventually finish with the minimal amount of moves possible, and let's say a move takes at least 2 seconds to complete. That means it would roughly take 1.169.884.835.000 years to complete! Technically, we can't really predict that far into the future, but the chances of that being \"the end\" are definitely not unexisting…"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '1'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: dd
download: 'archivefile:hanoi1/HANOI.8xp'
image: 'archiveimage:hanoigif1/Hanoigif.gif'
fileSize: '4439'
fileSizeUnit: '1'
dateMade: '1439676000'
Changes the color of the graph border.
BorderColor <color#>
Press:
 2ND Zoom to access format menu.
 Scroll down to BorderColor and use arrows.
It can also be found under the catalog.
TI84+ CSE/CE
2 bytes
There are only 4 borders to choose from, so using the default colors will not work. Instead, you may only use a value between 14.
For example, to change the border color to light blue, do:
BorderColor 3
Here are the color values:
Color  Value 

Light Gray  1 
Snowy Mint / Light Madang  2 
Light Blue  3 
White  4 
The colors of borders 2 and 3 are not usable or accessible in any way except as a border color. The use of border colors 1 or 4 along with the appropriate background can create the illusion of a larger graph screen. However, nothing can be draw outside the standard window.
Related Commands
Changes the color of a certain function.
GraphColor(function#,color#)
Press:
 2ND 0 to access catalog.
 TAN to get to the G index
 Scroll down to find GraphColor(, then ENTER to paste.
Graph colors can also be changed under Y=.
TI84+ CSE/CE
2 bytes
This command will change the color of any function from Y_{0} to Y_{9}. So, for example, to change the color of Y_{3} to NAVY, do:
GraphColor(3,NAVY
Notice, you must use the number of the function, rather than the entire function name, which would be Y_{3}.
As you may know, you can also use the value of the color, which can be any integer between 10 and 24. So, our last command could also be:
GraphColor(3,17
Related Commands
Turns asymptote detection on.
DetectAsymOn
Press:
 2nd FORMAT to access the graph format menu
 Use arrows and ENTER to select "On" under "Detect Asymptotes:"
It can also be found under the catalog.
TI84+ CSE/CE
2 bytes
When DetectAsymOn is selected, the calculator will detect asymptotes, adjusting the graph accordingly. This method of graphing is the most accurate but is also much slower than graphing with asymptotes turned off.
An asymptote is, by definition, "a line that continually approaches a given curve but does not meet it at any finite distance." Basically, an asymptote is the line where a function does not have any values on a certain axis.
Related Commands
Turns asymptote detection off.
DetectAsymOff
Press:
 2nd FORMAT to access the graph format menu
 Use arrows and ENTER to select "Off" under "Detect Asymptotes:"
It can also be found in the catalog.
TI84+ CSE/CE
2 bytes
When DetectAsymOff is selected, the calculator will not detect asymptotes, adjusting the graph accordingly. This method of graphing is much faster than with asymptotes turned on. However, the graph can be erroneous when dealing with rational functions, as it will often draw extra lines to connect points near undefined values.
An asymptote is, by definition, "a line that continually approaches a given curve but does not meet it at any finite distance." Basically, an asymptote is the line where a function does not have any values on a certain axis.
Related Commands
I am working on this game I will post the part of the code that I have finished. If anyone can figure out how to add a score please feel free to edit!
Program:SCAVENGER1
:Output(4,4,"LOADING..."
:Fill(0,[A]
:ClrHome
:Disp "DIFFICULTY?"
:Pause
:Menu("CHOOSE","EASY",1,"NORMAL",2,"HARD",3)
:Lbl 1
:ClrHome
:Lbl W
:4>U
:8>V
:Repeat Z=21
:getKey>Z
:If Ans
:Output(U,V," "
:min(8,max(1,U+randInt(5,5)))>U
:min(16,max(1,V+randInt(5,5)))>V
:Output(U,Ans,"X"
:5>A
:9>B
:Repeat K=21
:getKey>K
:If Ans
:Output(A,B," "
:min(8,max(1,A+sum(ΔList(Ans={25,34>A
:min(16,max(1,B+sum(ΔList(K={24,26>B
:Output(A,Ans,"O"
:End
:End
:Goto W
:Lbl 2
:prgmSCAVENGER2
:Lbl 3
:prgmSCAVENGER3
Now we need to program SCAVENGER2
:ClrHome
Now Finally…SCAVENGER3!
insert the code here
I am currently working on this program. Check back in later. I will add in the part of the code that I finished. I'm having trouble making the "X" move while the two random targets move so feel free to edit if you figured out how to get it to work.
:ClrHome
:4>U
:8>V
:Repeat K=21
:getKey>K
:If Ans
:Output(u,V," "
:min(8,max(1,U+sum(List(Ans={25,34>U //Find the "List" with the triangle before it in the catalog. Same thing with the next line.
:min(16,V+sum(List(K={24,26>V
:1>A
:1>B
:8>C
:16>D
:Repeat getKey or (A=C and B=D)
:Output(A,B," "
:Output(C,D," "
:min(8,max(1,A+randInt(1,1)))>A
:min(16,max(1,B+randInt(1,1)))>B
:min(8,max(1,C+randInt(1,1)))>C
:min16,max(1,D+randInt(1,1)))>D
:Output(A,B,"O"
:Output(C,D,"Q"
:End
…that TI 84+CSE and CE calculators have ten highresolution image slots that can be used as backgrounds for graphing?
Instructions
First, write the name and model of your calculator in the table below, then use this code with an empty line in the "test code here" space to measure your loop overhead.
Add the number of iterations you used to the "iterations" column, and [time taken]/[iterations] to the "average" column. Then subtract your loop overhead from the result and list it in the "time" column.
FnOff
PlotsOff
0→Xmin
94→Xmax
62→Ymin
0→Ymax
DispGraph //if it is a graphing command
startTmr→θ
Repeat checkTmr(θ
End
For(𝑛,1,[iterations]) //sequence variable 𝑛; note the closing parenthesis.
//test code here
End
checkTmr(θ+1
Table of Contents

Math Commands
Home Screen Commands
Command  Iterations  Average (ms)  Loop overhead (ms)  Time (ms)  Username 

ClrHome  1000  29  1.2  28  kgmstwo 
Disp "  1000  51  1.2  50  kgmstwo 
Output(1,1,"  10000  3.8  1.2  2.6  kgmstwo 
Output(1,1,"A  10000  4.4  1.2  3.2  kgmstwo 
Output(1,1,"AB  10000  5.0  1.2  3.8  kgmstwo 
Output(1,1,"ABC  10000  5.6  1.2  4.4  kgmstwo 
ClrHome  1000  27  .68  26  kgmstwo 
Graphics Commands
Command  Iterations  Average (ms)  Loop overhead (ms)  Time (ms)  Username 

PxlOn(0,0  10000  2.9  1.2  1.7  kgmstwo 
PxlOff(0,0  10000  2.9  1.2  1.7  kgmstwo 
PxlChange(0,0  10000  2.9  1.2  1.7  kgmstwo 
Horizontal 5  1000  36  1.2  35  kgmstwo 
Horizontal 5  1000  35  .68  34  kgmstwo 
Vertical 5  1000  25  1.2  24  kgmstwo 
ClrDraw  1000  101  1.2  100  kgmstwo 
StoPic Pic1  10000  4.7  1.2  3.5  kgmstwo 
StoPic Pic1  10000  4.2  .68  3.5  kgmstwo 
RclPic Pic1  1000  28  1.2  27  kgmstwo 
PtOn(10,10  10000  4.1  1.2  2.9  kgmstwo 
PtOn(10,10  10000  4.5  1.2  3.3  kgmstwo 
PtOn(10,10  10000  4.0  .68  3.3  kgmstwo 
:ZStandard:84→Xmin:72→Ymax:ZInteger  100  220  .68  220  kgmstwo 
0>Xmin:1>DeltaX:0>Ymin:1>DeltaY  1000  14  .68  13  kgmstwo 
0>Xmin:94>Xmax:63>Ymin:0>Ymax  1000  18  .68  17  kgmstwo 
Line(5,0,5,62  1000  27  .68  26  kgmstwo 
Line(5,0,5,62,0  1000  27  .68  26  kgmstwo 
Line(0,5,94,5  1000  37  .68  36  kgmstwo 
Line(0,5,94,5,0  1000  37  .68  36  kgmstwo 
Line(10,10,10,10  10000  7.2  .68  6.5  kgmstwo 
Line(10,10,10,10,0  10000  7.4  .68  6.7  kgmstwo 
note: multiple commands always on their own line.
Loop Overheads
Command  Average (ms)  Username 

For(n,1,100000)  .83  kgmstwo 
For(n,1,100000  .69  kgmstwo 
Calculators Used
Username  Model  OS version 

kgmstwo  84+SE  2.43 
lirtosiast  84+  2.55MP 
Turns off the graph Background, setting it back to the default white color.
BackgroundOff
[2ND][PRGM][LEFT ARROW][2]
TI84+CE/CSE
2 bytes
The BackgroundOff command has only one purpose: turn the background off. Run the command on its own line in a program with no other characters or arguments.
:BackgroundOn BLUE //Makes background blue
:BackgroundOff //Makes background white again
Optimization
BackgroundOff does essentially the same thing as turning the background on to the color white, as shown below.
:BackgroundOn WHITE
can be
:BackgroundOff
Related Commands
Let's review the commands you have learned concerning mathematical operations. Highlight the area next to the word Answer to reveal the answer. If there are certain topics you don't feel confident in yet, don't worry. Just go back to the appropriate page and review.
1. True or False: Subtraction is the same as adding a negative number.
Answer: True. 5  2 = 5 + 2
2. Which of the following expressions are equivalent?
 abs(5)
 30 / 6
 int(5.5)
 5^{1}
 30 / 5
Answer: Choices 1 and 4, which both equal 5.
3. True or False: The complex number i squared is equal to one.
Answer: False. i^{2} = 1
4. Evaluate the following expression. Remember the Order of Operations.
(1)Answer: The answer is 10. Remember PEMDAS
5. Which of the following commands will calculate the number of possible 3digit number lock codes? The code can use the numbers 0  30 and order does matter.
 3 nPr 30
 30 nCr 3
 3 nCr 31
 31 nPr 3
Answer: Choice 4. Order matters, making the code a permutation. The length of the code, or r, is 3 digits, and the number of possible digits. or n, is 31, because we can use all numbers from 1 to 30 as well as 0.
6. True or False: The default base of log(n) is 10.
Answer: True. To get a different base, use the logBASE function or the formula: log(x)/log(b) = log_{b}(x)
7. Which of the following trigonometric identities is correct?
 cos(x)  sin(x) = tan(x)
 tan(x) + cos(x) = sin(x)
 sin(x) / cos(x) = tan(x)
 sin(x) * tan(x) = cos(x)
Answer: Choice 3.
8. The max() command can be used as a spacesaving substitute for which kind of logical operator?
Answer: The operator OR. The min() command can be used as a substitute for AND statements.
<< Chapter Summary  Table of Contents  Sample Program: Analog Clock >> 
author: Michael2_3B
version: '2.0'
summary: 'Generates a random phrase for you, based off of sentence structures and vocab.'
description: 'You can add vocabulary and different sentence structures, and you can also choose to add a preexisting set of vocab, along with a sentence structure, if you want. You can also reset your vocab list and sentence structure list. Please see the README for more info :)'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:customphrasegen/CustomPhraseGen.zip'
image: 'archiveimage:002436/002436.gif'
fileSize: '2583'
fileSizeUnit: '1'
dateMade: '1436245200'
author: 'Conor O''Brien'
version: v.1.0
summary: 'Guess a number from 1 to 8!'
description: "Guess a number from 1 to 8! This program takes a keyedin input from the user.\n\nINSTRUCTIONS\n===========\nUse the left and right arrow keys to navigate between the numbers; once the asterisk is beneath the user's choice, they may press [ENTER] to select said number. They may choose to select the same number multiple times.\n\nOTHER INFO\n=========\nUses 880 RAM. Uses variables D,A,U,L,R,T,G, and Str5"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:guess1/GUESS.zip'
image: null
fileSize: '942'
fileSizeUnit: '1'
dateMade: ''
author: 12Me21
version: '2.0'
summary: 'It''s snake. In spaaceee!'
description: "Use the up/down arrows to move up and down, and go through the = signs (asteroids) to get points (you get a point when the 2 pixels above and below you are both on)\n\n(sorry about the crappy animation, jsTIfied's animated screenshot tool is glitchy. The real game looks much better (though it's more blurry))\n\nIt is short enough to type into your calculator:\n\n[[code]]\nprgmSPCESNKE\n:0>I%\n:ClrDraw\n:Repeat pxlTest(31,47\n:PxlOn(31,47\n:Text(randInt(0,57),91,\"=\n:I%+pxlTest(30,47)pxlTest(32,47>I%\n:getKey\n:If Ans=25\n:Asm(prgmDOWN\n:If Ans=34\n:Asm(prgmUP\n:Text(0,1,I%\n:Asm(prgmLEFT\n:End\n:Text(0,0,\" (10 spaces)\n:If I%>ZnMax\n:I%>ZnMax\n:For(X,1,9\n:Asm(prgmFLASH\n:End\n:Text(51,0,\" SCORE: \",I%\n:Text(57,0,\" HIGHSCORE: \",ZnMax\n:Pause :ClrHome\n\nprgmUP\n:AsmPrgm214C9311409301F402EDB0EB010C00EF304CEF6A48C9\n\nprgmDOWN\n:AsmPrgm213396113F9601F402EDB823010C00EF304CEF6A48C9\n\nprgmLEFT\n:AsmPrgm213F960E40060CB7CB162B10FB0D20F5EF6A48C9\n\nprgmFLASH\n:AsmPrgm210000115F3FEF5F4DC9\n[[/code]]\n\nAlso, it doesn't use any variables! (except for keeping track of the score)"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:scgm/SCGM.8xg'
image: 'archiveimage:scr/scr.gif'
fileSize: '950'
fileSizeUnit: '1'
dateMade: '1433736000'
:"_OO3_OO_O3_O_2O_2O>Str1
:"_>Str2
:For(F,1,length(Str1
:sub(Str1,F,1>Str3
:If inString("123456789",Str3
:Then
:For(G,1,expr(Str3
:Str2+sub(Str1,F+1,1>Str2
:End
:Else
:Str2+Str3>Str2
:End
:End
You can use a technique known as Runlength encoding (RLE) to compress a string. In the example above, this is done by placing a number in front of the consecutive repeated tokens. Str1 is the compressed string, and Str2 is the decompressed string. In Str2, the "2O" in Str1 becomes "OOO", and "3_" becomes "".
Related Routines
author: 'Steven Luiten'
version: v0.9.8c.076
summary: 'Based on the game Pokemon Red.'
description: "The game is operated with the buttons 2ND, ALPHA, ENTER and the arrow keys. WARNING: Do not press ON.\nIt is recommended to delete the variables List 1~6 and String 1~5 and archive any programs you may have."
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '1'
strategy: '1'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: dd
download: 'archivefile:p53v098c0764/P53v098c076.rar'
image: 'archiveimage:p53preview/P53Preview.gif'
fileSize: '6500'
fileSizeUnit: '1'
dateMade: '1430690400'
author: 12Me21
version: '2'
summary: '2D building/mining game'
description: "This is basically the same as TICRAFT, but I changed the name because there's no crafting involved, and I think someone else is already using the name.\nControls:\nleft and right arrows: move\nup: jump\nDel and Stat: \"climb\" up/down (move 2 pixels, even if there is 1 in the way)\nVars and Clear: move sideways 2 pixels. (Going through a door)\nNumbers: remove/place blocks\n2ND: Menu\n\nMenu:\nLOAD: Recallpic 8\nNEW: Generate new world\nSave: Storepic 8\nExit: Exit\nResume: Resume (can also load worlds from the graph screen I think)\n\nCompatible with Doors CS (it cost me 72 extra bytes for that 16x16 icon!)\n\nShould work with all calculators, tested on TInspire w/ 84+SE keypad.\n\n\n"
arcade: '0'
graphics: '0'
platform: '1'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:mineti21/MINETI2.8xp'
image: 'archiveimage:picz/PICZ.BMP'
fileSize: '531'
fileSizeUnit: '1'
dateMade: '1432094400'
This page is dedicated to showcase small snippets of code that may be useful. These small routines are designed to accomplish tasks involving mathematics. Unless specified, output is in Ans.
Primality of Positive Integer – jonbush; lirtosiast
This routine works for 3≤X<10^{6} and returns 0 if X is composite, and 1 if X is prime.
If used in an If statement or place where the true value does not matter, you can remove the 0≠.
min(remainder(X,seq(A,A,2,1+√(X
min(remainder(X,seq(A,A,3,1+√(X),2
min(X={2,3,5
If X≥7 and fPart(.5X
min(remainder(X,3+2cumSum(not(binompdf(int(.5√(X)),0
Euler's Totient Function Φ(n) – kg583
This routine calculates the value of Euler's Totient Function for any integer X>3.
2+sum(seq(gcd(X,A)=1,A,2,X2
Number of Factors – kg583
This routine calculates the number of factors for any integer X>2. A factor is any integer can divide X with no remainder (including 1 and X).
2+Xmean(seq(not(remainder(X,A),A,2,X2
This page is dedicated to showcase small snippets of code may be useful. These small routines are designed to accomplish tasks involving lists, matrices, and their attributes. Unless specified, output is in Ans.
Index of Maximum List Element – jonbush
This line finds the index of first occurrence of a specific value in a list.
The list to be searched is in Ans at the beginning.
:1+sum(not(cumSum(Ans=max(Ans
This can also be used to find the index of the minimum or of any other value in place of max(Ans
Number of Elements Less than X – kg583
This line counts the number of elements in a list less than some number X.
The list to be searched is in Ans.
:sum(0<AnsX
Replace < with > to return the number of elements greater than X, ≤ for numbers less than or equal to X and ≥ for numbers greater than or equal to X.
Shuffle a list
This routine is the fastest way to shuffle a list. L₁ is the list to be shuffled and L₂ is a temporary list used to do the shuffling. Make sure to clean up L₂ after your program.
:rand(dim(L₁>L₂
:SortA(L₂,L₁
Reverse a list – Xeda Elnara
This routine is the smallest way to reverse a list. L₁ is reversed without affecting Ans.
:dim(L₁
:seq(L₁(AnsK),K,0,Ans1
Remove list element – jonbush
This routine is the smallest way to remove a single element from a list. The position of the element to be removed from L₁ is in Ans, and the result is a list with that element removed.
:seq(L₁(A+(A≥Ans)),A,1,dim(L₁)1
Enter List using Input  Trenly
This routine is a way to allow a list to be entered using the Input command. The values to store in the list should be a comma separated string of numbers e.g "1,2,3"
:Input Str1
:expr("{"+Str1→L₁
Nth Occurrence of Element — kg583
This routine will find the index of the N^{th} occurrence of an element X in a list. If it does not exist, the output will be dim(Ans)+1
:1+Σ(sum(not(cumSum(Ans=X)K)),K,0,N1
Partial Probability  Timothy Foster
This routine takes a single list in Ans, and randomly selects an element according to the bin sizes in the list. As an example, if the input is {4,11,2,3,0} there is a 4/20 chance that Bin 1 is chosen, an 11/20 chance for bin 2, 2/20 for bin 3, a 3/20 chance for bin 4, and a 0/20 chance for bin 5.
1+sum(cumSum(Ans)<randsum(Ans
This page is dedicated to showcasing small snippets of code that may be useful. These small routines are designed to accomplish tasks involving numbers and their attributes. Unless specified, the output is in Ans.
Rounding  lirtosiast, Trenly
The int( command always rounds towards ∞, and iPart( rounds towards 0. Here are the other two directions:
int(X //rounds towards +∞
iPart(X+not(not(fPart(X //rounds away from 0
For natural rounding, where a number rounds up if the decimal part is greater than one half and down otherwise, use this:
iPart(X+(fPart(X)≥.5
To round towards the nearest N or multiple of N, the code would be:
X/N>X
NiPart(X+(fPart(X)≥.5
Number Concatenation – DarkerLine
Returns the number formed by concatenating positive integers M and N.
N+M10^(1+int(log(N
Number of Digits in Nonzero Integer
If X is always positive, remove the "abs(".
1+int(log(abs(X
Number of Digits in Decimal Number – Weregoose, lirtosiast
not(X)+sum(0 or fPart(abs(X10^(cumSum(binomcdf(13,0))2int(log(abs(X+not(X
Sum of Digits of Integer – DarkerLine, lirtosiast
If X is always nonnegative, remove the "abs(".
sum(int(10fPart(abs(X10^(cumSum(binomcdf(13,0
Sum of Digits of Decimal Number – DarkerLine, lirtosiast
If X is always nonnegative, remove both "abs(". If nonzero, remove the "+not(X".
sum(int(10fPart(abs(X10^(cumSum(binomcdf(13,0))2int(log(abs(X+not(X
Fraction Simplifier – Battlesquid
Simplifies fractions where A is the numerator and B is the denominator.
With Disp
"A/B▶Frac"→Str1
Disp expr(Str1
With Output(
"A/B▶Frac"→Str1
Output(1,1,expr(Str1
Alternatively, there is Xeda Elnara's method, but an abs command would have to be used to ensure that there is not a negative input.
gcd(A,B→C
A/C→A
B/C→B
Base_{10} to Base_{2} (Decimal to Binary) – coltonj96
Takes any whole positive number and converts it to binary.
Σ(int(2fPart(2ֿֿ¹Ans/(2^A)))10^A,A,0,iPart(round(log(Ans)/log(2),1
Input must be a whole positive integer and be less than 1024 due to limit of 10 digits
The finance variables (N,I%,PV,PMT,FV,P/Y,C/Y), window variables (ZXscl, ZYscl, Xscl, Yscl, u(nMin), v(nMin), u(n1), v(n1), Zu(nMin), v(nMin), Xmin, Xmax, Ymin, Ymax, Tmin, Tmax, θmin, θmax, ZXmin, ZXmax, ZYmin, ZYmax, Zθmin, Zθmax, ZTmin, ZTmax, TblStart, PlotStart, ZPlotStart, nMax, ZnMax, nMin, ZnMin, ΔTbl, Tstep, θstep, ZTstep, Zθstep, ΔX, ΔY, XFact, YFact, TblInput, w(nMin), Zw(nMin), PlotStep, ZPlotStep, Xres, ZXres), and the sequence variable n are much faster than real variables and Ans (but slower than immediate constants) to access, but take up more space, being two byte tokens instead of one byte real variables. They are harder to type and can make code look confusing, so it is better to write your program using normal variables, and then switch to the faster ones when you're done. Do NOT use C/Y if you are using P/Y, because if you set the value of P/Y, the calculator changes C/Y to the same number. Also do not use any of the X or Y window variables, because that will alter the graph screen.
Use n, window variables, or finance variables when speed is important, because they take about 8000 fewer CPU cycles to access or store to, or about 0.5 ms on a TI84 series calculator and 1.3 ms on a TI83 or 83+. After thousands of times accessing the variable, the time can add up.
Code used in testing:
[number]→[var]
For(X,1,ᴇ4
[var]
End
Results (seconds):
Code  83+  84+  84+ CSE 

0→A  67  25  ** 
0→N  55  20  ** 
1→A  67  30  ** 
1→N  55  25  ** 
Results of other test (seconds)
Code  TI84+ SE 
1→X  0.0049 
N→X  0.005 
n→X  0.005 
Xmin→X  0.0051 
Ans→X  0.0054 
N→X  0.0055 
[A](1,1→X  0.0083 
L₁(1→X  0.0142 
Converts a string to lower/upper case.
Str1  The string to convert
A  The case to convert to: 0 for lower, 1 for upper
Ans or Str1 The converted string
Str1, Str2, A, B, N
TI83/84/+/SE/CSE/CE
Electromagnet8
URL: Cemetech
" "+Str1+" →Str1
length(Ans→B
"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz→Str2
For(N,2,B
inString(sub(Str2,1+A26,26),sub(Str1,N,1
If Ans
sub(Str1,1,N1)+sub(Str2,Ans+not(A)26,1)+sub(Str1,N+1,BN→Str1
End
sub(Str1,2,B2→Str1
We pad the string with spaces to prevent a domain error.
With our string stored in Str1, we loop through each character in order.
To convert to lowercase, we search for the uppercase characters in Str2.
To convert to uppercase, we search for the lowercase characters in Str2.
If it finds the other case character, we replace that character with the other case character. Otherwise, we skip the code to replace.
Example use:
"helLO wOrld"
converted to lowercase is
"hello world"
"H^:'[]{}/ello* world"
converted to uppercase is
"H^:'[]{}/ELLO* WORLD"
…There is no dyk 28
..oh wait now there is…
…There is no dyk 28
..oh wait now there is…
Converts a decimal into a fraction
Ans  Decimal input
Ans  Numerator (1), Denominator (2)
A, B, Ans
TI83/84/+/SE
12Me21
:Ans→A:1→B
:While fPart(A
:10A→A:10B→B
:End
:{A,B}/gcd(abs(A),B
It starts by setting up a fraction with the input as the numerator and 1 as the denominator. After that, it multiplies both by 10 until the numerator is an integer, and then simplifies the fraction.
Error Conditions
 ERR:DATA TYPE is thrown if Ans is an imaginary or complex number
 ERR:DOMAIN is thrown if Ans has more than 11 digits after the decimal.
Related Routines
Returns the index number of an element searched for within a list
X  Element that it's finding
L₁  List that's being searched
Ans  Index number of element searched.
{$variable}
TI83/84/+/SE/CSE
RogueBantha
//Finds first occurence of X in L1
1+sum(not(cumSum(L1=X)))
//Finds last occurence of X in L1
max((L1=X)cumSum(1 or L1))
Given a value in X, this code will search L1 and return the index number of the first (or last) occurrence of X.
For example, in a list L1={1,2,5,4}, the index value of the element 5 is 3. Storing 5 to X and running this code will return 3.
Error Conditions
The first routine returns 1+dim(L₁) if L1 does not contain X, so if L1={1,2,5,4} and one searches for 9, the code will return 5.
The second routine returns 0 if L1 does not contain X, so L1={1,2,5,4} and one searches for 9, the code will return 0.
Used to display a background image on the graphscreen
BackgroundOn Image#
Background color
Background # (024)
Press
 2ND DRAW to access the draw menu
 Navigate to BACKGROUND submenu
 Enter or 1 to select BackgroundOn
TI84+CSE and TI84+CE
2 bytes
With the introduction of color and a higher resolution screen than the monochrome calculators, the TI84+CSE and TI84+CE included the ability to display a background image on the graphscreen. The images variables are similar to the picture variables in that there 10 slots. In addition, functions can be drawn on top of images.
BackgroundOn recalls an image variable or color and displays it on the graphscreen.
:BackgroundOn Image1
is the same as
:BackgroundOn 1
Intrestingly, the following is a valid syntax, which fills the graphscreen with a light blue (18).
:15→B
:BackgroundOn B+3
In addition, BackgroundOn can be used to fill the graphscreen with a solid color. The color variables range from 10 to 24, blue to dark gray, as documented here. For example, BackgroundOn 12 will fill the graphscreen with black.
:BackgroundOn 12
Error Conditions
 ERR:DOMAIN is thrown if the number is not an integer between 0 and 24.
Related Commands
Please see the AsmPrgm page. The functionality and use is the same between both commands. However, the Asm84CPrgm is only available on the TI84+CSE calculator. Keep in mind that hexadecimal for the monochrome calculators may not work on color calculators.
Defines the color of the text
TextColor(color
TextColor(number
Press:
 2ND PRGM to enter the DRAW menu
 A to select TextColor(, or use arrows
TI84+CSE and TI84+CE
2 bytes
The TextColor( token is used to set the color for Text(. Although the default color is Blue, the calculator saves the color until it is changed again using TextColor( or when a memory reset occurs. When a memory reset occurs, the text color is reset back to blue.
:TextColor(BLUE
:Text(0,0,"THIS TEXT IS BLUE
:TextColor(GRAY
:Text(12,0,"THIS TEXT IS GRAY
:Text(24,0,"THIS IS GRAY AS WELL
:TextColor(12
:Text(36,0,"THIS TEXT IS BLACK
The following table are the colors associated with their numeric values.
Color Token  Numeric Value 

BLUE  10 
RED  11 
BLACK  12 
MAGENTA  13 
GREEN  14 
ORANGE  15 
BROWN  16 
NAVY  17 
LTBLUE  18 
YELLOW  19 
WHITE  20 
LTGRAY  21 
MEDGRAY  22 
GRAY  23 
DARKGRAY  24 
Each color token is 2 bytes.
The color tokens can be used in calculations. For example, LTBLUE/3 will equal 6.
Background Colors
When the calculator displays text on the graphscreen, it displays it on top of a predetermined background color. This background color is white for all colors of text, except for yellow, white, and light gray (LTGRAY), which have a background color of medium gray (MEDGRAY). If you want to display text in your game without the annoying textbackground, you need to have the graphscreen background be white or medium gray so the textbackground doesn't show. The only known alternative is to use PxlOn to draw the text manually, so how you work around this issue depends almost entirely on how lazy you are. You can see how this works by looking at the image in the Command Summary sidebar.
Error Conditions
 ERR:DOMAIN is thrown if the argument specified is not an integer within the 1024 range.
Related Commands
…that the color tokens on a TI84+CSE/CE can be used as number equivalents for math? For example, BLUE*5 equals 50 while DARKGRAY4 equals 20?
author: Trenly
version: 3.0!
summary: 'A multifunction chemistry and physics program. Perfect for an IB or college student.'
description: "A multifunction chemistry and physics program. Perfect for an IB or college student.\n\nVersion Info:\n\nChemistry Updates:\nMenus: The menus have been combined and rearranged a little bit to work with other areas of update\nConversions: Combined all menus since conversions are now intuitive. Select which two you want to convert between and it will work either way! Simply put in a 0 [Zero] for the unit you want to find! It will also take you back to the input screen in the case of an invalid input!\nAll other formulas in the chemistry section are error checking and some are intuitive also.\n\nPhysics Updates:\nMenus: Menus have been combined\nConversions are now intuitive\n\nGeneral Updates:\nMassive Size Redution! Removed over 3k bytes of code, and added speed but yet keeping function.\nNo more dependencies! Did away with those programs it had been dependant upon since 2.0. This means an increase of speed!\nFaster! Updated formulas and used new techniques for display to make it faster overall.\n\nThere may be new bugs, but if you find any, please let me know at moc.liamgcmylnert#moc.liamgcmylnert\n\nNext update: Optics and Waves, Angular Motion (Possibly), Nuclear Physics, and some things you suggest!\n"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '1'
compatibility: bb
download: 'archivefile:sciences1/SCIENCES.8xp'
image: null
fileSize: '4746'
fileSizeUnit: '1'
dateMade: '1363244400'
author: 'kaleb5005131 with help from members of tibd,cemetech,and other sites'
version: ''
summary: 'A program with many geometry functions.'
description: 'A must have for a geometry student!'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: bb
download: 'archivefile:geometry/GEOMETRY.8xp'
image: null
fileSize: '4934'
fileSizeUnit: '1'
dateMade: '1428390000'
author: Michael2_3B
version: '1.0'
summary: 'An Avalanche spinoff.'
description: "This is one of my most basic games, however it is still kind of addicting :P You must collect the falling \"+\" signs and avoid the falling \"\" signs. Failure to do so will result in Game Over. Highscore included.\n\nCONTROLS: Left and Right Arrow keys to move, CLEAR to quit at any time."
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:baplus1/BAPLUS.8xp'
image: 'archiveimage:14262712131/1426271213.gif'
fileSize: '447'
fileSizeUnit: '1'
dateMade: '1426222800'
author: IndigoWare
version: '1.0'
summary: 'Recite the digits of pi (π). How far can you go?'
description: "Pi (π) is well known for its utility in all things circles (C=2πr, A=πr²). Pi is also known for being an irrational number, a number that goes on forever. This program won't help you memorize this number in its entirety, but it will help you remember the first 126!\n\n= OBJECTIVE\nFill the screen with the first 126 digits of pi, one digit at a time! Mistakes will set you back a little, but you'll also learn the next few digits. Don't give up!\n\n= CONTROLS\nNumber Keys 09: Type a number\nEnter: Continue after getting a digit wrong; proceed once you've completed all 126 digits\nClear: Exit the game. Progress is never saved.\n\n= TROUBLESHOOTING / RESTRICTIONS\nThis program currently uses the remainder() command, which is available on only operating systems past 2.53 MP. I'll remove this restriction in a future update.\nIf the program still doesn't work, try unarchiving any real variables or clearing a little space on your calculator.\n\n= MISCELLANEOUS\nThanks for checking out this program and reading this through! As a small thankyou gift, store pi to the variable X (π→X) before running CrisPI. You'll get a handy reference for the first 126 digits of pi.\n\n= LAST WORDS\nThis is my first program, so please feel free to comment on the program itself or on this page about anything I might have missed, programming tips, etc. Thank you!\n — IndigoWare"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: ee
download: 'archivefile:crispi1/CRISPI.8xp'
image: 'archiveimage:bmpcrispi1/bmpCRISPI.BMP'
fileSize: '828'
fileSizeUnit: '1'
dateMade: '1425960000'
Jan  27 —  TI Education officially announced the new TI84 Plus CE graphing calculator, a slimmer, faster successor of the TI84 Plus CSE. It is planned to be available in Spring 2015. 
Feb  25 —  This spring, the new slim Ti 84 + CE is released. 
author: 'Josiah W.'
version: '1.0'
summary: 'The insanely addicting Cookie Clicker game that took the internet by storm has now made its way to the calculator in this musthave port! Complete with a mouse cursor, grayscale graphics, a news ticker, and much more, Cookie Clicker Axe is one of the best Cookie Clicker clones you''ll see on your calculator! Made using Axe Parser 1.2.2.'
description: 'The insanely addicting Cookie Clicker game that took the internet by storm has now made its way to the calculator in this musthave port! Complete with a mouse cursor, grayscale graphics, a news ticker, and much more, Cookie Clicker Axe is one of the best Cookie Clicker clones you''ll see on your calculator! Made using Axe Parser 1.2.2.'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:cookieclickeraxe/CookieClickerAxe.zip'
image: 'archiveimage:cookieclickerscreenie/CookieClickerScreenie.png'
fileSize: '16'
fileSizeUnit: '2'
dateMade: '1423288800'
author: 'Josiah W.'
description: 'The insanely addicting Cookie Clicker game that took the internet by storm has now made its way to the calculator in this musthave port! Complete with a mouse cursor, grayscale graphics, a news ticker, and much more, Cookie Clicker Axe is one of the best Cookie Clicker clones you''ll see on your calculator! Made using Axe Parser 1.2.2.'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
image: '/archives:cookieclickeraxe/CookieClickerScreenie.png'
download: CookieClickerAxe.zip
size: '16'
unit: '2'
author: 'Robert Black'
version: '0.9'
summary: 'Five Nights at Freddy''s clone!'
description: "Moderators, please delete this page. It was a beautiful piece of coding, but it was deleted by a friend who got into the nasty habit of clearing the memory whenever he wanted to clear the screen.\n\nIt pretty depressing."
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:readme12/README.txt'
image: null
fileSize: '5680'
fileSizeUnit: '1'
dateMade: '1420700400'
author: Roug3
version: '1.0'
summary: 'Simple game using variables galore.'
description: "My first real game. Featuring a hit detection bug and occasional domain error. Any help with fixing those is greatly appreciated. Change system (CH) being implemented but not currently working. Any constructive criticism is welcome.\nThanks,\nRoug3"
arcade: '1'
graphics: '1'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: dd
download: 'archivefile:mov/MOV.8xp'
image: null
fileSize: '619'
fileSizeUnit: '1'
dateMade: '1418716800'
author: 12Me21
version: '1'
summary: 'Randomly changes the results of calculations'
description: "Put this on someone else's calculator\nWhen they try to do a math problem, if the answer would be an integer, it randomly changes it to another integer, and if the answer wouldn't be an integer, it changes it to a random number.\nI would also suggest editing their other programs and changing \"Stop\" to whatever you named this program (if you want to be extra evil)\nI actually did this to someone… I'm so mean.\n\nCode: (download is useless because they might get suspicious if their calc. stopped working after you plugged it into your computer.)\n\nWhile 1\nInput \"\",θ\nIf θ=Int(θ\nThen\nDisp θ+RandInt(θ,θ\nElse\nDisp θ+Rand(θ,θ\nEnd\nEnd\n\n"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '1'
compatibility: bb
download: 'archivefile:me221/me22.png'
image: null
fileSize: '64'
fileSizeUnit: '1'
dateMade: '1417669200'
author: 'Matthias Vandersanden'
version: '1.0'
summary: 'Horner''s method is a algorithm to divide a polynom by (xa) ( From wikipedia:[In mathematics, Horner''s method is either of two things: (i) an algorithm for calculating polynomials, which consists of transforming the monomial form into a computationally efficient form;[2] or (ii) a method for approximating the roots of a polynomial. The latter is also known as Ruffini–Horner''s method.])'
description: 'A simple graphical program to use Horner''s method. There may be some bugs. Coefficients and a''s are inputted in this form => a,b,c,d,e…. max 7 coefficients.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: bb
download: 'archivefile:horner1/HORNER.8xg'
image: 'archiveimage:screen021/SCREEN02.BMP'
fileSize: '933'
fileSizeUnit: '1'
dateMade: '1417388400'
author: 12Me21
version: '8.1'
summary: 'Fast 2D Minecraftish game.'
description: "I wanted to make a game that would be fast enough to be fun to play, and I mostly succeeded.\n\nFeatures:\nSaving/Loading levels \nGravity\nMovement\nPlacing/Removing Blocks\nPlayer Location Saves\nRandomly Generated Terrain\nSeed Input\nNEW:\nTerrain Generator Customization\nHelp Menu\n\n\nControls:\nArrow keys: Move left/right and jump\nDEL: Climb up (move 2 pixels up)\nSTAT: Climb down (move 2 pixels down)\n1,2,3,4,6,7,8,9: Place/Remove \"Blocks\" (ex: 8 places/removes the block directly above the player.)\nSTO>: Pause Menu\nON: Quit without saving\n\nNotes:\nPlayer coordinates are saved in List \"TC\"\nIf you fall off the screen, the game will crash.\nYou can fly by holding the up button or by tapping the up and DEL buttons.\nTrying to load files that don't exist will cause the game to crash (Duh)\n\n\n"
arcade: '0'
graphics: '0'
platform: '1'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:ticraft/TICRAFT.8xp'
image: null
fileSize: '1191'
fileSizeUnit: '1'
dateMade: '1417150800'
heading level 1
Heading1
cpp code block
author: 'Denis M'
version: '2.0'
summary: 'This program converts between the base 2, base 10 and base 16 numeral systems. [UPDATE: REDUCED IN SIZE (A LOT)]'
description: 'This program converts between the base 2, base 10 and base 16 numeral systems, A.K.A. binary, decimal and hexadecimal. Written in pure TIBasic. That''s all it does. Have fun with it!'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: bb
download: 'archivefile:bdhcnvrtv2/BDHCNVRTV2.zip'
image: 'archiveimage:bdhcnvrt2/BDHCNVRT.gif'
fileSize: '1286'
fileSizeUnit: '1'
dateMade: '1414796400'
Oct  10 —  Silver Phantom was made a site moderator due to his commitment and dedication to the forum. 
Oct  10 —  Toothless the Dragon was made a site moderator due to his commitment and dedication to the forum. 
Converts a String into a List
Str1
L₁
A,B, Str0, Str1, L₁
TI83/84/+/SE
Toothless the Dragon
" ABCDEFGHIJKLMNOPQRSTUVWXYZ>Str0
DelVar L1
int(length(Str1)/7>dim(L1
For(A,0,dim(L1
0
For(B,1,min(7,length(Str1)7A
Ans+.1^(2B)inString(Str0,sub(Str1,B+7A,1
End
Ans>L1(A+1
End
"
This code was made as an alternative to the stringtolist code. it works in conjunction with the list to string alternative.
Related Routines
Converts a List into a String
L₁
Str1
A, B, C, Str0, Str1, L1
TI83/84/+/SE
Toothless the Dragon
" ABCDEFGHIJKLMNOPQRSTUVWXYZ>Str0
" >Str1
For(A,1,dim(L₁
L₁(A>B
For(C,1,7
Str3+sub(Str0,int(100B),1>Str1
fPart(100B>B
If not(int(100Ans
8>C
End
End
sub(Str1,2,length(Str1)1>Str1
"
This code was made as an alternative to the previously existing listtostring code.
Related Routines
author: N/A
version: N/A
summary: 'Chemistry and Physics Program'
description: 'THIS PROGRAM HAS MOVED! It may now be found Here'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '1'
compatibility: bb
download: 'archivefile:chem/Chem.txt'
image: null
fileSize: '2318'
fileSizeUnit: '1'
dateMade: ''
author: 'Robert Black'
version: '0.1'
summary: '2dimensional Minecraft!'
description: "I've finished!\n2dimensional Minecraft on a calculator!\nPress arrow keys to move, press 4,2,6, and 8 to move your selector thing around (the thing you use to place and destroy blocks), Mode to switch between place and destroy modes.\nThere is gravity, but you have infinite blocks. This program is not slow like most of my other ones.\nThis program doesn't include blocks that have any function, but I will add it as soon as I remove the letter graphics.\nCan someone show me how to convert this program from the Home Screen to the graph? I know a way, but it takes over 5 minutes for the program to redraw the screen.\nIf you have played this, please comment, I want to see how many people have used this.\n\n[[code]]\n:[[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0][0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0][0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0][0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0][0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0][0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0][0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0][1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1]]→[A]\n:5→X\n:1→Y\n:5→L\n:1→M\n:5→A\n:5→B\n:5→N\n:5→O\n:1→P\n:1→H\n:1→R\n:While 1\n:getKey→K\n:X(K=24 and [A](Y,X1)=0)+(K=26 and [A](Y,X+1)=0)→X\n:If K=25 and not([A](Y+1,X) = 0)\n:Then\n:For(W,1,3\n:If Y>1\n:Then\n:If [A](Y,X)=0\n:Y1→Y\n:End\n:End\n:End\n:If Y<8 and [A](Y+1,X)=0\n:Y+1→Y\n:If K=22\n:Then\n:If P=1\n:Then\n:0→P\n:Else\n:1→P\n:End\n:End\n:If K=83\n:Then\n:If P=0\n:Then\n:0→[A](B,A\n:Output(B,A,\" \"\n:End\n:If P=1\n:Then\n:H→[A](B,A //Sorry for the earlier mistake, fixed now\n:Output(B,A,H\n:End\n:End\n:If R=1\n:Then\n:0→R\n:ClrHome\n:For(V,1,16\n:For(W,1,8\n:If not([A](W,V)=0)\n:Output(W,V,[A](W,V\n:End\n:End\n:End\n:If [A](M,L)=0\n:Then\n:Output(M,L,\" \"\n:Else\n:Output(M,L,[A](M,L\n:End\n:X→L\n:Y→M\n:If [A](O,N)=0\n:Then\n:Output(O,N,\" \"\n:Else\n:Output(O,N,[A](M,L\n:End\n:X→N\n:Y→O\n:If (K=82 and A>1) or (K=84 and A<16) or (K=73 and B>1) or (K=93 and B<8)\n:Then\n:If [A](B,A)=0\n:Then\n:Output(B,A,\" \"\n:Else\n:Output(B,A,[A](B,A\n:End\n:If K=82\n:A1→A\n:If K=84\n:A+1→A\n:If K=73\n:B1→B\n:If K=93\n:B+1→B\n:Output(B,A,\"O\n:End\n:Output(Y,X,\"*\n:End\n[[/code]]"
arcade: '1'
graphics: '0'
platform: '1'
puzzle: '0'
rpg: '1'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:readme11/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1412136000'
author: 'Robert Black'
version: '1.0'
summary: 'Classic Minesweeper game'
description: "Hello, I'm back.\nThis is a game exactly like Minesweeper.\nPress the arrow keys to move your selector thingy.\nPress Clear when you think you have won.\nPress Enter to chose a space.\n[[code]]\n:{16,16→dim([A] //sorry for the long matrix :) Fixed\n:For(W,1,20\n:1→[A](randInt(1,8),randInt(1,16\n:End\n:ClrHome\n:8→X\n:4→Y\n:While 1\n:getKey→K\n:If not([A](Y,X)=2)\n:Output(Y,X,\" \"\n:X(K=24 and X>1)+(K=26 and X<16)→X\n:Y(K=25 and Y>1)+(K=34 and Y<8)→Y\n:Output(Y,X,\"O\n:If K=105 or [A](Y,X)=2\n:Then\n:0→G\n:If X>1\n:Then\n:If [A](Y,X1)=1\n:G+1→G\n:End\n:If X<16\n:Then\n:If [A](Y,X+1)=1\n:G+1→G\n:End\n:If Y>1\n:Then\n:If [A](Y1,X1)=1 //You might have to change Y1 to Y+1, I can't remember\n:G+1→G\n:End\n:If Y<8\n:Then\n:If [A](Y+1,X1)=1 //You might have to change Y+1 to Y1, I can't remember\n:G+1→G\n:End\n:If [A](Y,X)=1\n:Then\n:Pause \"YOU LOSE\n:Output(8,1,9\n:End\n:Output(Y,X,G\n:2→[A](Y,X\n:1→X\n:1→Y\n:0→G\n:End\n:If K=45\n:Then\n0→G\n:For(H,1,16\n:For(I,1,8\n:If [A](I,H)=0\n:1→G\n:End\n:End\n:If G=0\n:Pause \"YOU WIN!\n:Output(8,1,9\n:End\n:End\n:End\n[[/code]]"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:readme10/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1412136000'
A program that factors a quadratic using the inspection method.
A,B,C
L_{1}
A,B,C,P,F,L,N,M,J,O,I,L_{1}
TI83/84/+/SE
b2jammer
:Prompt A,B,C
:AC→P:A→F:C→L
:1→N:1→M
:If (P<0) or (B<0):Then
:1→N
:1→M
:End
:For(J,M,N*abs(P),N)
:J+(J=0)→J
:If fPart(P/J)=0 and (P/J)+J=B:Then
:J→I
:(P/J)→O
:N*abs(P)→J
:End
:End
:{0,0,0,0→L1
:12(F<0)
:Ansgcd(abs(F),abs(O→L1(1
:12(I<0)
:Ansgcd(abs(I),abs(L→L1(2
:12(F<0 xor A<0)
:Ansgcd(abs(F),abs(I→L1(3
:12(O<0 xor B<0)
:Ansgcd(abs(O),abs(L→L1(4
:Disp "(AX+B)(CX+D)
:Disp "{A,B,C,D}
:(L1(1)L1(3)=A)
:Ans(L1(1)L1(4)+L1(2)L1(3)=B)
:Ans(L1(2)L1(4)=C)
:AnsL1
A program that takes the coefficients of a quadratic function and factors it using the Factoring by Inspection method, storing the new coefficients to L_{1}.
author: 'Robert Black'
version: '1.0'
summary: 'There are two bridges, you are trying to shoot the other person, you can damage their bridge by shooting it, you can repair it by trying to walk off.'
description: "There are two bridges, you are trying to shoot the other person, you can damage their bridge by shooting it, you can repair it by trying to walk off.\nThe enemy has an insanely smart AI, and this program is so insanely fast you'll never recover, and, for once, I don't need help making it faster!\nIt's faster because the screen doesn't redraw itself.\nI finally created a game more frustrating than flappy bird! >:)\nI WILL FINISH THIS PAGE SOON\n(sorry it is taking so long to finish this, but my friend has the calculator with the coding on it, and he keeps forgetting to bring it to school)\n\n\n:ClrHome\n:Disp \"\"\n:For(A,1,16\n:Output(8,A,\"\n:End\n:{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}→⌊1\n:{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}→⌊2\n:3→W\n:0→E\n:13→X\n:16→A\n:8→B\n:16→C\n:1→D\n:While 1\n:getKey→K\n:If X>1\n:Then\n:If K=24\n:Then\n:If ⌊1(X1)=1\n:Then\n:Output(8,X,\"\n:X1→X\n:Else\n:If randInt(1,5) = 5\n:Then\n:Output(8,X,\"\n:1→⌊1(X1\n:X1→X\n:End\n:End\n:End\n:End\n:If X<16\n:Then\n:If ⌊1(X+1)=1\n:Then\n:Output(8,X,\"\n:X+1→X"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:readme8/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1411358400'
author: ThinkManify
version: v1.0
summary: 'Shows a model of a prism in 3D.'
description: "This program is able to rotate and resize a model, and also change its vertex count.\nIt isn't the fastest  neither is it smooth, but that's kind of a restriction on the calculator's hardware.\nOnly assembly would make ik quicker, although I'm not experienced in that language.\n\nA port can be made to TI84+ calculators  the only reason it isn't for the noncolor calculators is the drawing coordinates;\nTI84+C calculators have a resolution almost 3 times bigger than the regular TI84's.\nWith enough notice I'll create such a version.\n\n====CONTROLS====\n[ENTER]: Quit program\n[(] or [)]: Change vertexcount. This is for the top and bottom face only.\n[Arrow keys]: Rotate model.\n[] or [+]: Change model size."
arcade: '0'
graphics: '1'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: ff
download: 'archivefile:rot3d/Rot3D.zip'
image: 'archiveimage:rot3d/Rot3D.gif'
fileSize: '1202'
fileSizeUnit: '1'
dateMade: '1410904800'
author: 'Robert Black'
version: '1.0'
summary: 'Calculator etchasketch'
description: "Hello, back from my garden.\nI made a simple etchasketch program.\nPress the arrows to move.\nPress Delete to clear screen.\n\n\n:8→X\n:4→Y\n:While 1\n:getKey→K\n:If K=24\n:Then\n:Output(Y,X,\"O\n:X1→X\n:Output(Y,X,\"*\n:End\n:If K=25\n:Then\n:Output(Y,X,\"O\n:Y1→Y\n:Output(Y,X,\"*\n:End\n:If K=26\n:Then\n:Output(Y,X,\"O\n:X+1→X\n:Output(Y,X,\"*\n:End\n:If K=34\n:Then\n:Output(Y,X,\"O\n:Y+1→Y\n:Output(Y,X,\"*\n:End\n:End"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:readme7/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1409724000'
author: 'Robert Black'
version: '1.0'
summary: 'Shoot asteroids'
description: "Hi.\nI'm back.\nThis is a really fun but slow game, I would appreciate it if anyone could tell me how to make it faster.\nThe download doesn't work.\nI created this program before I knew how to use For loops, sorry.\nYou are the letter H at the bottom, you press the left and right arrows to move, and the up arrow to shoot.\nYou can only have one bullet on the screen at one time.\nI am working on making it faster.\nThank you.\n\n\n:1→L\n:0→Z\n:8→X\n:0→P\n:{15,2,7,13,5,6,9,11,3,8}→⌊1\n:{1,2,3,4,3,2,1,2,3,2}→⌊2\n:{1,1,1,1,1,1,1,1,1,1}→⌊3\n:{1,1,1,1,1,1,1,1,1,1}→⌊4\n:16→A\n:8→B\n:0→W\n:{0,50,100,200,400}→⌊5\n:0→V\n:While Z=0\n:getKey→K\n:0→W\n:If K=24\n:Then\n:X1→X\n:End\n:If K=26\n:X+1→X\n:If K=25\n:Then\n:If B=8\n:Then\n:X→A\n:7→B\n:End\n:End\n:0→W\n:While not(W=10)\n:W+1→W\n:If A=⌊1(W) and B=⌊2(W)\n:Then\n:⌊3(W)1→⌊3(W)\n:16→A\n:8→B\n:If ⌊3(W)=0\n:Then\n:randInt(1,15)→⌊1(W)\n:1→⌊2(W)\n:P+((⌊4(W)*⌊4(W))*10)→P\n:randInt(1,L)→⌊3(W)\n:⌊3(W)→⌊4(W)\n:End\n:End\n:End\n:If X=16\n:Then\n:15→X\n:End\n:If X=0\n:Then\n:1→X\n:End\n:If not(Z=V)\n:Then\n:Disp \"YOU FINISHED\"\n:Disp \"LEVEL\"\n:Pause V\n:Z→V\n:End\n:0→W\n:While not(W=5)\n:W+1→W\n:If P>= ⌊5(W)\n:Then\n:W→L\n:End\n:End\n:0→W\n:While not(W=10)\n:W+1→W\n:If ⌊1(W) = X and ⌊2(W)=8\n:Then\n:If not(L=5)\n:Then\n:While 1\n:Disp P\n:End\n:End\n:End\n:End\n:0→W\n:While not(W=10)\n:W+1→W\n:If ⌊3(W)=1\n:Then\n:Output(⌊2(W),⌊1(W),\"A\n:End\n:If ⌊3(W)=2\n:Then\n:Output(⌊2(W),⌊1(W),\"B\n:End\n:If ⌊3(W)=3\n:Then\n:Output(⌊2(W),⌊1(W),\"C\n:End\n:If ⌊3(W)=4\n:Then\n:Output(⌊2(W),⌊1(W),\"D\n:End\n:If ⌊3(W)=5\n:Then\n:Output(⌊2(W),⌊1(W),\"E\n:End\n:End\n:0→W\n:Output(8,X,\"H\n:Output(B,A,\"O\n:While not(W=10)\n:W+1→W\n:⌊2(W)+1→⌊2(W)\n:End\n:If not(B=8)\n:Then\n:B1→B\n:End\n:0→W\n:While not(W=10)\n:W+1→W\n:If ⌊2(W)>8\n:Then\n:1→⌊2(W)\n:randInt(1,15)→⌊1(W)\n:randInt(1,L)→⌊3(W)\n:⌊3(W)→⌊4(W)\n:End\n:End\n:If B=1\n:Then\n:16→A\n:8→B\n:End\n:Output(1,1,P\n:End"
arcade: '0'
graphics: '1'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:readme6/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1409724000'
author: 'Ramm, Bernd'
version: '1.0'
summary: 'Analyses the german plate load test for soil testing. In german it is called "Lastplattendruckversuch".'
description: "The program consists of three parts (LPlatte, LPlatte1, LPlatte2) and will only work with all parts. The asked inputs are written in german. The results are the deformtionmodule\nEV1 and EV2 and the ratio between the two results."
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: bb
download: 'archivefile:lplatte/LPlatte.zip'
image: null
fileSize: '2372'
fileSizeUnit: '1'
dateMade: ''
author: 123outerme
version: '1.3'
summary: 'An Adventure game with RPG and Puzzle elements. Collect the ten Ancient Uvutian artifacts and save the world from the mischevious group, the Terrors! This game can run from the TI83+ to the TI84+CSE. Enjoy it on all platforms!'
description: 'A dungeon crawler RPG with action and puzzle elements. As an unarmed, regular civilian, go on an epic quest to defeat a mischievous group called the Terrors and bring peace back to the world. This game is fully compatible with noncolor and color calculators; you can use the same game files for both the +C and noncolor calcs.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '1'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:sourceseekers13/SourceSeekers13.zip'
image: 'archiveimage:screenshot/screenshot.gif'
fileSize: '10695'
fileSizeUnit: '1'
dateMade: '1407038400'
author=TDecker
size=690 bytes
description=Flappybird with endless levels of hardness
The Code
:0>S
:0>G
:Zstandard
:Zinteger
:Text(25,25,"LOADING….."
:For(A,47,35
:Vertical A
:End
:For(A,47,35,1
:Vertical A
:End
:For(A,20,20
:Line(A,7,A,0,0
:End
:0>V
:Lbl L
:L+1>L
:2>F
:Text(25,25,"LEVEL: ",L
:Text(40,15,"PRESS ANY KEY"
:Repeat getkey
:End
:Text(25,25," " //40 spaces
:Text(40,15," " //50 spaces
:For(M,1,15
:S+50+abs(R)>S
:For(A,35,35,3
:Vertical A
:Line(A,R,A,R+151.5L,0
:Line(A3,31,A3,31,0
:getkey>K
:If K=45
:Goto Q
:If K=25
:6>F
:F2>F
:V>U
:V+F>V
:ptoff(18,U,3
:ptoff(15,U,2
:pton(18,V,3
:pton(15,V,2
:V+31>P
:If P<0 or P>62
:Goto Q
:If pxltest(P,32
:Goto Q
:End
:End
:Goto L
:Lbl Q
:If K=45
:Then
:Clrdraw
:Clrhome
:Return
:End
:For(A,1,12
:Line(15,V,15+randint(7,7),V+randint(7,7)
:End
:Clrdraw
:Text(1,25,12,"SCORE: ",LS
author: 'Robert Black'
version: '1.0'
summary: 'A mix between Pong and BrickBreaker'
description: "Part 2 is where you are trying to get through the city walls. You control the paddle on the bottom, and the calculator controls the paddle on the top. If you get the ball past the paddle on top, it smashes part of the wall and you need to get the ball through there. This is a modified version of a program I found online. (The original coding only had one paddle (yours), and there wasn't a way to win)\n>= is greater than or equal to.\nIf you played this game, please comment, I want to see how many people have played this.\n[[code]]\n:Delvar C\n:Delvar G\n:{1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1}→⌊1\n:7→A\n:8→B\n:1→D\n:5→I\n:randInt(1,2)→J\n:0→Q\n:1→E\n:6→F\n:While not(C\n:ClrHome\n:0→W\n:Output(A,B,\".\n:Output(8,F,\"—\n:Output(2,I,\"==\n:Q+1→Q\n:If Q=J\n:Then\n:1→J\n:0→Q\n:randInt(1,5)→S\n:If S=1\n:Then\n:3→J\n:End\n:B→I\n:End\n:If A=1\n:D→D\n:If A=7\n:Then\n:If B>=F1 and B<=F+2\n:D→D\n:End\n:If A=3\n:Then\n:If B>=I1 and B<=I+2\n:Then\n:abs(D)→D\n:End\n:End\n:If A=2\n:Then\n:While not(W=16\n:W+1→W\n:If B=W\n:Then\n:If ⌊1(W)=0\n:Then\n:Pause \"YOU WON PART 2!\n:Output(100,100,\"P\n:End\n:If ⌊1(W)=1\n:Then\n:0→⌊1(W\n:End\n:End\n:End\n:End\n:0→W\n:While not(W=16\n:W+1→W\n:If ⌊1(W)=1\n:Then\n:Output(1,W,\"\n:End\n:End\n:If B=1 or B=16\n:E→E\n:(A=8)→C\n:A+D→A\n:B+E→B\n:getKey→K\n:F+(K=26 and F<13)*2(K=24 and F>1)*2→F\n:End\n:Pause \"YOU LOSE\"\n:ClrHome\n:Output(1,1,\"\")\n[[/code]]"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:readme5/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1401948000'
author: 'Robert Black'
version: '1.0'
summary: 'Save the existence of cheese!'
description: "Cheese Quest is a game where someone kills all the cows on the world except 2, which he captures, so he can get rich off the only cheese supply in the world. Part 1 is crossing the dangerous terrain to reach his fortress.\nCheese Quest part 2 is coming soon. EDIT: Part 2 is here!\nPress up to jump.\nThere is a glitch where the platforms turn invisible when they reach the left side of the screen…\n\n:ClrHome\n:{3,5,8,10,13}→⌊1\n:{2,3,4,5,7}→⌊2\n:7→Y\n:0→Z\n:0→W\n:0→B\n:0→V\n:Lbl AA\n:Z+1→Z\n:For(W,1,5\n:⌊1(W)1→⌊1(W)\n:End\n:ClrHome\n:For(W,1,5\n:Output(⌊2(W),⌊1(W),\"\n:End\n:Output(Y,4,\"*\n:getKey→K\n:For(W,1,5\n:If ⌊1(W)=4 or ⌊1(W)=3 or ⌊1(W)=2 or ⌊1(W)=1 or ⌊1(W)=0\n:Then\n:If ⌊2(W)=Y1\n:Then\n:If K=25\n:Then\n:2→B\n:End\n:If not(K=25\n:Then\n:0→B\n:End\n:End\n:End\n:Y+B→Y\n:If Y<1\n:Then\n:Output(100,100,\"P\n:End\n:If B>1\n:Then\n:B1→B\n:End\n:If not(Z>99\n:Goto AA\n:Disp \"GOOD JOB!\"\n:Disp \"YOU FINISHED\"\n:Pause \"PART 1!\""
arcade: '1'
graphics: '0'
platform: '1'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:readme9/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1401861600'
author: 'Robert Black'
version: 0.9.0
summary: 'A frogger clone'
description: "Hi\nI decided to make a frogger clone.\nI don't know how to allow people to download, so you'll have to type in the coding yourself.\nPretend <= is less than or equal to .\nSadly, I won't be able to contribute to this website during the summer, because my dad makes me work in my garden all day(hey, not every programmer has to be an adult).\n\n:8→X\n:0→Z\n:8→Y\n:{14,12,7,2,3,9,4,11,6,13,1,15}→⌊1\n:{2,2,3,3,4,4,5,5,6,6,7,7}→⌊2\n:0→W\n:While Z=0\nWhile not(W=16\n:W+1→W\n:If ⌊1(W)>16\n:1→⌊1(W)\n:randInt(2,7)→⌊2(W)\n:If ⌊1(W)<1\n:16→⌊1(W\n:randInt(2,7)→⌊2(W\n:End\n:If ⌊1(W)<=1\n:Then\n:1→⌊1(W\n:randInt(2,7)→⌊2(W\n:End\n:End\n:0→W\n:While not(W=12\n:W+1→W\n:If ⌊2(W)=2 or ⌊2(W)=4 or ⌊2(W)=6\n:Then\n:⌊1(W)+1→⌊1(W\n:End\n:If ⌊2(W)=3 or ⌊2(W)=5 or ⌊2(W)=7\n:Then\n:⌊1(W)1→⌊1(W\n:End\n:End\n:getKey→K\n:If K=24\n:Then\n:X1→X\n:End\n:If K=34\n:Then\n:Y=1→Y\n:End\n:If K=26\n:Then\n:X+1→X\n:End\n:If K=25\n:Then\n:Y1→Y\n:End\n:0→W\n:ClrHome\n:While not(W=12\n:W+1→W\n:If ⌊1(W)>=1 and ⌊1(W)<=16\n:Then\n:Output(⌊2(W),⌊1(W),\"====\n:End\n:End\n:0→W\n:Output(Y,X,\".\n:While not(W=12\n:W+1→W\n:If X=⌊1(W) or X=⌊1(W)+1 or X=⌊1(W)+2 or X=⌊1(W)+3\n:Then\n:If Y=⌊2(W\n:Then\n:If not(⌊2(W)=2 and ⌊2(W)=7\n:Then\n:While 1\n:Disp C\n:End\n:End\n:End\n:End\n:End\n:0→W\n:If Y=1\n:Then\n:If D=1\n:Then\n:C+1→C\n:2→D\n:End\n:End\n:If Y=8\n:Then\n:If D=2\n:Then\n:C+1→C\n:1→D\n:End\n:End\n:End\n\n\nI know it is insanely slow, does anyone know how to make this program faster?"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:readme4/README.txt'
image: null
fileSize: '0'
fileSizeUnit: '1'
dateMade: '1401688800'
author: 'Robert Black; Code edited and optimized by Trenly'
version: 2.0.1
summary: "A flappy bird clone\n"
description: "+ This program has been remade. To see the remake, visit the Flappy Bird 2 page.\nHi, this is my first post to this site! I knew how to program in Python, which got me interested in learning TIBasic. Within 2 hours of knowing that TiBasic existed, I made a flappy bird game. The program might have a few bugs (I programed it from scratch on my friend's calculator, so I don't have it with me), so if you find any bugs, please edit this page to remove them if you can figure out where they are.\n\nInstead of the game plainly ending when you die, it returns an error message.\n\nPlease comment if there is something wrong with the program.\n\nNote: The download link doesn't work, you'll have to type in the code by hand.\nEDIT: I borrowed my friend's calculator, here is the actual coding: (other coding was deleted)\nANOTHER EDIT: Now has a scoring system\n\n[[code]]\n:1→Y\n:16→A\n:1→B\n:5→E\n:0→Z\n:Lbl G\n:getKey→K\n:A1→A\n:randInt(2,7)→D\n:ClrHome\n:If not(A:16→A\n:If not(A=16:0→B\n:If A=16:1→B\n:If B=1:D=E\n:If K=25:Y1→Y\n:If not(K=25:Y+1→Y\n:Output(Y,3,\"0\n:For(I,1,8)\n:Output(I,A,\"H\n:End\n:Output(E,A,\" \"1 space\n:Output(E+1,A,\" \"1 space\n:If A=3\n:Then\n:If not(Y=E) and not(Y=E+1\n:Output(10,10,\"P\n:Output(1,8,Z\n:Z+1→Z\n:End\n:Goto G\n[[/code]]"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:flappyb/FLAPPYB.8xp'
image: null
fileSize: '300'
fileSizeUnit: '1'
dateMade: '1401256800'
author: Zachatoo
version: V1.3.7
summary: 'Dungeon Crawler compatible with TI83 and upTI84CSE! Hope you guys enjoy! '
description: 'Classic dungeon crawler on the homescreen (for portability). Further work on project is based on ''fanbase'' and time available. Game is based on you being a snake trying to escape a cave that you found yourself lost in. Can you use your intellect and the objects around you in order to get out?'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '1'
strategy: '1'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: ff
download: 'archivefile:cave/cave.zip'
image: 'archiveimage:screenimagecave/SCREEN_IMAGE_CAVE.PNG'
fileSize: '1119'
fileSizeUnit: '1'
dateMade: '1399874400'
author: TI123outerme
version: '1.2'
summary: 'A semitext based adventure. You go on an quest to avenge your burneddown home.'
description: "This game is somewhat textbased, but support for basic pixel graphics may be coming soon.\nThis game includes features such as a tournament, the ability to buy new weapons and HP, a fighting system, and much more!\nThe screenshot shows the game's title screen working and centered on a TI84+CSE, but there's an option at the beginning to center it on the TI83+ and up calculators. If you are having trouble with downloading or running any of the programs or subprograms, you can find the individual programs and documentation here: https://www.dropbox.com/sh/h4ruxl1obyjs2qn/AAAJGwiLEfaxheRSuNszmUQa"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '1'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:terrors/Terrors.zip'
image: 'archiveimage:terrorstitlescreen/TERRORSTITLESCREEN.GIF'
fileSize: '5792'
fileSizeUnit: '1'
dateMade: '1399521600'
author: 'Timothy Foster'
version: '1.0'
summary: 'This Snake game is not like the normal snake game. In this game, you are trying to outlive your opponent, a basic AI, by not running into any walls or plus signs. The longer you last, the more points you earn. You also earn points by collecting donut like squares. The moment you collide with a wall, a plus sign, your tail, or your opponent''s tail, you lose and the game ends.'
description: "This Snake game is not like the normal snake game. In this game, you are trying to outlive your opponent, a basic AI, by not running into any walls or plus signs. The longer you last, the more points you earn. You also earn points by collecting donut like squares. The moment you collide with a wall, a plus sign, your tail, or your opponent's tail, you lose and the game ends.\n\nAs you move, you create a wall behind you which permanently remains there. You continue in a straight path until you change direction with the press of one of the arrow keys. If the AI runs into a wall, you progress to the next level.\n\nThis game features a title screen, quick and addictive game play, and a highscore system. Have fun!\n\nIf you need to quit while in the middle of program operation, press CLEAR.\n\nThis program was my entry for Challenge 8."
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:chlg8/CHLG8.zip'
image: 'archiveimage:snake/SNAKE.BMP'
fileSize: '994'
fileSizeUnit: '1'
dateMade: '1245819600'
author: Mapar007
version: '1.0'
summary: 'This is a program to create data sheets and read them. You must input a random code of 6 letters/numbers which form your personal ID. It will make secure that nobody else can read your data sheets on their calculator!'
description: "This is a program to create data sheets and read them. You must input a random code of 6 letters/numbers which form your personal ID. It will make secure that nobody else can read your data sheets on their calculator!\n\n(note:do not pick MNEMON as a code, unless you want everyone to be able to read your files!)"
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: cc
download: 'archivefile:mnemon/mnemon.zip'
image: 'archiveimage:cht1/CHT1.BMP'
fileSize: '1073'
fileSizeUnit: '1'
dateMade: '1215061200'
author: 7thAce
version: '1.0'
summary: 'This is a game package. There are 4 games in there now, and 4 more will be coming. Press 2nd to play them all in order. Just read the readme :)'
description: 'This is a game package. There are 4 games in there now, and 4 more will be coming. Press 2nd to play them all in order. Just read the readme :)'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:minigameparty/minigameparty.zip'
image: 'archiveimage:minigames/minigames.bmp'
fileSize: '7856'
fileSizeUnit: '1'
dateMade: '1215061200'
author: 'Edward H'
version: '1.0'
summary: 'Balances chemical equations, inputted as a string.'
description: 'Balances chemical equations, inputted as a string.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: bb
download: 'archivefile:chemeq10/chemeq10.zip'
image: 'archiveimage:chemical/chemical.gif'
fileSize: '928'
fileSizeUnit: '1'
dateMade: '1218690000'
author: Architeuthiskid
version: '1.0'
summary: 'In collect, you go around and collect the dots that appear as soon as you eat the previous one. It is almost exactly the same as snake, with the major difference that the dot does NOT grow. If you move 100 times, or hit one of the walls, it''s game over. For further info, look at the readme. Remember, this is a beta version, so it is lacking in many features that I will add later.'
description: 'In collect, you go around and collect the dots that appear as soon as you eat the previous one. It is almost exactly the same as snake, with the major difference that the dot does NOT grow. If you move 100 times, or hit one of the walls, it''s game over. For further info, look at the readme. Remember, this is a beta version, so it is lacking in many features that I will add later.'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:collect/collect.zip'
image: 'archiveimage:collect/collect.bmp'
fileSize: '3000'
fileSizeUnit: '1'
dateMade: '1219554000'
author: Builderboy
version: '2005'
summary: 'In Six Differences, you attempt to find the six differences in the two pictures displayed side by side on your calculator. Has 9 well designed levels, with a feature to install multiple level packs, AND a custom level editor. Uses a revolutionary system to store levels as a series of lines, which eliminates the need for picture variables, allowing the entire game to be hosted in One Program!'
description: 'An Angel production! In Six Differences, you attempt to find the six differences in the two pictures displayed side by side on your calculator. Has 9 well designed levels, with a feature to install multiple level packs, AND a custom level editor. Uses a revolutionary system to store levels as a series of lines, which eliminates the need for picture variables, allowing the entire game to be hosted in One Program! Create your own levels! Install new level packs! Find the Differences!!'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:sixdiff/SixDiff.zip'
image: 'archiveimage:sixdiff/sixdiff.gif'
fileSize: '4152'
fileSizeUnit: '1'
dateMade: '1219986000'
author: Builderboy
version: '2005'
summary: 'The simple game of Spider entails arranging the pipes so the spider can crawl through them for as long as possible. There are 3 Difficulty settings which enable extra pipe sections, and make the spider move faster. A highscore table is avaailiable so you can boast to your Friends! An Angel Production.'
description: 'The simple game of Spider entails arranging the pipes so the spider can crawl through them for as long as possible. There are 3 Difficulty settings which enable extra pipe sections, and make the spider move faster. A highscore table is avaailiable so you can boast to your Friends! An Angel Production.'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: cc
download: 'archivefile:spider/Spider.zip'
image: 'archiveimage:spider/spider.gif'
fileSize: '2358'
fileSizeUnit: '1'
dateMade: '1219986000'
author: Mapar007
version: '1.0'
summary: 'A VERY upgraded version of Mnemon with better interface and remembering utilities.'
description: 'A VERY upgraded version of Mnemon with better interface and remembering utilities.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: cc
download: 'archivefile:phoenix10/phoenix10.zip'
image: 'archiveimage:phmain/PHMAIN.BMP'
fileSize: '4500'
fileSizeUnit: '1'
dateMade: '1223355600'
author: patriotsfan
version: '1.0'
summary: 'This program calculates quarterback ratings for four different leagues: NFL, CFL, NCAA, and AFL.'
description: 'This program calculates quarterback ratings for four different leagues: NFL, CFL, NCAA, and AFL.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '1'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: cc
download: 'archivefile:qbrating/qbrating.zip'
image: 'archiveimage:rating/RATING.gif'
fileSize: '975'
fileSizeUnit: '1'
dateMade: '1226124000'
.