Disaster

author: 'Michael K. Pellegrino'
version: '1.0'
summary: 'This version of the classic game was written in pure z80 Assembler. To run it use the Asm command. It was written for the TI83/84+ calculators.'
description: 'Classic game of 21 - Text Based - Saves your bank upon exit. If you run out of funds - you can register the game for $2.00 and you will perpetually have a bank roll.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '1'
sports: '0'
casino: '1'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:blkjck-3/blkjck.zip'
image: null
fileSize: '3256'
fileSizeUnit: '1'
dateMade: '1498104000'

Routine Summary

Calculates the mode(s) of a list of numbers.

Inputs

L₁ - To store the user-inputted list of numbers

Outputs

L₃ - The mode(s) of the original list of numbers
Ans - The mode(s) of the original list of numbers (alternates)

Variables Used

L₂ - Intermediate calculation storage
X - Weregoose's version only

Calculator Compatibility

TI-83/84/+/SE/CSE/CE

Authors

kg583, Trenly, Weregoose

:ClrList L₂,L₃
:iL₁(1)+sum(L₁=L₁(1→L₂(1
:For(L,2,dim(L₁
:If not(max(L₁(L)=imag(L₂
:iL₁(L)+sum(L₁=L₁(L→L₂(1+dim(L₂
:End
:For(L,1,dim(L₂
:If real(L₂(L))=max(real(L₂
:imag(L₂(L→L₃(1+dim(L₃
:End

The mode of a list is the value that occurs most often within the list. This routine will find the mode and, if there are any ties, will display all modes. Examples:

:{1,2,3,3,4
Mode = {3}
:{5,5,6,6,7
Mode = {5,6}

Alternate Routines

:SortA(L₁
:Repeat min(0≠ΔList(L₂
:{0→L₂
:ΔList(L₁→L₃
:For(θ,1,dim(L₃
:If not(L₃(θ
:L₁(θ→L₂(1+dim(L₂
:End
:L₂→L₁
:End
:ΔList(cumSum(L₂

This version coded by Trenly is slightly shorter than the above routine by kg583 and produces the same output, which is saved in Ans rather than L₃. However, the original list in L₁ is modified in the process, so make sure to backup that list somewhere else if you need it later.

:1+max(abs(L₁→X
:L₁+Ans
:While max(Ans
:Ans→L₁
:SortD(L₁
:L₁augment({0},not(ΔList(L₁
:End
:sum(L₁ xor 0→dim(L₁
:L₁-X

This version written by Weregoose is very similar to Trenly's in form and function. The output is, again, in Ans and lists all modes, but does also modify L₁ in the process. Note the advanced use of the xor function.

Introduction

The 68k series can easily make an accurate distinction between programs and/or functions. Functions are just like programs except that they do not allow statements with side effects (such as Input or "Disp," or allow editing of non-local variables), and they return a single value, which in the absence of an explicit Return statement is the last expression evaluated in the system.

Moreover, the 68k version of TI-BASIC allows creating user-defined functions. Functions have the same syntax as programs except that they use the "Func…EndFunc" keywords instead of "Prgm…EndPrgm," and that they are not allowed to use instructions that perform I/O, modify non-local variables, nor call programs. However, functions can still be non-pure because they can call built-in functions such as "getTime(), getKey(), or rand()."

Lastly, all functions have a return value, which in the absence of an explicit Return statement is the last expression evaluated.

Functions Program Example

fact(x)
:Func
:If x=0
:Return 1
:If x<0
:Return undef
:x*fact(x-1)
:EndFunc

Creating a program in the Program Editor

Time to make your first program in 68k Basic! In the APPS menu select #7, go to the "Program Editor", and then press "New". Enter a name for your program in the variable field, let's call it "hellowld". Press enter, and here we go!

Creating the Program

The following program, when executed, will display the phrase "Hello World!"

hellowld()
:Prgm
:ClrIO
:
:Disp "Hello World!"
:
:Pause
:ClrIO
:DispHome
:EndPrgm

Let's go through a line-by-line analysis of this code.

hellowld()
:Prgm

This is where the program starts. Every program you make will start with the name of the program, followed by parenthesis. The nest line contains an opening Prgm tag, which indicates the beginning of the program. Everything after it will contain the actual code that you write.

:ClrIO
:
:Disp "Hello World!"

The next command is ClrIO, which will clear the Input/Output buffer. For those who don't know what this is, it's basically a different section of the calculator where output is displayed (so output is not displayed on the Home screen, it is displayed here). After that, we have a new command Disp, which displays a string to the IO buffer.

:Pause
:ClrIO
:DispHome
:EndPrgm

We then pause the program, which will halt program execution until the ENTER key is pressed. More information on why we do this up ahead. After pressing the enter key, the program clears the IO buffer (which erases the "Hello World!" message from it) and goes back to the home screen using the DispHome command. This is the end of our program, which means that we can add the EndPrgm tag, which closes the program.

You may look back and ask, why did we include the pause command? This is because shortly after, we display the home screen using DispHome. This means that the "Hello World!" message will be printed the IO buffer, but it will display the home screen quickly before you can even try to read the message. We add the pause in there to allow the user to read the message before executing the rest of the code. This roadblock can be crossed by removing the DispHome command, but for ease of use, we keep the DispHome and make sure to throw in the pause command after we display the text.

<< Overview of 68k Basic Table of Contents Good Programming Practices >>

author: 'TI-Basic Dude'
version: 5.0S.0C
summary: 'This is My first upload to this website!!!!! Yay!!!'
description: "This Program Includes a Onblock assembly program and the security program. Please post to tell me if you want to change it in any way/ or optimize it.\n\nThis Program Includes:\n\n~ Security Program (I highly recommend you get TI's Start-Up Customization App)\n~ On block (To prevent people from using the [ON] key to exit.)\n\nYou may choose your own PIN instead of \"9257\".\n\nOther Information:\n\n79 bytes for the prgmONBLOCK\n434 bytes for the prgmθSECURTY\nThis program is edit locked. To unlock it, use the TI-BD's assembly program for the Lock status for a program.\n\nⒸ 2017 TI-Basic Dude\n"
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:security/SECURITY.zip'
image: null
fileSize: '513'
fileSizeUnit: '1'
dateMade: '1494741600'

…that you can change the color of the input or output of a math box?

…that you can compare multiple data sets in the same graphing window?

…that many of the Windows shortcut key commands work on the Nspire?

Ops | A | B | C | D | E | F | G | I | L | M | N | O | P | Q | R | S | T | U | V | W | X | Z

Ops

+, -, ·, /, ^, ^ֿ¹, ²
.+, .-, , ./, .^
=, , <, , >,
(insert implies arrow here), (insert iff arrow here)
10^(), E, !, %, ,
d(), (insert integral symbol here), Π(), Σ(), ΣInt(), ΣPrn()
&, #, ', _, |, ©
(insert angle symbol here), º, ', ", g, r
:=, ,
0b, 0h

A

abs()
amortTbl()
and
angle()
ANOVA
ANOVA2way
Ans
approx()
▶approxFraction()
approxRational()
arccos()
arccosh()
arccot()
arccoth()
arccsc()
arccsch()
arcLen()
arcsec()
arcsech()
arcsin()
arcsinh()
arctan()
arctanh()
augment()
avgRC()

B

bal()
▶Base2
▶Base10
▶Base16
binomCdf()
binomPdf()

C

ceiling()
centralDiff()
cFactor()
char()
charPoly()
x²2way()
x²Cdf()
x²GOF
x²Pdf()
ClearAZ
ClrErr
colAugment()
colDim()
colNorm()
comDenom()
completeSquare()
conj()
constructMat()
CopyVar
corrMat()
▶cos
cos()
cosֿ¹()
cosh()
coshֿ¹()
cot()
cotֿ¹()
coth()
cothֿ¹()
count()
countif()
cPolyRoots()
crossP()
csc()
cscֿ¹()
csch()
cschֿ¹()
cSolve()
CubicReg
cumulativeSum()
Cycle
▶Cylind
cZeros()

D

dbd()
▶DD
▶Decimal
Define
Define LibPriv
Define LibPub
deltaList()
deltaTmpCnv()
DelVar
delVoid()
derivative()
deSolve()
det()
diag()
dim()
Disp
▶DMS
domain()
dominantTerm()
dotP()

The ListPages module does not work recursively.

…that the Nspire can program in TI BASIC, C, Assembly, and Lua?

Did you know…

The ListPages module does not work recursively.

Did you know…

The ListPages module does not work recursively.

Did you know…

The ListPages module does not work recursively.
May 11 The nspire section was added to the news category

Program Editor

Before you start by making your first code, you must learn how to create a program(Make sure you are in the Calculator application). Press Menu and go to 8. Then, press 1 and 1 again. A window will pop up prompting the name of the program. Put in the name, then select the type (program or function) and press OK. Now, you are in the program editor, you can now move to the tutorials underneath.

Hello World!

The following program, when executed, will display the phrase "HELLO, WORLD!"

Text "HELLO, WORLD!"

Other Methods:

If you want to include more functionality to displaying text, you can use Disp.

Text "HELLO, WORLD!"


Is the same as:

Disp "HELLO, WORLD!"

author: 'Trent Knight'
version: '1.0'
summary: 'GeometryCE is a program that automatically calculates many different geometry formulas for you.'
description: 'GeometryCE stores many common formulas for you to use, and solves the formulas for you. All answers are given in exact form. I am planning on updating it with approximate answers and more formulas.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: ff
download: 'archivefile:geometryce-1/GeometryCE.zip'
image: null
fileSize: '6'
fileSizeUnit: '2'
dateMade: '1494306000'

Preparation

Main Content

References

counter free hit unique web

  • CHAR
    • → ⸤ ⁻
    • × ÷ ±
    • √ Σ ≠
    • ≥ ≤ π
    • Δ χ ▶
    • ֿ¹ ² ³
    • L₁ L₂ L₃
    • L₄ L₅ L₆
    • ≅ ℕ º
    • θ ∠ ∞
    • ♦ ⇧ ∫
    • ∏ ©

This FAQ is an attempt to answer the common TI-Basic related questions that people ask. Many of the questions are related to each other, so it is recommended that you read through the whole list. If you have any questions that aren't mentioned on the list, please post them in the forum or make a comment at the bottom of the page.

General

Q: Is TI-Basic easy to learn?
A: Yes! TI-Basic has the majority of the standard features and functionality that you find in other BASIC programming language variants (i.e., things like user input and variables are very similar), so if you can learn those languages, TI-Basic should be no problem. If TI-Basic is your first exposure to programming, it will require some work to learn, but it is definitely worth it because TI-Basic is a fun language to use.

Q: How do I learn TI-Basic?
A: The best way to learn TI-Basic is to download a copy of the manual, and start making small, sample programs to try out the different TI-Basic commands. Once you feel comfortable with the commands, you can start putting them together to create larger programs. After that, you should move on to learning the more advanced design concepts and techniques that are part of TI-Basic.

Q: Where can I get information on TI-Basic?
A: The wiki you are currently on has the largest collection of TI-Basic information available, including commands, design concepts, techniques, and experimentation. The resources page also has a comprehensive list of TI-Basic tutorials that you can find elsewhere on the Internet. In addition, you can download all of those tutorials (and many more) on the downloads page.

Q: Do you have a tutorial about [subject]?
A: The best way to find out is to use the search box. If you don't find what you are looking for, leave a comment in the forum and one of us will try to help you. We won't guarantee that you will find everything on this wiki that you are looking for, since it is a constant work in progress and there are simply too many topics to cover. If you would like to make a suggestion for a new tutorial, you can add it to the wiki to-do list.

Q: Where did the TI-Basic name come from?
A: Back when the language was growing in popularity and use, people wanted a simple name to refer to it that was easy to remember and told you what it was. Because it is the built-in programming language of the TI graphing calculators, and it is a variant of BASIC (more or less), TI-Basic is what they called it. You should note that the name is unofficial, as TI has never actually given it a name (for example, try searching for TI-Basic in the calculator manual; you won't find it).

Q: I've seen TI-Basic spelled with all uppercase (TI-BASIC) and with mixed case (TI-Basic), but what is the correct way to spell it?
A: Truthfully, there is no one correct way to spell it. It is just a personal preference. On this wiki, however, you will probably notice that we spell TI-Basic with mixed case. The primary reason for that decision is because it is easier to read (all caps aren't very reader-friendly).

Q: What calculators support TI-Basic?
A: All of the TI graphing calculators have TI-Basic support built-in. Of course, the calculators each have their own TI-Basic variant (see next question).

Q: What's the difference between Z80 and 68k TI-Basic and Nspire TI-Basic?
A: Simply put, a whole lot. Nspire TI-Basic lacks all sorts of things that 68k (and even Z80) TI-Basic has, especially graphics commands. This mostly relegates Nspire TI-Basic to math programs.

Q: Is there a place where I can interact with other TI-Basic programmers?
A: While there is a forum available here on this wiki for TI-Basic discussion and help, the best TI-Basic forum in terms of user activity is United-TI, which has a Nspire TI-Basic section. In fact, the majority of members of this wiki are active members at United-TI, so you will probably see us hanging around there.

Games

Q: Where can I find TI-Basic games and programs to download?
A: On our resources page, you will find several links to general TI related sites. One of the best sites to visit for games and programs is ticalc.org, which has the largest archive of TI-Basic games and programs of any site on the Internet.

Q: What is an emulator?
A: An emulator allows you to run a virtual form of your calculator on your computer, which is very convenient when you want to make quick changes to programs, or do any debugging or optimizing. There are several emulators available for you to use, so you should just experiment to see which one you prefer.

Q: I downloaded an emulator for my calculator, but it won't work because it says it needs a ROM image. What is that?
A: A ROM image is simply an instance of your calculator, which tells the emulator that you own your calculator. It is primarily used as a safeguard because only one person is supposed to be using any one ROM image. To download the ROM image to your computer, you just link your calculator to your computer, and then the emulator should be able to download the ROM image off of it.

Q: I have an awesome idea for a game, but I don't know how to program. Can you program it for me?
A: While we would like to help you program your game, we each have our own projects that we're working on and other real-world things (like school and a job) that occupy our time, so we aren't able to program your game for you. At the same time, if you have a specific TI-Basic programming question that you need help with, we'd be happy to help you. Even better than us programming your game, though, is you programming it yourself (see next question).

Q: What do I need to make games?
A: The main things you need to make games are your TI calculator and calculator manual. Before you actually implement a game, however, you should plan it out. This involves coming up with the idea for the game, and working out the many details of the game: graphics, gameplay, menus, and so on. Once you have all of those things figured out, you just need to put them into action.

Q: What is a good tutorial for making games?
A: Unfortunately, there really is no comprehensive game tutorial available. Instead, there are several small tutorials that each cover different aspects of games. In addition, on this wiki there are quite a few techniques covered — see for example the Special Topics section.

Q: Can I use a routine from this wiki in my game?
A: Yes! In fact, we encourage it. All of the routines on this site are designed to be as optimized and efficient as possible, so that readers learn the best way to program.

Q: Can I use sprites from other games in my own game?
A: The general consensus among the calculator programming community is that using somebody else's graphics in your game is fine, as long as you get their permission to do so. However, if you don't plan on releasing your game to the community, but instead just keeping it to yourself and your friends, then it doesn't really matter.

Programming

Q: How do I draw graphics?
A: Nspire TI-Basic is relatively unknown to the programming community, so nobdy really knows how to use graphics commands. Hopefully, as knowledge of programming the Nspire grows, there will be more information on Nspire graphics.

Q: Can I do [task] in TI-Basic?
A: While it's possible to do almost anything in TI-Basic, whether it looks nice and runs at a decent speed is a different matter. If you have thoroughly planned your program and made it as optimized as possible, and your program still takes a minute to load and there's a five second lag after each key press, that's a good indicator that you should probably use assembly or C instead. At the same time, you should always strive to push the boundaries of TI-Basic.

Q: How do I convert a number to a string and vice versa?
A: The string() command can be used to convert any variable type to a string. To convert in the other direction, use the expr() command.

Q: My program is extremely large. Is there a way to manage/condense the code better?
A: First of all, your program will probably shrink in size after the first time you run it, due to tokenization. If that's not enough for you, see the optimization page for more tricks.

Q: Are there any undocumented features (Easter eggs) in TI-Basic?
A: Unlike the TI-83 version of TI-Basic, virtually everything we know about the Nspire calculators' TI-Basic is documented somewhere. However, there are some features that the manual doesn't emphasize but are quite useful to TI-Basic programmers.

Q: How do you disable the ON key?
A: This is impossible in pure TI-Basic. Using Try..EndTry blocks, you can disable the ON key during text input, but the only way to disable it universally is with an assembly program or Exec code.

Q: How do I hide the code of my TI-Basic program?
A: This is impossible — if someone can run your program, they can see the code as well. You really shouldn't try to hide the code too, but let others learn from it instead.

Troubleshooting

Q: My calculator can't handle expressions with several variables, (e.g. it can't factor x^2+y^2+2xy). How do I fix this?
A: When you type xy next to each other, the calculator doesn't treat it as multiplication, but as a different variable called "xy". Write x*y instead and you should have no trouble.

Q: I've entered a simple expression and am confident of the result, but the calculator gives something bizarre! (For example, d(x^2,x) gives 10 as a result) What's wrong?
A: Make sure all the variables you're manipulating in a general way (x, in the example) are actually undefined. If not, delete them using DelVar. Otherwise, their values will get substituted and you'll get a weird answer. This can result in other surprising errors as well.

Q: I think some of the routines on this wiki have errors in them, because they didn't work for me. Could you please correct them?
A: We have strived to make sure that all of the routines on this site work correctly and without problems. However, if you are 100% sure that you entered the routine correctly into your calculator, please leave a comment on the page using the comment function at the bottom of the page. Somebody will then be able to correct the routine so that it won't cause anybody else any problems.

Q: I was playing a TI-Basic game and my calculator suddenly shut off. When I turned it back on, my memory was erased. What happened?
A: Your game had a glitch of some kind, and it caused the calculator to crash. This is usually caused by Assembly programs, as the majority of TI-Basic errors are caught by the calculator. You don't have to worry very much about TI-Basic crashes because they don't do any real permanent damage to the calculator, but because it is very annoying to have to replace all of your programs after your RAM is cleared, you should always store any important files in the archive.

Q: When I tried to run my TI-Basic program, I got this error message. What does it mean?
A: Most error messages are fairly self-explanatory, but if you're still confused, you should consult our list of error messages with a more in-depth explanation.

Assembly/C

Q: How does TI-Basic compare to Assembly or C?
A: TI-Basic is much easier to learn and program in, but it is rather slow because it is an interpreted language. TI-Basic has many good graphics commands, but will still be slower than assembly or C programs; also, TI-Basic programs are limited in control over the calculator.

Q: Is it possible to convert TI-Basic to Assembly?
A: No, it is not. There are currently no working programs available that will convert TI-Basic to Assembly (note: I say working because people have tried creating TI-Basic to Assembly converters, but nobody has completed one yet), so the only way you can convert a TI-Basic program to Assembly is by learning Assembly and porting the program yourself. You could also try asking an Assembly programmer to port it for you, but most people won't do that unless the program is pretty small.

Q: I want to use an Assembly program with my TI-Basic program, but I can't figure out how to use it. Can you help me?
A: Unfortunately, we really can't do much for you. What we recommend is that you contact the author of the Assembly program and ask them for help. They wrote the program, so naturally they should be able to answer any questions that you have.

Program Editor

Before you start by making your first code, you must learn how to create a program(Make sure you are in the Calculator application). Press Menu and go to 8. Then, press 1 and 1 again. A window will pop up prompting the name of the program. Put in the name, then select the type (program or function) and press OK. Now, you are in the program editor, you can now move to the tutorials underneath.

Hello World!

The following program, when executed, will display the phrase "HELLO, WORLD!"

Text "HELLO, WORLD!"

Other Methods:

If you want to include more functionality to displaying text, you can use Disp.

Text "HELLO, WORLD!"


Is the same as:

Disp "HELLO, WORLD!"

Who's Greater?

In this code, if c is greater than d, the program will say "yes" or otherwise it will say "no".

If c>d Then
Disp "Yes"
Else
Disp "No"
EndIf

author: Zixcoder
version: 1.4.1
summary: 'A Minesweeper program that will sweep you into a fun, classic puzzle! Find all the mines on the screen to win. This version includes varying difficulties, different text and control styles, custom options, automatic clearing, and a saving and loading feature, all written in pure TI-BASIC for the TI-84+C calculators. Happy solving!'
description: "This Minesweeper program is easy to install. Use TI-Connect or another linking application to download the .8xp file to your TI-84 Plus CE (C Silver Edition)calculator, then simply press \"prgm\" look for the program named \"MINES\", and press \"enter\" twice.\nControls in the menu:\nUP and DOWN arrow keys - scroll\nLEFT and RIGHT arrow keys - switch selected setting\nENTER and 2ND - proceeds with an action\nDEL - exits an action\nCLEAR - exits the program\nOther keys are also used to select \"no\", or \"off\", i.e., using \"(-)\" beside \"enter\" and \"mode(quit)\" beside \"2nd\".\n\nIn the menu:\nStart Game - Begins a new save according to the difficulty set, or continues from your last save.\nStyle - Changes the displayed characters in the game.\nDifficulty - Changes the amount of mines a new game starts with. The total amount of spaces is 260.\n Beginner - 20 mines\n Easy - 30 mines\n Normal - 40 mines\n Hard - 50 mines\n Expert - 60 mines\n Custom - Whatever you set it to! To change it, press enter or 2nd while the difficulty is set at custom.\nAuto-Clear - Lets you toggle automatic clearing on and off to make the game faster if desired.\nCustom Controls - Lets you toggle your set custom controls on and off or set new custom controls.\nStatistics - shows your best times for each difficulty and the amount of mines in the most crowded minefield you've cleared!\nConfigure - Sets up the program to work. You only need to do this once the program is downloaded, or when Str1 has been modified. BEFORE DOING\n ANYTHING ELSE, select the \"Configure\" option. This sets up the save, and avoids experiencing bugs when first playing the game.\nQuit - Exits the program.\n\nControls in-game:\nARROW KEYS - move cursor\n2ND or CLEAR - clear a space\nALPHA or \"^\" - mark a flag\nSTAT - saves the game\nDEL - exits the game\nENTER - Tests the board to make sure it has been completed\nCustom controls also apply here, for the clearing and flagging keys.\n\nApproximate loading statistics:\nSaving a game - 5 seconds\nLoading a game - 18 seconds\nSetting up a new map of mines - 3 seconds for every 10 mines (e.g. Normal - 12 seconds)\nAutomatic Clearing - 3 EMPTY spaces every second - about 10 spaces per second otherwise\n\n5/7/17 - Update v1.1 - Save and exit are two different buttons, more user-friendly, minor fixes.\n\n5/8/17 - Update v1.1.2 - Removed crash at beginning of program for new users, other bug-fixes improving user friendliness.\n\n5/13/17 - Update v1.3.0 - FASTER saving, bug fixes, option turning off automatic clearing, and custom controls!\n\n5/24/17 - Update v1.3.1 - FASTER loading, faster button response (thank you to zeldaking @ cemetech for idea!)\n\n5/25/17 - Update v1.4.0 - Added Statistics! View best scores and times!\n\n10/2/17 - Update v1.4.1 - Various amendments and improvements\n\nI may later create a TI-84+/83+ edition.\n\nPost in the comments if you find a bug (all of which can never be exterminated!), or if you would like to suggest a new feature. I have left the program editing unlocked so that, if you find a glitch, you than reference it to me. Thank you in advance for helping out to perfect this program into a masterpiece!"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '1'
utility: '0'
misc: '0'
compatibility: ff
download: 'archivefile:minesweeper-c/Minesweeper-C.zip'
image: 'archiveimage:minesweepercapture-1/MinesweeperCapture.png'
fileSize: '9960'
fileSizeUnit: '1'
dateMade: '1493964000'

Welcome to the TI-Basic Developer (TI|BD) Nspire Basic Starter Kit! This tutorial is designed to help new Nspire programmers get their feet off the ground. The tutorial is divided into chapters that each have their own focus, and is meant to be read in sequential order. If you have questions or get stuck, leave a post on the forums and somebody will assist you. Happy coding!

1. Getting Started

  1. Introduction to Nspire Basic
  2. Overview of Nspire Basic
  3. Your First Program
  4. How to use your Nspire Calculator
  5. Computer Setup

2. The Basics of Nspire Basic

  1. How to display text on your Nspire
  2. How to loop a program on your Nspire
  3. How to use functions on your Nspire
  4. How to use variables on your Nspire

3. Creating Games

  1. How to make a Nspire arcade game
  2. How to make a Nspire RPG game
  3. How to make a Nspire Math game

4. Advanced Graphics

5. Math Functions

6. Optimization

7. Putting It All Together

8. Miscellaneous

If you have any suggestions whatsoever on content, feel free to add them here.
Nspire Pages To-Do
Click me to edit !
Drag me !
To Do TI|BD nspire
Here is a place for your title Click me to edit ! false

Testing area for the Nspire home header.

Why use Nspire Basic?

This tutorial is meant to teach new Programmers about the TI-Nspire. This is a simple introduction to Nspire TI-Basic for programmers that are already fairly experienced with TI-83 series Basic programming! Instead of re-teaching many things, this tutorial highlights the differences between the two languages.

Major Features

A major features of the older Nspire calculators is the simplicity of programming. It has a very strange layout compared to the other TI graphing calculators. First, all the letters get their own buttons, making it a little easier to type than on the 84. Also, it has a ctrl key rather than a 2nd key. It has a clicker key, menu key, catalogs, enter, and even a caps key. If you observe it long enough, it begins to resemble a keyboard. This is because the Nspire is designed to be like a computer in a way. It uses documents to store information. These documents hold information about anything you did within it, not just programs. You can choose to save it, or load different documents, a lot like a computer. Also, the Nspire utilizes a mouse type system. It replaces the arrow keys with one round button. It acts as the arrows, and as a way to move a mouse-like pointer across the screen. The Nspire is a transition of a calculator to a computer, yet held back enough to retain calculator status.

A very programming-relevant difference, on the other hand, is the advent of printing codes. Using the Text your program can identify that you want it to print a word, while the 83 only uses Disp and Output to print out the code.

Also one of the highlights is how much pictures have been empowered. They now can be any size and be displayed with any logic. True "real-time" multiplayer games are now possible with the SendCalc Command, something that was impossible on 83's.

The more specific differences described below tend to combine to make programs run faster, and allow for a programming style closer to programming a more "serious" language on a computer.

Commands

On the TI-89, commands can be entered letter by letter, and don't have to be chosen from a menu. In practice, programs and functions are tokenized, making a command range take up 1 to 3 bytes in a program. Most of the commands on the Nspire are the same or variations of the 68k commands. However, the Nspire lacks most graphical commands, and some variable commands are limited. Some commands require a Computer Algebra System, or CAS, so if your Nspire doesn't have CAS, many of the commands will not function.

There are a few commands for exclusive use in programming. These commands help direct how the program works so that it can complete various tasks.

Many commands have been added or removed between the two languages. In addition, the following commands have changed in spelling:

There are two more overall changes. First, many commands' names have been truncated where they were longer than 8 characters: this is the maximum for a command name on the TI-89. An example is RclPic, the 68k equivalent of RecallPic.

Second, the use of parentheses after a command now follows a strict convention.

  • "Instructions" — commands that do not return a value — do not require parentheses (e.g. If, Text, etc.)
  • "Functions" — commands that do return a value — require parentheses (e.g. sin(), setMode(), etc.)
  • Even functions with no arguments use parentheses (e.g. getKey(), startTmr(), etc.)

Many commands have been added. However, as far as statistics goes, the 68k calculators are inferior, even, to the TI-83 series; most of the functionality is now restricted to regressions, and the calculator doesn't even know internally how to calculate most probability distributions.

Variables

The way variables are stored has undergone major changes from the TI-83 series. All variables now share a common naming system: the name of a variable can be up to 8 letters long. Variables can also be placed in different folders, which can't be nested but otherwise are very similar to file folders on a computer. By default, variables are stored in the folder 'main'.

Variables on the Nspire function in much the same way as 68k variables. A variable can be a string of letters. An undefined variable is italicized. For example, if the variable height was undefined, or had nothing stored to it yet, then on the calculator the variable would look like height. Defined variables are bolded, so if height was defined, it would appear as height. Commands are neither bold or italicized, and you cannot store information into them.

List are very different. In addition, lists are important for saving save game data and highscore data in programs. This is better than storing highscore or save game information as a variable, as variables are commonly changed during calculations performed by the users. They now can hold any combination of numbers, expressions, and character strings. This makes them more powerful, but also slows them down significantly. Data's are basically matrices, but with the new capabilities (and speed limitations) of the new lists. Matrices stayed the same though, limited to numbers, but retained their speed. You can effectively emulate an "old style" list by using a matrix with only 1 row/column,

Programs

Programs are also considered variables, on the same level as any other: you can even define a program within another program. They imitate built-in commands, and can even be given parameters. Using the Local command, you can declare local variables that are reset to their old values once a program finishes running.

You can also define functions, which are similar to programs but return a value. Functions have some other limitations, though: they can only use local variables, and can't modify any global aspects of the calculator (so graphical commands, for example, are limited to programs).

With local variables, and the ability to define functions and programs, you can program in a procedural language style. Instead of placing the entire code of the program in one block, you can split it up into functions and subprograms that are defined at the beginning of the main program.

The entire issue of memory leaks (caused on the TI-83 series by jumping out of code blocks with Goto) is no longer present in 68k TI-Basic. Loops have offsets linking the end to the beginning, so the program doesn't need to keep a stack to be aware of what to do with End instructions. There is no longer any memory cost to entering a loop (or any other kind of code block), so it's impossible to leak memory this way.

Optimizations

Most types of trivial optimizations from the TI-83 series are invalid on the 68k calculators. For example, closing parentheses, quotes, and brackets are now mandatory — but don't add any size to the program, since it's tokenized and converted to postfix notation. The Ans variable no longer plays an important role: though the ans() command does exist to replace it, it's not modified by storing to variables inside a program, so it's mostly useful on the home screen.

A large part of 68k optimization revolves around careful use of lists. List variables are no longer random access: accessing the last element of a list is much slower than accessing the first element. For this reason, going through a list in a For loop is about the worst thing you could do.

Graphics

The screen resolution on the Nspire is superior to other calculators and is much better than any other calculator in history. The screen displays curves very well, it graphs cleanly, it uses letters and other characters with different size (much like a computer font style), and it is bigger. Also, the screen has many different shades of gray. In using inequalities, the calculator can actually shade in the region instead of drawing lines that represent it, and it darkens regions of overlap. The screen is very nicely done.

Apart from these very powerful commands, more ordinary commands have also been buffed up. Virtually all graphics commands have a point and a pixel equivalent, so you're free to choose one or the other to use (usually, you'll want pixels). The Circle command now draws circles instantaneously, as opposed to taking several seconds.

Instead of being forced to choose between home screen and graph screen, the choice is between graph screen and "Program I/O" screen on the 68k calculators. The program I/O screen is a separate home screen for programs, which is limited to text (but the text doesn't have to be aligned). In addition, both screens can be spiced up using dialogs, which imitate the appearance of a popup window on a computer, and are great for inputting data without having to erase anything from the screen.

Another major addition to the graphics command set is the newly created Dialog feature. New commands add extra I/O capability that doesn't interfere with the program I/O or the graph screen, allowing for enhanced in-program data entry.

Closing Words

This page gives an overview of some of the features of Nspire, but it isn't, and cannot, be complete. There are other pages you could visit to get a better picture of Nspire programming:

However, the best way to try to learn the language is first-hand experience with it.

It's the goal of this site to eventually cover all information on TI-Basic programming for the Nspire calculators. However, an excess of information can be overwhelming. So this page gives a suggested reading order (as well as necessary tidbits) so you don't get lost.

For Beginners

There are two alternatives for those who have just ventured into programming for these calculators. While you might want to just jump in, we have two tutorials that explain the basics of TI-Basic.

The first, the TI-Basic Starter Kit, teaches TI-Basic without assuming any previous programming experience. In fact, the very first page explains the basics of how a program works. After reading this tutorial carefully, you should be more than ready to handle the rest of this site.

The second tutorial is called TI-Nspire Programming for TI-83 Coders. As the name suggests, it is an introduction to programming for the Nspire calculators, for those who have already gotten pretty good at programming for the TI-83 series calculators. This is a fairly common situation: often, people get a new calculator when taking a more advanced math class. This tutorial explains the differences between TI-83 and TI-Nspire programming, so that you're not confused by the new features.

Further Reading

At this point, you should be familiar with more than a few TI-Basic commands. It might be a good idea to just jump into the command index and click on commands that sound interesting — you can really improve your TI-Basic knowledge that way. Or, select a category from the Commands menu in the top navigation, and read about commands in a more general way.

Looking at code examples is also a good way to learn. Sample Programs and Technique Examples are a good place to find such example code. See the Routines page for several short routines to get simple things done in the best possible way.

Use the glossary whenever you come across a term you're not familiar with. If it's not there or the entry doesn't help, drop a note in the forums and (usually within a day) helpful people will explain it and hopefully improve the glossary as well, so no one else has the same trouble.

Writing a Program

Of course, the best way to learn these topics is to come up with a project of yourself (check the projects page if you have no ideas), and go through the steps as you're doing it:

  1. Look at Planning when you're thinking about how to approach the problem.
  2. Consider Commenting code when you're writing it.
  3. If bugs arise (and they most likely will), see the section on Debugging.
  4. When the program works, add Setup and Cleanup to it, and check the section on Usability.
  5. If the program is too slow (and maybe even when it's not), see Optimization and Code Timings for ways to improve it.
  6. Finally, see Releasing Your Program for how to earn TI-Basic programming fame by making the program public.

These are listed in the Writing Programs section of the side navigation menu.

Advanced Topics

The "Special Topics" section (in the side navigation menu) discusses some advanced issues in TI-Nspire programming. You should probably have a good grasp of programming before venturing into these pages, but they are worth reading. Give them a glance to see how much you can understand.

Each special topic is mostly a stand-alone page. Here are the relative difficulties of the pages:

Easy

  • Subprograms — an idea you should be familiar with by now.
  • Saving Data — almost as easy as just storing to a variable.
  • Assembly — I'm not saying writing assembly is easy, but learning about it sure is.

Intermediate

  • Sprites — a matter of learning several commands, and where to use them.
  • Animation — a natural second step from the above.
  • Dialogs — again, just learning a few commands.

Hard

  • Compression — if you wanted, you could get into some heavy theory with this.
  • System Variables — almost more useful as a reference tool than anything else.
  • Tokenization — not much practical use, but it's useful to understand how things work.
  • Cross-Compatibility — if only more people were aware of this…

Reference Material

The pages in the Reference section of the side menu are probably not ones you'd read for fun. Take a look at them at any time to see what they're all about, and then check back when you need to know more.

2018

The ListPages module does not work recursively.

2017

The ListPages module does not work recursively.

2016

The ListPages module does not work recursively.

2015

The ListPages module does not work recursively.

2014

The ListPages module does not work recursively.

2013

The ListPages module does not work recursively.

2012

The ListPages module does not work recursively.

2011

The ListPages module does not work recursively.

2010

The ListPages module does not work recursively.

2009

The ListPages module does not work recursively.

2008

The ListPages module does not work recursively.

2007

The ListPages module does not work recursively.

2006

The ListPages module does not work recursively.

I'll look into doing something about it, but I'm not sure what.

That worries me… :/ test

But you can edit other people's posts…

Oh this looks neat.

samplescreenshot.gif

Routine Summary

Approximates a future value of a given function.

Inputs

X - Initial X-Value
Y - Initial Y-Value
Str1 - The equation
D - X-value at which the Y-value is approximated

Outputs

U - X-value approximation
V - Y -value approximation

Variables Used

E, C, H, X, U, Y, Y1, V

Calculator Compatibility

TI-83/84/+/SE/CSE/CE

Author

Xeda Elnara, who optimized Myles_Zadok's optimization of the routine linked to below:

Authors

The Mathematics Department at the University of Arizona

URL: [http://math.arizona.edu/~krawczyk/Calculator/TI83PLUS/TI83PNEul.html]

Download

routine.zip

Please note that there may be a graphical bug that displays the token -1 as 1.

:"INITIAL-
:Input Ans+"X=",X
:Input Ans+"Y=",Y
:Input "EQN=",Str1
:Str1→Y1
:Input "FINAL-X=",D
:Input "NO. OF ITERATIONS=",E
:Eֿ¹(D-X→H
:For(I,1,E
:ClrHome
:Y+Y1H→Y
:X+H→X
:ClrHome
:Disp "STEP",I,"X=",X,"Y=
:Pause Y
:End

Euler's method is used to predict the value of a function at a higher value than the initial value. The initial x- and y-values are used to find the y- value at the desired x-coordinate of the given function. Multiple iterations are done to reach a better approximation.

Related Routines

Hello TIBD.

Hello world.

Need the rest of the conversation? Check out the archive.

The ListPages module does not work recursively.
The ListPages module does not work recursively.
The ListPages module does not work recursively.
The ListPages module does not work recursively.
Apr 21 Congratulations to Trenly for being promoted to moderator, and to Xeda Elnara and jonbush for being promoted to administrator!
Apr 18 Chatbox temporarily removed due to lack of security, and rules being broken. The anticipated return date is yet TBD

THIS TIP IS FROM TIPRGMZ9K

TIP IS MOSTLY FOR BASIC PROGRAMS.

Ok. Want to prevent people from pressing the "break" button
accidentally during a Dialog or Text session? Here's how:

Prgm
Lbl x
Try
flib("breakoff")
Dialog
Title "Test"
Text "You can't break me!"
EndDlog
Else
Goto x
EndTry
Endprgm

Note: This requires the [[library, which includes commands to disable the [ON key.

It does not have to be Lbl x. This should prevent people from "breaking" the program and exiting the current program in session. This tip might not work all the time.

Credits

Credits to burr, he made everything here.

stop.png

Command Summary

Stops the program at the given point of the program

Command Syntax

No special syntax

Menu Location

In the program editor, [F2][8][4]

Calculator Compatibility

This command works on all calculators.

Token Size

X byte(s)

Simply put, the Stop command stops the program wherever it is placed.

stop()
Prgm
0->X
While true
getkey()->k
x+1->x
Output 5,5,x
If k=13
Stop
EndWhile
EndPrgm

This program will increase the value of x by one, but when the user presses the ENTER button, it will stop. Keep in mind to put the Stop EXACTLY where you want it to stop.

Related Commands

Forum Rules


  • Always be respectful of other posters, including their opinions, values, point-of-view, etc.
  • Always try to work with other posters instead of against them; this is a community and we are all here to help.
  • Don't post or request anything illegal or illicit, including ROMs, music, movies, porn, etc.
  • No cursing, spamming, or flaming.
  • Don't advertise your programs or websites, unless they are relevant and have some unique value to them.
  • Don't reply to old threads (last post is more than three months old); start a new thread instead.
  • Place threads in the appropriate category; Additionally, if a thread starts to go off-topic please start a new one.
  • Don't try to pass off someone else's work as your own — give credit to the author whenever possible.
  • If you have been banned, do not use an alternate account to bypass your ban. We only ban users who have broken these rules, and all of your alternate accounts will be banned if we find there is reasonable proof to believe that it is the same person behind the two accounts.

Code Of Conduct


When people visit and contribute to the wiki, we want to make sure that they find this wiki useful and an enjoyable place to be. To ensure that this happens, we have created a simple code of conduct. Please read through it, and if you have any additional things to add, please go ahead and add them. Thank you for your continued commitment to this code of conduct.

  • Always try to be respectful of other contributors, including their opinions, values, point-of-view, etc. This means no personal attacks, profanity, and especially no threatening or harassing behavior.
  • Don't advertise your programs or websites, unless they are TI-Basic related and have some unique value to them. This wiki is not a catch-all for your programs and websites; there are other websites available for that purpose, so use them instead.
  • Be kind to new contributors, since they are still learning the ropes and figuring out how to use the wiki. If you see that they need some help, go out of your way to help them. This also applies when they make contributions to the wiki.
  • Compliment others on their work. When somebody puts a considerable amount of time and energy into writing an awesome tutorial, show them that you appreciate their effort and dedication. A simple compliment goes a long way.
  • Always try to work with other contributors, instead of against them. When somebody suggests an improvement to your work, take it for what it's worth and not a personal attack on you.
  • Don't post any illegal or unlawful information, unless you are willing to face the consequences. This wiki is not responsible for your actions; you alone will be the one getting in trouble. This is just a warning for your future knowledge.
  • Whenever you reference another website or tutorial, always remember to cite it as a reference. Other people have taken their time to make those things, so you should do the right thing and cite them.
  • Always be who you are. Everybody has something to contribute to the wiki, and we don't want to make you feel like your contributions don't matter. If you have a particular writing style, use that instead of trying to imitate someone else's writing style.
  • If you downgrade someone's program, you must give a valid reason by adding a comment to the page. It is rude to not do so, and it goes against other guidelines of helping others learn.
  • Refrain from double posting. This means posting two times in a row over the course of 24 hours without another person posting in between. If you have something to add, use the edit button (only applicable to your post for regular users) found under the options menu of your post. By doing this, you are not only following the rules, but you are also making the thread cleaner to read.
  • Do not rate your own programs on the archive. This can give a false rating, and can be misleading as to what the community actually thinks of your program.

123

Forum Rules


  • Always be respectful of other posters, including their opinions, values, point-of-view, etc.
  • Always try to work with other posters instead of against them; this is a community and we are all here to help.
  • Don't post or request anything illegal or illicit, including ROMs, music, movies, porn, etc.
  • No cursing, spamming, or flaming.
  • Don't advertise your programs or websites, unless they are relevant and have some unique value to them.
  • Don't reply to old threads (last post is more than three months old); start a new thread instead.
  • Place threads in the appropriate category; Additionally, if a thread starts to go off-topic please start a new one.
  • Don't try to pass off someone else's work as your own — give credit to the author whenever possible.
  • If you have been banned, do not use an alternate account to bypass your ban. We only ban users who have broken these rules, and all of your alternate accounts will be banned if we find there is reasonable proof to believe that it is the same person behind the two accounts.

Code Of Conduct


When people visit and contribute to the wiki, we want to make sure that they find this wiki useful and an enjoyable place to be. To ensure that this happens, we have created a simple code of conduct. Please read through it, and if you have any additional things to add, please go ahead and add them. Thank you for your continued commitment to this code of conduct.

  • Always try to be respectful of other contributors, including their opinions, values, point-of-view, etc. This means no personal attacks, profanity, and especially no threatening or harassing behavior.
  • Don't advertise your programs or websites, unless they are TI-Basic related and have some unique value to them. This wiki is not a catch-all for your programs and websites; there are other websites available for that purpose, so use them instead.
  • Be kind to new contributors, since they are still learning the ropes and figuring out how to use the wiki. If you see that they need some help, go out of your way to help them. This also applies when they make contributions to the wiki.
  • Compliment others on their work. When somebody puts a considerable amount of time and energy into writing an awesome tutorial, show them that you appreciate their effort and dedication. A simple compliment goes a long way.
  • Always try to work with other contributors, instead of against them. When somebody suggests an improvement to your work, take it for what it's worth and not a personal attack on you.
  • Don't post any illegal or unlawful information, unless you are willing to face the consequences. This wiki is not responsible for your actions; you alone will be the one getting in trouble. This is just a warning for your future knowledge.
  • Whenever you reference another website or tutorial, always remember to cite it as a reference. Other people have taken their time to make those things, so you should do the right thing and cite them.
  • Always be who you are. Everybody has something to contribute to the wiki, and we don't want to make you feel like your contributions don't matter. If you have a particular writing style, use that instead of trying to imitate someone else's writing style.
  • If you downgrade someone's program, you must give a valid reason by adding a comment to the page. It is rude to not do so, and it goes against other guidelines of helping others learn.
  • Refrain from double posting. This means posting two times in a row over the course of 24 hours without another person posting in between. If you have something to add, use the edit button (only applicable to your post for regular users) found under the options menu of your post. By doing this, you are not only following the rules, but you are also making the thread cleaner to read.
  • Do not rate your own programs on the archive. This can give a false rating, and can be misleading as to what the community actually thinks of your program.

123

author: Myles_Zadok
version: '1.0'
summary: 'Calculates the four roots of a quartic equation.'
description: 'Asks the user for the coefficients of the five quartic terms and calculates the value of each of the four roots.'
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:quartic/QUARTIC.8xp'
image: null
fileSize: '333'
fileSizeUnit: '1'
dateMade: '1491886800'

NOTE THAT THIS IS A SANDBOX AREA.

samplescreenshot.gif

Command Summary

Creates a folder with a specified name

Command Syntax

NewFold folder name

Menu Location

Catalog

Calculator Compatibility

89/92/T/+/V200

Token Size

1 byte or 2 bytes

The NewFold command allows the user to create a new folder. It can be run like this:

NewFold Hello
//This would make a folder name "hello"

Error Conditions

270 - Duplicate variable name happens when you attempt to create an already made folder.

Related Commands

Several (around 3) commands have a similar function or are used in a similar context to this command. Make a bulleted list of them, with links to the other commands' pages. It will often be the case that several commands all link to each other.

DispHome.gif

Command Summary

Returns the user to the homescreen

Command Syntax

Main command, no special syntax

Menu Location

Press [CATALOG] [D] then scroll down until you see it.

Calculator Compatibility

{$compatibility}

Token Size

2 bytes

The DispHome command returns the user to the homescreen. This is very useful in a program that uses the I/O screen since ending a program with a command like Stop will not automatically return the user to the homescreen. Take this example:

Prompt a
Pause
DispHome

This code will ask for a value for "a", then go to the homescreen. Had you not put the DispHome command there, you would have stayed at the I/O screen, which in some cases can be confusing.

Optimization

The DispHome command also combines the functionality of the Stop command. For example

DispHome
Stop

can be

DispHome

Related Commands

rename.png

Command Summary

Renames a variable into another one

Command Syntax

Rename var1,undefinedvar2

Menu Location

Catalog Menu

Calculator Compatibility

This command works on all calculators.

Token Size

X byte(s)

The Rename command allows you to rename a defined variable to an undefined variable. This is useful if you want to store the value of a variable into another variable, although the Store command is more commonly used for that purpose.

Rename a,b

The above code would run when "a" is a defined variable and "b" is an undefined variable. That means that if both "a" and "b" were defined, or if "a" was undefined and "b" was defined, it would not work (it would give you error 960).You would get an error if you try to redefine an already defined variable.

Advanced Uses

The Rename command can also be used for strings. The below code would store the text in Str1 to "a".

Rename str1,a

Error Conditions

960 - Undefined variable happens when there is an undefined variable.

270 - Duplicate variable name happens when there is a duplicate variable name.

Related Commands

Welcome to the TI-Basic Developer (TI|BD) 68k Basic Starter Kit! This tutorial is designed to help new 68k programmers get their feet off the ground. The tutorial is divided into chapters that each have their own focus, and is meant to be read in sequential order. If you have questions or get stuck, leave a post on the forums and somebody will assist you. Happy coding!

1. Getting Started

  1. Introduction to 68k Basic
  2. Overview of 68k Basic
  3. Your First Program
  4. Good Programming Practices
  5. How to use your 68k Calculator
  6. Computer Setup

2. The Basics of 68k Basic

  1. Intro to Functions in 68k Basic
  2. How to Make a Simple Counting Code in 68k Basic
  3. Overview of Variables and Comments
  4. Intro to Recursion in 68k Basic

3. Creating Games

  1. How to make a Arcade Game
  2. How to Make a RPG Game
  3. How to Make a Math Game
  4. How to Make a Sports Game

4. Advanced Graphics

5. Math Functions

6. Optimization

7. Putting It All Together

  1. Putting It All Together Part 1
  2. Putting It All Together Part 2

8. Miscellaneous

disp.png

Command Summary

Displays an output on the Home or I/O screen

Command Syntax

Disp //[text],var

Menu Location

From the program editor, press [F3][2]

Calculator Compatibility

This command works on all calculators.

Token Size

X byte(s)

The Disp command displays output in the Home App I/O screen. An example:

prgmexmp()
Prgm
Request "Enter something",var1   //Get a value for var1
Disp "var1=",var1
Pause
DelVar var1
ClrIO
DispHome
EndPrgm

Error Conditions

910 - Syntax happens when there is improper syntax/a variable was not used.

Related Commands

Credits

Credits to byobcello for the explanation and code, both were made by him. Modified for readability/corrections

InputStr68K.gif

Command Summary

Stores a string to a variable

Command Syntax

InputStr variable

Menu Location

In the program editor, press [F3][4]

Calculator Compatibility

TI 89(T)/92

Token Size

1 byte or 2 bytes

The InputStr command allows you to input a string to a variable. Since Input doesn't support the storing of strings into variables, you have to use this command to do that. Keep in mind that the inputted variable cannot be the name of a preexisting variable or flash application that is locked, protected, or archived. For example, if you had a program named "a" or "hello", the command wouldn't work because it is already in use.

InputStr A
//Here, you would a string to be stored to the variable A

InputStr hello
//This would store the string into the variable "hello".

Related Commands

Error Conditions

980 - Variable is locked, protected, or archived happens when the user attempted to redefine/modify an already defined variable.

Also See

Prompt68k.gif

Command Summary

Prompts the user to assign a value to a variable

Command Syntax

Prompt var1,var2…

Menu Location

In the program editor, press [F3][5]

Calculator Compatibility

TI 89(T)/92

Token Size

2 bytes

The Prompt command functions much like the Input command. It allows you to type a value to be stored to a variable. You can also prompt multiple values at the same time. For example:

Prompt A
//This will ask the user to type a value for A

Prompt A,B,C
//This will ask for a value for variables A,B, and C

You can also ask for input in user-made variables
Prompt cool
//This asks for a value for the variable "cool"

Related Commands

Circle68K.gif

Command Summary

Draws a circle on the graphscreen

Command Syntax

Circle X,Y,radius,drawing mode

Menu Location

  • Press [Diamond][F3] to enter the graphscreen
  • [F5][LEFT][LEFT] to get to the F7 menu
  • [4], then follow the prompts to draw the circle

Calculator Compatibility

TI-89(T)/92

Token Size

1 byte or 2 bytes

The Circle command allows a person to draw a circle on the graphscreen. It can be drawn using the given keystrokes, or it can be called at the homecreen by typing it out.

Circle 0,0,5 
//Will draw a circle with a center of (0,0) and a radius of five.

Advanced Uses

The Circle command is based off of the window settings, so depending on how they are set up, it could draw a circle or an ellipse.

Command Timing

Unlike the Circle command from the 83+ family of calculators, the Circle command is very fast, drawing it almost instantly to the graphcreen, as demonstrated by the screenshot.

Related Commands

author: Battlesquid
version: '1.0'
summary: 'Clash Royale…now on your 83+ family of calculators'
description: 'Clash Royale…you''ve probably seen it on mobile, and maybe even played it. Now, you can conquer the same way on your graphing calculator! Battle it out with another player to see who is truly the most OP. WIP, soon to be finished.'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '1'
sports: '0'
casino: '0'
board: '1'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:op/OP.8xg'
image: 'archiveimage:superop-home/SuperOP-Home.gif'
fileSize: '3829'
fileSizeUnit: '1'
dateMade: '1490857200'

Routine Summary

Newton's Method - calculates the value of an equation

Inputs

Variant 1: Str1, A
Variant 2: Str1, Str2

Str1 and Str2 - The equation(s) are stored to the string variables.
Y1 and Y2 - The equation(s) are stored to the Y-variables from the string variables, then used for operations.
A - To store the seed value, and then the final value of the equation.

Outputs

A - The answer is stored to A

Variables Used

A, Y1, Y2

Calculator Compatibility

TI-83/84/+/SE/CSE/CE

Authors

Variant 1:Myles_Zadok
Variant 2: Xeda Elnara

Download

newton.zip

Newton's Method is a routine for math that calculates the value of the zeroes of an equation, or the intersection point of two equations.

Variant 1

:Input "Y1=",Str1
:Str1→Y1
:Input "SEED VALUE=",A
:For(I,1,10)
:Tangent(Y1,A)
:A-((Y1(A))/(nDeriv(Y1,X,A)))→A
:End
:Disp "APPROX. ROOT IS ",A

The program asks the user for an equation and the seed value. The seed value is the point from which the calculator approximates the zero of the function, so the seed value needs to be close to the desired zero. The calculator then begins the For( loop, which is run 10 times, each time getting a closer approximation of the zero. The loop draws a tangent line and runs the formula for the zero of the function. The answer, depending on the seed value, should be really close to the zero of the function.

In case you're wondering, you can remove the Tangent( command altogether and make the program run faster. However, you will have no clue as to whether you chose a good seed value or not. The Tangent( command slows down the program, but it lets you see if your chosen seed value will be accurate or not.

Variant 2

Variant 2
:Input "Y1 ",Str1
:Str1→Y1
:Input "Y2 ",Str2
:Str2→Y2
:0→I
:Repeat I=10 or K<20
:I+1→I
:0→K
:10rand→A
:Ans+1
:While K<20 and E-10<abs(A-Ans
:Ans→A
:K+1→K
:A-(Y1(A)-Y2(A))/nDeriv((Y1-Y2),X,A
:End
:End
:Disp Ans

The program asks for two equations and runs Repeat and While loops followed by the formula for the X-coordinate of the intersection of the two equations. The answer should be the value of the X-coordinate of intersection.

+Routines

*Eulers Method

author: 'Angelo DeSanto'
version: 2.2.3.CE
summary: 'A program to solve for any of three variables: Pressure, Temperature, or Heat of formation.'
description: "Very easy to use as the program accepts three pressure units (atm, mmHg, & torr), as well as three temperature units (C,K,&F) and converts all of them automatically to an output of Kelvin, Atmospheres, or Kilojoules per mole, depending on the operation performed\n\nDownload includes a Ti-84+CE version, and a Ti-84+ friendly version"
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:ccsolver/ccsolver.zip'
image: 'archiveimage:capture-3/Capture-3.png'
fileSize: '3'
fileSizeUnit: '2'
dateMade: '1490760000'

author: 'BattlesquidBattlesquid'
version: '1.0'
summary: 'A mini version of the classic Bomberman game!'
description: 'A shrunken down version of the classic Bomberman game. Utilize your endless stream of bombs to make it to the exit without killing yourself. Controls in the README, works on the 83+ and 84+, but recommended for the 84+SE.'
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:bomberman/Bomberman.zip'
image: 'archiveimage:bomberman-gameplay/Bomberman-gameplay.gif'
fileSize: '1125'
fileSizeUnit: '1'
dateMade: '1490425200'

Author: Ericthe101

File Size: takes up barely any RAM.

a virus that will seriously mess up your calculator.

TI-Nspire

tinspire.png

The standard TI-Nspire calculator is comparable to the TI-84 Plus in features and functionality. It features a TI-84 mode by way of a replaceable snap-in keypad (included) and contains a TI-84 Plus emulator. The likely target of this is secondary schools that make use of the TI-84 Plus currently or have textbooks that cover the TI-83 (Plus) and TI-84 Plus lines, and to allow them to transition to the TI-Nspire line more easily.

TI Nspire CX

TI-nspire_CX

The TI-Nspire CX is one of the latest updates to the TI-Nspire series. It has a thinner design with a thickness of 1.57 cm (almost half of the TI-89), a 1200 mAh rechargeable battery (wall adapter is included in the American retail package), a 320 by 240 pixel full color backlit display (3.2" diagonal), and OS 3.0 which includes features such as 3D graphing. With the exception of interchangeable TI-84 keypads, the CX series retain all features of the previous TI-Nspire models. The colors of the calculator are still the same as those of the TI-Nspire models; the CX is white and dark blue. In addition, the external connectors have changed slightly. The mini-USB port, located at the center of the top of the TI-Nspire series, has moved to the right on the CX series. Lastly, on the CX series, TI added a second port immediately left of the mini-USB port, for a new wireless module.

TI Nspire CAS

220px-TI-Nspire_CAS_Touchpad.JPG

The TI-Nspire CAS calculator is capable of displaying and evaluating values symbolically, not just as floating-point numbers. It includes algebraic functions such as a symbolic differential equation solver: deSolve(…), the complex eigenvectors of a matrix: eigVc(…), as well as calculus based functions, including limits, derivatives, and integrals. For this reason, the TI-Nspire CAS is more comparable to the TI-89 Titanium and Voyage 200 than to other calculators. Its likely targets are college students and universities. Unlike the TI-Nspire, it is not compatible with the snap-in TI-84 Plus keypad.

TI Nspire CX CAS

tinspirecxcas.jpg

The TI-Nspire CX CAS Is the latest update to the TI-Nspire series. It has similar features to the CX, It has a thinner design with a thickness of 1.57 cm (almost half of the TI-89), a 1200 mAh rechargeable battery (wall adapter is included in the American retail package), a 320 by 240 pixel full color backlit display (3.2" diagonal), and OS 3.0 which includes features such as 3D graphing. This calculator can be programmed in two types of programming languages: TI-BASIC and Lua.

Bibliography

Wikipedia

author: Trenly
version: '1.0'
summary: 'A program for doing distributions in probability and statistics.'
description: "This program is put here for the use of the Prob-Stats class at my school, or anyone else who wishes to use it. It will be continuously updated as I progress through the course. Some features in the program are not fully implemented yet, as this program is still under development. This is not meant to be an optimized program, and I do not plan on optimizing until the end. The methods used in this program may not be the methods used in every prob-stat course. If you find any bugs with the program send me a private message here on the forums, or send me an email at moc.liamg|cmylnert#moc.liamg|cmylnert\n\nNote: If you enter 0 for Xmax on the normal distribution or the Poisson distribution it will assume it to be infinity. \nNote: If you enter a decimal for Xmin or Xmax in the binomial or Poisson distribution, it will properly round\n[[code]]\nLbl RR\nFix 4\nClrHome\nMenu(\"Distributions\",\"Binomial\",BD,\"Poisson\",PD,\"Normal\",ND,\"χ²\",XD,\"Inverses\",ID,\"Exit\",EX\nLbl BD\nDisp \"prgmBINOMDF\"\nInput \"N:\",N\nInput \"P:\",P\nInput \"Xmin:\",X\nInput \"Xmax:\",Y\nIf not(fPart(P) or iPart(P):Goto RR\nIf fPart(X):iPart(X)+1→X\nIf fPart(Y):iPart(Y)→Y\nIf fPart(N):iPart(N)→N\nIf sum(1>{N,Y}:Goto RR\nIf Y<X:Stop\nIf Y=X:binompdf(N,P,X)\nIf Y>X:binomcdf(N,P,Y)-binomcdf(N,P,X-1)\nGoto DA\nLbl PD\nDisp \"prgmPOISSDF\"\nInput \"λ:\",L\nInput \"Xmin:\",X\nInput \"Xmax:\",Y\nIf fPart(X):iPart(X)+1→X\nIf fPart(Y):iPart(Y)→Y\nIf 0>L:Goto RR\nIf Y=0:999999→Y\nIf X>Y:Goto RR\nIf X=Y:poissonpdf(L,X)\nIf Y>X:poissoncdf(L,Y)-poissoncdf(L,X-1)\nGoto DA\nLbl ND\nDisp \"prgmNORMALDF\"\nInput \"µ:\",M\nInput \"σ:\",S\nInput \"Xmin:\",X\nInput \"Xmax:\",Y\nIf Y=0:999999→Y\nnormalcdf(X,Y,M,S)\nGoto DA\nLbl XD\nLbl ID\nPause \"Coming Soon\nGoto RR\nLbl DA\nPause Ans\nGoto RR\nLbl EX\nFloat\nStop\n[[/code]]"
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:distribs-2/DISTRIBS.8xp'
image: null
fileSize: '577'
fileSizeUnit: '1'
dateMade: '1490245200'

Development articles for the Nspire are still very much underway. However, you can look at the beginners guide to gain some knowledge on Nspire Basic.

…that the Nspire can program in TI BASIC, C, Assembly, and Lua?

…that Nspires can program in BASIC, Lua, and C?

Did you know…

The ListPages module does not work recursively.

What is IRC?

IRC stands for Internet Relay Chat, and is a tool that allows users to communicate with each other quickly and efficiently. An IRC comes in the form of a client, which means you would have to download it to be able to use it. There are many networks in IRC (common ones such as freenode, EFnet, IRCNet) and within those networks, you can find channels (where the "actual" communication takes place). The TIBD has its own channel named #tibasicdev, which is really useful for those who have questions regarding calculators or programming. Here is a tutorial that will give you step by step instructions on how to connect to our IRC channel.

Step 1: Obtaining an IRC

The first step to connecting to IRC is actually getting an IRC client. There are many IRC's out there, but I will mention a few across the most common platforms. Here are my suggestions.

Step 2: Connecting to a network

For this tutorial, I will be using Quassel since it is easy to configure. Most other IRC's should setup similarly, so if you are using another IRC, the process should fairly be the same. Once you have an IRC client, open it up. A setup window should pop up. Click "Next" and you should see a "General" tab and "Away" tab.

Quassel Identity Setup
QSetup%201.png

In the "General" tab, you can add nicknames that will show up as you in IRC, and you can also add your real name if you like. In the "Away" tab, you can add an away message, which is displayed when you leave the IRC.

Once you have configured those tabs, click "Next". You will then see a space asking for a Network. By default it will be on Freenode, but don't worry about this yet. Click "Save & Connect". From there, you will need to go to File>Networks>Configure Networks. You should see this screen.
Network.png

Click on the "Add" button and another window should open. By default, you will be on the option of a preset network. Select "EFnet from the drop down list and press OK in the current window and Network window. You should be at the home page now (Make sure the network EFnet is highlighted before continuing).

Step 3:Connect to a Channel

Now look near the top of the screen, and you should see four buttons (Connect to IRC Disconnect from IRC, Join Channel, Leave Currently selected channel). Click on "Connect to IRC" to connect to the EFnet network. You will know you are connected when the text "EFnet" is black (Gray text means there is no connection). Now click on "Join Channel" and you should see a window. Type "#tibasicdev" in the channel space, then click OK.

Join Channel

basicdev.png

Congratulations, you are now at the TIBD channel! If you have any problems connecting you can discuss them here.

Credits

Thanks to jonbush and Pieman7373 for giving me the IRC's for Android and iOS :)

author: 'Myles_Zadok; adapted from Trenly''s adaptation of Robert Black''s Flappy Bird emulation'
version: '1.0'
summary: 'Full-screen Flappy Bird emulation on the TI-84+ CSE and CE calculators.'
description: "Full-screen Flappy Bird emulation on the TI-84+ CSE and CE calculators.\n\n\"This is a remake of the previously uploaded game Flappy Bird which features a more intuitive design which allows users to change the speed, and makes the input easier. The code was completely rewritten, and has been tested. It now appears to be bug-free.\n\nTo change the speed, change the first line of the program. A lower number stored into D will make the program faster, higher numbers will make it slower. D must be at least 1.\" - Taken from Trenly's Flappy Bird 2 description.\n\nIf your calculator is older than a TI-84+ CSE, then you need to use Trenly's Flappy Bird 2."
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '1'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: ff
download: 'archivefile:flpbirdc/FLPBIRDC.8xp'
image: null
fileSize: '397'
fileSizeUnit: '1'
dateMade: '1489212000'

author: 'Trenly; Credit to Robert Black for the original idea to emulate Flappy Bird on a calculator'
version: 1.0.2
summary: 'A remake of the previously uploaded game Flappy Bird.'
description: "This is a remake of the previously uploaded game Flappy Bird which features a more intuitive design which allows users to change the speed, and makes the input easier. The code was completely rewritten, and has been tested. It now appears to be bug-free. If it does not work when you enter it into your calculator, make sure you have entered everything correctly! This code has been proven to work by either the download or the source code.\n
\n\nTo change the speed, change the first line of the program. A lower number stored into D will make the program faster, higher numbers will make it slower. D must be at least 1. \n\nSource Code:1\n[[code]]\n15→D\nClrHome\n4→Y\n⁻1→S\nRepeat Y>8\nrandInt(3,7)→H\nS+1→S\nFor(V,16,1,⁻1)\nIf Y>8:Stop\nIf V=2 and (Y≠H and Y≠H-1):Stop\nIf Y≤8:Output(Y,2,\">\"\nFor(E,1,H-2)\nOutput(E,V,\"I\"\nEnd\nFor(E,H+1,8)\nOutput(E,V,\"I\")\nEnd\nFor(E,1,D)\nEnd\nFor(E,1,8)\nOutput(E,V,\" \" //one space\nEnd\nOutput(1,8,S\ngetKey→K\nIf not(K)\nThen\nIf Y≤8:Output(Y,2,\" \" //one space\nY+1→Y\nEnd\nIf K and Y>1\nThen\nIf Y≤8:Output(Y,2,\" \" //one space\nY-1→Y\nEnd\nEnd\nEnd\n[[/code]]"
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:flap/FLAP.8xp'
image: 'archiveimage:flappygif/FlappyGif.gif'
fileSize: '249'
fileSizeUnit: '1'
dateMade: '1489212000'

…that you can draw different lines for equations by going to the "Y=" menu, pressing left twice, and pressing enter to cycle through the different line types?

This page is to reduce confusion when reading code here on the forums. The conventions found on this page are the ones which are the accepted standard on this and many other coding sites. Many of these characters can be found in the character box at the top right of your page, where you can copy and paste them. However, if you find this difficult, you can use the conventions as they are below.

Convention Meaning
L1 L₁
L2 L₂
L3 L₃
L4 L₄
L5 L₅
L6 L₆
->
>=
<=
~=
!=
sqrt(
cubert(
nroot( ⁿ√
DeltaX ΔX
DeltaY ΔY
// Code Comment, do not include

author: Myles_Zadok
version: '1.0'
summary: 'Calculates sample standard deviation, variance, population standard deviation, population variance, and the mean of a user-inputted list of numbers.'
description: 'The user is asked to input a list of numbers. The program then displays a menu of statistical variables. The user will then select a variable, and the calculator displays the value of the variable for the set list of numbers. This will be repeated until the user selects the menu option of "Quit." This program was originally written for a TI-84+CE. '
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:statmenu/STATMENU.8xp'
image: null
fileSize: '349'
fileSizeUnit: '1'
dateMade: '1486274400'

Are you new to Ti-BD? If so, then welcome to the community! This is a guide on how to do some of the basic things here on the forums. Let's start with the basics. Since you're reading this thread, I am going to guess you have already made an account. If you haven't, you can click here to Create Account.

Rules

Be sure to read the rules and code of conduct! They can both be found here . Please read and adhere to both of them.

Changing your avatar

  1. Click on the My Account button at the top of the page.
  2. Navigate to the Settings tab
  3. Click the button next to "Avatar" which says "Change"
  4. Follow the prompts to upload an image to use as your avatar

Editing your "About Me" page

  1. Click on the My Account button at the top of the page.
  2. Navigate to the Settings tab
  3. On the left side of the screen, you will see a tab titled About me, click that
  4. Add any information you wish to share

Adding a signature

  1. Click on the My Account button at the top of the page.
  2. Navigate to the Settings tab
  3. On the left side of the screen, you will see a tab titled Forum signature, click that
  4. Add a signature that will appear under all your posts

Introducing yourself

  1. Click here to go to the Community Introductions forum
  2. Click on the "New Thread" button
  3. Tell us about yourself! Common responses include Where are you from? What are some of your hobbies? What programming languages do you know?

Making a Post

  1. Navigate around forums! Find a thread you want to reply to. I personally like to use the Recent Posts page.
  2. Make sure the thread isn't outdated. Threads more than two or three months old are likely inactive, and the user no longer cares about a response. We consider these dead threads, so please do not reply to them.
  3. To contribute to the original post click on the "New post" button
  4. To contribute to a specific reply or post, click on the "Reply" button under the post you want to respond to.
  5. Edit the title if you want, although this is optional
  6. Write your response
  • Note: you can use Wiki Markup in your reply to format it. Wiki Markup codes are found here
  • Also note the "Char" Box in the upper right corner of the screen. It contains the TI-Basic characters that aren't readily accessed from the keyboard. It is meant to be a nice convenience for people who want to post code on the forum, allowing you to quickly copy and paste instead of having to hunt them down every time.

Making a Thread

  1. Navigate to the Discussion Forums. There should be a button for this on the sidebar.
  2. Decide which forum most relates to what you want to discuss.
  3. Near the top of the page, click on the "Create new thread" button
  4. Add a relevant title, and a summary. Note that the summary should not be the same as your post, but rather a short description
  5. Write your post. As with any other post, you can use Wiki Markups

Adding a program to the archives

  1. Navigate to the Program Archives. There should be a button for this on the sidebar.
  2. In the box at the top of the page, there is a link to Add a Program to the Archive.
  3. Enter a name for your program in the box, and then click "Create Program Page"
  4. Fill in as much information as possible.
  5. Add a download by clicking on the "Select File" Button. Most programs are in the form of .8xp .8xg .zip or .rar
  6. If you do not have a download for your program, put the source code into SRC.txt and upload that, a site moderator may be able to compile the program later.
  7. Hit "Save"
  8. Your program is now on the archives!

Adding a file to the forums or a thread

  1. On any thread, or in the screen for creating a thread, look for the "Forum Attachments" link near the top, or the "Files" button near the bottom
  2. Clicking on this link will bring up a list of files
  3. To add a file, click on the "Upload a file from your computer" button
  4. Browse your computer and select which files you want to upload
  5. Click on the "Upload" button and wait for a confirmation message
  6. To download your file, just click on the name of the file.
  7. To get the download link, right click on the name of the file, and then select "Copy Link Address"
  • Note: you can attach these files using wiki markup. To show an image use [[image pagename/filename]]. To attach any file, use [[file pagename/filename]]
  • To find the "pagename/filename" open the file list (see step 1). Right click on the title of the file you would like, and copy the link. Paste the link where "pagename/filename" goes. Remove the link except for the part after "local—files"

Sending a message

  • If you have a question for a specific user, you can send them a private message.
  • Simply click on their avatar, and then the "Write Private Message" button.
  • Alternatively, you can click on "My account" then "Messages" and look for the "New Message" button.
  • Please note though, that we encourage public discussion, and that most content should be posted in threads.
  • Click Here to go right to the new message screen.
  • To see if you have new messages, look at the top of the page near your name. If you see (1) after your name, it means you have one new message. Similarly, (2) is 2 messages, (3) is 3, etc.

Get involved

Getting involved is the best way to learn! Explore the site! There is a lot of information here on TI-BD, and it was contributed by users like you. Discuss, program, work with others. You can help this community grow by being active and involved here on TI-BD. Also, be helpful! Please try not to rely on the community to only help you. You should try and help others also. This means that you should also not rely on the community to create your code for you. Asking for a routine or optimization is okay, but we are not willing to write your whole program. This is a community that is here to help you learn, and the only way for you to learn is to do it yourself.

author: TheCubist
version: '1.0'
summary: 'A great Simon clone! For the Ti 84 +, that can remember up to 99 digits in its sequence! Remember the longest sequence and then repeat it back using the F1, F2, F3, and F4 keys. Good luck!'
description: 'A great Simon clone! For the Ti 84 +, that can remember up to 99 digits in its sequence! Remember the longest sequence and then repeat it back using the F1, F2, F3, and F4 keys. Good luck! This game has no current high score system, i am still working on that, but it still works perfectly fine. It is a very small program, so no harm in downloading it at all. Thanks a bunch to trenly who helped me optimize it!'
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '1'
compatibility: bb
download: 'archivefile:simon-1/SIMON.8xp'
image: null
fileSize: '326'
fileSizeUnit: '1'
dateMade: '1480233600'

author: Winnie33
version: '1'
summary: 'A 2D RPG with unique combat mechanisms.'
description: "In the lands of Winitium, monsters have appeared! Go and defeat all 6 area's to save the country! But beware, monsters are strong and thus you must be too. Grab a set of dice and roll your way to victory!\n\nFeaturing:\n-a unique combat system (inspired by Tiny Dice Dungeon)\n-6 levels with each 8 unique enemies\n-4 different dice, each with its own abilities\n-a shop to spend your money\n-a casino to l̶o̶s̶e̶ multiply your money\n-customizable options\n-a crafting system\n-and lots more!"
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:winitium-1/Winitium.zip'
image: null
fileSize: '20'
fileSizeUnit: '2'
dateMade: '1479164400'

Sep 19 A chatbox has been added to the forums. If you need help, simply enter a nickname and ask your question.
Sep 04 TI-Basic Developer celebrates its 10th birthday!
Sep 19 A chatbox has been added to the forums. If you need help, simply enter a nickname and ask your question.

This is a command map as it would appear on the various menus on a monochrome TI-83+ series calculator. To see every command, see the Command Index. To see the same map for color calculator versions, see the Color Command Map.

Control Flow (PRGM)

CTL I/O EXEC
1: If 1: Input
2: Then 2: Prompt
3: Else 3: Disp
4: For( 4: DispGraph
5: While 5: DispTable
6: Repeat 6: Output(
7: End 7: getKey
8: Pause 8: ClrHome
9: Lbl 9: ClrTable
0: Goto 0: GetCalc(
A: IS>( A: Get(
B: DS<( B: Send(
C: Menu(
D: prgm
E: Return
F: Stop
G: DelVar
H: GraphStyle(
I: OpenLib(
J: ExecLib

Matrices (2nd MATRIX)

NAMES MATH EDIT
1: [A] 1: det( 1: [A]
2: [B] 2: T 2: [B]
3: [C] 3: dim( 3: [C]
4: [D] 4: Fill( 4: [D]
5: [E] 5: identity( 5: [E]
6: [F] 6: randM( 6: [F]
7: [G] 7: augment( 7: [G]
8: [H] 8: Matr►list( 8: [H]
9: [I] 9: List►matr( 9: [I]
0: [J] 0: cumSum( 0: [J]
A: ref(
B: rref(
C: rowSwap(
D: row+(
E: *row(
F: *row+(

Graph Screen (2nd DRAW)

DRAW POINTS STO
1: ClrDraw 1: Pt-On( 1: StorePic
2: Line( 2: Pt-Off( 2: RecallPic
3: Horizontal 3: Pt-Change( 3: StoreGDB
4: Vertical 4: Pxl-On( 4: RecallGDB
5: Tangent( 5: Pxl-Off(
6: DrawF 6: Pxl-Change(
7: Shade( 7: pxl-Test(
8: DrawInv
9: Circle(
0: Text(

Lists (2nd LIST)

NAMES OPS MATH
1: L1 1: SortA( 1: min(
2: L2 2: SortD( 2: max(
3: L3 3: dim( 3: mean(
4: L4 4: Fill( 4: median(
5: L5 5: seq( 5: sum(
6: L6 6: cumSum( 6: prod(
7: ΔList( 7: stdDev(
8: Select( 8: variance(
9: augment(
0: List►matr(
A: Matr►list(
B: L

Zoom Menu (ZOOM)

ZOOM MEMORY
1: ZBox 1: ZPrevious
2: Zoom In 2: ZoomSto
3: Zoom Out 3: ZoomRcl
4: ZDecimal 4: SetFactors…
5: ZSquare
6: ZStandard
7: ZTrig
8: ZInteger
9: ZoomStat
0: ZoomFit
A: ZQuadrant1
B: ZFrac1/2
C: ZFrac1/3
D: ZFrac1/4
E: ZFrac1/5
F: ZFrac1/8
G: ZFrac1/10

Math Functions (MATH)

MATH NUM CPX PRB
1: ►Frac 1: abs( 1: conj( 1: rand
2: ►Dec 2: round( 2: real( 2: nPr
3: ³ 3: iPart( 3: imag( 3: nCr
4: ³√( 4: fPart( 4: angle( 4: !
5: ×√ 5: int( 5: abs( 5: randInt(
6: fMin( 6: min( 6: ►Rect 6: randNorm(
7: fMax( 7: max( 7: ►Polar 7: randBin(
8: nDeriv( 8: lcm( 8: randIntNoRep(
9: fnInt( 9: gcd(
0: summation Σ( 0: remainder(
A: logBASE( A: ►n/d◄►Un/d
B: solve( B: ►F◄►D
C: Un/d
D: n/d

Graph Format (2nd FORMAT)

RectGC PolarGC
CoordOn CoordOff
GridOff GridOn
AxesOn AxesOff
LabelOff LabelOn
ExprOn ExprOff

Operators (2nd TEST)

TEST LOGIC
1: = 1: and
2: 2: or
3: > 3: xor
4: 4: not(
5: <
6:

Angle (2nd ANGLE)

ANGLE
1: °
2: '
3: r
4: ►DMS
5: R►Pr(
6: R►Pθ(
7: P►Rx(
8: P►Ry(

Strings (2nd CATALOG)

Equ►String(
expr(
inString(
length(
String►Equ(
sub(

Statistics (STAT)

EDIT CALC TESTS
1: Edit… 1: 1-Var Stats 1: Z-Test...
2: SortA( 2: 2-Var Stats 2: T-Test...
3: SortD( 3: Med-Med 3: 2-SampZTest...
4: ClrList 4: LinReg(ax+b) 4: 2-SampTTest...
5: SetUpEditor 5: QuadReg 5: 1-PropZTest...
6: CubicReg 6: 2-PropZTest...
7: QuartReg 7: ZInterval...
8: LinReg(a+bx) 8: TInterval...
9: LnReg 9: 2-SampZInt...
0: ExpReg 0: 2-SampTInt...
A: PwrReg A: 1-PropZInt...
B: Logistic B: 2-PropZInt...
C: SinReg C: χ²-Test...
D: Manual-Fit D: χ²GOF-Test...
E: 2-SampFTest
F: LinRegTTest
G: LinRegTInt...
H: ANOVA(

Distributions (2nd DISTR)

DISTR DRAW
1: normalpdf( 1: ShadeNorm(
2: normalcdf( 2: Shade_t(
3: invNorm( 3: Shadeχ²(
4: invT( 4: ShadeF
5: tpdf(
6: tcdf(
7: χ²pdf(
8: χ²cdf(
9: Fpdf(
0: Fcdf(
A: binompdf(
B: binomcdf(
C: poissonpdf(
D: poissoncdf
E: geometpdf(
F: geometcdf(

Stat Plots (2nd PLOT)

PLOTS TYPE MARK
1: Plot1( 1: Scatter 1: "box" mark
2: Plot2( 2: xyLine 2: "cross" mark
3: Plot3( 3: Histogram 3: "dot" mark
4: PlotsOff 4: ModBoxplot 4: "point" mark
5: PlotsOn 5: Boxplot
6: NormProbPlot

Window Variables (VARS 1)

X/Y T/θ U/V/W
1: Xmin Tmin u(nMin)
2: Xmax Tmax v(nMin)
3: Xscl Tstep w(nMin)
4: Ymin θmin nMin
5: Ymax θmax nMax
6: Yscl θstep PlotStart
7: Xres PlotStep
8: ΔX
9: ΔY
0: XFact
A: YFact
B: TraceStep

Zoom Variables (VARS 2)

ZX/ZY ZT/Zθ ZU
1: ZXmin 1: ZTmin 1: Zu(nMin)
2: ZXmax 2: ZTmax 2: Zv(nMin)
3: ZXScl 3: ZTstep 3: Zw(nMin)
4: ZYmin 4: Zθmin 4: ZnMin
5: ZYmax 5: Zθmax 5: ZnMax
6: ZYscl 6: Zθstep 6: ZPlotStart
7: ZXres 7: ZPlotStep

Table Variables (VARS 6)

TABLE
1: TblStart
2: ΔTbl
3: TblInput

Function On/Off Variables (VARS Y-VARS 4)

ON/OFF
1: FnOn
2: FnOff

Statistics Variables (VARS 5)

XY Σ EQ TEST PTS
1: n 1: Σx 1: RegEQ 1: p 1: x1
2: x̄ 2: Σx2 2: a 2: z 2: y1
3: Sx 3: Σy 3: b 3: t 3: x2
4: σX 4: Σy2 4: c 4: X2 4: y2
5: y bar 5: Σxy 5: d 5: F 5: x3
6: Sy 6: e 6: df 6: y3
7: σy 7: r 7: p̂ 7: Q1
8: minX 8: r2 8: p̂1 8: Med
9: maxX 9: R2 9: p̂2 9: Q3
0: minY 0: s
A: maxY A: x̄1
B: x̄1
C: Sx1
D: Sx2
E: Sxp
F: n1
G: n2
H: lower
I: upper
GridLine.png

Command Summary

Enables a grid of colored lines on the graph screen.

Command Syntax

GridLine [color#]

Menu Location

Press:

  1. 2nd FORMAT to access the graph format menu.
  2. Use arrows and ENTER to select GridLine.

Calculator Compatibility

TI-84+ CSE/CE

Token Size

2 bytes

The GridLine command enables a grid of colored lines on the graph screen (you can disable it with the GridOff command). How fine or coarse the grid is depends on the Xscl and Yscl variables. Drawing the grid just involves plotting points all the horizontal and vertical lines that intersect points of the form (A×Xscl, B×Yscl) that are in the graphing window. The grid can be colored based on any color variable or value.

Advanced Uses

GridLine can be used to shade the entire screen if Yscl is small enough that the lines on the grid are one pixel apart:

:ΔY→Yscl
:GridLine RED

This is one of the shortest ways to shade the screen, although Shade( can be used for a (usually) even shorter way. However, using GridLine is also very slow: the fastest way involves the Horizontal or the Vertical commands in a For( loop.

You could also use GridLine to draw the playing grid for a Dots and Boxes game.

Related Commands

GridDot.png

Command Summary

Enables a grid of colored dots on the graph screen

Command Syntax

GridDot [color#]

Menu Location

Press:

  1. 2nd FORMAT to access the graph format menu.
  2. Use arrows and ENTER to select GridDot.

Calculator Compatibility

TI-84+ CSE/CE

Token Size

2 bytes

The GridDot command enables a grid of dots on the graph screen (you can disable it with the GridOff command). How fine or coarse the grid is depends on the Xscl and Yscl variables. Drawing the grid just involves plotting points all the points of the form (A×Xscl, B×Yscl) that are in the graphing window. The grid can be any colored defined by a color variable or value.

:GridDot BLUE    //creates a grid of blue dots
:GridDot 12       //creates a grid of black dots

Related Commands

toString.png

Command Summary

Returns the string representation of the value of the input.

Command Syntax

toString(value)

Menu Location

This command is found only in the Catalog. Press:

  1. 2ND CATALOG to enter the catalog
  2. T to go to commands starting with T
  3. Scroll down to toString(.

Calculator Compatibility

TI-84+ CE OS 5.2

Token Size

2 bytes

The toString( command, given any value including real numbers, complex numbers, lists, or matrices, returns the string representation of the value of the input.

toString(1337       //returns "1337"

toString({1,2,3}    //returns "{1,2,3}"

toString([[1,2][3,4]]   //returns "[[1,2][3,4]]"

toString(√-1     //returns imaginary number "i"

toString( has less limitations than the eval( command. It can handle lists, matrices, and complex numbers. Another difference from eval( is that toString( is affected by display mode changes like Fix.

toString( replaces the old number-to-string routine previously used prior to OS 5.2.

Error Conditions

  • ERR:DATA TYPE is thrown when the input is a string.
  • ERR:NONREAL ANSWERS is thrown when the input is a complex number and your calculator is in REAL mode.
  • ERR:SYNTAX is thrown when trying to evaluate a command that doesn't return a value.

Related Commands

Mastermind is a fun game that involves trying to break a random code of five numbers (1-9) in fifteen guesses or less. To help assist you with the code-breaking, a list of two numbers is provided. The first number is the number of digits that are correct and in the wrong place, and the second is the number of digits that are correct and in the right place. Try out the game and try to understand and think through the code.

The Code

:int(10rand(5))+1→L1  
:For(G,-15,-1 
:Input A 
:int(10fPart(A/10^(5-cumSum(1 or L1→L2 
:sum(L1=Ans 
:Disp {sum(seq(min(sum(L1=N),sum(L2=N)),N,0,9))-Ans,Ans 
:If Ans<4 
:End 
:If not(G 
:Disp L1 
:"LOSE 
:If G 
:"WIN 
:"YOU "+Ans

Related Games

This page is unfinished.

Select your calculator to see the corresponding command index.

TI-83+
TI-84+ CE

Ops | # | A | B | C | D | E | F | G | H | I | L | M | N | O | P | Q | R | S | T | U | V | W | X | Z

This page lists all of the commands for the TI-83/84/SE/+ models. If you have a newer TI-84 Plus C Silver Edition or TI-84 Plus CE with a color display, please visit the Color Command Index.

To access more information about the command, click on the command to go to the dedicated page for that command. To view the commands divided into sections, go to the Command Overview. To view most of the commands as they would on the calculator itself through the menus, go to the Command Menu Map.

Some commands have a superscript next to them that indicates compatibility:

  • 83+ indicates that the command requires a TI-83+, TI-83+SE, TI-84+, TI-84+SE, or TI-84+CSE calculator.
  • 84+ indicates that the command requires a TI-84+,TI-84+SE, or TI-84+CSE calculator.
  • 84+2.30 indicates that the command requires a TI-84+, TI-84+SE, or TI-84+CSE calculator with OS 2.30 or higher.
  • 84+2.53MP indicates that the command requires a TI-84+, TI-84+SE, or TI-84+CSE calculator with OS 2.53MP or higher.

See Compatibility for a chart of only the commands that require certain calculators or operating systems.

Ops

#

A

B

C

D

E

F

G

H

I

L

M

N

O

P

Q

R

S

T

U

V

W

X

Z

eval.png

Command Summary

Returns the string representation of the value of a real expression.

Command Syntax

eval(expression)

Menu Location

This command is found only in the Catalog. Press:

  1. 2ND CATALOG to enter the catalog
  2. E to go to commands starting with E
  3. Scroll down to eval(.

Calculator Compatibility

TI-84+ CE OS 5.2

Token Size

2 bytes

The eval( command, given an expression that evaluates to a real number, returns the string representation of that number.

eval(1337       //returns "1337"

eval(2.0-3.0    //returns "‾1"

eval(.0001234   //returns "1.234ᴇ‾4"

eval( has more limitations than the toString( command. It cannot handle lists, matrices, or complex numbers (even when the imaginary part of the complex number is zero). Another difference from toString( is that eval( is unaffected by display mode changes like Fix.

Advanced Uses

Use eval( in conjunction with expr( to evaluate a real expression in a string and return the answer in a string.

3.14->X
eval(expr("2X+3
//returns "9.28"

Error Conditions

  • ERR:DATA TYPE is thrown when the expression contains a list, matrix, imaginary number, or string.
  • ERR:SYNTAX is thrown when trying to evaluate a command that doesn't return a value.

Related Commands

author: Battlesquid
version: 1.4_Beta
summary: 'A new update to Battlesquid''s game, inFINITE, which pits you against endless waves of monsters and (soon) bosses! Get your trigger fingers ready…'
description: "inFINITE | UPDATE 1.3\n___\ninFINITE pits you against seemingly endless waves of bosses and enemies. Battle it out as one of five classes for as long as you can. With over 3000 levels of gameplay, an achievement system, and well hidden easter eggs, you won't want to miss downloading this for your 83+. See the README for more info.\nAuthor\tMayowa Esan (moc.liamg|117diuqsemit#moc.liamg|117diuqsemit)"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '1'
strategy: '1'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:infinite/INFINITE.zip'
image: 'archiveimage:infinite-logo/inFINITE-Logo.gif'
fileSize: '7121'
fileSizeUnit: '1'
dateMade: '1472713200'

author: Webbyman11
version: '1.0'
summary: 'Langton''s Ant in pure TI Basic'
description: 'This is a version of langton''s ant that I created myself. I got some of the techniques from the langton''s ant page on this site, but I created the engine. It is not very fast and if you want to make it more efficient, please tell me what to do. Enjoy!'
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:ant-1/ANT.8xp'
image: null
fileSize: '797'
fileSizeUnit: '1'
dateMade: '1469084400'

author: 'Ryan P.'
version: '1.1'
summary: 'This is an easy to use right angle triangle solver that has error checking abilities and only requires an angle and a side or 2 sides.'
description: "This program is unique and has error checking and uses logic not menus to solve a triangle making it easy to use.\n\nThis program is for right angle triangles only.\nThis program Draws a labeled picture and uses Sine Arcsin Cos arccos Tan & Arctan\nThis program will ask for 5 inputs (2 angles and 3 side lengths) press the \"X\" key (and enter to submit) for 3 of them and enter the values of 2 known ones the ones that were entered as \"X\" will be solved no menus needed the logic in the program will do the thinking for you.\n\nRight angle triangle solver Ultimate Edition- Draws a picture of a right angle triangle in a split screen with the angles and the sides (opposite adjacent and hypotenuse) labeled. There are no additional files needed. It will save and restore your Xmax Xmin Ymax and Ymin and turn the axes back on as long as the program is ran to completion."
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '0'
utility: '1'
misc: '0'
compatibility: dd
download: 'archivefile:right-angle-triangle-solver-ultimateedition-1/Right_angle_triangle_solver_UltimateEdition.zip'
image: 'archiveimage:screenshot2-3/screenshot2.gif'
fileSize: '959'
fileSizeUnit: '1'
dateMade: '1468735200'

author: Battlesquid
version: '1.1'
summary: 'Sticks(Chopsticks) for the 83/84+!'
description: "Battle against your opponent in this classic game of strategy! For more info, go to https://en.wikipedia.org/wiki/Chopsticks_(hand_game)#Splitting\nReport any bugs/errors to moc.liamg|117diuqsemiT#moc.liamg|117diuqsemiT\nEnjoy!"
arcade: '1'
graphics: '0'
platform: '0'
puzzle: '1'
rpg: '0'
strategy: '1'
sports: '0'
casino: '0'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:sticks-1/Sticks.8xp'
image: 'archiveimage:1467017515-1/1467017515.gif'
fileSize: '931'
fileSizeUnit: '1'
dateMade: '1467010800'

asmprgm-example.gif
Example of Inputting Hex Code

There are all sorts of small assembly programs that you can create simply using the calculator's built-in assembly commands (specifically, AsmPrgm84C and AsmPrgmCE), along with the appropriate hexadecimal code. In order to run a program, you need to use the Asm( command, where Asm(prgmPROGNAME is the program that contains the hexadecimal code.

As a word of caution, when entering in the hexadecimal, you need to be very careful that you type it in exactly as you see it. If there is a single incorrect character, the calculator might crash and reset your RAM when you turn it on again. We have tested the hexadecimal codes to make sure they work, but it's up to you to enter them in correctly.

Table of Contents

Toggle Program Mode

:AsmPrgm84C
:FD7E08EE02FD7708C9

When used in a program, it allows you to use Archive and UnArchive on other programs. warning: Make sure to switch back to "program mode" when you're done by running the program again.

Screen to Graph [TO DO]

Quick Key [TO DO]

Text Inverse

:AsmPrgm84C
:FD7E05EE08FD7705C9

This will switch from normal text mode to inverse (white text on black background) and vice versa.

Lowercase

Lowercase On

AsmPrgm84C
:FDCB24DEC9

Lowercase Off

AsmPrgm84C
:FDCB249EC9

Lowercase Toggle

AsmPrgm84C
:FD7E24EE08FD7724C9

This will toggle lowercase on or off

Fill Screen [TO DO]

LCD Clear

Asm84CEPrgm
:CD101A02C9

Clears the LCD.

LCD Clear and redraw Status Bar

Asm84CEPrgm
:CD101A02CD3C1A02C9

Same as LCD Clear, but redraws the Status bar.

White

Asm84CEPrgm
:210000D436FFE5D11301FF5702EDB0C9

Black

Asm84CEPrgm
:210000D43600E5D11301FF5702EDB0C9

Fill Screen with color value in Ans (0-255, from xLibC palette)

Asm84CEPrgm
:CD500F02CD700F02320000D4210000D4E5D11301FF5702EDB0C9

Border [TO DO]

White Border [TO DO]

Black Border, Clear Inside [TO DO]

Invert Screen [TO DO]

Change brightness level (ti-84 plus CE)

Set Brightness

Asm84CEPrgm
:CD500F02CD700F02322400F6C9

Set the brightness to a value between 0 and 255 stored in Ans, 255 is low, 0 is high.

Decrease Brightness

Asm84CEPrgm
:3A2400F63C322400F6C9

Decrease the brightness by 1. Run many times to see a noticeable difference.

Increase Brightness

Asm84CEPrgm
:3A2400F63D322400F6C9

Increase the brightness by 1. Run many times to see a noticeable difference.

Run Indicator [TO DO]

Run Indicator Off [TO DO]

Run Indicator On [TO DO]

Toggle Run Indicator

AsmPrgm84C
:FD7E12EE01FD7712C9

Note that when this routine turns the run indicator off, it doesn't erase the run indicator, it simply stops it. You can do this yourself — either by outputting something to the top right corner, or by clearing the screen (ClrDraw or ClrHome, doesn’t matter).

Simulated Key Presses

Alpha Lock

AsmPrgm84C
:3E51FD7712C9

This simulates [2nd][Alpha]

Alpha Lock (No disable)

AsmPrgm84C
:3ED1FD7712C9

This is the same as the first, but you have to press [2nd][mode] to disable it.

Lowercase Press

AsmPrgm84C
:3E31FD7712C9

This works even if lowercase isn't enabled.

Lowercase Lock

AsmPrgm84C
:3E71FD7712C9

This simulates [2nd][Alpha][Alpha].

Lowercase Lock (No disable)

AsmPrgm84C
:3EB1FD7712C9

This can only be disabled by pressing [2nd][mode]

Alpha Off

AsmPrgm84C
:3E01FD7712C9

[2nd]

AsmPrgm84C
:FDCB12DEC9

An interesting use of these codes can be for prompting user input (If you run Alpha Lock, for example, Input will start with an Alpha press.

If you run the Alpha Lock that can't be disabled at the start of your program and a user presses ON (or an error occurs), you will not be able to select the options, so you are forced to press [2nd][mode].

Disabling "Done" Message

To disable the "Done" message at the end of a Basic program:

AsmPrgm84C
:FDCB00AEC9

Un-Dirty Graph Screen

:AsmPrgm84C
:FDCB0386C9

This will mark the Graph Screen as not dirty. Using ClrDraw will mark the Graph Screen as dirty so the next time it is displayed the screen will be cleared. Many ASM libraries (such as xLIB) modify the graph buffer without displaying the screen which might be unintentionally cleared.

Turn Calculator Off [TO DO]

LCD Off [TO DO]

LCD On [TO DO]

Toggle LCD Power [TO DO]

Calculator Off

Asm84CEPrgm
:CD841402C9

Disable APD

Asm84CEPrgm
:CD341102C9

Disables Automatic Power Down on ti ti-84 plus CE.

Enable APD

Asm84CEPrgm
:CD381102C9

Enables Automatic Power Down on ti ti-84 plus CE.

Auto Calc

Auto DMS

AsmPrgm84C
:FD360A06C9

Auto DMS displays all decimals in Degrees-Minutes-Seconds on the home screen, automatically.

Auto Fractions

AsmPrgm84C
:FD360A0CC9

Auto Fractions will display decimals as fractions (if it can) on the home screen, automatically.

Screen Shifting [TO DO]

Shift Screen Right 1 [TO DO]

Shift Screen Left 1 [TO DO]

Shift Screen Up 1 [TO DO]

Shift Screen Down 1 [TO DO]

Shift Screen Right 4 [TO DO]

Shift Screen Left 4 [TO DO]

Shift Screen Up 4 [TO DO]

Shift Screen Down 4 [TO DO]

Memory Functions [TO DO]

Free RAM [TO DO]

Archiving [TO DO]

Unarchiving [TO DO]

ToggleArch [TO DO]

Reset Defaults [TO DO]

Reset RAM

AsmPrgm84C
:C7

DelVar [TO DO]

Miscellaneous

Turn Cursor Off

AsmPrgm84C
:FDCB0CE6C9

This is harmless, but it stops displaying that blinking cursor :D Just press [2nd][MODE] to put it back to normal. What, jokes are allowed, right?

Turn Cursor On

Asm84CEPrgm
:FDCB0CA6C9

Draw Ti Logo

Asm84CEPrgm
:CD001B02C9

Draws the TI logo

Edit Lock/Unlock Program [TO DO]

Battery Check [TO DO]

ASCII [TO DO]

Error

Asm84CEPrgm
:CD500F02CD700F02CD900702C9

This code will cause an error to be thrown, based on the value in Ans. The values correspond to the ones found here. Use your browser's search tool to look for "E_Overflow" which is Error 1. By default, there is no Goto option unless you add 128 to the values. So for example, for a divide by zero error with a goto option, use 130 as the error code.

Advanced [TO DO]

CharLength [TO DO]

String Pixel Width [TO DO]

ListToVars 1 [TO DO]

ListToVars 2 [TO DO]

ExecAns [TO DO]

RepeatKeys [TO DO]

FastKeys [TO DO]

MultiKeys 2 [TO DO]

Sprite [TO DO]

References

Most of these are ported from the TI-83+ Hexcodes page.

author: Kydapoot
version: '1.0'
summary: 'A really big and cool virtual fishtank program.'
description: 'This is an extensive virtual fish program where you try to see how long you can keep a fish alive by feeding it, cleaning it''s tank, and giving it medicine. But that''s only the beginning! You can also catch more fish, sell them, play minigames, and experience all the surprises the game has in store for you! Details (about installation/setup and gameplay) are all in the readme. I hope you enjoy! Source Code included.'
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:calcfish/CalcFish.zip'
image: 'archiveimage:main-game/Main-Game.png'
fileSize: '11271'
fileSizeUnit: '1'
dateMade: '1464066000'

author: Kydapoot
version: '1.0'
summary: 'Calculates the value of chess pieces. Customizable values!'
description: 'This is a fairly simple program that calculates the value of all of the pieces on a side of the board or the entire board, provided that you tell it how many of each kind there are. It uses a list to store the values, which can be customized and viewed all within the program.'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '0'
board: '1'
utility: '1'
misc: '1'
compatibility: bb
download: 'archivefile:matad/MATAD.zip'
image: null
fileSize: '623'
fileSizeUnit: '1'
dateMade: '1461646800'

author: Kydapoot
version: '1.0'
summary: 'This is a slots game that uses the graph screen. If you are bored or like slots, it''s really cool, otherwise its fairly amusing. There are three numbers from 1 to 9, and you want to have as many as possible to match. Hope you get lucky!'
description: 'This is the first decent game I wrote on the graph screen (although I have written more since). I have been tweaking it for a long time, and it is finally ready for release. You start with $100, and spend a dollar every time you spin. The prizes/losses possible are listed in the game. It also keeps track of your longest streak and total times spun. If you go bankrupt, there is an option to get more money for free, but don’t try clicking it if you already have money!'
arcade: '0'
graphics: '0'
platform: '0'
puzzle: '0'
rpg: '0'
strategy: '0'
sports: '0'
casino: '1'
board: '0'
utility: '0'
misc: '0'
compatibility: bb
download: 'archivefile:slots/SLOTS.zip'
image: null
fileSize: '1287'
fileSizeUnit: '1'
dateMade: '1461646800'

…that the TI-Basic Developer has a complete TI-Basic Starter Kit filled with important tutorials, guides, and tips for new TI-Basic programmers?

This game is based roughly on games like Labyrinth of Touhou, however instead of 16 characters, you will be using two active characters who synergize well to fight bosses.

It is currently a TI-Basic game which runs with xLib, and is in early development. Planned future updates include a boss tower, more characters, and hidden bosses.

Apr 14 Members can now discuss TI-Basic on the #tibasicdev IRC channel on EFnet.
Apr 10 After years of development by TI-BD members, the TI-Basic 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 A-Z, will return a list with the alphabetic positions of those letters.
Example:

"AZ
              AZ
prgmLETTONUM
Ans
           {1,26}
Possible Solution:

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:X-1→X
:If K=25:Y+1→Y
:If K=26:X+1→X
:If K=34:Y-1→Y
:End
Possible Solution:
<< 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 >>

arclen.png

Command Summary

Returns the arc length of expression1 from start to end with respect to variable var.

Command Syntax

arcLen(expression1,var,start,end)

Menu Location

Describe how to get the command from a menu.

Calculator Compatibility

This command works on all calculators.

Token Size

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:quadplus-3/QUADPLUS.8xp'
image: 'archiveimage:capture-1-5/Capture-1.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:quadrtc-1/QUADRTC.8xp'
image: 'archiveimage:capture-1-1/Capture-1.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:flow-v1-2/FLOW-v1-2.zip'
image: 'archiveimage:flow-1-1-3/Flow_1-1.gif'
fileSize: '13600'
fileSizeUnit: '1'
dateMade: '1458882000'

CSS

div.code {  counter-reset: linenumber; }
div.code p {
    counter-increment: linenumber;
    margin: 0;
}
div.code p::before {
    content: counter(linenumber);
    width: 2.25em;
    display: inline-block;
    text-align: right;
    border-right: 1px dashed #DDD;
    padding-right: 3px;
    margin-right: 6px;
    -webkit-user-select: none;  /* Chrome/Safari */
    -moz-user-select: none;     /* Firefox */
    -ms-user-select: none;      /* IE 10+ */
    user-select: 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

:Pxl-On(A,B

:Pxl-On(C,D

:Text(-1,28,31,"READY?

:Pause

:For(E,26,36

:Line(29,E,67,E,0

:End

:Repeat G=45 or not(pxl-Test(A,B) and pxl-Test(C,D

:getKey

:If Ans

:Ans→G

:A+(G=34)-(G=25→A

:B+(G=26)-(G=24→B

:1+pxl-Test(C+1,D

:Ans+(Ans=2 and pxl-Test(C,D-1

:Ans+(Ans=3 and pxl-Test(C-1,D→F

:C+(Ans=1)-(Ans=3→C

:D+(F=4)-(F=2→D

:Pxl-Change(A,B

:Pxl-Change(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
:Pxl-On(A,B
:Pxl-On(C,D
:Text(-1,28,31,"READY?
:Pause
:For(E,26,36
:Line(29,E,67,E,0
:End
:Repeat G=45 or not(pxl-Test(A,B) and pxl-Test(C,D
:getKey
:If Ans
:Ans→G
:A+(G=34)-(G=25→A
:B+(G=26)-(G=24→B
:1+pxl-Test(C+1,D
:Ans+(Ans=2 and pxl-Test(C,D-1
:Ans+(Ans=3 and pxl-Test(C-1,D→F
:C+(Ans=1)-(Ans=3→C
:D+(F=4)-(F=2→D
:Pxl-Change(A,B
:Pxl-Change(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
:Pxl-On(A,B
:Pxl-On(C,D
:Text(-1,28,31,"READY?
:Pause
:For(E,26,36
:Line(29,E,67,E,0
:End
:Repeat G=45 or not(pxl-Test(A,B) and pxl-Test(C,D
:getKey
:If Ans
:Ans→G
:A+(G=34)-(G=25→A
:B+(G=26)-(G=24→B
:1+pxl-Test(C+1,D
:Ans+(Ans=2 and pxl-Test(C,D-1
:Ans+(Ans=3 and pxl-Test(C-1,D→F
:C+(Ans=1)-(Ans=3→C
:D+(F=4)-(F=2→D
:Pxl-Change(A,B
:Pxl-Change(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 TI-Basic. 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 >>

Command Summary

Mode command that puts the calculator into Classic mode.

Command Syntax

MATHPRINT

Menu Location

Press:

  1. MODE
  2. DOWN until you reach Mathprint or Classic
  3. ENTER on Mathprint

Alternatively, use the catalog.

Calculator Compatibility

TI-84 2.53MP or later

Token Size

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:
24
     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.

TI-83+/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

TI-84+/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 Manual-Fit, χ²GOF-Test(, 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 statwizard-off, statwizard-on

TI-84+CSE

OS Version Notable Changes
4.0
4.2

TI-84+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

FWAC
waitexample.gif

Command Summary

Suspends execution for a specified amount of time

Command Syntax

Wait [seconds]

Menu Location

2ND CATALOG to enter the Catalog.
W to go to commands starting with W.

Calculator Compatibility

TI-84+ CE OS 5.2 or higher

Token Size

2 bytes

The Wait command was introduced in TI-OS 5.2 for the TI-84+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 TI-84+CE calculator. Keep in mind that hexadecimal for the monochrome calculators may not work on color calculators.

author: RebStrike
version: 'Dev. Build 132'
summary: ''
description: "This is an RPG-text-adventure 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:prankday-1/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 TI-84+CSE or TI-84+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:actg-1/ACTG.8xp'
image: 'archiveimage:dnapic3-1/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:guess-4-3-5/GUESS-4-3-5.8xp'
image: null
fileSize: '790'
fileSizeUnit: '1'
dateMade: ''

TI-PLOW

author: 'earthnite, jonbush'
version: '1.0'
summary: 'TI-Plow is a popular single-player 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\nTI-PLOW features 100 hand-made 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:ti-plow-84/TI-PLOW_84.zip'
image: 'archiveimage:plow/plow.gif'
fileSize: '4828'
fileSizeUnit: '1'
dateMade: '1450857600'

Routine Summary

Finds the area of any regular polygon.

Inputs

N,S

Outputs

F

Variables Used

{$variable}

Calculator Compatibility

TI-83/84/+/SE/CSE/CE

Download

[{$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.

product-screenshot.png

Filename

Summary

Authors

Site URL

Ticalc.org URL

Release Date

Compatibility

Language

Product Intro

Product Screenshot

product-screenshot.jpg
(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

Dot-Thin.png

Command Summary

Sets all lines to be drawn using a series of individual pixels.

Command Syntax

This command is executed with no additional arguments

Menu Location

Go to Catalog, press [ALPHA][X^-1], and scroll down

Calculator Compatibility

TI-84+CSE/CE

Token Size

2 bytes

The Dot-Thin 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
:Dot-Thin

Error Conditions

  • ERR:SYNTAX is thrown if the command is executed with any additional arguments

Related Commands

Dot-Thick.png

Command Summary

Sets all lines to be drawn using a series of thick points

Command Syntax

This command is executed with no additional arguments

Menu Location

Go to Catalog, press [ALPHA][X^-1], and scroll down

Calculator Compatibility

TI-84+CSE/CE

Token Size

2 bytes

The Dot-Thick 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 Pt-On(, at each interval of the TraceStep. This command can be called on the homescreen or within a program.

:AxesOff
:RectGC
:Dot-Thick

Error Conditions

  • ERR:SYNTAX is thrown if any additional arguments are used with the command

Related Commands

Thin.png

Command Summary

Sets all graphing lines to be 1 pixel wide.

Command Syntax

This command is executed by itself with no additional arguments

Menu Location

Go to Catalog, press [ALPHA][4], and scroll down.

Calculator Compatibility

TI-84+CSE/CE

Token Size

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

Thick.png

Command Summary

Converts all lines to Thick (2-3 pixel wide) lines

Command Syntax

The command is called by itself with no additional arguments

Menu Location

Go to the Catalog, press [ALPHA][4], and scroll down.

Calculator Compatibility

TI-84+CSE/CE

Token Size

2 bytes

The Thick command converts all lines in the current function type to be drawn using a 2-3 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/t-1441297/connect-4. 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:screenshot-2/screenshot.gif'
fileSize: '851'
fileSizeUnit: '1'
dateMade: '1447369200'

.

Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-Noncommercial-No Derivative Works 2.5 License.