Texas Instruments TI-83 Plus Manual

Texas Instruments TI-83 Plus Manual

Third release
Hide thumbs Also See for TI-83 Plus:
Table of Contents

Advertisement

Quick Links

TI-83 Plus Developer Guide
Third Release

Advertisement

Table of Contents
loading

Summary of Contents for Texas Instruments TI-83 Plus

  • Page 1 TI-83 Plus Developer Guide Third Release...
  • Page 2: Important Information

    Instruments shall not be liable for any claim of any kind whatsoever against the use of these materials by any other party. The latest version of this Guide, along with all other up-to-date information for developers, is available at http://education.ti.com. © 1999, 2001, 2002 Texas Instruments Incorporated Z80 is a trademark of ZiLOG, Inc.
  • Page 3: Table Of Contents

    TI 83 Plus Developer Guide ...1 Conventions Used in this Guide... 1 Purpose of this Guide ... 2 Structure of this Guide ... 2 Chapter 2: TI-83 Plus Specific Information Architecture...3 Hardware Layer ...4 Z80 CPU and Memory ... 4 Z80 RAM Structure ...
  • Page 4 Complex List Data Type Structure ... 24 Matrix Data Type Structure ... 24 Token Based Data Types ... 25 TI 83 Plus Tokens... 25 Program, Protected Program, Equation, New Equation, and String Data Type Structures ... 25 Screen Image Data Type Structure ... 25 Graph Database Data Type Structure ...
  • Page 5: Ti 83 Plus Developer Guide

    Drawing...84 Graphing ...84 Graphing and Drawing Utility Routines...84 Drawing Routine Specifics ...85 Graphing Routine Specifics...88 TI 83 Plus Developer Guide Related Routines ... 44 Accessing Archived Variables without Unarchiving ... 45 List Element Routines ... 49 Matrix Element Routines... 49 General Use Rules...
  • Page 6 Parse Routine ...108 Temporary Variables...110 Using Temporary Variables ...111 Managing Temporary Variables ...111 Deleting Temps and Setting (pTempCnt) ...112 Working with TI Language Localization Applications ... 114 Entering and Exiting an Application Properly ... 115 Stand-alone ...115 Start-up Code...115 Exit Code ...116 Stand-alone with Put Away Notification...117...
  • Page 7 Building the Application... 128 Loading the Application into the Simulator... 129 Debugging the Application ... 131 Signing the Application ... 134 Downloading the Application... 134 Chapter 4: Development Tools Development Architecture...136 TI 83 Plus Developer Guide Third Release May 28, 2002...
  • Page 8 Save/Display/Compare Calculator Screens ... 156 Terminating a Session ... 156 Support in Writing Applications ... 156 Glossary... 151 TI83 Plus “Large” Character Fonts... 156 TI-83 Plus “Small” Character Fonts... 163 Third Release May 28, 2002 TI 83 Plus Developer Guide...
  • Page 9 Fig. 2.4: TI 83 Plus RAM Structure... 5 Fig. 2.5: TI 83 Plus Flash ROM Structure... 8 Fig. 2.5b: TI 83 Plus Silver Edition Flash ROM Structure ... 8 Fig. 2.6: Symbol Table Structure...52 Fig. 2.7: Floating Point Stack Structure ...57 Fig.
  • Page 10 Table 2.22: Comple x Math Power and Logarithmic Math Functions...106 Table 2.23: Comple x Math M iscellaneous Math Functions...106 Table 2.24: Temporary Variables E xample ...110 Tab l e 2.25: Language Table ...11 TI 83 Plus Developer Guide Third Release May 28, 2002...
  • Page 11: Ti 83 Plus Developer Guide

    TI-83 Plus calculator specific information, processes, and development tools. The TI-83 Plus Developer Guide is one of a set of documents supporting the TI-83 Plus calculator. The set includes: TI-83 Plus Graphing Calculator Guidebook — Describes how to use the calculator (provided with the TI-83 Plus calculator).
  • Page 12: Purpose Of This Guide

    ThisIsALabel: B_CALL Purpose of this Guide The types of programs that can be created on the TI-83 Plus calculator include RAM-based TI-BASIC programs, RAM-based assembly programs, and Flash ROM-based applications. This guide addresses Flash ROM-based application development and RAM-based assembly programs.
  • Page 13: Chapter 2: Ti-83 Plus Specific Information

    RCHITECTURE Fig. 2.1 represents the TI-83 Plus architecture, which is composed of several layers and elements. Fig. 2.1: TI-83 Plus Architecture The Hardware layer contains the functional components of the unit — the Z80 processor, Random Access Memory (RAM), Flash ROM (also called Flash), Read Only Memory (ROM), and TI BASIC (not included in this guide).
  • Page 14: Hardware Layer

    Zilog Z80™ CPU, RAM, and Flash ROM. Z80 CPU and Memory The TI-83 Plus uses a Z80 processor with a 64K byte logical address space. To provide more than 64K bytes of physical RAM, this logical memory space is divided into four 16K byte pages (see Fig.
  • Page 15: Z80 Ram Structure

    Fig. 2.2: TI-83 Plus RAM Z80 RAM Structure The TI-83 Plus has 32K bytes of RAM. The system code partitions the RAM into a number of areas, which it uses to maintain different types of information. Applications that need RAM must reuse some of the RAM not currently in use by the system code.
  • Page 16: System Ram

    The area labeled Free RAM is a leftover area. As the other areas grow, they push into the Free RAM area making it smaller. As the other areas shrink, the Free RAM area gets larger.
  • Page 17: Operator Stack

    Hardware Stack. The Hardware Stack should not be used for saving large amounts of data. Using the Hardware Stack to save register values upon entry to routines should not cause problems. None of the TI-83 Plus system routines use recursion that will overflow the Hardware Stack. TI-83 Plus Developer Guide...
  • Page 18: Flash Rom Structure

    Flash ROM Structure The TI-83 Plus Flash ROM is composed of 512K bytes divided into 32 pages, each of which is 16K bytes in size. Fig. 2.5 represents the Flash ROM structure. 00000 SWAP/USER DATA SWAP/USER APPS/DATA USER APPS/DATA USER APPS/DATA...
  • Page 19: Fig. 2.5B: Ti 83 Plus Silver Edition Flash Rom Structure

    Plus except for the inclusion of 96 additional 16K pages (24 additional 64K sectors). The TI-83 Plus Flash structure chart (Fig. 2.5) is correct up to page 14h; at that point, the TI-83 Plus Silver Edition includes more data pages. The TI-83 Plus Silver Edition also has OS residing at the high 8 pages of Flash, 78h…7Fh.
  • Page 20: Boot (Code) Area

    Unit certificate and license status Group certificates Operating System (OS) Area This area contains the operating system of the calculator — math, display, keyboard, I/O, etc. routines. Certificate List Area This area contains a list of unit certificates for the specific calculator.
  • Page 21: Swap Area/User Apps/Data Area

    System RAM, User RAM, Floating Point Stack, etc. (see Fig. 2.4). System Routines Entry points for a set of TI-83 Plus system routines are provided in the TI-83 Plus System Routine Documentation (separate document). A list of entry point equated labels is provided in the file, TI83plus.inc.
  • Page 22: Rst Routines

    The details about system RAM follow. System Flags This area of RAM is used for bit flags. The TI-83 Plus accesses these flags through the Z80’s IY register. The IY register is set to the start of this flag area and does not change, resulting in easy bit manipulation.
  • Page 23: Table 2.1: System Flags

    Chapter 2: TI-83 Plus Specific Information Flag Name IY Offset trigDeg trigFlags plotLoc plotFlags plotDisp plotFlags grfFuncM grfModeFlags grfPolarM grfModeFlags grfParamM grfModeFlags grfRecurM grfModeFlags graphDraw graphFlags grfDot grfDBFlags grfSimul grfDBFlags grfGrid grfDBFlags grfPolar grfDBFlags grfNoCoord grfDBFlags grfNoAxis grfDBFlags grfLabel grfDBFlags...
  • Page 24 Comment 1: Controls the mode setting: REAL a + bi re^ i located on the mode screen. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Equate Description 1 = É key interrupt occurred 1 = stat results are valid...
  • Page 25 Chapter 2: TI-83 Plus Specific Information Flag Name IY Offset indicOnly indicFlags shift2nd shiftFlags shiftAlpha shiftFlags shifLwrAlpha shiftFlags shiftALock shiftFlags grfSplit sGrFlags vertSplit sGrFlags textWrite sGrFlags fullScrnDraw apiFlag4 bufferOnly plotFlag3 fracDrawLFont fontFlags customFont fontFlags lwrCaseActive appLwrCaseFlag TI-83 Plus Developer Guide...
  • Page 26 Used by applications to provide easy bit flag implementation. Once an application completes, flag will most likely be changed by another application. It will not hold its state. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Equate Description available for ASM programming...
  • Page 27: Op1 Through Op6 Ram Registers

    Chapter 2: TI-83 Plus Specific Information OP1 through OP6 RAM Registers This area of RAM is used extensively by the TI-83 Plus system routines for such things Executing floating-point math Passing arguments to and from system routines Extracting elements out of lists or matrices...
  • Page 28: Safe Ram Locations For Application Use

    ConvOP1 ZeroOP3 ZeroOP This is 768 bytes used by the system code only if the calculator automatically powers down (APD). This RAM is safe to use as long as an APD cannot occur. See the Keyboard and Automatic Power Down (APD) sections.
  • Page 29: System Variables Area

    System Variables Area This area of system RAM consists of preallocated variables needed by much of the TI- 83 Plus built-in functionality. Because they are floating-point numbers these variables are all nine bytes. Because these variables are always needed, the system always keeps them around and never changes their addresses.
  • Page 30: Storing And Recalling System Variable Values

    B_CALL Example: If you want to recall the contents of Xmin to OP1: B_CALL TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information OP1Set3 ; Reg OP1 = Floating point 3 InvOP1S ; Negate FP number in OP1, OP1 = -3 A,XMINt ;...
  • Page 31: Table 2.8: Variable Name, Ram Equate, And Systok Value

    Chapter 2: TI-83 Plus Specific Information Table 2.8 lists each system variable, its RAM address equate, and the token values used to access them with the routines above. Variable Name Xscl Yscl Xmin Xmax Ymin Ymax tMin tMax PlotStart nMin...
  • Page 32: System Variables That Are Output Only

    User RAM User RAM (see Fig. 2.4) is used to store the data structures of variables that are dynamically created. These variables are created by both users and the TI-83 Plus system. The following sections contain an overall description of TI-83 Plus variable naming conventions, data structures, creation, and accessing.
  • Page 33: Real Data Type Structure

    A floating-point number has a left-justified mantissa (the most significant digit is always the first digit). If the MSD is 0, the TI-83 Plus system assumes it is floating-point 0. A floating-point number has a 14-digit mantissa and an exponent range of -128 to 127.
  • Page 34: Complex List Data Type Structure

    00 80 60 00 00 00 00 00 00 A row or column dimension cannot be 0, and it cannot be greater than 99. If an application creates a matrix with either of these illegal dimensions, the TI-83 Plus system may lock up.
  • Page 35: Token Based Data Types

    Chapter 2: TI-83 Plus Specific Information Token Based Data Types This class of data types is made up of a size field and tokens that represent TI-83 Plus functions, commands, programming instructions, variable names — essentially anything that can be entered into an TI-83 Plus BASIC program.
  • Page 36: Graph Database Data Type Structure

    Users cannot access the contents of an AppVar, but they can delete, archive, and send the contents over the link port to another TI-83 Plus, TI Connect™ or the TI-83 Plus GRAPH LINK. Guidelines for AppVar Usage To avoid conflicts with other application’s AppVars, use unique names that tie an...
  • Page 37: Table 2.10: Variable Name Format

    Chapter 2: TI-83 Plus Specific Information The general format of variable names is illustrated here using OP1. Table 2.10: Variable Name Format T = object type where: 0 – 4 * See also: Symbol Table Structure Every variable name has associated with it an object (data) type, which is always stored in the first byte of the variable name format.
  • Page 38: Variable Name Spellings

    Variable Name Spellings There are two classes of variable names for the TI-83 Plus — predefined and user defined. All variables are comprised of TI-83 Plus tokens, which are part of the include file, TI83plus.inc. Predefined Variable Names These variable’s names are fixed by the TI-83 Plus and can only have a predetermined data type.
  • Page 39: Equation Variables: Y1 - Y0, X1T - X6T, Y1T - X1T, R1 - R6, U(N), V(N), W(N)

    Chapter 2: TI-83 Plus Specific Information They are all spelled with two tokens followed by one zero. The first token of the name is tVarMat, which labels it as a matrix variable name. The second token signifies which predefined matrix name it is, [A] – [J].
  • Page 40: String Variables: Str1 - Str0

    The first token of the name is tVarPict, which labels it as a picture variable name. The second token signifies which predefined picture name it is, tPic1 – tPic0. Example: Picture Variable Pic0 PictObj tVarPict TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information tStr5 tPic0 Third Release May 28, 2002...
  • Page 41: Graph Database Variables: Gdb1 - Gdb0

    User-Defined Variable Names The TI-83 Plus allows open naming for some data types. Listed below are the naming rules that these variables have in common. The restriction on the length of the name varies by data type and is detailed for each data type.
  • Page 42: User-Named Lists

    Program names can be up to eight tokens in length. If less than eight tokens, the name must be zero (0) terminated. Example: Program Variable ABC ProgObj TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Third Release May 28, 2002...
  • Page 43: User-Named Appvars

    Chapter 2: TI-83 Plus Specific Information User-Named AppVars These variables must be type AppVarObj. Like program names, these variables do not have leading tokens to signify that they are AppVar names. The sign byte of AppVar names must be set correctly.
  • Page 44: Accessing Programs And Appvar Variables

    Note: Only the lower five bits of both the ACC and OP1 are set. The remaining bits are random and must be masked off to get the correct data type when checking. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information FindSym ; look up variable in OP1 C,NotFound ;...
  • Page 45 Chapter 2: TI-83 Plus Specific Information Example: Search for list L1 to determine if it is a real or complex list. B_CALL B_CALL L1name: Is the variable’s data in RAM or archived in Flash ROM? This is important information since variables that are archived need to be unarchived for use by nearly all system routines and also for easier direct access by applications.
  • Page 46: Creating Variables

    Do not create variables with sizes outside of their specified limits. For example, do not create a list with 1000 elements. The system does not check for these types of errors when creating a variable. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information HL,L1Name Mov9ToOP1 ; OP1 = list L1 name FindSym ;...
  • Page 47 Chapter 2: TI-83 Plus Specific Information Some system routines will fail and may cause a lock-up condition if bad data is input to them. For more information see the Variable Data Structure section earlier in this chapter. If there is not enough free memory available to create a variable, a system memory error is generated, and the system’s error context will take over execution.
  • Page 48: Storing To Variables

    The current contents of the variable are not deleted if the new data being stored to the variable does not fit in memory. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information HL,CatName Mov9ToOP1 ; OP1 = name NoMem ;...
  • Page 49: Recalling Variables

    Chapter 2: TI-83 Plus Specific Information Error checking is done to make sure that the data type being stored to the variable is valid for that variable. If the variable being stored to is archived, a system error is generated.
  • Page 50: Deleting Variables

    The graph equations should not be deleted without immediately recreating them. The TI-83 Plus system will crash if these equations are not created. If an application wants to free the RAM used by a graph equation, it can delete the equation and immediately recreate the equation with a size of 0 bytes.
  • Page 51 Chapter 2: TI-83 Plus Specific Information Note: These inputs are output from a successful Symbol Table search, such as FindSym. Error if the variable is archived. This routine checks the contents of DelVar the b register to be non-zero. If the contents is non-zero, it assumes the variable is archived and generates a system error.
  • Page 52: Archiving And Unarchiving

    Variables can be archived - moved from RAM to the archive area. They can also be unarchived - removed from the archive area and placed into RAM. More information on the uses of archiving can be found in the TI-83 Plus Graphing Calculator Guidebook.
  • Page 53: Related Routines

    Chapter 2: TI-83 Plus Specific Information AppObj Entry Point If the variable in OP1 is archived, unarchive it, otherwise archive it. Arc_Unarc See the System Routine Documentation for further information. System errors can be generated. See the Error Handlers section for further information.
  • Page 54: Accessing Archived Variables Without Unarchiving

    Inputs: B register = ROM page of byte(s) to copy TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Size varies by the name size and data type Symbol Table Entry Table 2.11: Format of Archive Stored Variables...
  • Page 55 Chapter 2: TI-83 Plus Specific Information HL register = offset on the ROM page to the byte(s) to copy Routines: LoadCIndPaged LoadDEIndPaged Recommended support routines that an application should include as part of the application. LoadCIndPaged_inc: ; fall thru and INC pointer past byte read...
  • Page 56: Table 2.12: Format Of Archive Stored Variables

    Flag Increasing addresses --------> TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information This routine has two functions. First is to fill the 16 byte cache with mode data from the archive, whenever it has been completely read. Second, is to return the next byte from the cache to the caller.
  • Page 57: Manipulation Routines

    Chapter 2: TI-83 Plus Specific Information ; B = ROM page and DE = offset, to start of data in the archive ; now the size of the Symbol Table entry needs to be computed so that ; it can be skipped over to get to the AppVar’s data structure...
  • Page 58: Matrix Element Routines

    Recalls an element of a matrix to OP1. PutToMat Stores OP1 to an element of a matrix. RedimMat Redimensions an existing matrix in RAM. See the System Routine Documentation for details. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Third Release May 28, 2002...
  • Page 59: Resizing Appvar, Program, And Equation Variables

    Chapter 2: TI-83 Plus Specific Information Resizing AppVar, Program, and Equation Variables These data types can be resized in place without having to make an additional copy of the variable. Following are the two routines, with examples, used to increase the data size and to decrease the data size.
  • Page 60 B_CALL PUSH B_CALL AppVarName: See the System Routine Documentation for details on DelMem. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information HL,AppVarName Mov9ToOP1 ; OP1 = name of AppVar ChkFindSym ; DE = pointer to data if exists ;...
  • Page 61: Symbol Table Structure

    Chapter 2: TI-83 Plus Specific Information Symbol Table Structure This structure contains an entry for each variable that is created. It contains information about a variable’s type, name, and location in RAM or in the archive. The Symbol Table begins in high memory at the end of the hardware stack and grows towards low memory (backwards).
  • Page 62: Table 2.13: Program, Appvar, Group

    5 characters max Real, Cplx, Mat, EQU, GDB, Pict Second token of name Table 2.15: Real, Cplx, Mat, EQU, GDB, Pict TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Page Table 2.13: Program, AppVar, Group tVarLst Page Table 2.14: Lists...
  • Page 63 – If a new variable type is sent to an TI-83 Plus running an earlier version of product code, the variable would not be accepted by the earlier product code since the variable’s version number is higher than that of the product code.
  • Page 64: Table 2.16: Formula Example

    The Symbol Table entry for one of these formulas would be: – Variable names — See Naming Conventions. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Page Table 2.16: Formula Example EquObj Third Release May 28, 2002...
  • Page 65 Chapter 2: TI-83 Plus Specific Information Example: A routine that traverses both sections of the Symbol Table. Traverse_symTable: loop: Movetonext: ; move HL to next symbol table entry sign digit Movetonext1: TI-83 Plus Developer Guide HL,symTable ; HL = pointer to first symbol entry BC,(pTemp) ;...
  • Page 66: Floating Point Stack (Fps)

    Floating Point Stack (FPS) The Floating Point Stack (FPS) is a TI-83 Plus system RAM structure that begins at the end of the variable data storage area and grows toward the Symbol Table storage area. The stack grows and shrinks in size in multiples of nine bytes ONLY. This entry size is the size of a floating-point number.
  • Page 67: Naming Convention

    Chapter 2: TI-83 Plus Specific Information Naming Convention The following abbreviations are used when dealing with the Floating Point Stack. FPS = Floating Point Stack FPST = Floating Point Stack Top. This is the last nine bytes of the FPS.
  • Page 68: Fps System Routines

    Pushes OP1 or OP1/OP2, checks OP1 = CplxObj. PushOP1 Pushes OP3 or OP3/OP4, checks OP3 = CplxObj. PushOP3 Pushes OP5 or OP5/OP6, checks OP5 = CplxObj. PushOP5 TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Third Release May 28, 2002...
  • Page 69: Fps Deallocation Routines

    Chapter 2: TI-83 Plus Specific Information Block allocates space on the FPS with no data transfer. This is done to preallocate space needed on the FPS in one step. To set the values, the CopyToFPS routines need to be used. They are described later in this section.
  • Page 70: Copy Data To And From Existing Fps Entries

    CpyO1ToFPS2 CpyO1ToFPS3 CpyO1ToFPS4 CpyO1ToFPS5 CpyO1ToFPS6 CpyO1ToFPS7 TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information -> FPST 18 -> FPS1 HL,(FPS) CpyToStack Copies nine bytes at DE to FPST. Copies nine bytes at DE to FPS1. Copies nine bytes at DE to FPS2.
  • Page 71 Chapter 2: TI-83 Plus Specific Information CpyO2ToFPST CpyO2ToFPS1 CpyO2ToFPS2 CpyO2ToFPS3 CpyO2ToFPS4 CpyO3ToFPST CpyO3ToFPS1 CpyO3ToFPS2 CpyO3ToFPS3 CpyO5ToFPS1 CpyO5ToFPS3 CpyO6ToFPST CpyO6ToFPS2 Copies nine bytes from a FPS entry to RAM. CpyStack If this routine is to be used, it is recommended that you create this routine in your APP/ASM.
  • Page 72 CpyTo3FPS2 CpyTo4FPST CpyTo5FPST CpyTo6FPST CpyTo6FPS2 CpyTo6FPS3 TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Copies FPS2 to OP1. Copies FPS3 to OP1. Copies FPS4 to OP1. Copies FPS5 to OP1. Copies FPS6 to OP1. Copies FPS7 to OP1.
  • Page 73: Drivers Layer

    Chapter 2: TI-83 Plus Specific Information RIVERS AYER The Drivers layer of the TI-83 Plus system includes such areas as the keyboard, the display, and the link port. Keyboard There are two ways to read key presses on the TI-83 Plus.
  • Page 74: Fig. 2.8: Calculator Scan Code

    The scan code values are equated in the include file named TI83plus.inc. Fig. 2.8 below shows the scan codes associated with their keys. Fig. 2.8: Calculator Scan Code TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Third Release May 28, 2002...
  • Page 75 Chapter 2: TI-83 Plus Specific Information Example one: This example will use the Z80 halt instruction to enter into low power mode, and upon waking up, will check: if a key had been pressed, – check for the É key being pressed, –...
  • Page 76 ; here we have a key press, ACC = scan code, 0 = on key ; check for rest of keys that matter readkey: CALL notOnkey: TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information RunIndicOn apdAble,(IY+apdFlags) onInterrupt,(IY+onFLags) readKey Z,KeyLoop...
  • Page 77 This method will support silent link activity. Any link activity started by either – another unit or a computer will be detected by the system. If the TI GRAPH LINK or TI Connect™ attempts transfer a variable to/from the TI-83 Plus, the application will be shut down.
  • Page 78 This flag should be reset when lowercase is not needed. It should also be reset before exiting the application. The lowercase alpha keys are two byte key codes with the first byte being kExtendEcho2. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Third Release May 28, 2002...
  • Page 79 Chapter 2: TI-83 Plus Specific Information For example, use the GetKey routine to input only keys A-Z until either Í or É is pressed. Enter_Alphas: B_CALL B_CALL keyLoop: B_CALL CALL Return: B_CALL TI-83 Plus Developer Guide RunIndicOff indicOnly,(IY+indicFlags) DisableApd onInterrupt,(IY+onFlags)
  • Page 80: Display

    Note: See the Graphing and Drawing section also. Displaying Using System Routines WARNING: Most of the TI-83 Plus system display routines will disable interrupts which results in no keyboard scans, run indicator updates, APD, or cursor updates. Applications must re-enable interrupts (EI), if needed.
  • Page 81: Displaying Text

    Chapter 2: TI-83 Plus Specific Information Displaying Text The display is made up of 64 rows of 96 pixels. The TI-83 Plus has two sets of routines that display text. The difference between the two sets of routines is how the text position in the display is specified.
  • Page 82: Formatting Numeric Values For Display

    See the Formatting Numeric Values for Display section. See the System Routine Documentation for more details. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information is a RAM buffer of 128 bytes, one byte for each character Displays a single character without updated cursor position.
  • Page 83: Fig. 2.10: Pen Display Mapping

    Chapter 2: TI-83 Plus Specific Information Pen Display Mapping This mapping is based on individual pixel locations. It is used mainly in the graph context for displaying text on a graph, but is also used in the statistics edit context to display list elements.
  • Page 84 TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Displays either a small variable width or large 5x7 character at the current pen location and updates penCol.
  • Page 85: Formatting Numeric Values For Display

    Chapter 2: TI-83 Plus Specific Information See the Display Utility Routines section. See the Formatting Numeric Values for Display section. See the System Routine Documentation for more details. Formatting Numeric Values for Display The following routines are used to convert RealObj (single floating-point) and CplxObj (pair of floating-points) values into displayable strings.
  • Page 86: Modifying Display Format Settings

    Interrupts should be disabled to send commands/data to the driver. – TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information = 0FFh for FLOAT, no fix setting = 0 – 9 if a fix setting is specified Y Direction...
  • Page 87 This will ensure that the routine runs on both the TI-83 Plus and Silver Edition with minimal additional time delays. Communication is done with the drive through two IO ports: –...
  • Page 88 Command 04h — X Direction auto decrement Command 06h — Y Direction auto decrement The TI-83 Plus system expects the driver to be in X-increment mode and must be set to this mode before giving control to the system. Reading the Contents of the Display Driver RAM...
  • Page 89: Reading The Display Driver After Setting X Or Y Coordinates

    Chapter 2: TI-83 Plus Specific Information Reading the Display Driver After Setting X or Y Coordinates A dummy read needs to be done after setting either the x or y coordinate of the driver if one wants to read from the driver. For example, read nine bytes of data from the display starting in LCD row 5, column 1, to OP1.
  • Page 90 CALL CALL loop2: CALL DJNZ ; row done DJNZ CALL TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information HL,plotSScreen B,64 A,07h lcd_busy_2 (lcdinstport),A ; set to y INC mode A,7fh ; first row ; save number rows left to copy ;...
  • Page 91: Contrast Control

    27h, and is stored in RAM location (contrast). Display driver setting minus 18h = (contrast). Split Screen Modes The TI-83 Plus has three mode settings that define the size of the display, Full screen, Horizontal split and Graph-Table (vertical split). All of the system display writing and graph utility routines adjust for the current split mode setting.
  • Page 92 Example one restores the input setting, so no regraph is necessary. It is entirely up to the application if causing the regraph is a concern or not. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information HL,YOffset DE,savevals BC,5...
  • Page 93: Graphing And Drawing - What's The Difference

    Chapter 2: TI-83 Plus Specific Information Graphing and Drawing — What’s the difference? Drawing Routines include lines, circles, points, etc., which are defined by pixel coordinates. Drawing routines cannot be defined with points outside of the physical display area. Only pixel coordinates that exist can be used. The current WINDOW settings (Xmin, Xmax, Ymin, Ymax) have no affect on the drawing routine’s output.
  • Page 94 4 = Box Plot 5 = Normal Probability Plot TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Copies a bit image of the current display to RAM. Display a bit map image. Disables the run indicator located in the upper right corner of the display.
  • Page 95: Drawing Routine Specifics

    Chapter 2: TI-83 Plus Specific Information Like the on/off bytes, the type bytes have a second purpose. The high four bits of the type bytes determine the mark or icon used in the stat plot. 0 = Box icon 1 = Cross icon 2 = Dot icon Each stat plot has three five-byte locations to store the names of lists used in the plot.
  • Page 96: Fig. 2.12: Pixel Coordinates

    If split screen modes are not required by an application, it is recommended that all drawing routines be performed with no split modes set. See the Split Screen section for further information. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information X Coordinate … Fig. 2.12: Pixel Coordinates Valid Y pixel range = 1 –...
  • Page 97 Chapter 2: TI-83 Plus Specific Information System flags associated with drawing routines The following flags are input by most of the drawing routines. The table gives an overview of some the options available to applications. The System Routine Documentation contains further information.
  • Page 98: Graphing Routine Specifics

    Routines that do not automatically display or redraw the current graph screen. These routines will draw over the existing contents of the display. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information (Xmax, Ymax) (Xmax, Ymin) Third Release May 28, 2002...
  • Page 99 Chapter 2: TI-83 Plus Specific Information – System flags plotLoc, (IY + plotFlags) bufferOnly, (IY + plotFlag3) Entry Points – Cpoint CpointS Cline ClineS UCLineS DarkPnt DrawCirc2 Routines that will automatically display or redraw the current graph screen before executing. If the graph does not need to be redrawn, the contents of the graph...
  • Page 100 SetParM SetPolM SetSeqM TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Erases a line between two graph coordinate points defined in (FPS3, FPS2) and (FPS1, FPST). Graphs an equation variable in FPST. Graphs an equation variable in FPST along the Y-axis instead of the X-axis.
  • Page 101: Run (Busy) Indicator

    Chapter 2: TI-83 Plus Specific Information Run (Busy) Indicator The run indicator is used by the TI-83 Plus to indicate that the calculator is busy while computing. It is normally turned off while waiting for input from a user. When an application is first started, the run indicator will most likely be running.
  • Page 102: Apd (Automatic Power Down )

    APD    (Automatic Power Down    ) Applications have the choice of allowing the APD feature of the TI-83 Plus to be active or not. APD is implemented to preserve battery life by turning the calculator off after about four minutes of inactivity.
  • Page 103: Link Port

    Chapter 2: TI-83 Plus Specific Information Link Port Communications to and from the TI-83 Plus calculator is possible through the I/O port using the unit-to-unit cable (included with the unit) or the graphic link cable (available as an option). Applications can use the link port for transferring data on two different levels.
  • Page 104 CALL B_CALL ; RCL L1(1) -> OP1 ; ACC = size of list, 1 = CBL, 2 = CBR Rcl_new_val: CALL L1name: TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information l1name onInterrupt,(IY+onFlags) SendVarCmd comFailed,(IY+getSendFlg) GetNewValue StoreData Read_Loop l1name...
  • Page 105 TI-83 Plus or computer without using the built-in messaging protocol, which is not documented in this developer’s guide. The TI-83 Plus link port uses two data lines, D0 and D1, for communicating. These data lines are accessed through the B-port of the Z80.
  • Page 106 See the System Routine Documentation for more details. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Polls the link port for activity until either a byte is received, the É key is pressed, or an error occurs during communications.
  • Page 107 Chapter 2: TI-83 Plus Specific Information Example one: The following routine is called to do a spot check of the link port for activity for a single byte of data being sent. – If no activity is detected or any error occurs during communication, then Z = 0 is returned.
  • Page 108 This sample routine will attempt to send the register pair HL over the link port. RET Z = 1 if successful, else Z = 0. sendHl: PUSH CALL sendbyte: PUSH AppOnErr B_CALL TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information indicOnly,(IY+indicFlags) GetCSC SkEnter Z,HaveEnterKey haveIOcmd NZ,keylp1st LinkCmdSent sendbyte A,D0HD1H...
  • Page 109: Tools And Utilities Layer

    Chapter 2: TI-83 Plus Specific Information OOLS AND TILITIES Error Handlers Error exception handlers can be set up to capture any system error that occurs while executing a block of code that an error handler is placed around. A macro is used to install the error handler:...
  • Page 110 Modify the error code to remove the GoTo option and have the system report the error with only a Quit option. Example one: Do not allow the error to be reported by the TI-83 Plus. Compute 1/X and return CA = 0 if no error, otherwise return CA = 1. AppOnErr...
  • Page 111: Nested Error Handlers

    Chapter 2: TI-83 Plus Specific Information Nested Error Handlers Error handlers can be nested inside of each other. The last error handler initiated will be notified of any error that occurs. When the first handler is notified of the error, none of the previous handlers initiated are notified.
  • Page 112: Utility Routines

    InvSub Times2 TimesPt5 AbsO1PAbsO2 Factorial Table 2.17: Floating-Point Basic Math Functions TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Function OP1 plus OP2 OP1 minus OP2 1 divided by OP1 OP1 times OP2 OP1 divided by OP2 OP1 times OP1...
  • Page 113: Table 2.18: Trigonometric And Hyperbolic Functions

    Chapter 2: TI-83 Plus Specific Information Routine Function Sin(OP1) Cos(OP1) Tan(OP1) SinCosRad OP1 = Sin(OP1) and OP2 = Cos(OP1) force radian mode on input ASin inv Sin(OP1) ACos inv Cos(OP1) ATan inv Tan(OP1) ASinRad inv Sin(OP1) force answer in radians...
  • Page 114: Miscellaneous Math Functions

    Miscellaneous Math Functions Floating-Point Math Functions that Output Complex Results The TI-83 Plus has two complex math modes, a + bi (rectangular coordinates) and re^ I (polar coordinates), that allow complex numbers to be generated by functions that take RealObj data type (floating-point) as input. If neither of these modes is set, then these functions will generate an error when the arguments input would produce a complex result.
  • Page 115: Complex Math

    Chapter 2: TI-83 Plus Specific Information The floating-point math routines described in the previous sections will always return an error when the result is a complex number. To have floating-point math routines return the complex result, the routines described in Other Math Functions need to be used.
  • Page 116: Table 2.22: Complex Math Power And Logarithmic Math Functions

    OP1 — ATan2(OP1/OP2) where OP1 = imaginary part, ATan2Rad Same as ATan2 except force results to radian mode Table 2.23: Complex Math Miscellaneous Math Functions TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information Function FPS1/FPST^OP1/OP2 FPS1/FPST^((OP1/OP2)^ negative 1) e^(OP1/OP2)
  • Page 117: Other Math Functions

    Chapter 2: TI-83 Plus Specific Information Other Math Functions This section covers math functions with data types other than RealObj and CplxObj. It also covers accessing math functions not listed in the above sections. Many of the functions in the previous two sections can also be used with arguments other than RealObj and CplxObj.
  • Page 118: Function Evaluation

    Function Evaluation Applications may need to evaluate (parse in TI-83 Plus terminology) functions (equations). Using the TI-83 Plus, equations can only contain functions that return values. Programming commands and other commands that do not return a result to Ans are not valid in expressions, and therefore can only be executed from a program variable.
  • Page 119 Chapter 2: TI-83 Plus Specific Information For example, parse the graph equation Y1 and store the answer in Y. Install an error handler around the parsing and the storing routine to catch any errors. RET CA = 0 if OK, else ret CA = 1.
  • Page 120: Temporary Variables

    It needs to be completely or partially reset periodically in order to keep temporary variable usage available. The Managing Temporary Variables section provides additional details. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information MatObj StrngObj EquObj...
  • Page 121: Using Temporary Variables

    Chapter 2: TI-83 Plus Specific Information Fig. 2.15 illustrates the location in RAM the temporary information is stored. System RAM (Fixed Size) User RAM (Grows Up) Temporary RAM (Grows Up) Floating Point Stack (Grows Up) Free RAM Operator Stack (Grows Down)
  • Page 122: Deleting Temps And Setting (Ptempcnt)

    System Routine CleanAll — This routine is used when the error context is started, or control is returned to the home screen. This will delete all temporary variables and reset (pTempCnt) equal to 0000h. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information ChkFindSym ; look up temp 7,(HL) ;...
  • Page 123 Chapter 2: TI-83 Plus Specific Information What should applications do? Most applications should be able to use the CleanAll routine to manage temporary variables. Applications should make a call to the CleanAll routine as soon as all temporary variables in use are no longer needed. This is especially important if temporary variables are going to be created in a looping environment.
  • Page 124: Working With Ti Language Localization Applications

    Working with TI Language Localization Applications TI has made available applications that change the language used for functions commands and strings, from English to an alternate language. Applications can take advantage of the language setting by being able to modify their output to match the current language setting, if desired.
  • Page 125: Entering And Exiting An Application Properly

    ) Stand-alone The application handles all key inputs itself and does not need access to the TI-83 Plus menu system. The application will also not be notified if the user turns the unit off. This means that no data, not already saved in a variable, will be lost when the unit turns off.
  • Page 126: Exit Code

    Exit Code The application wants to terminate and return to normal TI-83 Plus operations. Some of the calls in this sequence are not always needed — see the comments. The following sequence exits the application cleanly even if the hardware stack is not at the same level upon entry to the application.
  • Page 127: Stand-Alone With Put Away Notification

    If an application needs to be notified when it is being closed down by the system, it must change the system monitor vectors. Only applications that are extensively integrated with the TI-83 Plus system need to use the monitor. These types of applications are currently not fully supported by this document.
  • Page 128: Start-Up Code

    ; for the ‘Put Away’ vector which is set to the routine to handle the ; Put Away in the App. TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information At this point the application is executing under the stand-alone situation described in the previous section.
  • Page 129 Since the monitor is not in control, information will be sent to the application under three circumstances. While GetKey is executing the TI-83 Plus is turned off. While GetKey link activity is detected. If a system error is generated and allowed to be displayed, the Quit option is chosen by the user.
  • Page 130: Put Away Code

    ; note: this will terminate the link activity that caused the application ; to be terminated. B_CALL B_JUMP TurningOff: B_JUMP TI-83 Plus Developer Guide Chapter 2: TI-83 Plus Specific Information plotLoc, (IY+plotFlags) textWrite, (IY+sGrFlags) ReloadAppEntryVecs (IY+textFlags),0 SetTblGraphDraw MonAbandon,(IY+monFlags) NZ, TurningOff...
  • Page 131: Chapter 3: Application Development Process

    Application Development The following chart provides an overview of the steps necessary to create a TI-83 Plus application. A simple application is used to walk you through the detailed steps. Use the chart as a general guide. This process assumes that you are running Windows 95 operating system and that you have access to a text editor such as Notepad.
  • Page 132: Programming Layer

    Chapter 2 covered the Hardware layer, the Driver layer, and the Tools and Utilities layer. The final layer in the TI-83 Plus architecture is the Programming layer. There are three kinds of programs that can be created for the TI-83 Plus: TI BASIC programs, ASM programs, and Applications. This chapter is primarily concerned with applications.
  • Page 133: Applications

    Using the Simulator System — Requirements for Getting Started The following are the requirements to be able to develop TI-83 Plus applications using TI’s simulator development system. The Zilog Developer Studio and TI-83 Plus Simulator/Debugger installation and operations are covered in Chapter 4.
  • Page 134: Creating An Application For Debugging — One-Page And Multi-Page Apps

    Applications can be signed as freeware or authenticated applications. Freeware applications can run on any TI-83 Plus or Silver Edition calculator. The 0104.key file and Wappsign utility are provided with the SDK and can be used to sign applications as freeware.
  • Page 135: The Hello Application

    Application Headers The most unique thing about the TI-83 Plus application source code is the long set of data that begins the file. This data is known as the application header. The application header contains information used by the calculator operating system when the user tries to run the application.
  • Page 136: Defining A String

    Hello into the OP1 area in RAM (see next paragraph). System RAM Registers The calculator system code performs many operations on floating-point values. It uses a floating-point format that requires up to 11 bytes in certain situations. Since floating- point operations are so common, it defines six 11-byte areas that it uses frequently for storing such numbers.
  • Page 137: Reading A Key Press

    Chapter 3: Application Development Process Reading a Key Press The system routine GetKey waits for a user to press a key on the calculator keypad. The example (found in the hello.asm file) uses this fact to implement a pause so that you can read the string it printed.
  • Page 138: Branch Table Placement

    When an on-page call, a call to a routine that exists on the same application page as the point of the call, is made, the normal call opcode should be used. B_CALL and B_JUMP should not be used in this case. TI-83 Plus Developer Guide Chapter 3: Application Development Process showGoodByeP2 ;...
  • Page 139: Creating A Zilog Developer Studio Project

    4. In the New Section Range dialog box set the following fields to the specified values: Bounds = Length Radix = Hexadecimal Section Name = .text Start Address = 4000 Length = 4000 5. Click OK then click Apply then click OK. TI-83 Plus Developer Guide EVELOPER TUDIO ROJECT Third Release May 28, 2002...
  • Page 140: Building The Application

    1. Select Build, and then Rebuild All. 2. The following text should appear in the output window: Building… hello.asm hello.o — 0 error(s), 0 warning(s) Linking… mydemo.ld — 0 error(s), 0 warning(s) TI-83 Plus Developer Guide Chapter 3: Application Development Process Third Release May 28, 2002...
  • Page 141: Loading The Application Into The Simulator

    1. Start the TI Flash Debugger. 2. Select File, and then New, then TI-83 Plus. 3. Select Debug, and then Go. The TI-83 Plus calculator will be displayed. 4. Click on the Πkey of the calculator. TI-83 Plus Developer Guide...
  • Page 142 6. Click on the Œ key on the calculator. Application three will be titled Hello. Next: 1. Click the 2 key on the calculator to run the Hello application. Hello will appear on the screen. 2. Click on any key of the calculator to quit the Hello application.
  • Page 143: Debugging The Application

    2. Update the Edit Breakpoints dialog box so that it looks like the following: Note: If we look at the hello.lst file we will see that StartApp: is located 0x80 bytes from the start of the page (at x4080). TI-83 Plus Developer Guide Third Release May 28, 2002...
  • Page 144 3. Click on the Œ key of the calculator. Note that the Status of the Debugger is Running. 4. Click on the 2 key of the calculator. The status of the Debugger will change to Halted when the breakpoint is reached.
  • Page 145 6. Select Debug, and then Go. 7. Click the Œ key on the calculator. 8. Click the 2 key on the calculator. The Hello application will run and display Hello again. 9. Click any key on the calculator to quit the application.
  • Page 146: Signing The Application

    Please refer to the Wappsign User’s Guide for more information. Downloading the Application You can use the TI GRAPH LINK™ program or TI Connect™ to download the app to the calculators. TI-83 Plus Developer Guide Chapter 3: Application Development Process...
  • Page 147: Chapter 4: Development Tools

    OFTWARE IMULATOR AND Introduction The TI-83 Plus simulator provides the capability to simulate the TI-83 Plus calculator to allow debugging of applications. The following is a detailed description of the various menu options, screens, and operations. TI-83 Plus Developer Guide...
  • Page 148: Installation

    Chapter 4: Development Tools Installation To install the TI Flash Debugger, run the installation file that has been furnished with the SDK package. Getting Started Click on Start, then Programs, then TI-83 Plus Flash Debugger. The simulator/debugger application presents the following screen.
  • Page 149 Upon selecting File/New, you must select the calculator model (TI-73, TI-83 Plus, or TI-83 Plus Silver Edition) you wish to simulate. Once you have selected a calculator model, the following CPU view is presented with additional selections on the menu bar and tool bar as noted below.
  • Page 150: Address Watch Points

    Flash Flash Monitor RAM Monitor Memory Map Calculator Symbol Table GateArray IO Ports TI-83 Plus Developer Guide Ctrl + O Open Selection Dialog Box Ctrl + S Save As Selection Dialog Box Starts the debugger Stops the debugger Allows single instruction stepping Steps over CALL and B_CALL instructions.
  • Page 151 End Key Press Playing (grayed out) Mouse Cursor Tracking Enable Save Current Calculator Screen Display a Calculator Screen Compare Two Calculator Screen Help About TI Flash Debugger TI-83 Plus Developer Guide Alt+9 Alt+A Alt+B Alt+C Ctrl+F Load Application (Hex) File Dialog Box...
  • Page 152: Breakpoints

    (Debug/Breakpoint drop down menu). To remove breakpoints, select the breakpoint and press the Remove button. Address Watch Points Address watch points will notify you if an address in RAM or Flash has been read from, written to, or accessed. TI-83 Plus Developer Guide Third Release May 28, 2002...
  • Page 153: Trace Options

    This dialog box presents options to be considered in performing a trace such as page, and address ranges. Let us now look at the CPU View first, then we will present each of other views with details of each. TI-83 Plus Developer Guide Chapter 4: Development Tools Third Release May 28, 2002...
  • Page 154: Cpu View Window

    A’F’ alternative register B’C’ alternative register D’E’ alternative register H’L’ alternative register Sign Sign — flags Zero Zero — flags Parity/Overflow Parity/Overflow flag TI-83 Plus Developer Guide Third Release May 28, 2002...
  • Page 155: Disassembly View Window

    Breakpoints can be set and cleared from this screen by use of the right mouse click. This window is automatically invoked when the Debugger STOP key is pressed. TI-83 Plus Developer Guide Chapter 4: Development Tools Third Release May 28, 2002...
  • Page 156: Flash View Window

    If the location has been written to, it will contain 99. If the location has been both read from, and written to since the monitor was cleared, then it will contain FF. Selecting View, then Clear Flash Monitor resets all locations to 00. TI-83 Plus Developer Guide Third Release May 28, 2002...
  • Page 157: Ram View Window

    The Start Address edit box is used to view addresses by entering the desired page/address and pressing enter. Right clicking in the window allows you to toggle between physical addressing and logical addressing modes. TI-83 Plus Developer Guide Chapter 4: Development Tools Third Release May 28, 2002...
  • Page 158: Ram Monitor Window

    99. If the location has been both read from, and written to since the monitor was cleared, then it will contain FF. Selecting View, then Clear RAM Monitor resets all locations to 00. TI-83 Plus Developer Guide Third Release May 28, 2002...
  • Page 159: Memory Map Window

    Shows which pages of Flash and RAM are currently mapped in the Z80 address space. Calculator Simulator Window The following screen shot contains an active simulated TI-83 Plus calculator. The latest operating system is included during the installation of the simulator. Selecting Go from the Debug menu activates the calculator simulator with the operating system operational.
  • Page 160 Chapter 4: Development Tools The input to the TI-83 Plus calculator window can be done in two ways: Pressing the simulated keys with the mouse cursor and seeing the results on the screen. Using the computer keyboard keys and seeing the results on the screen. This method is provided via three configuration files that are included in the SDK —...
  • Page 161: Symbol Table

    Trace Log Window Displays the output of a trace — the execution of instructions within a developer definable address space. TI-83 Plus Developer Guide Chapter 4: Development Tools Third Release May 28, 2002...
  • Page 162 If tracing is enabled, the value of the PC is between the Start and End address and the current page equals the Page specified, the current instruction is added to the trace log buffer. TI-83 Plus Developer Guide If checked, tracing is enabled. The page of Flash or RAM that should be traced The start of the address space to trace.
  • Page 163 Displays the contents of the OP1 – OP6 RAM registers. If a register contains a floating point number or variable name, the data type is shown and the register’s contents are decoded and displayed. TI-83 Plus Developer Guide Chapter 4: Development Tools Third Release May 28, 2002...
  • Page 164: Loading Applications And Ram Files

    Chapter 4: Development Tools Loading Applications and RAM Files Selecting the Load/Application... menu item allows you to load an Application. Selecting the Load/RAM File… menu item allows you to load a RAM file. TI-83 Plus Developer Guide Third Release May 28, 2002...
  • Page 165: Link Settings

    Link Settings The Link Settings dialog box allows you to configure communications settings. Selecting Enable simulator to calculator link will allow you to send and receive data to an external device (calculator, CBL, CBL2, CBR, etc.) through the TI-GRAPH LINK cable.
  • Page 166: Key Press Recording And Playback

    Selecting the Mouse Cursor Tracking Enable option will put the mouse cursor on the keys as they are being played back. TI-83 Plus Developer Guide Third Release May 28, 2002...
  • Page 167: Save/Display/Compare Calculator Screens

    Note: The default extension is .83d. This action also saves the <xyz>.clc file. Support in Writing Applications There are various sources for help in writing TI-83 Plus applications. A few of these resources include: TI-83 Plus Developer’s Guide (this book).
  • Page 168: Glossary

    Assembly A low-level language used to program microprocessors directly. Z80 language assembly language can be used on the TI 83 Plus to write programs that execute faster than programs written in TI BASIC. See Chapter 3 for advantages and disadvantages.
  • Page 169 0 through 9. (Microsoft Encarta ‘97) Boot (code) A small amount of software that resides in ROM; therefore, it cannot be overwritten or erased. Boot code is required for the calculator to manage the installation of new base code. Byte A unit of information consisting of 8 bits, the equivalent of a single character, such as a letter.
  • Page 170 A language that is changed from source code to machine language in real- language time. Examples are BASIC (for the PC and the TI version, TI BASIC) and JavaScript. Interpreted languages are often much simpler, which helps beginners get started and allows experienced programmers to write code quickly.
  • Page 171 Memory Memory is where data is stored. On the TI 83 Plus, the main memory is the built-in 32K of RAM. This memory is composed of one-byte sections, each with a unique address.
  • Page 172 Examples of the ID are mother’s maiden name, social security number, birth date, etc. Unit A digital certificate signed by TI that lists all of the program and group certificate licenses issued to a specific calculator. The unit certificate also includes owner ID information and the calculator serial number.
  • Page 173 The font map below shows each character code, the symbolic name, and the character map. NOT USED LrecurN LrecurU Lintegral Lcross LboxIcon Lroot Linverse Lsquare Lneg TI 83 Plus Developer Guide TI-83 Plus “Large” Character Fonts LrecurV LrecurW Lconvert LcrossIcon LdotIcon LsubT Langle Ldegree...
  • Page 174 Lspace Lexclam Lquote LlParen LrParen Lasterisk Lcolon LatSign LcapA LcapB TI 83 Plus Developer Guide Appendix A: TI 83 Plus “Large” Character Fonts Lpound Lfourth Lpercent LplusSign Lcomma Ldash Lsemicolon LcapC LcapD LcapE Lampersand Lapostrophe Lperiod Lslash Lquestion LcapF LcapG...
  • Page 175 Appendix A: TI 83 Plus “Large” Character Fonts LcapH LcapI LcapJ LcapP LcapQ LcapR LcapX LcapY LcapZ Lbackquote TI 83 Plus Developer Guide LcapK LcapL LcapM LcapS LcapT LcapU Ltheta Lbackslash LrBrack LcapN LcapO LcapV LcapW Lcaret Lunderscore Third Release May 28, 2002...
  • Page 176 Lsub0 Lsub1 Lsub2 Lsub8 Lsub9 LcapAAcute LaCaret LaDier LcapEAcute TI 83 Plus Developer Guide Appendix A: TI 83 Plus “Large” Character Fonts LlBrace Lbar LrBrace Lsub3 Lsub4 Lsub5 LcapAGrave LcapACaret LcapADier LcapEGrave LcapECaret LcapEDier Ltilde LinvEQ Lsub6 Lsub7 LaAcute LaGrave...
  • Page 177 Appendix A: TI 83 Plus “Large” Character Fonts LeCaret LeDier LcapIAcute LiCaret LiDier LcapOAcute LoCaret LoDier LcapUAcute LuCaret LuDier LcapCCed Ldieresis LquesDown LexclamDown TI 83 Plus Developer Guide LcapIGrave LcapICaret LcapIDier LcapOGrave LcapOCaret LcapODier LcapUGrave LcapUCaret LcapUDier LcCed LcapNTilde LnTilde...
  • Page 178 Llambda Ltau Lphi LcapOmega Lblock Lper Lhyphen Lphat Lchi LstatF LcurO LcurO2 LcurOcapA TI 83 Plus Developer Guide Appendix A: TI 83 Plus “Large” Character Fonts Lrho LxMean LyMean LsupX Larea Ltemp Lcube Llne LlistL LfinanN LcurOa LcurI LcurI2 LcapSigma...
  • Page 179 Appendix A: TI 83 Plus “Large” Character Fonts LGline LGthick LGabove LDnBlk LcurFull TI 83 Plus Developer Guide LGbelow LGpath LGanimate LGdot LUpBlk Third Release May 28, 2002...
  • Page 180 NOT USED SrecurN SrecurU Sintegral Scross SboxIcon Sroot Sinverse Ssquare Sneg TI 83 Plus Developer Guide TI 83 Plus “Small” Character Fonts SrecurV SrecurW Sconvert ScrossIcon SdotIcon SsubT Sangle Sdegree Sradian...
  • Page 181 Appendix B: TI 83 Plus “Small” Character Fonts Sspace Sexclam Squote SlParen SrParen Sasterisk Scolon TI 83 Plus Developer Guide Spound Sdollar Spercent SplusSign Scomma Sdash Ssemicolon Sampersand Sapostrophe Speriod Sslash Squestion Third Release May 28, 2002...
  • Page 182 SatSign ScapA ScapB ScapH ScapI ScapJ ScapP ScapQ ScapR ScapX ScapY ScapZ TI 83 Plus Developer Guide Appendix B: TI 83 Plus “Small” Character Fonts ScapC ScapD ScapE ScapK ScapL ScapM ScapS ScapT ScapU Stheta Sbackslash SrBrack ScapF ScapG ScapN...
  • Page 183 Appendix B: TI 83 Plus “Small” Character Fonts Sbackquote SmallA SmallB SmallH SmallI SmallJ SmallP SmallQ SmallR SmallX SmallY SmallZ TI 83 Plus Developer Guide SmallC SmallD SmallE SmallK SmallL SmallM SmallS SmallT SmallU SlBrace Sbar SrBrace SmallF SmallG SmallN...
  • Page 184: Ti-83 Plus "Small" Character Fonts

    Ssub0 Ssub1 Ssub2 Ssub8 Ssub9 ScapAAcute SaCaret SaDier ScapEGrave SeCaret SeDier ScapIAcute TI 83 Plus Developer Guide Appendix B: TI-83 Plus “Small” Character Fonts Ssub3 Ssub4 Ssub5 ScapAGrave ScapACaret ScapADier ScapEAcute ScapECaret ScapEDier ScapIGrave ScapICaret ScapIDier Ssub6 Ssub7 SaAcute SaGrave...
  • Page 185 Appendix B: TI 83 Plus “Small” Character Fonts SiCaret SiDier ScapOAcute SoCaret SoDier ScapUAcute SuCaret SuDier ScapCCed Sdieresis SquesDown SexclamDown TI 83 Plus Developer Guide ScapOGrave ScapOCaret ScapODier ScapUGrave ScapUCaret ScapUDier ScCed ScapNTilde SnTilde Salpha Sbeta Sgamma SoAcute SoGrave SuAcute...
  • Page 186 Sepsilon SlBrack Slambda Stau Sphi ScapOmega Sblock Sper Shyphen Sphat Schi SstatF TI 83 Plus Developer Guide Appendix B: TI 83 Plus “Small” Character Fonts Srho SxMean SyMean SsupX Sarea Stemp Scube Slne SlistL SfinanN ScapSigma Ssigma Sellipsis Sleft Senter...
  • Page 187 Appendix B: TI 83 Plus “Small” Character Fonts SListLock Sscatter1 Sscatter2 Shist2 SmodBox1 SmodBox2 TI 83 Plus Developer Guide Sxyline1 Sxyline2 Sboxplot1 Snormal1 Snormal2 Sboxplot2 Shist1 Third Release May 28, 2002...
  • Page 188 Texas Instruments U.S.A. 7800 Banner Dr. Dallas, TX 75251 Texas Instruments Holland B.V. Rutherfordweg 102 3542CG Utrecht-The Netherlands Printed by: t i - c a r e s @ t i . c o m © 2001, 2002 Texas Instruments h t t p : / / e d u c a t i o n .

Table of Contents