| InstructionTags | Type (Enumeration)

estack.h

enum InstructionTags {...};

An enumeration to describe types of instructions on the expression stack.

If the tag of an entry on the expression stack is EXT_INSTR_TAG (0xE4), then the byte below it is the tag of a TI-Basic command token. Although TI-Basic tokens are not interesting for programming, they are defined in enumerated type InstructionTags, due to completeness. This enum is quite big, and here is a complete list of TI-Basic instruction token tags defined in it (all values are in hex), with their meaning (used notation is RPN):

01 | CLRDRAW_ITAG | ClrDraw
02 | CLRGRAPH_ITAG | ClrGraph
03 | CLRHOME_ITAG | ClrHome
04 | CLRIO_ITAG | ClrIO
05 | CLRTABLE_ITAG | ClrTable
06 | CUSTOM_ITAG | Custom
07 | CYCLE_ITAG | displacement Cycle (displacement towards the instruction ending the loop)
08 | DIALOG_ITAG | Dialog
09 | DISPG_ITAG | DispG
0A | DISPTBL_ITAG | DispTbl
0B | ELSE_ITAG | Else (in If...EndIf statement)
0C | ENDCUSTM_ITAG | EndCustm
0D | ENDDLOG_ITAG | EndDlog
0E | ENDFOR_ITAG | displacement EndFor
0F | ENDFUNC_ITAG | EndFunc
10 | ENDIF_ITAG | EndIf
11 | ENDLOOP_ITAG | displacement EndLoop
12 | ENDPRGM_ITAG | EndPrgm
13 | ENDTBAR_ITAG | EndTBar
14 | ENDTRY_ITAG | EndTry
15 | ENDWHILE_ITAG | displacement EndWhile
16 | EXIT_ITAG | displacement Exit (displacement towards the end of the loop, i.e. the instruction following the loop ending instruction)
17 | FUNC_ITAG | Func
18 | LOOP_ITAG | Loop
19 | PRGM_ITAG | Prgm
1A | SHOWSTAT_ITAG | ShowStat
1B | STOP_ITAG | Stop
1C | THEN_ITAG | Then
1D | TOOLBAR_ITAG | Toolbar
1E | TRACE_ITAG | Trace
1F | TRY_ITAG | Try
20 | ZOOMBOX_ITAG | ZoomBox
21 | ZOOMDATA_ITAG | ZoomData
22 | ZOOMDEC_ITAG | ZoomDec
23 | ZOOMFIT_ITAG | ZoomFit
24 | ZOOMIN_ITAG | ZoomIn
25 | ZOOMINT_ITAG | ZoomInt
26 | ZOOMOUT_ITAG | ZoomOut
27 | ZOOMPREV_ITAG | ZoomPrev
28 | ZOOMRCL_ITAG | ZoomRcl
29 | ZOOMSQR_ITAG | ZoomSqr
2A | ZOOMSTD_ITAG | ZoomStd
2B | ZOOMSTO_ITAG | ZoomSto
2C | ZOOMTRIG_ITAG | ZoomTrig
2D | DRAWFUNC_ITAG | expr DrawFunc
2E | DRAWINV_ITAG | expr DrawInv
2F | GOTO_ITAG | expr Goto (Expr = LABEL)
30 | LBL_ITAG | expr Lbl (Expr = LABEL)
31 | GET_ITAG | var Get
32 | SEND_ITAG | list Send
33 | GETCALC_ITAG | var GetCalc
34 | SENDCALC_ITAG | var SendCalc
35 | NEWFOLD_ITAG | foldername NewFold
36 | PRINTOBJ_ITAG | var PrintObj
37 | RCLGDB_ITAG | var RclGDB
38 | STOGDB_ITAG | var StoGDB
39 | ELSEIF_ITAG | condition ElseIf
3A | IF_ITAG | condition If (simple variant)
3B | IFTHEN_ITAG | condition If...Then (If condition Then)
3C | RANDSEED_ITAG | expr RandSeed
3D | WHILE_ITAG | condition While
3E | LINETAN_ITAG | point expr LineTan
3F | COPYVAR_ITAG | var2 var1 CopyVar
40 | RENAME_ITAG | newname oldname Rename
41 | STYLE_ITAG | string expr Style
42 | FILL_ITAG | var expr Fill
43 | REQUEST_ITAG | var string Request
44 | POPUP_ITAG | var itemlist PopUp
45 | PTCHG_ITAG | y x PtChg
46 | PTOFF_ITAG | y x PtOff
47 | PTON_ITAG | y x PtOn
48 | PXLCHG_ITAG | column row PxlChg
49 | PXLOFF_ITAG | column row PxlOff
4A | PXLON_ITAG | column row PxlOn
4B | MOVEVAR_ITAG | newfolder oldfolder var MoveVar
4C | DROPDOWN_ITAG | var list title_string DropDown
4D | OUTPUT_ITAG | expr column row Output
4E | PTTEXT_ITAG | y x string PtText
4F | PXLTEXT_ITAG | column row string PxlText
50 | DRAWSLP_ITAG | slope y x DrawSlp
51 | PAUSE_ITAG | [expr] Pause
52 | RETURN_ITAG | [expr] Return
53 | INPUT_ITAG | [var [string]] Input
54 | PLOTSOFF_ITAG | [9] ... [2] [1] PlotsOff
55 | PLOTSON_ITAG | [9] ... [2] [1] PlotsOn
56 | TITLE_ITAG | [label] string Title
57 | ITEM_ITAG | [label] string Item
58 | INPUTSTR_ITAG | var [string] InputStr
59 | LINEHORZ_ITAG | [drawmode] y LineHorz
5A | LINEVERT_ITAG | [drawmode] x LineVert
5B | PXLHORZ_ITAG | [drawmode] row PxlHorz
5C | PXLVERT_ITAG | [drawmode] column PxlVert
5D | ANDPIC_ITAG | [pxlcol pxlrow] picvar AndPic
5E | RCLPIC_ITAG | [pxlcol pxlrow] picvar RclPic
5F | RPLCPIC_ITAG | [pxlcol pxlrow] picvar RplcPic
60 | XORPIC_ITAG | [pxlcol pxlrow] picvar XorPic
61 | DRAWPOL_ITAG | [q step] [q max] [q min] DrawPol
62 | TEXT_ITAG | [] string Text
63 | ONEVAR_ITAG | [L4] [L3] [L2] [L1] OneVar
64 | STOPIC_ITAG | [height width] [pxlcol pxlrow] var StoPic
65 | GRAPH_ITAG | [var2] [var1] [expr2] expr1 Graph
66 | TABLE_ITAG | [var] [expr2] expr1 Table
67 | NEWPIC_ITAG | [maxcol] [maxrow] picvar mat NewPic
68 | DRAWPARM_ITAG | [tstep] [tmax] [tmin] expr2 expr1 DrawParm
69 | CYCLEPIC_ITAG | [direction] [cycle] [wait] N picname_string CyclePic
6A | CUBICREG_ITAG | [[L5 L4] [L3]] L2 L1 CubicReg
6B | EXPREG_ITAG | [[L5 L4] [L3]] L2 L1 ExpReg
6C | LINREG_ITAG | [[L5 L4] [L3]] L2 L1 LinReg
6D | LNREG_ITAG | [[L5 L4] [L3]] L2 L1 LnReg
6E | MEDMED_ITAG | [[L5 L4] [L3]] L2 L1 MedMed
6F | POWERREG_ITAG | [[L5 L4] [L3]] L2 L1 PowerReg
70 | QUADREG_ITAG | [[L5 L4] [L3]] L2 L1 QuadReg
71 | QUARTREG_ITAG | [[L5 L4] [L3]] L2 L1 QuartReg
72 | TWOVAR_ITAG | [[L5 L4] [L3]] L2 L1 TwoVar
73 | SHADE_ITAG | [patres] [pat] [xhigh] [xlow] expr2 expr1 Shade
74 | FOR_ITAG | [step] high low var For
75 | CIRCLE_ITAG | [drawmode] r y x Circle
76 | PXLCRCL_ITAG | [drawmode] r col row PxlCrcl
77 | NEWPLOT_ITAG | [bucket] [mark] [inc] [cat] [frq] [ylist] xlist type N NewPlot
78 | LINE_ITAG | [drawmode] yend xend ystart xstart Line
79 | PXLLINE_ITAG | [drawmode] colend rowend colstart rowstart PxlLine
7A | DISP_ITAG | [[...] expr1] Disp
7B | FNOFF_ITAG | [99] ... [2] [1] FnOff
7C | FNON_ITAG | [99] ... [2] [1] FnOn
7D | LOCAL_ITAG | [...] var1 Local
7E | DELFOLD_ITAG | [...] var1 DelFold
7F | DELVAR_ITAG | [...] var1 DelVar
80 | LOCK_ITAG | [...] var1 Lock
81 | PROMPT_ITAG | [...] var1 Prompt
82 | SORTA_ITAG | [...] list1 SortA
83 | SORTD_ITAG | [...] list1 SortD
84 | UNLOCK_ITAG | [...] var1 UnLock
85 | NEWDATA_ITAG | [...] list1 datavar NewData
86 | DEFINE_ITAG | expr var|userfunc Define
87 | ELSE_TRY_ITAG | Else (in Try...EndTry statement)
88 | CLRERR_ITAG | ClrErr
89 | PASSERR_ITAG | PassErr
8A | DISPHOME_ITAG | DispHome
8B | EXEC_ITAG | [[...] expr] string Exec
8C | ARCHIVE_ITAG | [...] var1 Archive
8D | UNARCHIV_ITAG | [...] var1 Unarchiv
8E | LU_ITAG | [tol] pvar uvar lvar mat LU
8F | QR_ITAG | [tol] rvar qvar mat QR
90 | BLDDATA_ITAG | var|sysdata BldData
91 | DRWCTOUR_ITAG | expr DrwCtour
92 | NEWPROB_ITAG | NewProb
93 | SINREG_ITAG | [[L4 L3] [period] [iter]] L2 L1 SinReg
94 | LOGISTIC_ITAG | [[L4 L3] [period] [iter]] L2 L1 Logistic
95 | CUSTMON_ITAG | CustmOn
96 | CUSTMOFF_ITAG | CustmOff
97 | SENDCHAT_ITAG | var SendChat
99 | REQUEST_THREEARG_ITAG | [] alphalock var string Request (AMS 2.07 or higher)
9A | CLOCKON_ITAG | ClockOn (AMS 2.07 or higher)
9B | CLOCKOFF_ITAG | ClockOff (AMS 2.07 or higher)

Note: Displacements for jumps are 2 byte quantities in little endian format. Displacements in front of loop ending instructions are towards the beginning of the loop.
Note: An empty list [] of optional arguments means the instruction does not take any optional arguments, but an END_TAG is needed nonetheless.
Note: For compatibility with TI's compiler, their tag names are also supported.