File: ti83plus.inc - Tab length: 1 2 4 8 - Lines: on off - No wrap: on off

0001: ;ti-83 plus include file
0002: ;$05/07/2007
0003: 
0004: ;system variable equates
0005: ;------------------------------
0006: #define xsclt   $02
0007: #define ysclt   $03
0008: #define xmint   $0a
0009: #define xmaxt   $0b
0010: #define ymint   $0c
0011: #define ymaxt   $0d
0012: #define tmint   $0e
0013: #define tmaxt   $0f
0014: #define thetmint    $10
0015: #define thetmaxt    $11
0016: #define tblmint $1a
0017: #define plotstartt  $1b
0018: #define nmaxt   $1d
0019: #define nmint   $1f
0020: #define tblstept    $21
0021: #define tstept  $22
0022: #define thetstept   $23
0023: #define deltaxt $26
0024: #define deltayt $27
0025: #define xfactt  $28
0026: #define yfactt  $29
0027: #define finnt   $2b
0028: #define finit   $2c
0029: #define finpvt  $2d
0030: #define finpmtt $2e
0031: #define finfvt  $2f
0032: #define finpyt  $30
0033: #define fincyt  $31
0034: #define plotstept   $34
0035: #define xrest   $36
0036: 
0037: ;run indicators
0038: ;------------------------------------
0039: #define busypause   %10101010
0040: #define busynormal  %11110000
0041: 
0042: ;banked call equates/macros
0043: ;-----------------------------------------------
0044: #define rbr_call    $28
0045: #define brt_jump0   $50
0046: #define bcall(xxxx) rst rbr_call\   .dw xxxx
0047: #define bjump(xxxx) call brt_jump0\ .dw xxxx
0048: 
0049: ;common restart routines
0050: ;------------------------------
0051: #define rop1toop2   $08
0052: #define rfindsym    $10
0053: #define rpushrealo1 $18
0054: #define rmov9toop1  $20
0055: #define rfpadd  $30
0056: 
0057: ;error handler equates/macros
0058: ;-------------------------------------------
0059: #define app_push_errorh $59
0060: #define app_pop_errorh  $5c
0061: #define apponerr(xxxx)  ld hl,xxxx\ call app_push_error
0062: #define appofferr   call app_pop_error
0063: 
0064: ;page   $1b rom calls
0065: ;--------------------------------
0066: #define _jerrorno   $4000
0067: #define _fonthook   $4003
0068: #define _call_character_hook    $4006 ;calls character(localize) hook
0069: #define _ldhlind    $4009 ;l=a=(hl),h=(hl+1)
0070: #define _cphlde $400c
0071: #define _divhlby10  $400f
0072: #define _divhlbya   $4012
0073: #define _kdbscan    $4015
0074: #define _getcsc $4018 ;key board scan codes
0075: #define _coormon    $401b ;
0076: #define _mon    $401e ;system monitor, customized through the context vectors
0077: #define _monforcekey    $4021 ;
0078: #define _sendkpress $4024
0079: #define _jforcecmdnochar    $4027
0080: #define _jforcecmd  $402a ;
0081: #define _syserrhandler  $402d ;loads error context? sp=(onsp)
0082: #define _newcontext $4030 ;(kbdkey)=0, loads context, restores page in  $4000-$7fff
0083: #define _newcontext0    $4033 ;loads context
0084: #define _cxputaway  $4036 ;
0085: #define _cxputaway2 $4039 ;same but also does a b_call canalphins
0086: #define _cxpputaway $403c
0087: #define _cxsizewind $403f
0088: #define _cxerrep    $4042
0089: #define _cxmain $4045
0090: #define _monerrhand $4048 ;installs errorhandler to start of rom call, loads error context, jumps to mon
0091: #define _appinit    $404b ;loads vector data at hl to cxmain and the rest of the vectors
0092: #define _resetram   $404e
0093: #define _lcd_busy   $4051 ;wait till bit 1 of port 2 is set
0094: #define _min    $4054 ;op1 = lowest number between op1 and op2
0095: #define _max    $4057 ;op1 = highest number between op1 and op2
0096: #define _trunc  $4060
0097: #define _invsub $4063
0098: #define _times2 $4066
0099: #define _plus1  $4069 ;op1=op1+1
0100: #define _minus1 $406c
0101: #define _fpsub  $406f
0102: #define _fpadd  $4072
0103: #define _dtor   $4075
0104: #define _rtod   $4078
0105: #define _cube   $407b
0106: #define _timespt5   $407e
0107: #define _fpsquare   $4081
0108: #define _fpmult $4084 ;op1=op1*op2
0109: #define _ljrnd  $4087 ;adjusts op1 if 0s precede the actual number... rounding? when
0110: #define _invop1sc   $408a
0111: #define _invop1s    $408d
0112: #define _invop2s    $4090
0113: #define _frac   $4093
0114: #define _fprecip    $4096
0115: #define _fpdiv  $4099
0116: #define _sqroot $409c
0117: #define _rndguard   $409f
0118: #define _rnfx   $40a2
0119: #define _int    $40a5
0120: #define _round  $40a8
0121: #define _lnx    $40ab
0122: #define _logx   $40ae
0123: #define _ljnornd    $40b1 ;like _ljrnd but no rounding
0124: #define _etox   $40b4
0125: #define _tenx   $40b7
0126: #define _sincosrad  $40ba
0127: #define _sin    $40bd
0128: #define _cos    $40c0
0129: #define _tan    $40c3
0130: #define _sinhcosh   $40c6
0131: #define _tanh   $40c9
0132: #define _cosh   $40cc
0133: #define _sinh   $40cf
0134: #define _acosrad    $40d2
0135: #define _atanrad    $40d5
0136: #define _atan2rad   $40d8
0137: #define _asinrad    $40db
0138: #define _acos   $40de
0139: #define _atan   $40e1
0140: #define _asin   $40e4
0141: #define _atan2  $40e7
0142: #define _atanh  $40ea
0143: #define _asinh  $40ed
0144: #define _acosh  $40f0
0145: #define _ptor   $40f3
0146: #define _rtop   $40f6
0147: #define _hltimes9   $40f9
0148: #define _ckop1cplx  $40fc
0149: #define _ckop1real  $40ff
0150: #define _angle  $4102
0151: #define _cop1set0   $4105
0152: #define _cpop4op3   $4108
0153: #define _mov9op2cp  $410b
0154: #define _abso1o2cp  $410e
0155: #define _cpop1op2   $4111
0156: #define _op3toop4   $4114
0157: #define _op1toop4   $4117
0158: #define _op2toop4   $411a
0159: #define _op4toop2   $411d
0160: #define _op1toop3   $4123
0161: #define _op5toop2   $4126
0162: #define _op5toop6   $4129
0163: #define _op5toop4   $412c
0164: #define _op1toop2   $412f
0165: #define _op6toop2   $4132
0166: #define _op6toop1   $4135
0167: #define _op4toop1   $4138
0168: #define _op5toop1   $413b
0169: #define _op3toop1   $413e
0170: #define _op6toop5   $4141
0171: #define _op4toop5   $4144
0172: #define _op3toop5   $4147
0173: #define _op2toop5   $414a
0174: #define _op2toop6   $414d
0175: #define _op1toop6   $4150
0176: #define _op1toop5   $4153
0177: #define _op2toop1   $4156
0178: #define _mov11b $4159
0179: #define _mov10b $415c
0180: #define _mov9b  $415f
0181: #define _mov9b2 $4162 ;points to _mov9b
0182: #define _mov8b  $4165
0183: #define _mov7b  $4168
0184: #define _mov7b2 $416b ;same pointer as _mov7b
0185: #define _op2toop3   $416e
0186: #define _op4toop3   $4171
0187: #define _op5toop3   $4174
0188: #define _op4toop6   $4177
0189: #define _mov9toop1  $417a
0190: #define _mov9op1op2 $417d
0191: #define _mov9toop2  $4180
0192: #define _movfrop1   $4183
0193: #define _op4set1    $4186
0194: #define _op3set1    $4189
0195: #define _op2set8    $418c
0196: #define _op2set5    $418f
0197: #define _op2seta    $4192
0198: #define _op2set4    $4195
0199: #define _op2set3    $4198
0200: #define _op1set1    $419b
0201: #define _op1set4    $419e
0202: #define _op1set3    $41a1
0203: #define _op3set2    $41a4
0204: #define _op1set2    $41a7
0205: #define _op2set2    $41aa
0206: #define _op2set1    $41ad
0207: #define _zero16d    $41b0
0208: #define _op5set0    $41b3
0209: #define _op4set0    $41b6
0210: #define _op3set0    $41b9
0211: #define _op2set0    $41bc
0212: #define _op1set0    $41bf
0213: #define _opset0 $41c2 ;hl = location to write floating point 0
0214: #define _zeroop1    $41c5
0215: #define _zeroop2    $41c8
0216: #define _zeroop3    $41cb
0217: #define _zeroop $41ce
0218: #define _clrlp  $41d1
0219: #define _shracc $41d4 ;move high nibble in a to low nibble
0220: #define _shlacc $41d7 ;move low nibble in a to high nibble
0221: #define _shr18  $41da ;insert a 0 nibble at high nibble of (hl), shift 9 bytes 1 nibble to right
0222: #define _shr18a $41dd ;insert low nibble in a at high nibble of (hl), shift 9 bytes 1 nibble to right
0223: #define _shr16  $41e0 ;insert a 0 nibble at highnibble of (hl), shift 8 bytes 1 nibble to right
0224: #define _shr14  $41e3 ;insert low nibble in a at high nibble of (hl), shift 7 bytes 1 nibble to right
0225: #define _shl16  $41e6 ;insert nibble of 0 in low nibble of (hl), shift 8 bytes (before and including (hl)) to the left 1 nibble
0226: #define _shl14  $41e9 ;insert low nibble of a in low nibble of (hl), shift 7 bytes (before and including (hl)) to the left 1 nibble
0227: #define _srdo1  $41ec
0228: #define _shrdrnd    $41ef
0229: #define _mantpa $41f2 ;adds the value of a to hl which points to the end of the bcd 7 bytes long
0230: #define _addprop    $41f5 ;adds the value of a to hl which points to the end of the bcd (b bytes long)
0231: #define _addproplp  $41f8 ;adds the value of a and carry to hl which points to the end of the bcd (b bytes long)
0232: #define _add16d     $41fb ;adds the bcd numbers at (hl-7) and (de-7)
0233: #define _add14d $41fe ;adds the bcd numbers at (hl-6) and (de-6)
0234: #define _sub16d $4201 ;subtracts bcd numbers at (hl-7) and (de-7)
0235: #define _sub14d $4204 ;subtracts bcd numbers at (hl-6) and (de-6)
0236: #define _op2exop6   $4207
0237: #define _op5exop6   $420a
0238: #define _op1exop5   $420d
0239: #define _op1exop6   $4210
0240: #define _op2exop4   $4213
0241: #define _op2exop5   $4216
0242: #define _op1exop3   $4219
0243: #define _op1exop4   $421c
0244: #define _op1exop2   $421f
0245: #define _exlp   $4222
0246: #define _ckop1c0    $4225
0247: #define _ckop1fp0   $4228
0248: #define _ckop2fp0   $422b
0249: #define _posno0int  $422e
0250: #define _ckposint   $4231
0251: #define _ckint  $4234
0252: #define _ckodd  $4237
0253: #define _ckop1m $423a
0254: #define _getconop1  $423d   ;a=0 opx=57.29577951308232 (1 radian in degrees)
0255: #define _getconop2  $4240   ;a=1 opx=1.570796326794897 (90 deg = pi/2)
0256:                             ;a=2 opx=.7853981633974483 (45 deg = pi/4)
0257:                             ;a=3 opx=.4342944819032518 (log e)
0258:                             ;a=4 opx=3.141592653589800 (pi)
0259:                             ;a=5 opx=.0174532925199433 (pi/180 = 1 degree in radians)
0260:                             ;a=6 opx=2.302585092994046 (ln 10)
0261: #define _pidiv2 $4243 ;not code, but a pointer to:  .db 80,15,70,79,63,26,79,48,97
0262: #define _pidiv4 $4246 ;                             .db 7f,78,53,98,16,33,97,44,83
0263: #define _pitimes2   $4249 ;not code, but a pointer to a 2*pi in non-op format (no exponent byte)
0264: #define _pi $424c ;not code, but a pointer to a pi in non-op format (no exponent byte)
0265: #define _exptohex   $424f
0266: #define _op1exptodec    $4252
0267: #define _ckop2pos   $4255
0268: #define _ckop1pos   $4258
0269: #define _clrop2s    $425b
0270: #define _clrop1s    $425e
0271: #define _fdiv100    $4261 ;op1=op1/100
0272: #define _fdiv10 $4264 ;op1=op1/10
0273: #define _deco1exp   $4267 ;decrease exponent by 1, this can go from $00 to  $ff
0274: #define _inco1exp   $426a ;op1=op1*10
0275: #define _incexp $426d ;hl points to the floating point's exponent to be multiplied by 10
0276: #define _ckvalidnum $4270
0277: #define _getexp $4273 ;a=op1's exponent, carry set if negative exponent, z if e0
0278: #define _htimesl    $4276
0279: #define _eop1notreal    $4279
0280: #define _thetaname  $427c
0281: #define _rname  $427f
0282: #define _regeqname  $4282
0283: #define _recurnname $4285
0284: #define _xname  $4288
0285: #define _yname  $428b
0286: #define _tname  $428e
0287: #define _realname   $4291
0288: #define _setestofps $4294 ;moves the word at fps to es
0289: #define _marktabledirty $4297 ;looks up table variable and marks vat entry as "dirty" or selected
0290: #define _op1mop2exp $429a ;op1's exponent = op1's expoent - op2's exponent
0291: #define _op1expminuse   $429d ;a=(op1+1)-e
0292: #define _chkerrbreak    $42a0
0293: #define _isa2bytetok    $42a3
0294: #define _getlastentry   $42a6
0295: #define _getlastentryptr    $42a9
0296: #define _regclrchng $42ac
0297: #define _resetwintop    $42af ;takes into account grfsplitoverride and grfsplit flags
0298: #define _setyup $42b2 ;loads 7 to port 10... what does this do?
0299: #define _setxup $42b5 ;loads 5 to port 10...
0300: #define _iso1nontlstorprog  $42b8 ;checks if op1 contains a list, program, group, or appvar obj name
0301: #define _iso1nontemplst $42bb ;checks if op1 contains a list (why would op1+1 contain 01, or 0d for a var name?)
0302: #define _is_a_lstorclst $42be ;checks if a = 1 or 0d
0303: #define _chk_hl_999 $42c1 ;returns nc if less than 999, throws invalid dim error if greater than or equal to 999
0304: #define _equ_or_newequ  $42c4
0305: #define _errd_op1notpos $42c7
0306: #define _errd_op1not_r  $42ca
0307: #define _errd_op1notposint  $42cd
0308: #define _errd_op1_le_0  $42d0
0309: #define _errd_op1_0 $42d3
0310: #define _findsym_get_size   $42d6 ;like findsym, but on output hl is the size of the variable
0311: #define _sto_statvar    $42d9
0312: #define _rcl_statvar    $42dc
0313: #define _ckop2real  $42df
0314: #define _get_x_indirect $42e2 ;whatever this is, it uses the imathptrx locations
0315: #define _memchk $42e5
0316: #define _cmpprgnamlen1  $42e8 ;gets variable name length from hl
0317: #define _cmpprgnamlen   $42eb ;gets variable name length from op1
0318: #define _findprogsym    $42ee ;find the program whose name is in op1 (see chkfindsym in sdk)
0319: #define _chkfindsym $42f1
0320: #define _findsym    $42f4
0321: #define _insertmem  $42f7
0322: #define _insertmema $42fa ;not sure how this differs from insertmem
0323: #define _enoughmem  $42fd
0324: #define _cmpmemneed $4300
0325: #define _createpvar4    $4303
0326: #define _createpvar3    $4306
0327: #define _createvar3 $4309
0328: #define _createcplx $430c
0329: #define _createreal $430f
0330: #define _createtemprlist    $4312
0331: #define _createrlist    $4315
0332: #define _createtclist   $4318
0333: #define _createclist    $431b
0334: #define _createtemprmat $431e
0335: #define _creatermat $4321
0336: #define _createtempstring   $4324
0337: #define _createstrng    $4327
0338: #define _create0equ $432a
0339: #define _createtempequ  $432d
0340: #define _createequ  $4330
0341: #define _createpict $4333
0342: #define _creategdb  $4336
0343: #define _createprog $4339
0344: #define _chkdel $433c
0345: #define _chkdela    $433f
0346: #define _adjparser  $4342
0347: #define _adjmath    $4345
0348: #define _adjm7  $4348
0349: #define _delmema    $434b
0350: #define _get_form_num   $434e
0351: #define _delvar $4351
0352: #define _delvario   $4354
0353: #define _delmem $4357
0354: #define _delvar3d   $435a
0355: #define _delvar3c   $435d
0356: #define _delvar3dc  $4360 ;may be incorrect
0357: #define _isfixedname    $4363
0358: #define _delvarentry    $4366
0359: #define _datasizea  $4369
0360: #define _datasize   $436c
0361: #define _popmcplxo1 $436f
0362: #define _popmcplx   $4372
0363: #define _movcplx    $4375
0364: #define _popop5 $4378
0365: #define _popop3 $437b
0366: #define _popop1 $437e
0367: #define _poprealo6  $4381
0368: #define _poprealo5  $4384
0369: #define _poprealo4  $4387
0370: #define _poprealo3  $438a
0371: #define _poprealo2  $438d
0372: #define _poprealo1  $4390
0373: #define _popreal    $4393
0374: #define _fpopcplx   $4396
0375: #define _fpopreal   $4399
0376: #define _fpopfps    $439c
0377: #define _deallocfps $439f
0378: #define _deallocfps1    $43a2
0379: #define _allocfps   $43a5
0380: #define _allocfps1  $43a8
0381: #define _pushrealo6 $43ab
0382: #define _pushrealo5 $43ae
0383: #define _pushrealo4 $43b1
0384: #define _pushrealo3 $43b4
0385: #define _pushrealo2 $43b7
0386: #define _pushrealo1 $43ba
0387: #define _pushreal   $43bd
0388: #define _pushop5    $43c0
0389: #define _pushop3    $43c3
0390: #define _pushmcplxo3    $43c6
0391: #define _pushop1    $43c9
0392: #define _pushmcplxo1    $43cc
0393: #define _pushmcplx  $43cf
0394: #define _exmcplxo1  $43d2
0395: #define _exch9  $43d5
0396: #define _cpyto1fps11    $43d8
0397: #define _cpyto2fps5 $43db
0398: #define _cpyto1fps5 $43de
0399: #define _cpyto2fps6 $43e1
0400: #define _cpyto1fps6 $43e4
0401: #define _cpyto2fps7 $43e7
0402: #define _cpyto1fps7 $43ea
0403: #define _cpyto1fps8 $43ed
0404: #define _cpyto2fps8 $43f0
0405: #define _cpyto1fps10    $43f3
0406: #define _cpyto1fps9 $43f6
0407: #define _cpyto2fps4 $43f9
0408: #define _cpyto6fps3 $43fc
0409: #define _cpyto6fps2 $43ff
0410: #define _cpyto2fps3 $4402
0411: #define _cpycto1fps3    $4405
0412: #define _cpyto1fps3 $4408
0413: #define _cpyfps3    $440b
0414: #define _cpyto1fps4 $440e
0415: #define _cpyto3fps2 $4411
0416: #define _cpyto5fpst $4414
0417: #define _cpyto6fpst $4417
0418: #define _cpyto4fpst $441a
0419: #define _cpyto3fpst $441d
0420: #define _cpyto2fpst $4420
0421: #define _cpyto1fpst $4423
0422: #define _cpyfpst    $4426
0423: #define _cpystack   $4429
0424: #define _cpyto3fps1 $442c
0425: #define _cpyto2fps1 $442f
0426: #define _cpyto1fps1 $4432
0427: #define _cpyfps1    $4435
0428: #define _cpyto2fps2 $4438
0429: #define _cpyto1fps2 $443b
0430: #define _cpyfps2    $443e
0431: #define _cpyo3tofpst    $4441
0432: #define _cpyo2tofpst    $4444
0433: #define _cpyo6tofpst    $4447
0434: #define _cpyo1tofpst    $444a
0435: #define _cpytofpst  $444d
0436: #define _cpytostack $4450
0437: #define _cpyo3tofps1    $4453
0438: #define _cpyo5tofps1    $4456
0439: #define _cpyo2tofps1    $4459
0440: #define _cpyo1tofps1    $445c
0441: #define _cpytofps1  $445f
0442: #define _cpyo2tofps2    $4462
0443: #define _cpyo3tofps2    $4465
0444: #define _cpyo6tofps2    $4468
0445: #define _cpyo1tofps2    $446b
0446: #define _cpytofps2  $446e
0447: #define _cpyo5tofps3    $4471
0448: #define _cpyo2tofps3    $4474
0449: #define _cpyo1tofps3    $4477
0450: #define _cpytofps3  $447a
0451: #define _cpyo1tofps6    $447d
0452: #define _cpyo1tofps7    $4480
0453: #define _cpyo1tofps5    $4483
0454: #define _cpyo2tofps4    $4486
0455: #define _cpyo1tofps4    $4489
0456: #define _errnotenoughmem    $448c ;only if not hl bytes free
0457: #define _fpsminus9  $448f
0458: #define _hlminus9   $4492
0459: #define _erroverflow    $4495
0460: #define _errdivby0  $4498
0461: #define _errsingularmat $449b
0462: #define _errdomain  $449e
0463: #define _errincrement   $44a1
0464: #define _errnon_real    $44a4
0465: #define _errsyntax  $44a7
0466: #define _errdatatype    $44aa
0467: #define _errargument    $44ad
0468: #define _errdimmismatch $44b0
0469: #define _errdimension   $44b3
0470: #define _errundefined   $44b6
0471: #define _errmemory  $44b9
0472: #define _errinvalid $44bc
0473: #define _errbreak   $44bf
0474: #define _errstat    $44c2
0475: #define _errsignchange  $44c5
0476: #define _erriterations  $44c8
0477: #define _errbadguess    $44cb
0478: #define _errtoltoosmall $44ce
0479: #define _errstatplot    $44d1
0480: #define _errlinkxmit    $44d4
0481: #define _jerror $44d7
0482: #define _noerrorentry   $44da
0483: #define _pusherrorhandler   $44dd
0484: #define _poperrorhandler    $44e0
0485: #define _strcopy    $44e3
0486: #define _strcat $44e6
0487: #define _isinset    $44e9
0488: #define _sdone  $44ec
0489: #define _serrort    $44ef
0490: #define _snameeq    $44f2
0491: #define _sunderscr  $44f5
0492: #define _sfail  $44f8
0493: #define _sname  $44fb
0494: #define _sok    $44fe
0495: #define _putmap $4501
0496: #define _putc   $4504
0497: #define _disphl $4507
0498: #define _puts   $450a
0499: #define _putpsb $450d
0500: #define _putps  $4510
0501: #define _wputps $4513
0502: #define _putbuf $4516
0503: #define _putbuf1    $4519
0504: #define _wputc  $451c
0505: #define _wputs  $451f
0506: #define _wputseol   $4522 ;displays string in hl in big font, and uses ... if too long
0507: #define _wdispeol   $4525
0508: #define _whomeup    $4528
0509: #define _setnumwindow   $452b ;based on current cursor position, sets winleft and similar (for input prompts)
0510: #define _newline    $452e
0511: #define _movedown   $4531
0512: #define _scrollup   $4534
0513: #define _shrinkwindow   $4537
0514: #define _moveup $453a
0515: #define _scrolldown $453d
0516: #define _clrlcdfull $4540
0517: #define _clrlcd $4543
0518: #define _clrscrnfull    $4546
0519: #define _clrscrn    $4549
0520: #define _clrtxtshd  $454c
0521: #define _clrwindow  $454f
0522: #define _eraseeol   $4552
0523: #define _eraseeow   $4555
0524: #define _homeup $4558
0525: #define _getcurloc  $455b
0526: #define _vputmap    $455e
0527: #define _vputs  $4561
0528: #define _vputsn $4564
0529: #define _vputsng    $4567
0530: #define _vputsnt    $456a
0531: #define _runindicon $456d
0532: #define _runindicoff    $4570
0533: #define _savecmdshadow  $4573
0534: #define _saveshadow $4576
0535: #define _rstrshadow $4579
0536: #define _rstrpartial    $457c
0537: #define _rstrcurrow $457f
0538: #define _rstrundermenu  $4582
0539: #define _rstrbotrow $4585
0540: #define _savetr $4588 ;save top right corner of lcd so 2nd arrow can be displayed, indicinuse flag must be set
0541: #define _restoretr  $458b ;restore top right corner of lcd destroyed by an arrow. indicinuse flag must be set
0542: #define _getkeypress    $458e
0543: #define _gettoklen  $4591 ;input: hl=pointer to token. output: a=lenght of string, hl=pointer to string on page 1
0544: #define _get_tok_strng  $4594 ;input: hl=pointer to token. output: op3=string of the token, a=length of string
0545: #define _gettokstring   $4597 ;input: de=token. output: hl=pointer to the string on page 1
0546: #define _putbpatbuf2    $459a
0547: #define _putbpatbuf $459d
0548: #define _putbpat    $45a0
0549: #define _putccheckscroll    $45a3
0550: #define _dispeol    $45a6
0551: #define _fdispeol   $45a9
0552: #define _makerowcmd $45ac
0553: #define _totostrp   $45af
0554: #define _setvarname $45b2
0555: #define _dispdone   $45b5
0556: #define _finishoutput   $45b8
0557: #define _curblink   $45bb
0558: #define _cursoroff  $45be
0559: #define _hidecursor $45c1
0560: #define _cursoron   $45c4
0561: #define _showcursor $45c7
0562: #define _keytostring    $45ca
0563: #define _pulldownchk    $45cd ;something wrong here
0564: #define _menucatcommon  $45d0
0565: #define _zifcatalog $45d3
0566: #define _zifmatrixmenu  $45d6 ;_loadcurcat
0567: #define _loadmenunum    $45d9
0568: #define _loadmenunuml   $45dc
0569: #define _mencatret  $45df ;restores display as though a menu were just cleared (restores some flags too)
0570: #define _menuswitchcontext  $45e2 ;switches to context in a, calls menu hook with a=3, set 5,(iy+$16) for some sort of override to not make switc
0571: #define _menuedkey  $45e5
0572: ;$45e8
0573: #define _notalphnum $45eb
0574: #define _savesavedflags $45ee
0575: #define _setmenuflags   $45f1
0576: #define _rstrsomeflags  $45f4
0577: #define _rstroscreen    $45f7 ;restores savesscreen to the display
0578: #define _saveoscreen    $45fa ;stores display in savesscreen
0579: #define _displistname   $45fd ;_seeiferrorcx
0580: #define _prevcontext    $4600
0581: #define _comparecontext $4603
0582: #define _adrmrow    $4606
0583: #define _adrmele    $4609
0584: #define _getmatop1a $460c
0585: #define _getm1toop1 $460f
0586: #define _getm1top1a $4612
0587: #define _getmtoop1  $4615
0588: #define _puttom1a   $4618
0589: #define _puttoma1   $461b
0590: #define _puttomat   $461e
0591: #define _mat_el_div $4621
0592: #define _cmatfun    $4624
0593: #define _rowech_poly    $4627
0594: #define _rowechelon $462a
0595: #define _adrlele    $462d
0596: #define _getl1toop1 $4630
0597: #define _getl1top1a $4633
0598: #define _getltoop1  $4636
0599: #define _getl1toop2 $4639
0600: #define _getl1top2a $463c
0601: #define _getl2top1a $463f
0602: #define _puttola1   $4642
0603: #define _puttol $4645
0604: #define _maxminlst  $4648
0605: #define _llow   $464b
0606: #define _lhigh  $464e
0607: #define _lsum   $4651
0608: #define cumsum  $4654
0609: #define _tofrac $4657
0610: #define _seqset $465a
0611: #define _seqsolve   $465d
0612: #define _cmp_num_init   $4660
0613: #define _binopexec  $4663
0614: #define _exmean1    $4666
0615: #define _set2mvlptrs    $4669
0616: #define _setmat1    $466c
0617: #define _createtlist    $466f
0618: #define _unopexec   $4672
0619: #define _threeexec  $4675
0620: #define _restoreerrno   $4678
0621: #define _fourexec   $467b
0622: #define _fiveexec   $467e
0623: #define _cpyto2es1  $4681
0624: #define _cpyto6es1  $4684
0625: #define _cpyto1es1  $4687
0626: #define _cpyto3es1  $468a
0627: #define _cpyto3es2  $468d
0628: #define _cpyto2es2  $4690
0629: #define _cpyto1es2  $4693
0630: #define _cpyto2es3  $4696
0631: #define _cpyto1es3  $4699
0632: #define _cpyto3es4  $469c
0633: #define _cpyto6es3  $469f
0634: #define _cpyto2es4  $46a2
0635: #define _cpyto1es4  $46a5
0636: #define _cpyto2es5  $46a8
0637: #define _cpyto1es5  $46ab
0638: #define _cpyto4est  $46ae
0639: #define _cpyto2est  $46b1
0640: #define _cpyto1est  $46b4
0641: #define _cpyto2es6  $46b7
0642: #define _cpyto1es6  $46ba
0643: #define _cpyto2es7  $46bd
0644: #define _cpyto1es7  $46c0
0645: #define _cpyto2es8  $46c3
0646: #define _cpyto1es8  $46c6
0647: #define _cpyto1es9  $46c9
0648: #define _cpyto2es9  $46cc
0649: #define _cpyto2es10 $46cf
0650: #define _cpyto1es10 $46d2
0651: #define _cpyto2es11 $46d5
0652: #define _cpyto1es11 $46d8
0653: #define _cpyto2es12 $46db
0654: #define _cpyto1es12 $46de
0655: #define _cpyto2es13 $46e1
0656: #define _cpyto1es13 $46e4
0657: #define _cpyto1es14 $46e7
0658: #define _cpyto1es16 $46ea
0659: #define _cpyto1es17 $46ed
0660: #define _cpyto1es18 $46f0
0661: #define _cpyto1es15 $46f3
0662: #define _cpyto2es15 $46f6
0663: #define _cpyo1toest $46f9
0664: #define _cpyo1toes1 $46fc
0665: #define _cpyo6toes1 $46ff
0666: #define _cpyo6toes3 $4702
0667: #define _cpyo1toes2 $4705
0668: #define _cpyo2toes2 $4708
0669: #define _cpyo1toes3 $470b
0670: #define _cpyo1toes4 $470e
0671: #define _cpyo1toes5 $4711
0672: #define _cpyo1toes6 $4714
0673: #define _cpyo1toes7 $4717
0674: #define _cpyo2toes4 $471a
0675: #define _cpyo2toes5 $471d
0676: #define _cpyo2toes6 $4720
0677: #define _cpyo2toes7 $4723
0678: #define _cpyo2toes8 $4726
0679: #define _cpyo2toes9 $4729
0680: #define _cpyo1toes8 $472c
0681: #define _cpyo1toes9 $472f
0682: #define _cpyo1toes10    $4732
0683: #define _cpyo1toes11    $4735
0684: #define _cpyo1toes12    $4738
0685: #define _cpyo1toes13    $473b
0686: #define _cpyo1toes14    $473e
0687: #define _cpyo1toes15    $4741
0688: #define _evalf3a    $4744
0689: #define _getk   $4747 ;?
0690: #define _settitle   $474a
0691: #define _dispvarval $474d
0692: #define _recalled   $4750 ;_setupbuffer
0693: #define _createnumeditbuf   $4753
0694: #define _processbufkeys $4756 ;may be default key processing like [clear], etc. especially for an edit buffer.
0695: #define _callcommon $4759
0696: #define _commonkeys $475c
0697: #define _leftmore   $475f
0698: #define _fdel   $4762
0699: #define _fclear $4765
0700: #define _finsdisp   $4768 ;michael says #define _finsdisp02 $4768 (something's not right)
0701: #define _finsdisp02 $476b ;_setindicator
0702: #define _closeeditbufnor    $476e
0703: #define _releasebuffer  $4771
0704: #define _varnametoop1l  $4774
0705: #define _nametoop1  $4777
0706: #define _numpputaway    $477a
0707: #define _numredisp  $477d
0708: #define _numerror02 $4780
0709: #define _load_sfont $4783
0710: #define _sfont_len  $4786
0711: #define _initnumvec $4789
0712: #define _setxxop1   $478c
0713: #define _setxxop2   $478f
0714: #define _setxxxxop2 $4792
0715: #define _uclines    $4795
0716: #define _cline  $4798
0717: #define _clines $479b
0718: #define _xrooty $479e
0719: #define _ytox   $47a1
0720: #define _zmstats    $47a4
0721: #define _point_stat_hlp $47a7
0722: #define _drawsplot  $47aa
0723: #define _initnewtracep  $47ad
0724: #define _splotcoord $47b0
0725: #define _splotright $47b3
0726: #define _splotleft  $47b6
0727: #define _cmpboxinfo $47b9
0728: #define _nextplot   $47bc
0729: #define _prevplot   $47bf
0730: #define _clrprevplot    $47c2
0731: #define _put_index_lst  $47c5
0732: #define _get_index_lst  $47c8
0733: #define _heap_sort  $47cb
0734: #define _stogdb2    $47ce
0735: #define _rclgdb2    $47d1
0736: #define _circcmd    $47d4
0737: #define _grphcirc   $47d7
0738: #define _mov18b $47da
0739: #define _darkline   $47dd
0740: #define _iline  $47e0
0741: #define _ipoint $47e3
0742: #define _xyrndboth  $47e6
0743: #define _xyrnd  $47e9
0744: #define _checktop   $47ec
0745: #define _checkxy    $47ef
0746: #define _darkpnt    $47f2
0747: #define _cpoints    $47f5
0748: #define _wtov   $47f8
0749: #define _vtowhlde   $47fb
0750: #define _xitof  $47fe
0751: #define _yftoi  $4801
0752: #define _xftoi  $4804
0753: #define _traceoff   $4807
0754: #define _grredisp   $480a
0755: #define _gdisptoken $480d
0756: #define _grdecoda   $4810
0757: #define _labcoor    $4813
0758: #define _coordisp   $4816 ;draws x & y coordinates (or r and theta if polargc)
0759: #define _tmpequnosrc    $4819
0760: #define _grlabels   $481c
0761: #define _ypixset    $481f
0762: #define _xpixset    $4822
0763: #define _copyrng    $4825
0764: #define _valcur $4828
0765: #define _grputaway  $482b
0766: #define _rstgflags  $482e
0767: #define _grreset    $4831
0768: #define _xycent $4834
0769: #define _zoomxycmd  $4837
0770: #define _cptdely    $483a
0771: #define _cptdelx    $483d
0772: #define _setfuncm   $4840
0773: #define _setseqm    $4843
0774: #define _setpolm    $4846
0775: #define _setparm    $4849
0776: #define _zmint  $484c
0777: #define _zmdecml    $484f
0778: #define _zmprev $4852
0779: #define _zmusr  $4855
0780: #define _setuzm $4858
0781: #define _zmfit  $485b
0782: #define _zmsquare   $485e
0783: #define _zmtrig $4861
0784: #define _setxminmax $4864
0785: #define _zoodefault $4867
0786: #define _grbufcpy   $486a
0787: #define _drawsplitline  $486d
0788: #define _restoredisp    $4870
0789: #define _fnddb  $4873
0790: #define _alleq  $4876
0791: #define _fndallseleq    $4879
0792: #define _nexteq $487c
0793: #define _preveq $487f
0794: #define _blinkgcur  $4882
0795: #define _nbcursor   $4885
0796: #define _statmark   $4888
0797: #define _chktextcurs    $488b
0798: #define _regraph    $488e
0799: #define _dorefflags02   $4891 ;something wrong here
0800: #define initnseq    $4894
0801: #define _yres   $4897 ;_plotptxy2
0802: #define _ceiling    $489a ;ceil(op1)
0803: #define _putxy  $489d ;draws x & y coordinates (regardless of polargc)
0804: #define _putequno   $48a0
0805: #define _pdspgrph   $48a3
0806: #define _horizcmd   $48a6
0807: #define _vertcmd    $48a9
0808: #define _linecmd    $48ac
0809: #define _unlinecmd  $48af
0810: #define _pointcmd   $48b2
0811: #define _pixeltest  $48b5
0812: #define _pixelcmd   $48b8
0813: #define _tanlnf $48bb
0814: #define _drawcmd_init   $48be
0815: #define _drawcmd    $48c1
0816: #define _shadecmd   $48c4
0817: #define _invcmd $48c7
0818: #define _statshade  $48ca
0819: #define _dspmattable    $48cd
0820: #define _dsplsts    $48d0
0821: #define _closeeditbuf   $48d3
0822: #define _parseeditbuf   $48d6
0823: #define _putsm  $48d9
0824: #define _dspcurtbl  $48dc
0825: #define _dspgrtbl   $48df
0826: #define _zerotemplate   $48e2
0827: #define _settblrefs $48e5
0828: #define _disptblbot $48e8
0829: #define _disptbltop $48eb
0830: #define _disptblbody    $48ee
0831: #define _vputblank  $48f1
0832: #define _tbltrace   $48f4
0833: #define _displistnamey  $48f7
0834: #define _curnamelength  $48fa
0835: #define _nametobuf  $48fd
0836: #define _jpromptcursor  $4900
0837: #define _bufleft    $4903
0838: #define _bufright   $4906
0839: #define _bufinsert  $4909
0840: #define _bufqueuechar   $490c
0841: #define _bufreplace $490f
0842: #define _bufdelete  $4912
0843: #define _bufpeek    $4915
0844: #define _bufpeek1   $4918
0845: #define _bufpeek2   $491b
0846: #define _bufpeek3   $491e
0847: #define _buftobtm   $4921
0848: #define _setupeditequ   $4924
0849: #define _buftotop   $4927
0850: #define _iseditfull $492a
0851: #define _iseditempty    $492d
0852: #define _isattop    $4930
0853: #define _isatbtm    $4933
0854: #define _bufclear   $4936
0855: #define _jcursorfirst   $4939
0856: #define _jcursorlast    $493c
0857: #define _cursorleft $493f
0858: #define _cursorright    $4942
0859: #define _cursorup   $4945
0860: #define _cursordown $4948
0861: #define _cursortooffset $494b
0862: #define _insdisp    $494e
0863: #define _fdispbol1  $4951
0864: #define _fdispbol   $4954
0865: #define _dispeow    $4957
0866: #define _disphead   $495a
0867: #define _disptail   $495d
0868: #define _puttokstring   $4960
0869: #define _setupeditcmd   $4963
0870: #define _setemptyeditequ    $4966
0871: #define _setemptyeditptr    $4969
0872: #define _closeeditequ   $496c
0873: #define _getprevtok $496f
0874: #define _getkey $4972
0875: #define _canindic   $4975
0876: #define _lcd_driveron   $4978
0877: #define _dfmin2 $497b
0878: #define _formdisp   $497e
0879: #define _formmatrix $4981
0880: #define _wscrollleft    $4984
0881: #define _wscrollup  $4987
0882: #define _wscrolldown    $498a
0883: #define _wscrollright   $498d
0884: #define _formereal  $4990
0885: #define _formerealtok   $4993
0886: #define _formdcplx  $4996
0887: #define _formreal   $4999
0888: #define _formscrollup   $499c
0889: #define _setwinabove    $499f
0890: #define _disarmscroll   $49a2
0891: #define _op1toedit  $49a5
0892: #define _mintoedit  $49a8
0893: #define _rclvartoedit   $49ab
0894: #define _rclvartoeditptr    $49ae
0895: #define _rclentrytoedit $49b1
0896: #define _rcltoqueue $49b4 ;recalls bytes at op1 into edit buffer
0897: #define _formtotok  $49b7
0898: #define _disp_interval  $49ba
0899: #define _displstname    $49bd
0900: #define _dispslstnamehl $49c0
0901: #define _editequ    $49c3
0902: #define _closeequfield  $49c6
0903: #define _autoselect $49c9
0904: #define _dispyeos   $49cc
0905: #define _dispnumeos $49cf
0906: #define _setupdispeq    $49d2
0907: #define _dispforward    $49d5
0908: #define _dispyprompt2   $49d8
0909: #define _stringwidth    $49db
0910: #define _disperrorscreen    $49de ;displays top row of error screen (error message)
0911: #define _popcx  $49e1 ;moves 14 bytes at cxprev to cxmain, 15th byte goes to replace appflags
0912: #define _loadnoeentry   $49e4
0913: #define _savescreen $49e7
0914: #define _retscreen  $49ea
0915: #define _retscreenerr   $49ed
0916: #define _checksplitflag $49f0
0917: #define _solveredisp    $49f3
0918: #define _solvedisp  $49f6
0919: #define _itemname   $49f9
0920: #define _setnorm_vals   $49fc
0921: #define _setyoffset $49ff ;sets up yoffset and next 4 bytes (possibly specialized for the table editor)
0922: #define _convkeytotok   $4a02
0923: #define _convfckeytotok $4a05
0924: #define _convfekeytotok $4a08
0925: #define _toktokey   $4a0b
0926: #define _sendskipexitpacket $4a0e
0927: #define _getvarcmd  $4a11
0928: #define _sendvarcmd $4a14
0929: #define _sendscreenshot $4a17
0930: #define keyscnlnk   $4a1a
0931: #define _deselectallvars    $4a1d
0932: #define _delres $4a20
0933: #define _convlctolr $4a23
0934: #define _redimmat   $4a26
0935: #define _inclstsize $4a29
0936: #define _insertlist $4a2c
0937: #define _dellistel  $4a2f
0938: #define _editprog   $4a32
0939: #define _closeprog  $4a35
0940: #define _clrgraphref    $4a38
0941: #define _fixtempcnt $4a3b
0942: #define _savedata   $4a3e
0943: #define _restoredata    $4a41
0944: #define _findalphaup    $4a44
0945: #define _findalphadn    $4a47
0946: #define _cmpsyms    $4a4a
0947: #define _createtemp $4a4d
0948: #define _cleanall   $4a50
0949: #define _movetonextsym  $4a53 ;input: hl=pointer to type byte of vat entry. output: hl = pointer to next entry's type byte
0950: #define _convlrtolc $4a56
0951: #define _tblscreendn    $4a59 ;something is not right here
0952: #define _tblscreenup    $4a5c
0953: #define _screenup   $4a5f
0954: #define _screenupdown   $4a62
0955: #define _zifrclhandler  $4a65
0956: #define _zifrclkapp $4a68
0957: #define _rclkeyrtn  $4a6b
0958: #define _rclkey $4a6b
0959: #define _rclregeq_call  $4a6e
0960: #define _rclregeq   $4a71
0961: #define _initnameprompt $4a74
0962: #define _nameprompt2    $4a77
0963: #define _catalogchk $4a7a
0964: #define _clrtr  $4a7d
0965: #define _quad   $4a80
0966: #define _graphquad  $4a83
0967: #define _bc2noreal  $4a86
0968: ;$4a89
0969: #define _errnonreal $4a8c ;err:data type if top b numers from fps are non-real
0970: #define _write_text $4a8f
0971: #define _forseqinit $4a92
0972: #define _grphpars   $4a95
0973: #define _plotpars   $4a98
0974: #define _parseinp   $4a9b
0975: #define _parseoff   $4a9e
0976: #define _parsescan  $4aa1
0977: #define _getparse   $4aa4
0978: #define _saveparse  $4aa7
0979: #define _initpflgs  $4aaa
0980: #define _ckendlinerr    $4aad
0981: #define _op2set60   $4ab0
0982: #define _getstatptr $4ab3
0983: #define _cmp_statptr    $4ab6
0984: #define _varsysadr  $4ab9
0985: #define _stosystok  $4abc
0986: #define _stoans $4abf
0987: #define _stotheta   $4ac2
0988: #define _stor   $4ac5
0989: #define _stoy   $4ac8
0990: #define _ston   $4acb
0991: #define _stot   $4ace
0992: #define _stox   $4ad1
0993: #define _stoother   $4ad4
0994: #define _rclans $4ad7
0995: #define _rcly   $4ada
0996: #define _rcln   $4add
0997: #define _rclx   $4ae0
0998: #define _rclvarsym  $4ae3
0999: #define _rclsystok  $4ae6
1000: #define _stmatel    $4ae9
1001: #define _stlstvecel $4aec
1002: #define _convop1    $4aef
1003: #define _find_parse_formula $4af2
1004: #define _parse_formula  $4af5
1005: #define _fetchquotedstring  $4af8
1006: #define _fetchnumline   $4afb
1007: ;$4afe
1008: #define _parseinpgraph  $4b01 ;same as _parseinp except 3,(iy+$1f) is graph/split screen override, or something
1009: #define _parseinpgraphreset $4b04 ;_parseinpgraph except zeroes out iy+6/7, resets 3,(iy+$1a) & 0,(iy+$1f), fmtflags->fmtoverride, parse within parseinp?
1010: #define _parseinplastent    $4b07 ;parseinp on program  $05,$23,$00
1011: #define _erroncertaintypes  $4b0a ;err:data type if a is one of a couple of values...subroutine in parseinp, somehow
1012: #define _createpair $4b0d
1013: #define _pushnum    $4b10
1014: #define _inccurpcerrend $4b13
1015: #define _errend $4b16
1016: #define _commaerrf  $4b19
1017: #define _commaerr   $4b1c
1018: #define _steqarg2   $4b1f
1019: #define _steqarg    $4b22
1020: #define _inparg $4b25
1021: #define _steqarg3   $4b28
1022: #define _nxtfetch   $4b2b
1023: #define _ckfetchvar $4b2e
1024: #define _fetchvara  $4b31
1025: #define _fetchvar   $4b34
1026: #define _ckendlin   $4b37 ;gets parse byte in a and then _ckendexp
1027: #define _ckendexp   $4b3a ;checks a for $3e or  $3f
1028: #define _ckparsend  $4b3d
1029: #define _stotypearg $4b40
1030: #define _convdim    $4b43
1031: #define _convdim00  $4b46
1032: #define _aheadequal $4b49
1033: #define _parsaheads $4b4c
1034: #define _parsahead          $4b4f
1035: #define _ansname    $4b52
1036: #define _stocmpreals    $4b55
1037: #define _getdeptr   $4b58
1038: #define _push2boper $4b5b ;push the value in bc onto the operator stack
1039: #define _pop2boper  $4b5e ;pop 2 bytes on the operator stack to bc
1040: #define _pushoper   $4b61 ;push the value in a onto the operator stack
1041: #define _popoper    $4b64 ;pop 1 byte on the operator stack to a
1042: #define _find_e_undef   $4b67
1043: #define _sttmpeq    $4b6a
1044: #define _findeol    $4b6d
1045: #define _brkinc $4b70
1046: #define _incfetch   $4b73
1047: #define _curfetch   $4b76
1048: #define _random $4b79
1049: #define _storand    $4b7c
1050: #define _randinit   $4b7f
1051: #define _resetstacks    $4b82 ;(onsp)->(errsp), (fpbase)->(fps), (opbase)->(ops)
1052: #define _factorial  $4b85
1053: #define _yonoff $4b88
1054: #define _eqselunsel $4b8b
1055: #define _itsolver   $4b8e
1056: #define _gritsolver $4b91
1057: #define _itsolverb  $4b94
1058: #define _itsolvernb $4b97
1059: #define _extest_int $4b9a
1060: #define _dist_fun   $4bad
1061: #define _loggamma   $4ba0
1062: #define _onevar $4ba3
1063: #define _onevars_0  $4ba6
1064: #define _ordstat    $4ba9
1065: #define _initstatans2   $4bac
1066: #define _anova_spec $4baf
1067: #define _outputexpr $4bb2
1068: #define _centcursor $4bb5
1069: #define _text   $4bb8
1070: #define _finishspec $4bbb
1071: #define _trcyfunc   $4bbe
1072: #define _rcl_seq_x  $4bc1
1073: #define _rclseq2    $4bc4
1074: #define _grpputaway $4bc7
1075: #define _ckvaldelx  $4bca
1076: #define _ckvaldelta $4bcd
1077: #define _grbufclr   $4bd0
1078: #define _grbufcpy_v $4bd3
1079: #define _fndseleq   $4bd6
1080: #define _clrgraphxy $4bd9
1081: #define _nedxt_y_style  $4bdc
1082: #define _plotpt $4bdf
1083: #define _newindep   $4be2
1084: #define _axes   $4be5
1085: #define _setpenx    $4be8
1086: #define _setpeny    $4beb
1087: #define _setpent    $4bee
1088: #define _tan_equ_disp   $4bf1
1089: #define _putans $4bf4
1090: #define _dispop1a   $4bf7
1091: #define _mathtanln  $4bfa
1092: #define _enddraw    $4bfd
1093: #define _settblgraphdraw    $4c00
1094: #define _startdialog    $4c03
1095: #define _dialoginit $4c06
1096: #define _getdialognumop1    $4c09
1097: #define _setdialognumop1    $4c0c
1098: #define _getdialognumhl $4c0f
1099: #define _errargumento123    $4c12 ;err:argument if op2>op1 or op1>op3
1100: #define _setdialogkeyoverride   $4c15
1101: #define _resdialogkeyoverride   $4c18
1102: #define _forcedialogkeypress    $4c1b
1103: #define _dialogstartgetkey  $4c1e
1104: #define _startdialog_override   $4c21
1105: #define _calldialogcallback $4c24
1106: #define _setdialogcallback  $4c27
1107: #define _resdialogcallback  $4c2a
1108: #define _copydialognum  $4c2d
1109: #define _memclear   $4c30
1110: #define _memset $4c33
1111: #define _reloadappentryvecs $4c36
1112: #define _pointon    $4c39
1113: #define _executenewprgm $4c3c
1114: #define _strlength  $4c3f
1115: #define _vputmaprec $4c42
1116: #define _getrompage $4c45
1117: #define _findappup  $4c48
1118: #define _findappdn  $4c4b
1119: #define _findapp    $4c4e
1120: #define _executeapp $4c51
1121: #define _monreset   $4c54
1122: ;$4c57
1123: ;$4c5a
1124: #define _iscontextkey   $4c5d
1125: #define _ibounds    $4c60
1126: #define _ioffset    $4c63
1127: #define _drawcirc2  $4c66
1128: #define _canalphins $4c69
1129: #define cxredisp    $4c6c
1130: #define _getbasever $4c6f
1131: #define _opset0de   $4c72 ;loads a floating point 0 to location de
1132: #define _appgetcbl  $4c75
1133: #define _appgetcalc $4c78
1134: #define _savedisp   $4c7b
1135: #define _setignorekey   $4c7e ;set 1,(iy+$28) / ret
1136: #define _setsendthiskeyback $4c81 ;set 2,(iy+$28) / ld (kbdkey),a / ret
1137: #define _disableapd $4c84
1138: #define _enableapd  $4c87 ;set apdable,(iy+apdflags)
1139: #define _jforcecmdnochar2   $4c8a ;$2.41 at least
1140: #define _set2iy34   $4c8d ;set 2,(iy+$34) / ret
1141: #define _forcecmd   $4c90
1142: #define _apdsetup   $4c93
1143: #define _get_numkey $4c96
1144: #define _appsetup   $4c99 ;or _appcleanup, or something
1145: #define _handlelinkkeyactivity  $4c9c
1146: #define _jforcecmdnochar3   $4c9f ;2.41 at least
1147: #define _releasesedit   $4ca2
1148: #define _initsmalleditline  $4ca5
1149: #define _startsmalledit $4ca8
1150: ;$4cab
1151: #define _sgettokstring  $4cae
1152: #define _loadpattern    $   $4cb1
1153: #define _sstringlength  $4cb4
1154: #define _restorepencol  $4cb7
1155: ;$4cba
1156: #define _donothing  $4cbd
1157: #define _forcesmalleditreturn   $4cc0
1158: ;$4cc3 ;saves context
1159: ;$4cc6
1160: ;$4cc9
1161: ;$4ccc
1162: #define _veraseeol  $4ccf
1163: ;$4cd2
1164: ;$4cd5
1165: #define _gotoerr    $4cd8
1166: #define _initsmalleditbox   $4cdb
1167: ;$4cde
1168: #define _emptyhook  $4ce1
1169: #define _forcesmalleditreturn2  $4ce4
1170: ;$4ce7 ;same as $4cc3
1171: ;$4cea
1172: #define _clearrow   $4ced
1173: ;$4cf0
1174: ;$4cf3
1175: ;$4cf6
1176: ;$4cf9
1177: ;$4cfc
1178: ;$4cff
1179: ;$4d02
1180: ;$4d05
1181: ;$4d08
1182: ;$4d0b
1183: ;$4d0e
1184: ;$4d11
1185: ;$4d14
1186: ;$4d17
1187: ;$4d1a
1188: ;$4d1d
1189: ;$4d20
1190: ;$4d23
1191: #define _appscreenupdown    $4d26 ;shifts screen up/down, a is lcd row, h is number of lines to shift, (op1)-(op1+3) are something
1192: #define _appscreenupdown1   $4d29 ;shifts screen up/down, but really no clue what the inputs are (all registers and (op1)-(op1+3))
1193: ;$4d2c
1194: #define _initsmalleditlinevar   $4d2f
1195: #define _initsmalleditlineop1   $4d32
1196: #define _initsmalleditboxvar    $4d35
1197: #define _initsmalleditboxop1    $4d38
1198: ;$4d3b
1199: #define _restartdialog  $4d3e
1200: #define _errcustom1 $4d41
1201: #define _errcustom2 $4d44
1202: #define _appstartmouse  $4d47
1203: #define _appstartmousenosetup   $4d4a
1204: #define _appmousegetkey $4d4d
1205: #define _appdispmouse   $4d50
1206: #define _apperasemouse  $4d53
1207: #define _appsetupmousemem   $4d56
1208: #define _getdisprowoffset   $4d59 ;hl=a*12 (intended for a to be row and hl becomes offset into plotsscreen)
1209: #define _clearrect  $4d5c
1210: #define _invertrect $4d5f
1211: #define _fillrect   $4d62
1212: #define _appupdatemouse $4d65
1213: #define _appdispprevmouse   $4d68 ;might bring previous keypress's movement to current coordinates with flags to not display
1214: ;$4d6b ;restores some cursor flags and stuff
1215: #define _initcellbox    $4d6e
1216: #define _drawcell   $4d71
1217: ;$4d74
1218: #define _invertcell $4d77
1219: #define _setcelloverride    $4d7a
1220: #define _drawrectborder $4d7d
1221: #define _clearcell  $4d80
1222: #define _covercell  $4d83
1223: #define _eraserectborder    $4d86
1224: #define _fillrectpattern    $4d89
1225: #define _drawrectborderclear    $4d8c
1226: ;$4d8f ;mouse subroutine
1227: ;$4d92
1228: #define _verticalline   $4d95
1229: #define _iboundsfull    $4d98
1230: #define _displayimage   $4d9b
1231: ;$4d9e ;does something dumb with ports 10/11
1232: ;$4da1 ;mouse subroutine
1233: #define _appupdatemousecoords   $4da4
1234: #define _shiftbitsleft  $4da7 ;mouse subroutine, shifts b bits left from de sprite to hl one
1235: ;$4daa ;mouse subroutine
1236: ;$4dad ;mouse subroutine
1237: ;$4db0 ;mouse subroutine
1238: ;$4db3 ;mouse subroutine
1239: ;$4db6 ;mouse subroutine
1240: ;$4db9 ;mouse subroutine
1241: ;$4dbc ;mouse subroutine
1242: #define _appupdatemouserow  $4dbf
1243: #define _appdrawmouse   $4dc2 ;set 2,(iy+$2c) for apperasemouse, reset for appdispmouse
1244: #define _appdrawmousedirect $4dc5 ;pretty much _appdrawmouse, but you pass lcd column in a
1245: #define _cpoint $4dc8
1246: #define _deleteapp  $4dcb
1247: #define _appupdatemousexy   $4dce
1248: #define _setmodecellflag    $4dd1
1249: #define _resetmodecellflag  $4dd4
1250: #define _ismodecellset  $4dd7
1251: #define _getmodecellflag    $4dda
1252: ;$4ddd
1253: #define _cellboxmanager $4de0
1254: #define _startnewcell   $4de3
1255: ;$4de6
1256: #define _cellcursorhandle   $4de9
1257: ;$4dec
1258: ;$4def
1259: #define _clearcurcell   $4df2
1260: #define _drawcurcell    $4df5
1261: #define _invertcurcell  $4df8
1262: #define _covercurcell   $4dfb
1263: #define _blinkcell  $4dfe
1264: #define _blinkcellnolookup  $4e01
1265: #define _blinkcurcell   $4e04
1266: #define _blinkcelltoon  $4e07
1267: #define _blinkcelltoonnolookup  $4e0a
1268: #define _blinkcurcelltoon   $4e0d
1269: #define _blinkcelltooff $4e10
1270: #define _blinkcelltooffnolookup $4e13
1271: #define _blinkcurcelltooff  $4e16
1272: #define _getcurmodecellflag $4e19
1273: ;$4e1c
1274: #define _startsmalleditreturn   $4e1f
1275: ;$4e22
1276: ;$4e25
1277: #define _cellkhandle    $4e28
1278: #define _errchkalphabox $4e2b
1279: ;$4e2e
1280: ;$4e31
1281: ;$4e34
1282: ;$4e37
1283: #define _eraseallcells  $4e3a
1284: #define _iscurmodecellset   $4e3d
1285: ;$4e40
1286: #define _initalphabox   $4e43
1287: ;$4e46
1288: ;$4e49
1289: #define _drawblnkcell   $4e4c
1290: #define _clearblnkcell  $4e4f
1291: #define _invertblnkcell $4e52
1292: #define _appmouseforcekey   $4e55
1293: #define _appsetupmousememcoords $4e58 ;this is _appsetupmousemem except you pass starting coordinates in hl
1294: #define _appmovemouse   $4e5b ;this is _appmouseforcekey and then updating coordinates
1295: #define _getstringinput $4e5e
1296: #define _getstringinput2    $4e61
1297: ;$4e64
1298: #define _horizontalline $4e67
1299: #define _createappvar   $4e6a
1300: #define _createprotprog $4e6d
1301: #define _createvar  $4e70
1302: #define _asmcomp    $4e73
1303: #define _getasmsize $4e76
1304: #define _squishprgm $4e79
1305: #define _executeprgm    $4e7c
1306: #define _chkfindsymasm  $4e7f
1307: #define _parseprgmname  $4e82
1308: #define _csub   $4e85
1309: #define _cadd   $4e88
1310: #define _csqaure    $4e8b
1311: #define _cmult  $4e8e
1312: #define _crecip $4e91
1313: #define _cdiv   $4e94
1314: #define _cabs   $4e97
1315: #define _addsquares $4e9a
1316: #define _csqroot    $4e9d
1317: #define _cln    $4ea0
1318: #define _clog   $4ea3
1319: #define _ctenx  $4ea6
1320: #define _cetox  $4ea9
1321: #define _cxrooty    $4eac
1322: ;$4eaf
1323: #define _cytox  $4eb2
1324: #define _invertnonreal  $4eb5
1325: #define _cplxmult   $4eb8
1326: #define _cplxdiv    $4ebb
1327: #define _cplxtrunc  $4ebe
1328: #define _cplxfrac   $4ec1
1329: #define _cplxfloor  $4ec4
1330: #define _sendheaderpacket   $4ec7
1331: #define _canceltransmission $4eca
1332: #define _sendscreencontents $4ecd
1333: #define _sendramvardata $4ed0
1334: #define _sendramcmd $4ed3
1335: #define _sendpacket $4ed6
1336: #define _receiveack $4ed9
1337: #define _send4bytepacket    $4edc
1338: #define _senddatabyte   $4edf
1339: #define _send4bytes $4ee2
1340: #define _sendabyte  $4ee5
1341: #define _sendcbyte  $4ee8
1342: #define _getsmallpacket $4eeb
1343: #define _getdatapacket  $4eee
1344: #define _sendack    $4ef1
1345: #define _get4bytes  $4ef4
1346: #define _get3bytes  $4ef7
1347: #define _rec1stbyte $4efa
1348: #define _rec1stbytenc   $4efd
1349: #define _continuegetbyte    $4f00
1350: #define _recabyteio $4f03
1351: #define _receivevar $4f06
1352: #define _receivevardataexists   $4f09
1353: #define _receivevardata $4f0c
1354: #define _srchvlstup $4f0f
1355: #define _srchvlstdn $4f12
1356: #define _sendvariable   $4f15
1357: #define _get4bytescursor    $4f18
1358: #define _get4bytesnc    $4f1b
1359: #define _convert85list  $4f1e
1360: #define _senddirectorycontents  $4f21
1361: #define _sendreadypacket    $4f24
1362: #define _convert85real  $4f27
1363: #define _ret_6  $4f2a
1364: #define _sendcertificate    $4f2d ;sends certificate in header/data packets, flash must be unlocked, used with sending an application in link menu
1365: #define _sendapplication    $4f30
1366: #define _sendosheader   $4f33
1367: #define _sendospage $4f36
1368: #define _sendos $4f39
1369: #define _flashwritedisable  $4f3c
1370: #define _sendcmd    $4f3f
1371: #define _sendosvalidationdata   $4f42
1372: #define _disp   $4f45
1373: #define _sendgetkeypress    $4f48
1374: #define _rejectcommand  $4f4b
1375: #define _checklinklines $4f4e
1376: #define _gethookbyte    $4f51
1377: #define _getbytepaged   $4f54
1378: #define _cursorhook $4f57
1379: #define _call_library_hook  $4f5a
1380: #define _call_rawkey_hook   $4f5d
1381: #define _setcursorhook  $4f60 ;enable cursor hook
1382: #define _enablelibraryhook  $4f63
1383: #define _setgetkeyhook  $4f66
1384: #define _clrcursorhook  $4f69
1385: #define _disablelibraryhook $4f6c
1386: #define _clrrawkeyhook      $4f6f
1387: #define _resethookbytes $4f72
1388: #define _adjustallhooks $4f75
1389: #define _getkeyhook $4f78
1390: #define _setgetcschook  $4f7b
1391: #define _clrgetkeyhook  $4f7e
1392: #define _call_linkactivity_hook $4f81
1393: #define _enablelinkactivityhook $4f84
1394: #define _disablelinkhook    $4f87
1395: #define _getsmallpacket2    $4f8a
1396: #define _enablecatalog2ook  $4f8d
1397: #define _disablecatalog2ook $4f90
1398: #define _enablelocalizehook $4f93
1399: #define _disablelocalizehook    $4f96
1400: #define _settokenhook   $4f99
1401: #define _cleartokenhook $4f9c
1402: ;$4f9f ld hl,$92c6 / ld a,($92c5) / res 2,a / cp (hl) / ret
1403: ;$4fa2 hl=11*($92fc)+$92c9 / ld a,(hl) / and f / cp 2 / ret
1404: ;$4fa5
1405: #define _bit_vertsplit  $4fa8
1406: #define _sethomescreenhook  $4fab
1407: #define _clrhomescreenhook  $4fae
1408: #define _setwindowhook  $4fb1
1409: #define _disablewindowhook  $4fb4
1410: #define _setgraphmodehook   $4fb7
1411: #define _disablegraphhook   $4fba
1412: ;$4fbd
1413: ;$4fc0
1414: #define _jforcewindowsettings   $4fc3
1415: #define _delvararc  $4fc6
1416: #define _delvarnoarc    $4fc9
1417: #define _setallplots    $4fcc
1418: #define _setyedithook   $4fcf
1419: #define _disableyequhook    $4fd2
1420: #define _jforceyequ $4fd5
1421: #define _arc_unarc  $4fd8 ;checks for low battery
1422: #define _archivevar $4fdb ;set 0,(iy+$24) to check for low battery first
1423: #define _unarchivevar   $4fde
1424: #define _dialogkeyhook  $4fe1 ;rawkey hook used by os for dialog context
1425: #define _setfonthook    $4fe4
1426: #define _clrfonthook    $4fe7
1427: #define _setregraphhook $4fea
1428: #define _disableregraphhook $4fed
1429: #define _rungraphinghook    $4ff0
1430: #define _settracehook   $4ff3
1431: #define _disabletracehook   $4ff6
1432: #define _runtracehook   $4ff9
1433: #define _nderiv $4ffc
1434: ;$4fff
1435: #define _jforcegraphnokey   $5002
1436: #define _jforcegraphkey $5005
1437: #define _poweroff   $5008
1438: #define _getkeyretoff   $500b ;same as getkey, only returns koff if 2nd+on is pressed
1439: #define _findgroupsym   $500e
1440: #define _fillbasepagetable  $5011
1441: #define _arcchk $5014
1442: #define _flashtoram $5017
1443: #define _loaddeindpaged $501a
1444: #define _loadcindpaged  $501d
1445: #define _setuppagedptr  $5020
1446: #define _pagedget   $5023
1447: #define _setparserhook  $5026
1448: #define _clearparserhook    $5029
1449: #define _setappchangehook   $502c
1450: #define _clearappchangehook $502f
1451: #define _enablegraphicshook $5032
1452: #define _disablegraphicshook    $5035
1453: ;$5038
1454: #define _ilinenohook    $503b
1455: ;$503e
1456: #define _deletetempprograms $5041
1457: #define _enablecatalog1ook  $5044
1458: #define _disablecatalog1ook $5047
1459: #define _enablehelphook $504a
1460: #define _disablehelphook    $504d
1461: #define _dispcatalogend $5050
1462: #define _getmenukeypress    $5053
1463: #define _getcatalogitem $5056
1464: #define _runcatalog2ook $5059
1465: #define _runcatalog1ook $505c
1466: ;$505f
1467: ;$5062
1468: #define _dispmenutitle  $5065
1469: ;$5068
1470: #define _enablecxredisphook $506b
1471: #define _disablecxredisphook    $506e
1472: #define _bufcpy $5071
1473: #define _bufclr $5074
1474: #define _unopexec2  $5077
1475: #define _binopexec2 $507a
1476: #define _loadmenub  $507d ;clears screen and loads menu from b, plus a couple flag changes
1477: #define _displayvarinfo $5080
1478: #define _setmenuhook    $5083
1479: #define _clearmenuhook  $5086
1480: #define _getbcoffsetix  $5089
1481: #define _getbcoffsetix2 $508c
1482: #define _forcefullscreen    $508f
1483: #define _getvariabledata    $5092
1484: #define _findswapsector $5095
1485: #define _copyflashpage  $5098
1486: #define _findappnumpages    $509b
1487: #define _hlminus5   $509e
1488: #define _sendarcpacket  $50a1
1489: #define _forcegraphkeypress $50a4
1490: #define _donothing3 $50a7
1491: #define _formbase   $50aa
1492: ;$50ad
1493: #define _isfragmented   $50b0
1494: #define _chk_batt_low   $50b3
1495: #define _chk_batt_low_2 $50b6
1496: #define _arc_unarc2 $50b9 ;identical to _arc_unarc, except you can choose to res 0,(iy+$24) to skip low battery check
1497: #define _getappbasepage $50bc ;input: a=one of an app's pages. output: a=app's first page
1498: #define _setexspeed $50bf
1499: #define _rclexit    $50c2
1500: #define _groupallvars   $50c5
1501: #define _ungroupvar $50c8
1502: #define _writetoflash   $50cb ;receiveapplication or something like that on oses below 2.40
1503: #define _setsilentlinkhook  $50ce
1504: #define _disablesilentlinkhook  $50d1
1505: #define _twovarset  $50d4
1506: #define _execclass2token    $50d7
1507: #define _execclass3token    $50da
1508: #define _getsysinfo $50dd
1509: #define _nzif83plus $50e0
1510: #define _linkstatus $50e3
1511: #define _donothing2 $50e6 ;originally for ti-navigator
1512: #define _keyboardgetkey $50e9
1513: #define _runapplib  $50ec
1514: #define _findspecialappheader   $50ef
1515: #define _sendusbdata    $50f2
1516: #define _appgetcblusb   $50f5
1517: #define _appgetcalcusb  $50f8
1518: #define _getvarcmdusb   $50fb
1519: ;$50fe
1520: #define _tenx2  $5101
1521: ;$5104
1522: ;$5107
1523: #define _getvarversion  $510a
1524: ;$510d
1525: ;$5110
1526: #define _deletetempeditequ  $5113
1527: #define _jcursorfirst2  $5116
1528: ;$5119
1529: ;$511c
1530: #define _wputseol2  $511f ;same except res 0,(iy+$0e) first
1531: #define _inverttextinsmode  $5122
1532: ;$5125
1533: #define _resetdefaults  $5128
1534: #define _zerofinancevars    $512b
1535: #define _dispheader $512e
1536: #define _jforcegroup    $5131
1537: ;$5134
1538: ;$5137
1539: #define _dispcoords $513a
1540: ;$513d
1541: ;$5140
1542: ;$5143
1543: ;$5146
1544: ;$5149
1545: ;$514c
1546: #define _getdate    $514f
1547: ;$5152
1548: #define _getdtfmt   $5155
1549: ;$5158
1550: #define _gettime    $515b
1551: ;$515e
1552: #define _gettmfmt   $5161
1553: ;$5164
1554: #define _setzeroone $5167
1555: ;$516a
1556: #define _isonetwothree  $516d
1557: ;$5170
1558: #define _isop112or24    $5173
1559: #define _chktimer0  $5176
1560: ;$5179
1561: ;$517c
1562: #define _clrwindowandflags  $517f
1563: #define _setmachineid   $5182
1564: #define _resetlists $5185
1565: ;$5188
1566: ;$518b
1567: ;$518e
1568: #define _execlib    $5191
1569: ;$5194
1570: #define _cpop1op2rounded    $5197
1571: #define _cpop1op2rounded2   $519a
1572: #define _openlib    $519d
1573: ;$51a0
1574: ;$51a3
1575: #define _resetioprompt  $51a6
1576: ;$51a9
1577: #define _setupeditor    $51ac
1578: #define _sorta  $51af
1579: #define _sortd  $51b2
1580: ;$51b5
1581: #define _isop1resid $51b8
1582: ;$51bb
1583: ;$51be
1584: ;$51c1
1585: #define _forcemodekeypress  $51c4 ;forces a keypress (and calls help hook) on any of several mode-setting contexts
1586: #define _dispaboutscreen    $51c7
1587: #define _chkhelphookver $51ca
1588: #define _disp32 $51cd
1589: ;$51d0
1590: ;$51d3
1591: ;$51d6
1592: ;$51d9
1593: #define _drawtableeditor    $51dc ;draws table editor lines
1594: ;$51df
1595: ;$51e2
1596: ;$51e5
1597: ;$51e8
1598: ;$51eb
1599: ;$51ee
1600: #define _matrixname $51f1
1601: ;$51f4
1602: ;$51f7
1603: ;$51fa
1604: ;$51fd
1605: ;$5200
1606: ;$5203
1607: ;$5206
1608: ;$5209
1609: ;$520c
1610: ;$520f
1611: #define _setupemptyedittempequ  $5212
1612: ;$5215
1613: ;$5218
1614: ;$521b
1615: ;$521e
1616: #define _chk_batt_level $5221
1617: ;$5224
1618: ;$5227
1619: ;$522a
1620: ;$522d
1621: ;$5230
1622: #define _gotolastrow    $5233
1623: #define _rectborder $5236
1624: ;$5239
1625: ;$523c
1626: ;$523f
1627: #define _loada5 $5242
1628: ;$5245
1629: #define _namedlisttoop1 $5248
1630: ;$524b
1631: ;$524e
1632: ;$5251
1633: #define _initusbdevicecallback  $5254
1634: #define _killusbdevice  $5257
1635: #define _setusbconfiguration    $525a
1636: #define _requestusbdata $525d
1637: #define _stopreceivingusbdata   $5260
1638: #define _findappheaderbypage    $5263
1639: #define _findnextheaderbypage   $5266
1640: #define _ismatchinglaunchapp    $5269
1641: #define _inittimer  $526c
1642: #define _killtimer  $526f
1643: #define _starttimer $5272
1644: #define _restarttimer   $5275
1645: #define _stoptimer  $5278
1646: #define _waittimer  $527b
1647: #define _checktimer $527e
1648: #define _checktimerrestart  $5281
1649: #define _setvertgraphactive $5284
1650: #define _clearvertgraphactive   $5287
1651: #define _enableusbhook  $528a
1652: #define _disableusbhook $528d
1653: #define _initusbdevice  $5290
1654: #define _killusbperipheral  $5293
1655: ;$5296
1656: ;$5299
1657: #define _graphline  $529c
1658: ;$529f
1659: ;$52a2
1660: ;$52a5
1661: ;$52a8
1662: ;$52ab
1663: ;$52ae
1664: #define _ziftableeditor $52b1
1665: ;$52b4
1666: ;$52b7
1667: ;$52ba
1668: #define _findappname    $52bd
1669: ;$52c0
1670: ;$52c3
1671: ;$52c6
1672: #define _grbufcpycustom $52c9
1673: ;$52cc
1674: ;$52cf
1675: ;$52d2
1676: #define _vdisprealop1   $52d5
1677: #define _dispxequalsnum $52d8
1678: #define _resetgraphsettings $52db
1679: #define _initializevariables    $52de
1680: ;$52e1 ;bit 4,($9c75) (this is definitely returning the status of something when acting as a ti-smartview input pad...this bit is bit 1 of the data byte from a pc hid set report request)
1681: #define _delvarsym  $52e4
1682: #define _findappupnocase    $52e7
1683: #define _findappdnnocase    $52ea
1684: #define _deleteinvalidapps  $52ed
1685: #define _deleteapp_link $52f0
1686: #define _cmpsymsnocase  $52f3
1687: #define _setapprestrictions $52f6
1688: #define _removeapprestrictions  $52f9
1689: #define _queryapprestrictions   $52fc
1690: #define _dispapprestrictions    $52ff
1691: #define _setuphome  $5302
1692: #define _grputawayfull  $5305 ;same as _grputaway except it assumes no split screen
1693: #define _sendsmartpadkeypress   $5308 ;b and a are the inputs
1694: #define _toggleusbsmartpadinput $530b ;a is input, 0 or 1 to enable/disable
1695: #define _isusbdeviceconnected   $530e ;bit 4,($81) \ ret, this is just a guess on its purpose but it seems to work
1696: #define _clearusbcallback2  $5311 ;identical to $5257
1697: #define _polarequtoop1  $5314
1698: #define _paramxequtoop1 $5317
1699: #define _paramyequtoop1 $531a
1700: #define _getrestrictionsoptions $531d
1701: #define _dispresetcomplete  $5320
1702: #define _pttreset   $5323
1703: #define _findappcustom  $5326
1704: #define _cleargraphstyles   $5329
1705: 
1706: ;page   $1f rom calls
1707: ;--------------------------------
1708: #define bootbtf $8000
1709: ;$400f may point to version string ("1.02 ",0)
1710: #define _md5final   $8018
1711: #define _rsavalidate    $801b
1712: #define _cmpstr $801e ;bignumcompare
1713: #define _writeabyte $8021
1714: #define _eraseflash $8024
1715: #define _findfirstcertfield $8027
1716: #define _zerotocertificate  $802a
1717: #define _getcertificateend  $802d
1718: #define _findgroupedfield   $8030
1719: #define _ret_1  $8033
1720: #define _ret_2  $8036
1721: #define _ret_3  $8039
1722: #define _ret_4  $803c
1723: #define _ret_5  $803f
1724: #define _mult8by8   $8042
1725: #define _mult16by8  $8045
1726: #define _div16by8   $8048
1727: #define _div16by16  $804b
1728: ;$804e ;scary certificate reading and writing, something about calc id and fields   $0a10/$0a20
1729: #define _loadaindpaged  $8051
1730: #define _flashtoram2    $8054
1731: #define _getcertificatestart    $8057
1732: #define _getfieldsize   $805a
1733: #define _findsubfield   $805d
1734: #define _erasecertificatesector $8060
1735: #define _checkheaderkey $8063
1736: ;$8066 ;just returns z if specified data in field   $0310, subfield $0610 exists, de points to data of that field you want to find
1737: ;$8069 ;just returns number of  $0810/$0710 fields that exist in certificate or something, in ix
1738: #define _load_lfontv2   $806c
1739: #define _load_lfontv    $806f
1740: #define _receiveos  $8072
1741: #define _findosheadersubfield   $8075
1742: #define _findnextcertfield  $8078
1743: #define _getbyteorboot  $807b
1744: #define _getserial  $807e ;getcalcserial
1745: #define _receivecalcid  $8081 ;receives certificate replacement (including calculator id, fails if already exists) and writes it, requires flash unlocked
1746: #define _eraseflashpage $8084
1747: #define _writeflashunsafe   $8087
1748: #define _dispbootver    $808a
1749: #define _md5init    $808d
1750: #define _md5update  $8090
1751: #define _markosinvalid  $8093
1752: #define _findprogramlicense $8096 ;copies   $8010 field to appid and other insane stuff that makes zero sense
1753: #define _markosvalid    $8099
1754: #define _checkosvalidated   $809c
1755: #define _setupapppubkey $809f
1756: #define _sigmodr    $80a2
1757: #define _transformhash  $80a5
1758: #define _isappfreeware  $80a8
1759: #define _findappheadersubfield  $80ab
1760: #define _writevalidationnumber  $80ae ;generates two-byte validation number from calc id and stores to certificate
1761: #define _div32by16  $80b1
1762: #define _findgroup  $80b4 ;searches until field of de-like group is found (de=$0a00, it stops when it finds $0ax0)
1763: #define _getbootver $80b7
1764: #define _gethardwareversion $80ba
1765: #define _xora   $80bd ;xor a
1766: #define _bignumpowermod17   $80c0
1767: #define _prodnrpart1    $80c3
1768: #define _writeabytesafe $80c6
1769: #define _writeflash $80c9
1770: #define _setupdatestamppubkey   $80cc
1771: #define _setflashlowerbound $80cf
1772: #define _lowbatteryboot $80d2
1773: ;ti-84 plus/silver edition only entry points
1774: #define _attemptusbosreceive    $80e4 ;z to wait for usb cable insert & get os, nz and a= contents of port  $4d or  $56, on to cancel & clear ram
1775: #define _displaybootmessage $80e7
1776: #define _newline2   $80ea
1777: #define _displaybooterror10 $80ed
1778: #define _chk_batt_low_b $80f0
1779: #define _chk_batt_low_b2    $80f3
1780: #define _receiveos_usb  $80f6
1781: #define _displayosprogress  $80f9
1782: #define _resetcalc  $80fc
1783: #define _setupospubkey  $80ff
1784: #define _checkheaderkeyhl   $8102 ;same as _checkheaderkey, only you pass the address of header in hl, not at appdata
1785: #define _usberrorcleanup    $8105 ;kills some usb stuff (doesn't completely kill periph communication), error handler in boot code
1786: #define _initusb    $8108 ;initializes usb hardware as peripheral, sets 5,(iy+$1b), c set if problems
1787: ;$810b set 1,($81) and wait (has something to do with usb peripheral kill, but it doesn't actually kill it)
1788: #define _killusb    $810e ;identical to $8105, except in the middle of the outputs, it sends zero to port   $4c
1789: #define _displaybooterror1  $8111
1790: #define _displaybooterror2  $8114
1791: #define _displaybooterror3  $8117
1792: #define _displaybooterror4  $811a
1793: #define _displaybooterror5  $811d
1794: #define _displaybooterror6  $8120
1795: #define _displaybooterror7  $8123
1796: #define _displaybooterror8  $8126
1797: #define _displaybooterror9  $8129
1798: 
1799: ;ram equates
1800: ;--------------------------------
1801: #define ramstart    $8000
1802: #define appdata $8000
1803: #define ramcode $8100
1804: #define smalleditcolumnleft $8177
1805: #define smalleditrow    $8178
1806: #define smalleditcolumnright    $8179
1807: ;pencol left edge?  $817b
1808: #define biginteger1 $8182
1809: #define smalleditcancelparse    $8194
1810: #define smalleditrowcount   $81b7
1811: #define biginteger2 $81c3
1812: #define smalleditpromptstring   $81cc
1813: #define ramcodeend  $822f
1814: #define baseappbrtab    $8230 ;table of base pages for apps on page < 20 (starts with eight zeroes because they're os pages)
1815: #define clockflag   $8230 ;bit 2 set for 24-hour mode and don't display "am/pm"
1816: #define clockids    $8231 ;five bytes, numbers 0-4 in memory, that when present, stops displaying clock numbers in time setting context?
1817: #define boottemp    $8251
1818: #define md5temp $8259
1819: #define md5length   $8269
1820: #define md5ash  $8292
1821: #define appsearchpage   $82a3
1822: #define tempswaparea    $82a5
1823: ;something  $837 ;18 bytes, probably indicates something about flash app pages, start out as    $ff
1824: #define appid   $838d
1825: #define arcpageend  $8392
1826: #define arcptrend   $8393
1827: ;$839f something...field size bytes?
1828: #define md5buffer   $83a5
1829: #define abackup $83eb
1830: #define ramreturndata   $83ed
1831: #define arcinfo $83ee
1832: #define savedarcinfo    $8406
1833: #define appinfo $8432
1834: #define appbank_jump    $843c
1835: #define apppage $843e
1836: #define kbdscancode $843f
1837: #define kbdkey  $8444
1838: #define kbdgetky    $8445
1839: #define keyextend   $8446
1840: #define extecho keyextend
1841: #define contrast    $8447
1842: #define apdsubtimer $8448
1843: #define apdtimer    $8449
1844: #define curtime $844a
1845: #define currow  $844b
1846: #define curcol  $844c
1847: #define curoffset   $844d
1848: #define curunder    $844e
1849: #define cury    $844f
1850: #define curtype $8450
1851: #define curxrow $8451
1852: #define prevddata   $8452
1853: #define lfont_record    $845a
1854: #define sfont_record    $8462
1855: #define tokvarptr   $846a
1856: #define toklen  $846c
1857: #define indicmem    $846e ;eight bytes used by _savetr and _restoretr to store image in top right corner
1858: #define indiccounter    $8476
1859: #define indicbusy   $8477
1860: #define op1 $8478
1861: #define op1m    $847a
1862: #define op2 $8483
1863: #define op2m    $8485
1864: #define op2ext  $848c
1865: #define op3 $848e
1866: #define op3m    $8490
1867: #define op4 $8499
1868: #define op4m    $849b
1869: #define op5 $84a4
1870: #define op5m    $84a6
1871: #define op6 $84af
1872: #define op6m    $84b1
1873: #define op6ext  $84b8
1874: #define progtoedit  $84bf
1875: #define namebuff    $84c7
1876: #define equ_edit_save   $84d2
1877: #define imathptr1   $84d3
1878: #define imathptr2   $84d5
1879: #define imathptr3   $84d7
1880: #define imathptr4   $84d9
1881: #define imathptr5   $84db
1882: #define chkdelptr1  $84dd
1883: #define chkdelptr2  $84df
1884: #define insdelptr   $84e1
1885: #define updownptr   $84e3
1886: #define foutdat $84e5
1887: #define asm_data_ptr1   $84eb
1888: #define asm_data_ptr2   $84ed
1889: #define asm_sym_ptr1    $84ef
1890: #define asm_sym_ptr2    $84f1
1891: #define asm_ram $84f3
1892: #define asm_ind_call    $8507
1893: #define textshadow  $8508
1894: #define textshadcur $8588
1895: #define textshadtop $858a
1896: #define textshadalph    $858b
1897: #define textshadins $858c
1898: #define cxmain  $858d
1899: #define cxpputaway  $858f
1900: #define cxputaway   $8591
1901: #define cxerrorep   $8595
1902: #define cxsizewind  $8597
1903: #define cxpage  $8599
1904: #define cxcurapp    $859a
1905: #define cxprev  $859b ;12 bytes are shadows of cxmain through cxcurapp and appflags
1906: #define monqh   $85aa
1907: #define monqt   $85ab
1908: #define monqueue    $85ac
1909: #define onsp    $85bc
1910: #define promptrow   $85c0
1911: #define promptcol   $85c1
1912: #define promptins   $85c2
1913: #define promptshift $85c3
1914: #define promptret   $85c4
1915: #define promptvalid $85c6
1916: #define prompttop   $85c8
1917: #define promptcursor    $85ca
1918: #define prompttail  $85cc
1919: #define promptbtm   $85ce
1920: #define vartype $85d0
1921: #define varcurrent  $85d1
1922: #define varclass    $85d9
1923: #define catalogcurrent  $85da ;word at this location starting with  $6007 corresponds to what is highlighted in catalog
1924: #define menuactive  $85dc
1925: #define menuappdepth    $85dd
1926: #define menucurrent $85de
1927: ;$85df ;holds current submenu index
1928: ;$85e0 ;holds currently selected item in current submenu
1929: ;$85e1 ;holds number of submenus for this menu
1930: ;$85e2 ;holds number of items in this submenu
1931: ;$85e3 ;iy+appflags backup for menu stuff
1932: ;$85e4 ;iy+$0c backup for menu stuff
1933: ;$85e5 ;curgstyle backup for menu stuff
1934: ;$85e6 ;iy+graphflags backup for menu stuff
1935: #define progcurrent $85e8
1936: ;something, op1 backup? $85f2 ;type and name of topmost variable on menu with names
1937: ;something  $85fd
1938: #define usermenusa  $85fe
1939: #define ioprompt    $865f
1940: #define dimagewidth $8660
1941: #define ioflag  $8670
1942: #define sndrecstate $8672
1943: #define ioerrstate  $8673
1944: #define header  $8674
1945: #define iodata  $867d
1946: #define ionewdata   $8689
1947: #define bakheader   $868b
1948: ;something  $8697 ;app bitmap for selecting stuff from menus
1949: ;something  $86b7 ;used in  $47 and $74 link packets
1950: #define pencol  $86d7
1951: #define penrow  $86d8
1952: #define rclqueue    $86d9
1953: #define rclqueueend $86db
1954: #define errno   $86dd
1955: #define errsp   $86de
1956: #define erroffset   $86e0
1957: #define savesscreen $86ec
1958: #define asm_prgm_size   $89ec
1959: #define bstcounter  $89ee
1960: #define flags   $89f0
1961: #define appflagsaddr    $89fd
1962: ;something  $8a36 ;stats-related? this gets stored to (varcurrent) for some reason
1963: #define statvars    $8a3a
1964: #define anovaf_vars $8c17
1965: #define infvars $8c4d
1966: #define infvar1 $8c56
1967: #define infvar2 $8c5f
1968: #define infvar3 $8c68
1969: #define infvar4 $8c71
1970: #define infvar5 $8c7a
1971: #define infvar6 $8c83
1972: #define infvar7 $8c8c
1973: #define infvar8 $8c95
1974: #define infvar9 $8c9e
1975: #define infvar10    $8ca7
1976: #define infvar11    $8cb0
1977: #define infvar12    $8cb9
1978: #define infvar13    $8cc2
1979: #define infvar14    $8ccb
1980: #define infvar15    $8cd4
1981: #define infvar16    $8cdd
1982: #define infvar17    $8ce6
1983: #define infvar18    $8cef
1984: #define infvar19    $8cf8
1985: #define infvar20    $8d01
1986: ;something  $8d0b
1987: ;list-related stat vars $8d0d
1988: #define curgstyle   $8d17
1989: #define curgy   $8d18
1990: #define curgx   $8d19
1991: #define curgy2  $8d1a
1992: #define curgx2  $8d1b ;currently selected equation while graphing
1993: #define freesavey   $8d1c
1994: #define freesavex   $8d1d
1995: ;100 bytes  $8d2a
1996: #define xoffset $8da1
1997: #define yoffset $8da2
1998: #define lcdtallp    $8da3
1999: #define pixwidep    $8da4
2000: #define pixwide_m_1 $8da5
2001: #define pixwide_m_2 $8da6
2002: #define lastentryptr    $8da7 ;pointer to the next available byte in the entry stack
2003: #define lastentrystk    $8da9 ;the start of entry stack (note last entry is not in the stack, it is in the program '#'.)  this is a stack of strings.  first 2 bytes are length, followed by string. 2nd from last entry is first in this stack.
2004: #define numlastentries  $8e29 ;number of entries you can back-track through minus one
2005: #define currlastentry   $8e2a ;counter used by os to keep track of which entry was just displayed by pressing 2nd+enter
2006: ;something  $8e65
2007: ;something  $8e66
2008: #define curinc  $8e67
2009: #define uxmin   $8e7e
2010: #define uxmax   $8e87
2011: #define uxscl   $8e90
2012: #define uymin   $8e99
2013: #define uymax   $8ea2
2014: #define uyscl   $8eab
2015: #define uthetmin    $8eb4
2016: #define uthetmax    $8ebd
2017: #define uthetstep   $8ec6
2018: #define utmin   $8ecf
2019: #define utmax   $8ed8
2020: #define utstep  $8ee1
2021: #define uplotstart  $8eea
2022: #define unmax   $8ef3
2023: #define uu0 $8efc
2024: #define uv0 $8f05
2025: #define unmin   $8f0e
2026: #define uu02    $8f17
2027: #define uv02    $8f20
2028: #define uw0 $8f29
2029: #define uplotstep   $8f32
2030: #define uxres   $8f3b
2031: #define uw02    $8f44
2032: #define xmin    $8f50
2033: #define xmax    $8f59
2034: #define xscl    $8f62
2035: #define ymin    $8f6b
2036: #define ymax    $8f74
2037: #define yscl    $8f7d
2038: #define thetamin    $8f86
2039: #define thetamax    $8f8f
2040: #define thetastep   $8f98
2041: #define tminpar $8fa1
2042: #define tmaxpar $8faa
2043: #define tstep   $8fb3
2044: #define plotstart   $8fbc
2045: #define nmax    $8fc5
2046: #define u0  $8fce
2047: #define v0  $8fd7
2048: #define nmin    $8fe0
2049: #define u02 $8fe9
2050: #define v02 $8ff2
2051: #define w0  $8ffb
2052: #define plotstep    $9004
2053: #define xreso   $900d
2054: #define w02 $9016
2055: #define un1 $901f
2056: #define un2 $9028
2057: #define vn1 $9031
2058: #define vn2 $903a
2059: #define wn1 $9043
2060: #define wn2 $904c
2061: #define fin_n   $9055
2062: #define fin_i   $905e
2063: #define fin_pv  $9067
2064: #define fin_pmt $9070
2065: #define fin_fv  $9079
2066: #define fin_py  $9082
2067: #define fin_cy  $908b
2068: #define cal_n   $9094
2069: #define cal_i   $909d
2070: #define cal_pv  $90a6
2071: #define cal_pmt $90af
2072: #define cal_fv  $90b8
2073: #define cal_py  $90c1
2074: #define smalleditram    $90d3
2075: #define xfact   $913f
2076: #define yfact   $9148
2077: #define xres_int    $9151
2078: #define deltax  $9152
2079: #define deltay  $915b
2080: #define shortx  $9164
2081: #define shorty  $916d
2082: #define lower   $9176
2083: #define upper   $917f
2084: #define xoutsym $918c
2085: #define xoutdat $918e
2086: #define youtsym $9190
2087: #define youtdat $9192
2088: #define inputsym    $9194
2089: #define inputdat    $9196
2090: #define prevdata    $9198
2091: ;something  $91d9
2092: ;something  $91da
2093: #define curtablerow $91dc
2094: #define curtablecol $91dd
2095: #define tblmin  $92b3
2096: #define tblstep $92bc
2097: ;something  $92c5
2098: ;something  $92c6
2099: ;someplotthing1 $92d9
2100: ;someplotthing2 $92ea
2101: ;someplotthing3 $92fb
2102: #define es  $9302 ;bottom of the es
2103: #define est $9305 ;current height of the es
2104: ;something  $9311 ;this is the pointer to a table of stuff for a basic menu
2105: #define plotsscreen $9340
2106: #define seed1   $9640
2107: #define seed2   $9649
2108: #define basic_prog  $9652
2109: #define basic_start $965b
2110: #define nextparsebyte   $965d ;basic_pc
2111: #define basic_end   $965f
2112: #define numarguments    $9661
2113: ;something  $9665 ;parser-related word
2114: ;something  $966c
2115: ;something  $966d
2116: #define cmdshadow   $966e
2117: #define cmdshadcur  $96ee
2118: #define cmdshadalph $96f0
2119: #define cmdshadins  $96f1
2120: #define cmdcursor   $96f2
2121: #define edittop $96f4
2122: #define editcursor  $96f6
2123: #define edittail    $96f8
2124: #define editbtm $96fa
2125: ;something  $9700
2126: #define editsym $9706 ;pointer to symbol table entry of variable being edited
2127: #define editdat $9708 ;pointer to data of variable being edited
2128: ;something  $970e ;stats/list editor related, usually 1
2129: ;something  $970f ;stats/list editor related, usually 0
2130: ;something  $9710 ;stats/list editor related, usually 0
2131: #define listname1   $9711
2132: #define listname2   $9716
2133: #define listname3   $971b
2134: #define listname4   $9720
2135: #define listname5   $9725
2136: #define listname6   $972a
2137: #define listname7   $972f
2138: #define listname8   $9734
2139: #define listname9   $9739
2140: #define listname10  $973e
2141: #define listname11  $9743
2142: #define listname12  $9748
2143: #define listname13  $974d
2144: #define listname14  $9752
2145: #define listname15  $9757
2146: #define listname16  $975c
2147: #define listname17  $9761
2148: #define listname18  $9766
2149: #define listname19  $976b
2150: #define listname20  $9770
2151: ;something  $9775
2152: #define y1linetype  $9776 ;these bytes define the line type for functions which are graphed
2153: #define y2linetype  $9777
2154: #define y3linetype  $9778
2155: #define y4linetype  $9779
2156: #define y5linetype  $977a
2157: #define y6linetype  $977b
2158: #define y7linetype  $977c
2159: #define y8linetype  $977d
2160: #define y9linetype  $977e
2161: #define y0linetype  $977f
2162: #define para1linetype   $9780
2163: #define para2linetype   $9781
2164: #define para3linetype   $9782
2165: #define para4linetype   $9783
2166: #define para5linetype   $9784
2167: #define para6linetype   $9785
2168: #define polar1linetype  $9786
2169: #define polar2linetype  $9787
2170: #define polar3linetype  $9788
2171: #define polar4linetype  $9789
2172: #define polar5linetype  $978a
2173: #define polar6linetype  $978b
2174: #define seculinetype    $978c
2175: #define secvlinetype    $978d
2176: #define secwlinetype    $978e
2177: ;something  $979f
2178: ;something  $97a1
2179: #define wintop  $97a5
2180: #define winbtm  $97a6
2181: #define winleftedge $97a7
2182: #define winleft $97a8
2183: #define winabove    $97aa
2184: #define winrow  $97ac
2185: #define wincol  $97ae
2186: #define fmtdigits   $97b0
2187: #define fmtstring   $97b1
2188: #define fmtconv $97f2
2189: #define fmtleft $9804
2190: #define fmtindex    $9806
2191: #define fmtmatsym   $9808
2192: #define fmtmatmem   $980a
2193: #define eqs $980c
2194: ;something  $980e
2195: ;something  $9810
2196: #define freeram $9815 ;pretty sure this is the amount of ram free, valid in mem mgmt/del anyway
2197: ;something  $9817
2198: #define tsymptr1    $9818
2199: #define tsymptr2    $981a
2200: #define chkdelptr3  $981c
2201: #define chkdelptr4  $981e
2202: #define tempmem $9820
2203: #define fpbase  $9822
2204: #define fps $9824
2205: #define opbase  $9826
2206: #define ops $9828
2207: #define ptempcnt    $982a
2208: #define cleantmp    $982c
2209: #define ptemp   $982e ;end of symbol table
2210: #define progptr $9830
2211: #define newdataptr  $9832
2212: #define pagedcount  $9834
2213: #define pagedpn $9835
2214: #define pagedgetptr $9836
2215: #define pagedputptr $9838
2216: #define pagedbuf    $983a
2217: ;something  $984a ;this is the top lcd row for a menu (usually 1)
2218: #define apperr1 $984d
2219: #define apperr2 $985a
2220: #define flashbyte1  $9867
2221: #define flashbyte2  $9868
2222: #define freearcblock    $9869
2223: #define arcpage $986b
2224: #define arcptr  $986c
2225: #define apprawkeyhandle $9870
2226: #define appbackupscreen $9872
2227: #define customheight    $9b72
2228: #define locallanguage   $9b73
2229: #define hookexectemp    $9b75
2230: #define linkactivityhook    $9b78
2231: #define cursorhookptr   $9b7c
2232: #define libraryhookptr  $9b80
2233: #define rawkeyhookptr   $9b84
2234: #define getkeyhookptr   $9b88
2235: #define homescreenhookptr   $9b8c
2236: #define windowhookptr   $9b90
2237: #define graphhookptr    $9b94
2238: #define yequalshookptr  $9b98
2239: #define fonthookptr $9b9c
2240: #define regraphhookptr  $9ba0
2241: #define graphicshook    $9ba4
2242: #define tracehookptr    $9ba8
2243: #define parserhookptr   $9bac
2244: #define appchangehookptr    $9bb0
2245: #define catalog1ookptr  $9bb4
2246: #define helphookptr $9bb8
2247: #define cxredisphookptr $9bbc
2248: #define menuhookptr $9bc0
2249: #define catalog2ookptr  $9bc4
2250: #define tokenhookptr    $9bc8
2251: #define localizehookptr $9bcc
2252: #define silentlinkhookptr   $9bd0 ;restartclr?
2253: #define usbactivityhookptr  $9bd4
2254: #define baseappbrtab2   $9c06 ;table of base pages for apps on page >= 20; first 20 bytes are zeroes.
2255: #define usbcallbackpage $9c13
2256: #define usbcallbackptr  $9c14
2257: #define vendorid    $9c16
2258: #define productid   $9c18
2259: #define devreleasenumber    $9c1a
2260: #define oldsespeed  $9c21
2261: #define calcperipheralstate $9c26
2262: #define usb_datawaitingcount    $9c27
2263: #define basepagetable2end   $9c6f ;this is the last page
2264: #define port91temp  $9c79
2265: #define usb_dataexpectcount $9c80
2266: #define offpagecallpage $9c83 ;temporarily stores off-page page and address
2267: #define offpagecalladdress  $9c84
2268: ;something  $9c86 ;used with se link activity, values of    $00,    $0fa,   $0ff probably mean something
2269: ;something  $9c87 ;zero this to force the apps menu to recache itself (this is always either 0, 1, or last app page, for some reason)
2270: ;something  $9c88 ;don't know, but it's 14 bytes and has to do with selecting stuff (if $9c87 is non-zero, this is zeroed out)
2271: ;something  $9c9e ;funky, this actually gets written to the certificate on non-83+ (11 bytes)
2272: #define sespeed $9cae
2273: ;something, table index $9caf
2274: ;something  $9cb0
2275: ;something  $9cb1 ;table
2276: ;something  $9ccd
2277: #define localtokstr $9d65
2278: #define keyforstr   $9d76
2279: #define keytostrram $9d77
2280: #define sedmonsp    $9d88
2281: #define bpsave  $9d8a
2282: #define usermem $9d95
2283: #define symtable    $0fe66
2284: 
2285: ;system flags
2286: ;----------------------------------------------------------------------
2287: #define iodelflag   0
2288: #define indelete    0   ;1 = delete screen
2289: 
2290: #define trigflags   0   ;trigonometry mode settings
2291: #define trigdeg 2   ;1=degrees, 0=radians
2292: 
2293: #define kbdflags    0   ;keyboard scan
2294: #define kbdscr  3   ;1=scan code ready
2295: #define kbdkeypress 4   ;1=key has been pressed
2296: 
2297: #define doneflags   0   ;display "done"
2298: #define doneprgm    5   ;1=display "done" after prgm
2299: ;----------------------------------------------------------------------
2300: #define editflags   1
2301: #define editopen    2   ;1=edit buffer is open
2302: 
2303: #define ansflags    1
2304: #define ansscroll   3   ;1=answer can scroll, seems must be reset in order to move about edit buffer
2305: 
2306: #define monflags    1    ;monitor flags
2307: #define monabandon  4   ;1=don't start any long process in put away (#715)
2308: ;----------------------------------------------------------------------
2309: #define plotflags   2   ;plot generation flags
2310: #define plotloc     1   ;0=bkup & display, 1=display only
2311: #define plotdisp    2   ;1=plot is in display, 0=text in display
2312: 
2313: #define grfmodeflags    2   ;graph mode settings
2314: #define grffuncm    4   ;1=function grap
2315: #define grfpolarm   5   ;1=polar grap
2316: #define grfparamm   6   ;1=parametric grap
2317: #define grfrecurm   7   ;1=recursion grap
2318: ;----------------------------------------------------------------------
2319: #define graphflags  3
2320: #define graphdraw   0   ;0=graph is valid, 1=redraw graph(dirty)
2321: #define graphcursor 2
2322: ;----------------------------------------------------------------------
2323: #define grfdbflags  4
2324: #define grfdot  0   ;0=line, 1=dot
2325: #define grfsimul    1   ;0=sequential, 1=simultaneous
2326: #define grfgrid     2   ;0=no grid, 1=grid
2327: #define grfpolar    3   ;0=rectangular, 1=polar coordinates
2328: #define grfnocoord  4   ;0=display coordinates, 1=off
2329: #define grfnoaxis   5   ;0=axis, 1=no axis
2330: #define grflabel    6   ;0=off, 1=axis label
2331: ;----------------------------------------------------------------------
2332: #define textflags   5   ;text output flags
2333: #define texterasebelow  1   ;1=erase line below small char
2334: #define textscrolled    2   ;1=screen scrolled
2335: #define textinverse 3   ;1=display inverse bit-map
2336: #define textinsmode 4   ;0=overstrike, 1=insert mode
2337: ;----------------------------------------------------------------------
2338: #define parsflag    6   ;parser flags
2339: ;----------------------------------------------------------------------
2340: #define parsflag2   7   ;parser flags
2341: #define numop1  0   ;1=result in op1, 0=no result
2342: ;----------------------------------------------------------------------
2343: #define newdispf    8   ;derivative mode flags
2344: #define preclrformode   0   ;1=help blink on mode screen
2345: #define allowprogtokens 1   ;1=allow programming tokens to be parsed in basic programs
2346: 
2347: #define apdflags    8   ;automatic power-down
2348: #define apdable     2   ;1=apd enabled
2349: #define apdrunning  3   ;1=apd clock running
2350: ;----------------------------------------------------------------------
2351: #define web_err_mask    $60
2352: ;----------------------------------------------------------------------
2353: #define onflags     9   ;on key flags
2354: #define parseinput  1   ;1=parse input when done
2355: #define onrunning   3   ;1=calculator is running
2356: #define oninterrupt 4   ;1=on key interrupt request
2357: 
2358: #define statflags   9   ;statistics flags
2359: ;unknown    5   ;unknown
2360: #define statsvalid  6   ;1=stats are valid
2361: ;----------------------------------------------------------------------
2362: #define fmtflags    $0a ;numeric format flags
2363: #define fmtexponent 0       ;1=show exponent, 0=no exponent
2364: #define fmteng  1       ;1=engineering notion, 0=scientific
2365: #define fmthex  2       ;1=hexadecimal
2366: #define fmtoct  3       ;1=octal
2367: #define fmtbin  4       ;1=binary
2368: 
2369: #define nummode $0a
2370: #define fmtreal 5
2371: #define fmtrect 6
2372: #define fmtpolar    7
2373: 
2374: #define realmode    5
2375: #define rectmode    6
2376: #define polarmode   7
2377: ;           ;if hex and oct both = 1
2378: ;           ; then bin=0 means >frac
2379: ;           ; bin=1 means >dms
2380: #define fmtbasemask %00011100   ; mask to base flags
2381: #define fmtbaseshift     2  ; offset to base flags
2382: ;
2383: ;       check if these are used by numform,
2384: ;
2385: ;                6
2386: ;                7
2387: ;----------------------------------------------------------------------
2388: #define fmtoverride $0b ;copy of fmtflags with conversion override
2389: ;----------------------------------------------------------------------
2390: #define fmteditflags    $0c ;numeric editing flags
2391: #define fmtedit 0   ;1=format number for editing
2392: 
2393: #define curflags    $0c ;cursor
2394: #define curable     2   ;1=cursor flash is enabled
2395: #define curon   3   ;1=cursor is showing
2396: #define curlock     4   ;1=cursor is locked off
2397: 
2398: #define cmdflags    $0c ;command editor flags
2399: #define cmdvirgin   5   ;1=nothing has been typed in cmd bfr
2400: ;----------------------------------------------------------------------
2401: #define appflags    $0d ;application flags
2402: #define appwantintrpt   0   ;1=want on key interrupts
2403: #define apptextsave 1   ;1=save characters in textshadow
2404: #define appautoscroll   2   ;1=auto-scroll text on last line
2405: #define appmenus    3   ;1=process keys that bring up menus, 0=check lock menu flag
2406: #define applockmenus    4   ;1=ignore menu keys, 0=switch to home screen and bring up menu
2407: #define appcurgraphic   5   ;1=graphic cursor
2408: #define appcurword  6   ;1=text cursor covers entire word
2409: #define appexit     7   ;1=application handles [exit] key itself
2410: 
2411: #define appwantintrptf  1<<appwantintrpt
2412: #define apptextsavef    1<<apptextsave
2413: #define appautoscrollf  1<<appautoscroll
2414: #define appmenusf   1<<appmenus
2415: #define applockmenusf   1<<applockmenus
2416: #define appcurgraphicf  1<<appcurgraphic
2417: #define appcurwordf 1<<appcurword
2418: #define appexitf    1<<appexit
2419: ;----------------------------------------------------------------------
2420: #define rclflag $0e ;os recall queue flags
2421: #define enablequeue 7   ;1 = enable recall queue
2422: ;----------------------------------------------------------------------
2423: #define seqflags    $0f ;sequential graph flags
2424: #define webmode 0   ;0 = normal seq mode, 1 = web mode
2425: #define webvert 1
2426: #define sequv   2   ;u vs v
2427: #define seqvw   3   ;v vs w
2428: #define sequw   4   ;u vs w
2429: ;----------------------------------------------------------------------
2430: #define promptflags $11 ;prompt line flags
2431: #define promptedit  0   ;1=editing in prompt buffer
2432: ;----------------------------------------------------------------------
2433: #define indicflags  $12 ;indicator flags
2434: #define indicrun    0   ;1=run indicator on
2435: #define indicinuse  1   ;indicator save area in use=1, free=0 ;resetting will disable 2nd while in _getkey
2436: #define indiconly   2   ;interrupt handler only checks run indicator
2437: 
2438: #define shiftflags  $12 ;[2nd] and [alpha] flags
2439: #define shift2nd    3   ;1=[2nd] has been pressed
2440: #define shiftalpha  4   ;1=[alpha] has been pressed
2441: #define shiftlwralph    5   ;1=lower case, 0=upper case
2442: #define shiftalock  6   ;1=alpha lock has been pressed
2443: #define shiftkeepalph   7   ;1=cannot cancel alpha shift
2444: ;----------------------------------------------------------------------
2445: #define tblflags    $13 ;table flags.
2446: #define autofill    4   ;1=prompt, 0=fillauto
2447: #define autocalc    5   ;1=prompt, 0=calcauto
2448: #define retable 6   ;0=table is okay, 1=must recompute table.
2449: ;----------------------------------------------------------------------
2450: #define sgrflags    $14
2451: #define grfsplit    0   ;1=split graph, 0=normal
2452: #define vertsplit   1   ;1=vertical (left-right) split
2453: #define grfschanged 2   ;1=graph just changed split <-> normal
2454: #define grfsplitoverride    3   ;1 = ignore graph split flag if set
2455: #define write_on_graph  4   ;1 = text or    writing to graph screen
2456: #define g_style_active  5   ;1 = graph styles are enabled, use them
2457: #define cmp_mod_box 6   ;1 = doing mod box plot computation
2458: #define textwrite   7
2459: ;----------------------------------------------------------------------
2460: #define newindicflags   $15
2461: #define extraindic  0
2462: #define saindic 1
2463: ;----------------------------------------------------------------------
2464: #define batteryflags    $16
2465: #define batteriesgood   2   ;1 = batteries good
2466: ;----------------------------------------------------------------------
2467: #define smartflags  $17
2468: #define smarter_mask    3
2469: #define smarter_test    1
2470: #define smartgraph  0
2471: #define smartgraph_inv  1
2472: ;----------------------------------------------------------------------
2473: #define traceflags  $18
2474: #define grfexpr 0   ;set to hide expression while tracing
2475: ;----------------------------------------------------------------------
2476: #define statflags2  $1a
2477: #define statdiagnosticson   0   ;1 = stat diagnostics on
2478: ;----------------------------------------------------------------------
2479: #define linkflags   $1b
2480: #define idis95  1   ;link routines use machine id 95 (cbl)
2481: #define idis82  2   ;link routines use machine id 82 (ti-82)
2482: #define idis83  3   ;link routines use machine id 83 (ti-83)
2483: #define idis03  4   ;link routines use machine id 03 (pc to ti-83)
2484: #define usbenabled  5   ;use usb port first, or at least try to
2485: ;----------------------------------------------------------------------
2486: ;there is a flag    $1c (stats-related).
2487: ;----------------------------------------------------------------------
2488: ;there is a flag    $1e.
2489: ;----------------------------------------------------------------------
2490: #define vartypemask $1f ;is this a flag byte? yes
2491: #define vargraphref 6
2492: ;----------------------------------------------------------------------
2493: #define graphflags2 $1f
2494: #define splitoverride   3   ;0 = force full screen with parseinp, or something
2495: ;----------------------------------------------------------------------
2496: #define asm_flag1   $21 ;asm coding
2497: #define asm_flag2   $22 ;asm coding
2498: #define asm_flag3   $23 ;asm coding
2499: ;----------------------------------------------------------------------
2500: #define arcflag $24
2501: #define checkbatterylevelfirst  0   ;1 = check battery levels in arc_unarc first and throw error if low
2502: 
2503: #define getsendflg  $24
2504: #define comfailed   1   ;1 = get/send communication failed
2505: 
2506: #define selftestflag    $24
2507: #define resetonpoweron  2   ;1 = force ram reset when apd disabled on next power on
2508: 
2509: #define applwrcaseflag  $24
2510: #define lwrcaseactive   3
2511: ;----------------------------------------------------------------------
2512: #define contextflags    $25
2513: #define nocxputaway 5   ;1 = do not call cxputaway routine
2514: ;----------------------------------------------------------------------
2515: #define groupflags  $26 ;used temporarily in arc_unarc
2516: #define ingroup 1   ;1 = in group context
2517: #define nocompletionbyte    2   ;1 = do not write 0fch when calling arc_unarc, leave as 0fe
2518: #define nodatawrite 3   ;1 = do not write data when calling arc_unarc, nor size bytes
2519: #define writesizebytesonly  5   ;1 = only write size bytes when calling arc_unarc
2520: ;----------------------------------------------------------------------
2521: #define apiflg  $28
2522: #define appallowcontext 0           ;app wants context changes to happen
2523: ;1 set to ignore a key after returning from rawkeyhook
2524: ;2 set to send this key back?
2525: ;3
2526: #define apprunning  4   ;app is currently running
2527: ;5
2528: ;6
2529: #define appretkeyoff    7   ;1 = getkey returns koff when [2nd]+[on] pressed
2530: ;----------------------------------------------------------------------
2531: #define apiflg2 $29
2532: ;----------------------------------------------------------------------
2533: #define apiflg3 $2a
2534: ;1 set means using small font?
2535: ;----------------------------------------------------------------------
2536: #define apiflg4 $2b
2537: #define celloverride    1   ;use cell override
2538: #define fullscrndraw    2   ;draw into last row/col of screen
2539: ;----------------------------------------------------------------------
2540: #define mouseflag1  $2c
2541: ;----------------------------------------------------------------------
2542: #define mouseflag2  $2d ;might want to keep this always reset.
2543: ;----------------------------------------------------------------------
2544: #define xapflag0    $2e ;external app flags
2545: #define xapflag1    $2f
2546: #define xapflag2    $30
2547: #define xapflag3    $31
2548: ;----------------------------------------------------------------------
2549: #define fontflags   $32
2550: #define fracdrawlfont   2
2551: #define fractalllfont   3
2552: #define customfont  7
2553: ;----------------------------------------------------------------------
2554: #define hookflags1  $33 ;also scriptflag, rclflag2, backgroundlink
2555: #define alt_on  0   ;run onscrpt at startup
2556: #define alt_off 1   ;run offscrpt at shutdown
2557: #define userclqueueend  2   ;1 = external mode
2558: #define ignorebplink    3   ;1 = override flag for link activity hook
2559: #define bplinkon    4   ;1 = link activity hook active
2560: #define notempdelete    6   ;1 = do not delete temporary programs at homescreen
2561: ;----------------------------------------------------------------------
2562: #define hookflags2  $34 ;also syshookflg
2563: #define getcschookactive    0   ;1 = getcsc hook active
2564: #define libraryhookactive   1   ;1 = library hook active
2565: #define homescreenhookactive    4   ;1 = homescreen hook active
2566: #define rawkeyhookactive    5   ;1 = raw key hook active
2567: #define catalog2ookactive   6   ;1 = catalog 2 hook active
2568: #define cursorhookactive    7   ;1 = cursor hook active
2569: ;----------------------------------------------------------------------
2570: #define hookflags3  $35 ;also syshookflg1
2571: #define tokenhookactive 0   ;1 = token hook active
2572: #define localizehookactive  1   ;1 = localize hook active
2573: #define windowhookactive    2   ;1 = window hook active
2574: #define graphhookactive 3   ;1 = graph hook active
2575: #define yequhookactive  4   ;1 = y= hook active
2576: #define fonthookactive  5   ;1 = font hook active
2577: #define regraphhookactive   6   ;1 = regraph hook active
2578: #define drawinghookactive   7   ;1 = drawing hook active
2579: ;----------------------------------------------------------------------
2580: #define hookflags4  $36 ;also syshookflag2
2581: #define tracehookactive 0   ;1 = trace hook active
2582: #define parserhookactive    1   ;1 = parser hook active
2583: #define appchangehookactive 2   ;1 = app change hook active
2584: #define catalog1ookactive   3   ;1 = catalog 1 hook active
2585: #define helphookactive  4   ;1 = help hook active
2586: #define cxredisphookactive  5   ;1 = cxredisp hook active
2587: #define menuhookactive  6   ;1 = menu hook active
2588: #define silentlinkhookactive    7   ;1 = silent link hook active
2589: ;----------------------------------------------------------------------
2590: ;hookflags2override $37 ;set corresponding bit to kill iy+$35 hook when executing app
2591: ;----------------------------------------------------------------------
2592: ;hookflags3override $38 ;set corresponding bit to kill iy+$36 hook when executing app
2593: ;----------------------------------------------------------------------
2594: ;hookflags4override $39 ;set corresponding bit to kill iy+$37 hook when executing app
2595: ;----------------------------------------------------------------------
2596: #define plotflag3   $3c
2597: #define bufferonly  0
2598: #define usefastcirc 4
2599: ;----------------------------------------------------------------------
2600: #define dbkeyflags  $3d
2601: #define keydefaultsf    6   ;1 = getkey returns extended keycodes with ti-keyboard
2602: ;----------------------------------------------------------------------
2603: #define clockflags  $3f
2604: #define notmdymode  0   ;0 = m/d/y format
2605: #define isymdmode   1   ;1 = y/m/d format
2606: #define is24our 2   ;1 = clock in 24 hour mode
2607: #define clockon 6   ;1 = clock on
2608: ;----------------------------------------------------------------------
2609: #define usbflag1    $40
2610: #define usbreceivezone1 2   ;1 = receive to ram pages 3/2 ("zone 1")
2611: ;----------------------------------------------------------------------
2612: #define usbflag2    $41
2613: ;0
2614: ;2
2615: #define nousbhostinit   3   ;1 = _initspecificusbdevice must fail
2616: #define usbdatawaiting  5
2617: ;6
2618: ;7
2619: ;----------------------------------------------------------------------
2620: ;there is a flag    $43.
2621: ;----------------------------------------------------------------------
2622: 
2623: ;character font equates
2624: ;-------------------------------
2625: #define lrecurn $01
2626: #define lrecuru $02
2627: #define lrecurv $03
2628: #define lrecurw $04
2629: #define lconvert    $05
2630: #define lsqup   $06
2631: #define lsqdown $07
2632: #define lintegral   $08
2633: #define lcross  $09
2634: #define lboxicon    $0a
2635: #define lcrossicon  $0b
2636: #define ldoticon    $0c
2637: #define lsubt       $0d ;small capital t for parametric mode.
2638: #define lcuber      $0e ;slightly different 3 for cubed root.
2639: #define lhexf   $0f
2640: #define lroot   $10
2641: #define linverse    $11
2642: #define lsquare $12
2643: #define langle  $13
2644: #define ldegree $14
2645: #define lradian $15
2646: #define ltranspose  $16
2647: #define lle $17
2648: #define lne $18
2649: #define lge $19
2650: #define lneg    $1a
2651: #define lexponent   $1b
2652: #define lstore  $1c
2653: #define lten    $1d
2654: #define luparrow    $1e
2655: #define ldownarrow  $1f
2656: #define lspace  $20
2657: #define lexclam $21
2658: #define lquote  $22
2659: #define lpound  $23
2660: #define lfourth $24
2661: #define lpercent    $25
2662: #define lampersand  $26
2663: #define lapostrophe $27
2664: #define llparen $28
2665: #define lrparen $29
2666: #define lasterisk   $2a
2667: #define lplussign   $2b
2668: #define lcomma  $2c
2669: #define ldash   $2d
2670: #define lperiod $2e
2671: #define lslash  $2f
2672: #define l0  $30
2673: #define l1  $31
2674: #define l2  $32
2675: #define l3  $33
2676: #define l4  $34
2677: #define l5  $35
2678: #define l6  $36
2679: #define l7  $37
2680: #define l8  $38
2681: #define l9  $39
2682: #define lcolon  $3a
2683: #define lsemicolon  $3b
2684: #define llt $3c
2685: #define leq $3d
2686: #define lgt $3e
2687: #define lquestion   $3f
2688: #define latsign $40
2689: #define lcapa   $41
2690: #define lcapb   $42
2691: #define lcapc   $43
2692: #define lcapd   $44
2693: #define lcape   $45
2694: #define lcapf   $46
2695: #define lcapg   $47
2696: #define lcaph   $48
2697: #define lcapi   $49
2698: #define lcapj   $4a
2699: #define lcapk   $4b
2700: #define lcapl   $4c
2701: #define lcapm   $4d
2702: #define lcapn   $4e
2703: #define lcapo   $4f
2704: #define lcapp   $50
2705: #define lcapq   $51
2706: #define lcapr   $52
2707: #define lcaps   $53
2708: #define lcapt   $54
2709: #define lcapu   $55
2710: #define lcapv   $56
2711: #define lcapw   $57
2712: #define lcapx   $58
2713: #define lcapy   $59
2714: #define lcapz   $5a
2715: #define ltheta  $5b
2716: #define lbackslash  $5c
2717: #define lrbrack $5d
2718: #define lcaret  $5e
2719: #define lunderscore $5f
2720: #define lbackquote  $60
2721: #define la  $61
2722: #define lb  $62
2723: #define lc  $63
2724: #define ld  $64
2725: #define le  $65
2726: #define lf  $66
2727: #define lg  $67
2728: #define lh  $68
2729: #define li  $69
2730: #define lj  $6a
2731: #define lk  $6b
2732: #define ll  $6c
2733: #define lm  $6d
2734: #define ln  $6e
2735: #define lo  $6f
2736: #define lp  $70
2737: #define lq  $71
2738: #define lr  $72
2739: #define ls  $73
2740: #define lt  $74
2741: #define lu  $75
2742: #define lv  $76
2743: #define lw  $77
2744: #define lx  $78
2745: #define ly  $79
2746: #define lz  $7a
2747: #define llbrace $7b
2748: #define lbar    $7c
2749: #define lrbrace $7d
2750: #define ltilde  $7e
2751: #define linveq  $7f
2752: #define lsub0   $80
2753: #define lsub1   $81
2754: #define lsub2   $82
2755: #define lsub3   $83
2756: #define lsub4   $84
2757: #define lsub5   $85
2758: #define lsub6   $86
2759: #define lsub7   $87
2760: #define lsub8   $88
2761: #define lsub9   $89
2762: #define lcapaacute  $8a
2763: #define lcapagrave  $8b
2764: #define lcapacaret  $8c
2765: #define lcapadier   $8d
2766: #define laacute $8e
2767: #define lagrave $8f
2768: #define lacaret $90
2769: #define ladier  $91
2770: #define lcapeacute  $92
2771: #define lcapegrave  $93
2772: #define lcapecaret  $94
2773: #define lcapedier   $95
2774: #define leacute $96
2775: #define legrave $97
2776: #define lecaret $98
2777: #define ledier  $99
2778: #define lcapiacute  $9a
2779: #define lcapigrave  $9b
2780: #define lcapicaret  $9c
2781: #define lcapidier   $9d
2782: #define liacute $9e
2783: #define ligrave $9f
2784: #define licaret $a0
2785: #define lidier  $a1
2786: #define lcapoacute  $a2
2787: #define lcapograve  $a3
2788: #define lcapocaret  $a4
2789: #define lcapodier   $a5
2790: #define loacute $a6
2791: #define lograve $a7
2792: #define locaret $a8
2793: #define lodier  $a9
2794: #define lcapuacute  $aa
2795: #define lcapugrave  $ab
2796: #define lcapucaret  $ac
2797: #define lcapudier   $ad
2798: #define luacute $ae
2799: #define lugrave $af
2800: #define lucaret $b0
2801: #define ludier  $b1
2802: #define lcapcced    $b2
2803: #define lcced   $b3
2804: #define lcapntilde  $b4
2805: #define lntilde $b5
2806: #define laccent $b6
2807: #define lgrave  $b7
2808: #define ldieresis   $b8
2809: #define lquesdown   $b9
2810: #define lexclamdown $ba
2811: #define lalpha  $bb
2812: #define lbeta   $bc
2813: #define lgamma  $bd
2814: #define lcapdelta   $be
2815: #define ldelta  $bf
2816: #define lepsilon    $c0
2817: #define llbrack     $c1
2818: #define llambda $c2
2819: #define lmu $c3
2820: #define lpi $c4
2821: #define lrho    $c5
2822: #define lcapsigma   $c6
2823: #define lsigma  $c7
2824: #define ltau    $c8
2825: #define lphi    $c9
2826: #define lcapomega   $ca
2827: #define lxmean  $cb
2828: #define lymean  $cc
2829: #define lsupx   $cd
2830: #define lellipsis   $ce
2831: #define lleft   $cf
2832: #define lblock  $d0
2833: #define lper    $d1
2834: #define lhyphen $d2
2835: #define larea   $d3
2836: #define ltemp   $d4
2837: #define lcube   $d5
2838: #define lenter  $d6
2839: #define limagi  $d7
2840: #define lphat   $d8
2841: #define lchi    $d9
2842: #define lstatf  $da
2843: #define llne    $db
2844: #define llistl  $dc
2845: #define lfinann     $dd
2846: #define l2_r_paren  $de
2847: #define lblockarrow     $df
2848: #define lcuro       $e0
2849: #define lcuro2      $e1
2850: #define lcurocapa       $e2
2851: #define lcuroa      $e3
2852: #define lcuri       $e4
2853: #define lcuri2      $e5
2854: #define lcuricapa       $e6
2855: #define lcuria      $e7
2856: #define lgline          $e8 ; = 0
2857: #define lgthick         $e9 ; = 1
2858: #define lgabove $ea ; = 2
2859: #define lgbelow $eb ; = 3
2860: #define lgpath  $ec ; = 4
2861: #define lganimate   $ed ; = 5
2862: #define lgdot   $ee ; = 6
2863: #define lupblk  $ef ;up arrow and block in solver
2864: #define ldnblk  $f0 ;down arrow and block in solver
2865: #define lcurfull    $f1 ;note: must be last char (putmap checks)
2866: 
2867: ;(menucurrent) values
2868: ;--------------------------
2869: #define mconfirmation   $01
2870: #define mapps   $02
2871: #define mprogramhome    $03
2872: #define mprgm_run   $00
2873: #define mprgm_edit  $01
2874: #define mprgm_new   $02
2875: #define mzoom   $04
2876: #define mzoom_zoom  $00
2877: #define mzoom_memory    $01
2878: #define mdraw   $05
2879: #define mdraw_draw  $00
2880: #define mdraw_points    $01
2881: #define mdraw_store $02
2882: #define mstatplots  $06
2883: #define mstat   $07
2884: #define mstat_edit  $00
2885: #define mstat_calc  $01
2886: #define mstat_tests $02
2887: #define mmath   $08
2888: #define mmath_math  $00
2889: #define mmath_number    $01
2890: #define mmath_complex   $02
2891: #define mmath_prob  $03
2892: #define mtest   $09
2893: #define mtest_test  $00
2894: #define mtest_logic $01
2895: #define mvars   $0a
2896: #define mvars_vars  $00
2897: #define mvars_yvars $01
2898: #define mmemory $0c
2899: #define mmatrix $0d
2900: #define mmatrix_name    $00
2901: #define mmatrix_math    $01
2902: #define mmatrix_edit    $02
2903: #define mdistr  $0e
2904: #define mdistr_distr    $00
2905: #define mdistr_draw $01
2906: #define mangle  $0f
2907: #define mlist   $10
2908: #define mlist_names $00
2909: #define mlist_ops   $01
2910: #define mlist_math  $02
2911: #define mcalculate  $11
2912: #define mvarswin    $14
2913: #define mvarswin_xy $00
2914: #define mvarswin_tth    $01
2915: #define mvarswin_uvw    $02
2916: #define mvarszoom   $15
2917: #define mvarszoom_zxy   $00
2918: #define mvarszoom_zt    $01
2919: #define mvarszoom_uvw   $02
2920: #define mvarsgdb    $16
2921: #define mvarspics   $17
2922: #define mvarsstrings    $18
2923: #define mvarsstat   $19
2924: #define mvarsstat_xy    $00
2925: #define mvarsstat_sigma $01
2926: #define mvarsstat_eq    $02
2927: #define mvarsstat_test  $03
2928: #define mvarsstat_pts   $04
2929: #define mvarstable  $1a
2930: #define mvarsyequ   $1b
2931: #define mvarsparametric $1c
2932: #define mvarspolar  $1d
2933: #define mvarsfnonoff    $1e
2934: #define mmemreset   $1f
2935: #define mmemreset_ram   $00
2936: #define mmemreset_rom   $01
2937: #define mmemreset_all   $02
2938: #define mmemmgmtdel $20
2939: #define mmemresetdefaults   $21
2940: #define mmemresetramall $23
2941: #define mmemresetromvars    $24
2942: #define mmemresetromapps    $25
2943: #define mmemresetromall $26
2944: #define mmemresetall    $27
2945: #define mgroup  $28
2946: #define mgroup_new  $00
2947: #define mgroup_ungroup  $01
2948: #define mgroupvars  $29
2949: #define mprogramedit    $2a
2950: #define mprgmed_ctrl    $00
2951: #define mprgmed_io  $01
2952: #define mprgmed_exec    $02
2953: #define mprgmzoom   $2b
2954: #define mprgmzoom_zoom  $00
2955: #define mprgmzoom_mem   $01
2956: #define mprgmdraw   $2c
2957: #define mprgmdraw_draw  $00
2958: #define mprgmdraw_pt    $01
2959: #define mprgmdraw_store $02
2960: #define mprgmstatplot   $2d
2961: #define mprgmsp_plots   $00
2962: #define mprgmsp_type    $01
2963: #define mprgmsp_mark    $02
2964: #define mprgmstat   $2e
2965: #define mprgmstat_edit  $00
2966: #define mprgmstat_calc  $01
2967: #define mprgmstat_tests $02
2968: #define mprgmmath   $2f
2969: #define mprgmmath_math  $00
2970: #define mprgmmath_num   $01
2971: #define mprgmmath_cplx  $02
2972: #define mprgmmath_prob  $03
2973: #define mlink   $30
2974: #define mlink_send  $00
2975: #define mlink_recieve   $01
2976: #define mlinktrasmit    $31
2977: #define mlinkxmit_xmit  $01
2978: #define mgarbagecollect $3f
2979: #define mselectgroupvars    $40
2980: #define mselgrpvars_sel $00
2981: #define mselgrpvars_grp $01
2982: #define mduplicatename  $42
2983: #define mcatalog    $45
2984: #define mfinance    $22
2985: #define mfinance_calc   $00
2986: #define mfinance_vars   $01
2987: 
2988: ;keypress equates
2989: ;-------------------------------
2990: #define kright  $01
2991: #define kleft   $02
2992: #define kup $03
2993: #define kdown   $04
2994: #define kenter  $05
2995: #define kalphaenter $06
2996: #define kalphaup    $07
2997: #define kalphadown  $08
2998: #define kclear  $09
2999: #define kdel    $0a
3000: #define kins    $0b
3001: #define krecall $0c
3002: #define klastent    $0d
3003: #define kbol    $0e
3004: #define keol    $0f
3005: 
3006: #define kselall $10
3007: #define kunselall   $11
3008: #define kltoti82    $12
3009: #define kbackup $13
3010: #define krecieve    $14
3011: #define klnkquit    $15
3012: #define ktrans  $16
3013: #define krename $17
3014: #define koverw  $18
3015: #define komit   $19
3016: #define kcont   $1a
3017: #define ksendid $1b
3018: #define ksendsw $1c
3019: #define kyes    $1d
3020: #define knoway  $1e
3021: #define kvsendtype  $1f
3022: #define koverwall   $20
3023: #define kno $25
3024: #define kkreset $26
3025: #define kapp    $27
3026: #define kdoug   $28
3027: #define klistflag   $29
3028: #define menustart   $2b
3029: #define kareyousure $2b
3030: #define kappsmenu   $2c
3031: #define kprgm   $2d
3032: #define kzoom   $2e
3033: #define kdraw   $2f
3034: #define ksplot  $30
3035: #define kstat   $31
3036: #define kmath   $32
3037: #define ktest   $33
3038: #define kchar   $34
3039: #define kvars   $35
3040: #define kmem    $36
3041: #define kmatrix $37
3042: #define kdist   $38
3043: #define kangle  $39
3044: #define klist   $3a
3045: #define kcalc   $3b
3046: #define kfin    $3c
3047: #define menuend kfin
3048: #define kcatalog    $3e
3049: #define kinputdone  $3f
3050: #define koff    kinputdone
3051: #define kquit   $40
3052: #define appstart    kquit
3053: #define klinkio $41
3054: #define kmatrixed   $42
3055: #define kstated $43
3056: #define kgraph  $44
3057: #define kmode   $45
3058: #define kprgmed $46 ;program edit
3059: #define kprgmcr $47 ;program create
3060: #define kwindow $48 ;range editor
3061: #define kyequ   $49 ;equation editor
3062: #define ktable  $4a ;table editor
3063: #define ktblset $4b ;table set
3064: #define kchkram $4c ;check ram (about screen)
3065: #define kdelmem $4d ;delete mem
3066: #define kresetmem   $4e ;reset mem
3067: #define kresetdef   $4f ;reset default
3068: #define kprgminput  $50 ;program input
3069: #define kzfacted    $51 ;zoom factor editor
3070: #define kerror  $52 ;error
3071: #define ksolvetvm   $53 ;tvm solver
3072: #define ksolveroot  $54 ;solve editor
3073: #define kstatp  $55 ;stat plot
3074: #define kinfstat    $56 ;inferential statistic
3075: #define kformat $57 ;format
3076: #define kextapps    $58 ;external applications.     new
3077: #define knewapps    $59 ;new apps for cerberus.
3078: #define append  knewapps
3079: #define echostart1  $5a
3080: #define ktrace  $5a
3081: #define kzfit   $5b
3082: #define kzin    $5c
3083: #define kzout   $5d
3084: #define kzprev  $5e
3085: #define kbox    $5f
3086: #define kdecml  $60
3087: #define ksetzm  $61
3088: #define ksquar  $62
3089: #define kstd    $63
3090: #define ktrig   $64
3091: #define kusrzm  $65
3092: #define kzsto   $66
3093: #define kzint   $67
3094: #define kzstat  $68
3095: #define echostart2  $69
3096: #define kselect $69
3097: #define kcircl  $6a
3098: #define kcldrw  $6b
3099: #define kline   $6c
3100: #define kpen    $6d
3101: #define kptchg  $6e
3102: #define kptoff  $6f
3103: #define kpton   $70
3104: #define kvert   $71
3105: #define khoriz  $72
3106: #define ktext   $73
3107: #define ktanln  $74
3108: #define keval   $75
3109: #define kinters $76
3110: #define kdydx   $77
3111: #define kfnintg $78
3112: #define krootg  $79
3113: #define kdydt   $7a
3114: #define kdxdt   $7b
3115: #define kdrdo   $7c
3116: #define kgfmin  $7d
3117: #define kgfmax  $7e
3118: #define echostart   $7f
3119: #define klistname   $7f
3120: #define kadd    $80
3121: #define ksub    $81
3122: #define kmul    $82
3123: #define kdiv    $83
3124: #define kexpon  $84
3125: #define klparen $85
3126: #define krparen $86
3127: #define klbrack $87
3128: #define krbrack $88
3129: #define kshade  $89
3130: #define kstore  $8a
3131: #define kcomma  $8b
3132: #define kchs    $8c
3133: #define kdecpnt $8d
3134: #define k0  $8e
3135: #define k1  $8f
3136: #define k2  $90
3137: #define k3  $91
3138: #define k4  $92
3139: #define k5  $93
3140: #define k6  $94
3141: #define k7  $95
3142: #define k8  $96
3143: #define k9  $97
3144: #define kee $98
3145: #define kspace  $99
3146: #define kcapa   $9a
3147: #define kcapb   $9b
3148: #define kcapc   $9c
3149: #define kcapd   $9d
3150: #define kcape   $9e
3151: #define kcapf   $9f
3152: #define kcapg   $a0
3153: #define kcaph   $a1
3154: #define kcapi   $a2
3155: #define kcapj   $a3
3156: #define kcapk   $a4
3157: #define kcapl   $a5
3158: #define kcapm   $a6
3159: #define kcapn   $a7
3160: #define kcapo   $a8
3161: #define kcapp   $a9
3162: #define kcapq   $aa
3163: #define kcapr   $ab
3164: #define kcaps   $ac
3165: #define kcapt   $ad
3166: #define kcapu   $ae
3167: #define kcapv   $af
3168: #define kcapw   $b0
3169: #define kcapx   $b1
3170: #define kcapy   $b2
3171: #define kcapz   $b3
3172: #define kvarx   $b4
3173: #define kpi $b5
3174: #define kinv    $b6
3175: #define ksin    $b7
3176: #define kasin   $b8
3177: #define kcos    $b9
3178: #define kacos   $ba
3179: #define ktan    $bb
3180: #define katan   $bc
3181: #define ksquare $bd
3182: #define ksqrt   $be
3183: #define kln $bf
3184: #define kexp    $c0
3185: #define klog    $c1
3186: #define kalog   $c2
3187: #define ktoabc  $c3
3188: #define kclrtbl $c4
3189: #define kans    $c5
3190: #define kcolon  $c6
3191: #define knderiv $c7
3192: #define kfnint  $c8
3193: #define kroot   $c9
3194: #define kquest  $ca
3195: #define kquote  $cb
3196: #define ktheta  $cc
3197: #define kif $cd
3198: #define kthen   $ce
3199: #define kelse   $cf
3200: #define kfor    $d0
3201: #define kwhile  $d1
3202: #define krepeat $d2
3203: #define kend    $d3
3204: #define kpause  $d4
3205: #define klbl    $d5
3206: #define kgoto   $d6
3207: #define kisg    $d7
3208: #define kdsl    $d8
3209: #define kmenu   $d9
3210: #define kexec   $da
3211: #define kreturn $db
3212: #define kstop   $dc
3213: #define kinput  $dd
3214: #define kprompt $de
3215: #define kdisp   $df
3216: #define kdispg  $e0
3217: #define kdispt  $e1
3218: #define koutput $e2
3219: #define kgetkey $e3
3220: #define kclrhome    $e4
3221: #define kprtscr $e5
3222: #define ksinh   $e6
3223: #define kcosh   $e7
3224: #define ktanh   $e8
3225: #define kasinh  $e9
3226: #define kacosh  $ea
3227: #define katanh  $eb
3228: #define klbrace $ec
3229: #define krbrace $ed
3230: #define ki  $ee
3231: #define kconstea    $ef
3232: #define kplot3  $f0
3233: #define kfmin   $f1
3234: #define kfmax   $f2
3235: #define kl1a    $f3
3236: #define kl2a    $f4
3237: #define kl3a    $f5
3238: #define kl4a    $f6
3239: #define kl5a    $f7
3240: #define kl6a    $f8
3241: #define kuna    $f9
3242: #define kvna    $fa
3243: #define kwna    $fb
3244: 
3245: ;this key means that it is a 2 byte keycode
3246: ;there are 2 of these keys; be careful with usage
3247: ;------------------------------------------------
3248: #define kextendecho2    $fc
3249: 
3250: ;this key means that the key press is one that echos
3251: ;into a buffer, and it is a 2 byte key code, go look at
3252: ;(extecho) for the key value
3253: ;------------------------------------------------------
3254: #define kextendecho $fe
3255: 
3256: #define ke1bt   $00
3257: #define kdrawinv    ke1bt
3258: #define kdrawf  ke1bt+1
3259: #define kpixelon    ke1bt+2
3260: #define kpixeloff   ke1bt+3
3261: #define kpxltest    ke1bt+4
3262: #define krcgdb  ke1bt+5
3263: #define krcpic  ke1bt+6
3264: #define kstgdb  ke1bt+7
3265: #define kstpic  ke1bt+8
3266: #define kabs    ke1bt+9
3267: #define ktequ   ke1bt+10 ;==
3268: #define ktnoteq ke1bt+11 ;<>
3269: #define ktgt    ke1bt+12 ;>
3270: #define ktgte   ke1bt+13 ;>=
3271: #define ktlt    ke1bt+14 ;<
3272: #define ktlte   ke1bt+15 ;<=
3273: #define kand    ke1bt+16
3274: #define kor ke1bt+17
3275: #define kxor    ke1bt+18
3276: #define knot    ke1bt+19
3277: #define klr1    ke1bt+20
3278: #define kxroot  ke1bt+21
3279: #define kcube   ke1bt+22
3280: #define kcbrt   ke1bt+23 ;cube root
3281: #define ktodec  ke1bt+24
3282: #define kcubicr ke1bt+25
3283: #define kquartr ke1bt+26
3284: #define kplot1  ke1bt+27
3285: #define kplot2  ke1bt+28
3286: #define kround  ke1bt+29
3287: #define kipart  ke1bt+30
3288: #define kfpart  ke1bt+31
3289: #define kint    ke1bt+32
3290: #define krand   ke1bt+33
3291: #define knpr    ke1bt+34
3292: #define kncr    ke1bt+35
3293: #define kxfactorial ke1bt+36
3294: #define krad    ke1bt+37
3295: #define kdegr   ke1bt+38 ;degrees conv
3296: #define kapost  ke1bt+39
3297: #define ktodms  ke1bt+40
3298: #define krtopo  ke1bt+41 ;r
3299: #define krtopr  ke1bt+42
3300: #define kptorx  ke1bt+43
3301: #define kptory  ke1bt+44
3302: #define krowswap    ke1bt+45
3303: #define krowplus    ke1bt+46
3304: #define ktimrow ke1bt+47
3305: #define ktrowp  ke1bt+48
3306: #define ksorta  ke1bt+49
3307: #define ksortd  ke1bt+50
3308: #define kseq    ke1bt+51
3309: #define kmin    ke1bt+52
3310: #define kmax    ke1bt+53
3311: #define kmean   ke1bt+54
3312: #define kmedian ke1bt+55
3313: #define ksum    ke1bt+56
3314: #define kprod   ke1bt+57
3315: #define kdet    ke1bt+58
3316: #define ktransp ke1bt+59
3317: #define kdim    ke1bt+60
3318: #define kfill   ke1bt+61
3319: #define kident  ke1bt+62
3320: #define krandm  ke1bt+63
3321: #define kaug    ke1bt+64
3322: #define konevar ke1bt+65
3323: #define ktwovar ke1bt+66
3324: #define klr ke1bt+67
3325: #define klrexp  ke1bt+68
3326: #define klrln   ke1bt+69
3327: #define klrpwr  ke1bt+70
3328: #define kmedmed ke1bt+71
3329: #define kquad   ke1bt+72
3330: #define kclrlst ke1bt+73
3331: #define khist   ke1bt+74
3332: #define kxyline ke1bt+75
3333: #define kscatter    ke1bt+76
3334: #define kmrad   ke1bt+77
3335: #define kmdeg   ke1bt+78
3336: #define kmnormf ke1bt+79
3337: #define kmsci   ke1bt+80
3338: #define kmeng   ke1bt+81
3339: #define kmfloat ke1bt+82
3340: #define kfix    ke1bt+83
3341: #define kspliton    ke1bt+84
3342: #define kfullscreen ke1bt+85
3343: #define kstndrd ke1bt+86
3344: #define kparam  ke1bt+87
3345: #define kpolar  ke1bt+88
3346: #define kseqg   ke1bt+89
3347: #define kafillon    ke1bt+90
3348: #define kafilloff   ke1bt+91
3349: #define kacalcon    ke1bt+92
3350: #define kacalcoff   ke1bt+93
3351: #define kfnon   ke1bt+94
3352: #define kfnoff  ke1bt+95
3353: #define kplotson    ke1bt+96
3354: #define kplotsoff   ke1bt+97
3355: #define kpixelchg   ke1bt+98
3356: #define ksendmbl    ke1bt+99
3357: #define krecvmbl    ke1bt+100
3358: #define kboxplot    ke1bt+101
3359: #define kboxicon    ke1bt+102
3360: #define kcrossicon  ke1bt+103
3361: #define kdoticon    ke1bt+104
3362: #define ke2bt   ke1bt+105
3363: #define kseqential  ke2bt
3364: #define ksimulg ke2bt+1
3365: #define kpolarg ke2bt+2
3366: #define krectg  ke2bt+3
3367: #define kcoordon    ke2bt+4
3368: #define kcoordoff   ke2bt+5
3369: #define kdrawline   ke2bt+6
3370: #define kdrawdot    ke2bt+7
3371: #define kaxison ke2bt+8
3372: #define kaxisoff    ke2bt+9
3373: #define kgridon ke2bt+10
3374: #define kgridoff    ke2bt+11
3375: #define klblon  ke2bt+12
3376: #define klbloff ke2bt+13
3377: #define kl1 ke2bt+14
3378: #define kl2 ke2bt+15
3379: #define kl3 ke2bt+16
3380: #define kl4 ke2bt+17
3381: #define kl5 ke2bt+18
3382: #define kl6 ke2bt+19
3383: 
3384: ;these keys are laid on top of existing keys to
3385: ;enable localization in the inferential stats editor.
3386: ;----------------------------------------------------
3387: #define kinfdata    kl1
3388: #define kinfstats   kl1+1
3389: #define kinfyes kl1+2
3390: #define kinfno  kl1+3
3391: #define kinfcalc    kl1+4
3392: #define kinfdraw    kl1+5
3393: #define kinfalt1ne  kl1+6
3394: #define kinfalt1lt  kl1+7
3395: #define kinfalt1gt  kl1+8
3396: #define kinfalt2ne  kl1+9
3397: #define kinfalt2lt  kl1+10
3398: #define kinfalt2gt  kl1+11
3399: #define kinfalt3ne  kl1+12
3400: #define kinfalt3lt  kl1+13
3401: #define kinfalt3gt  kl1+14
3402: #define kinfalt4ne  kl1+15
3403: #define kinfalt4lt  kl1+16
3404: #define kinfalt4gt  kl1+17
3405: #define kinfalt5ne  kl1+18
3406: #define kinfalt5lt  kl1+19
3407: #define kinfalt5gt  kl1+20
3408: #define kinfalt6ne  kl1+21
3409: #define kinfalt6lt  kl1+22
3410: #define kinfalt6gt  kl1+23
3411: #define kmata   ke2bt+20
3412: #define kmatb   ke2bt+21
3413: #define kmatc   ke2bt+22
3414: #define kmatd   ke2bt+23
3415: #define kmate   ke2bt+24
3416: #define kxmin   ke2bt+25
3417: #define kxmax   ke2bt+26
3418: #define kxscl   ke2bt+27
3419: #define kymin   ke2bt+28
3420: #define kymax   ke2bt+29
3421: #define kyscl   ke2bt+30
3422: #define ktmin   ke2bt+31
3423: #define ktmax   ke2bt+32
3424: #define ktstep  ke2bt+33
3425: #define komin   ke2bt+34
3426: #define komax   ke2bt+35
3427: #define kostep  ke2bt+36
3428: #define ku0 ke2bt+37
3429: #define kv0 ke2bt+38
3430: #define knmin   ke2bt+39
3431: #define knmax   ke2bt+40
3432: #define kdeltay ke2bt+41
3433: #define kdeltax ke2bt+42
3434: #define kzxmin  ke2bt+43
3435: #define kzxmax  ke2bt+44
3436: #define kzxscl  ke2bt+45
3437: #define kzymin  ke2bt+46
3438: #define kzymax  ke2bt+47
3439: #define kzyscl  ke2bt+48
3440: #define kztmin  ke2bt+49
3441: #define kztmax  ke2bt+50
3442: #define kztstep ke2bt+51
3443: #define kzomin  ke2bt+52
3444: #define kzomax  ke2bt+53
3445: #define kzostep ke2bt+54
3446: #define kzu0    ke2bt+55
3447: #define kzv0    ke2bt+56
3448: #define kznmin  ke2bt+57
3449: #define kznmax  ke2bt+58
3450: #define kdellast    ke2bt+59
3451: #define ksinreg ke2bt+60
3452: #define kconste ke2bt+61
3453: #define kpic1   ke2bt+62
3454: #define kpic2   ke2bt+63
3455: #define kpic3   ke2bt+64
3456: #define kdelvar ke2bt+65
3457: #define kgetcalc    ke2bt+66
3458: #define krealm  ke2bt+67
3459: #define kpolarm ke2bt+68
3460: #define krectm  ke2bt+69
3461: #define kuv ke2bt+70 ;u vs v
3462: #define kvw ke2bt+71 ;v vs w
3463: #define kuw ke2bt+72 ;u vs w
3464: #define kfinpmtend  ke2bt+73
3465: #define kfinpmtbeg  ke2bt+74
3466: #define kgraphstyle ke2bt+75
3467: #define kexpron ke2bt+76
3468: #define kexproff    ke2bt+77
3469: #define kstata  ke2bt+78
3470: #define kstatb  ke2bt+79
3471: #define kstatc  ke2bt+80
3472: #define kcorr   ke2bt+81
3473: #define kstatd  ke2bt+82
3474: #define kstate  ke2bt+83
3475: #define kregeq  ke2bt+84
3476: #define kminx   ke2bt+85
3477: #define kq1 ke2bt+86
3478: #define kmd ke2bt+87
3479: #define kq3 ke2bt+88
3480: #define kmaxx   ke2bt+89
3481: #define kstatx1 ke2bt+90
3482: #define kstaty1 ke2bt+91
3483: #define kstatx2 ke2bt+92
3484: #define kstaty2 ke2bt+93
3485: #define kstatx3 ke2bt+94
3486: #define kstaty3 ke2bt+95
3487: #define ktblmin ke2bt+96
3488: #define ktblstep    ke2bt+97
3489: #define ksetuplst   ke2bt+98
3490: #define kclralllst  ke2bt+99
3491: #define klogistic   ke2bt+100
3492: #define kztest  ke2bt+101
3493: #define kttest  ke2bt+102
3494: #define k2sampztest ke2bt+103
3495: #define k2sampttest ke2bt+104
3496: #define k1propztest ke2bt+105
3497: #define k2propztest ke2bt+106
3498: #define kchitest    ke2bt+107
3499: #define k2sampftest ke2bt+108
3500: #define kzintval    ke2bt+109
3501: #define ktintval    ke2bt+110
3502: #define k2samptint  ke2bt+111
3503: #define k2sampzint  ke2bt+112
3504: #define k1propzint  ke2bt+113
3505: #define k2propzint  ke2bt+114
3506: #define kdnormal    ke2bt+115
3507: #define kinvnorm    ke2bt+116
3508: #define kdt ke2bt+117
3509: #define kchi    ke2bt+118
3510: #define kdf ke2bt+119
3511: #define kbinpdf ke2bt+120
3512: #define kbincdf ke2bt+121
3513: #define kpoipdf ke2bt+122
3514: #define kpoicdf ke2bt+123
3515: #define kun ke2bt+124
3516: #define kvn ke2bt+125
3517: #define kwn ke2bt+126
3518: #define krecn   ke2bt+127
3519: #define kplotstart  ke2bt+128
3520: #define kzplotstart ke2bt+129 ;recursion n
3521: #define kxfact  ke2bt+130 ;plotstart
3522: #define kyfact  ke2bt+131 ;zplotstart
3523: #define kanova  ke2bt+132 ;xfact
3524: #define kmaxy   ke2bt+133 ;yfact
3525: #define kwebon  ke2bt+134 ;miny
3526: #define kweboff ke2bt+135 ;maxy
3527: #define ktblinput   ke2bt+136 ;web on
3528: #define kgeopdf ke2bt+137 ;web off
3529: #define kgeocdf ke2bt+138 ;web off
3530: #define kshadenorm  ke2bt+139
3531: #define kshadet ke2bt+140
3532: #define kshadechi   ke2bt+141
3533: #define kshadef ke2bt+142
3534: #define kplotstep   ke2bt+143
3535: #define kzplotstep  ke2bt+144
3536: #define klinregttest    ke2bt+145
3537: #define kmgt    ke2bt+146 ;vert split
3538: #define kselecta    ke2bt+147
3539: #define kzfita  ke2bt+148
3540: #define ke2bt_end   kzfita
3541: 
3542: ;more 2 byte keys
3543: ;------------------------------------
3544: #define ke2bt2  $00
3545: #define kgdb1   ke2bt2
3546: #define kgdb2   ke2bt2+1
3547: #define kgdb3   ke2bt2+2
3548: #define ky1 ke2bt2+3
3549: #define ky2 ke2bt2+4
3550: #define ky3 ke2bt2+5
3551: #define ky4 ke2bt2+6
3552: #define ky5 ke2bt2+7
3553: #define ky6 ke2bt2+8
3554: #define ky7 ke2bt2+9
3555: #define ky8 ke2bt2+10
3556: #define ky9 ke2bt2+11
3557: #define ky0 ke2bt2+12
3558: #define kx1t    ke2bt2+13
3559: #define ky1t    ke2bt2+14
3560: #define kx2t    ke2bt2+15
3561: #define ky2t    ke2bt2+16
3562: #define kx3t    ke2bt2+17
3563: #define ky3t    ke2bt2+18
3564: #define kx4t    ke2bt2+19
3565: #define ky4t    ke2bt2+20
3566: #define kx5t    ke2bt2+21
3567: #define ky5t    ke2bt2+22
3568: #define kx6t    ke2bt2+23
3569: #define ky6t    ke2bt2+24
3570: #define kr1 ke2bt2+25
3571: #define kr2 ke2bt2+26
3572: #define kr3 ke2bt2+27
3573: #define kr4 ke2bt2+28
3574: #define kr5 ke2bt2+29
3575: #define kr6 ke2bt2+30
3576: #define kgdb4   ke2bt2+31
3577: #define kgdb5   ke2bt2+32
3578: #define kgdb6   ke2bt2+33
3579: #define kpic4   ke2bt2+34
3580: #define kpic5   ke2bt2+35
3581: #define kpic6   ke2bt2+36
3582: #define kgdb7   ke2bt2+37
3583: #define kgdb8   ke2bt2+38
3584: #define kgdb9   ke2bt2+39
3585: #define kgdb0   ke2bt2+40
3586: #define kpic7   ke2bt2+41
3587: #define kpic8   ke2bt2+42
3588: #define kpic9   ke2bt2+43
3589: #define kpic0   ke2bt2+44
3590: #define kstatn  ke2bt2+45
3591: #define kxmean  ke2bt2+46
3592: #define kconj   ke2bt2+47
3593: #define kreal   ke2bt2+48
3594: #define kfangle ke2bt2+49
3595: #define klcm    ke2bt2+50
3596: #define kgcd    ke2bt2+51
3597: #define krandint    ke2bt2+52
3598: #define krandnorm   ke2bt2+53
3599: #define ktopolar    ke2bt2+54
3600: #define ktorect ke2bt2+55
3601: #define kymean  ke2bt2+56
3602: #define kstdx   ke2bt2+57
3603: #define kstdx1  ke2bt2+58
3604: #define kw0 ke2bt2+59
3605: #define kmatf   ke2bt2+60
3606: #define kmatg   ke2bt2+61
3607: #define kmatrh  ke2bt2+62
3608: #define kmati   ke2bt2+63
3609: #define kmatj   ke2bt2+64
3610: #define kymean1 ke2bt2+65
3611: #define kstdy   ke2bt2+66
3612: #define kstdy1  ke2bt2+67
3613: #define kmattolst   ke2bt2+68
3614: #define klsttomat   ke2bt2+69
3615: #define kcumsum ke2bt2+70
3616: #define kdeltalst   ke2bt2+71
3617: #define kstddev ke2bt2+72
3618: #define kvariance   ke2bt2+73
3619: #define klength ke2bt2+74
3620: #define kequtostrng ke2bt2+75
3621: #define kstrngtoequ ke2bt2+76
3622: #define kexpr   ke2bt2+77
3623: #define ksubstrng   ke2bt2+78
3624: #define kinstrng    ke2bt2+79
3625: #define kstr1   ke2bt2+80
3626: #define kstr2   ke2bt2+81
3627: #define kstr3   ke2bt2+82
3628: #define kstr4           ke2bt2+83
3629: #define kstr5           ke2bt2+84
3630: #define kstr6           ke2bt2+85
3631: #define kstr7           ke2bt2+86
3632: #define kstr8           ke2bt2+87
3633: #define kstr9           ke2bt2+88
3634: #define kstr0           ke2bt2+89
3635: #define kfinn           ke2bt2+90
3636: #define kfini           ke2bt2+91
3637: #define kfinpv          ke2bt2+92
3638: #define kfinpmt         ke2bt2+93
3639: #define kfinfv          ke2bt2+94
3640: #define kfinpy          ke2bt2+95
3641: #define kfincy          ke2bt2+96
3642: #define kfinfpmt        ke2bt2+97
3643: #define kfinfi          ke2bt2+98
3644: #define kfinfpv         ke2bt2+99
3645: #define kfinfn          ke2bt2+100
3646: #define kfinffv         ke2bt2+101
3647: #define kfinnpv         ke2bt2+102
3648: #define kfinirr         ke2bt2+103
3649: #define kfinbal         ke2bt2+104
3650: #define kfinprn         ke2bt2+105
3651: #define kfinint         ke2bt2+106
3652: #define ksumx           ke2bt2+107
3653: #define ksumx2          ke2bt2+108
3654: #define kfintonom       ke2bt2+109
3655: #define kfintoeff       ke2bt2+110
3656: #define kfindbd         ke2bt2+111
3657: #define kstatvp         ke2bt2+112
3658: #define kstatz          ke2bt2+113
3659: #define kstatt          ke2bt2+114
3660: #define kstatchi        ke2bt2+115
3661: #define kstatf          ke2bt2+116
3662: #define kstatdf         ke2bt2+117
3663: #define kstatphat       ke2bt2+118
3664: #define kstatphat1      ke2bt2+119
3665: #define kstatphat2      ke2bt2+120
3666: #define kstatmeanx1     ke2bt2+121
3667: #define kstatmeanx2     ke2bt2+122
3668: #define kstatstdx1      ke2bt2+123
3669: #define kstatstdx2      ke2bt2+124
3670: #define kstatstdxp  ke2bt2+125
3671: #define kstatn1 ke2bt2+126
3672: #define kstatn2 ke2bt2+127
3673: #define kstatlower  ke2bt2+128
3674: #define kstatupper  ke2bt2+129
3675: #define kuw0    ke2bt2+130
3676: #define kimag   ke2bt2+131
3677: #define ksumy   ke2bt2+132
3678: #define kxres   ke2bt2+133
3679: #define kstat_s ke2bt2+134
3680: #define ksumy2  ke2bt2+135
3681: #define ksumxy  ke2bt2+136
3682: #define kuxres  ke2bt2+137
3683: #define kmodbox ke2bt2+138
3684: #define knormprob   ke2bt2+139
3685: #define knormalpdf  ke2bt2+140
3686: #define ktpdf   ke2bt2+141
3687: #define kchipdf ke2bt2+142
3688: #define kfpdf   ke2bt2+143
3689: #define kminy   ke2bt2+144 ;miny
3690: #define krandbin    ke2bt2+145
3691: #define kref    ke2bt2+146
3692: #define krref   ke2bt2+147
3693: #define klrsqr  ke2bt2+148
3694: #define kbrsqr  ke2bt2+149
3695: #define kdiagon ke2bt2+150
3696: #define kdiagoff    ke2bt2+151
3697: #define kun1    ke2bt2+152 ;for rcl use when gotten from 82
3698: #define kvn1    ke2bt2+153 ;for rcl use when gotten from 82
3699: #define k83_00end   kvn1 ;end of original keys...
3700: #define karchive    k83_00end+1
3701: #define kunarchive  k83_00end+2
3702: #define kasm    k83_00end+3 ;asm(
3703: #define kasmprgm    k83_00end+4 ;asmprgm
3704: #define kasmcomp    k83_00end+5 ;asmcomp(
3705: #define kcapaacute  k83_00end+6
3706: #define kcapagrave  k83_00end+7
3707: #define kcapacaret  k83_00end+8
3708: #define kcapadier   k83_00end+9
3709: #define kaacute k83_00end+10
3710: #define kagrave k83_00end+11
3711: #define kacaret k83_00end+12
3712: #define kadier  k83_00end+13
3713: #define kcapeacute  k83_00end+14
3714: #define kcapegrave  k83_00end+15
3715: #define kcapecaret  k83_00end+16
3716: #define kcapedier   k83_00end+17
3717: #define keacute k83_00end+18
3718: #define kegrave k83_00end+19
3719: #define kecaret k83_00end+20
3720: #define kedier  k83_00end+21
3721: #define kcapiacute  k83_00end+22
3722: #define kcapigrave  k83_00end+23
3723: #define kcapicaret  k83_00end+24
3724: #define kcapidier   k83_00end+25
3725: #define kiacute k83_00end+26
3726: #define kigrave k83_00end+27
3727: #define kicaret k83_00end+28
3728: #define kidier  k83_00end+29
3729: #define kcapoacute  k83_00end+30
3730: #define kcapograve  k83_00end+31
3731: #define kcapocaret  k83_00end+32
3732: #define kcapodier   k83_00end+33
3733: #define koacute k83_00end+34
3734: #define kograve k83_00end+35
3735: #define kocaret k83_00end+36
3736: #define kodier  k83_00end+37
3737: #define kcapuacute  k83_00end+38
3738: #define kcapugrave  k83_00end+39
3739: #define kcapucaret  k83_00end+40
3740: #define kcapudier   k83_00end+41
3741: #define kuacute k83_00end+42
3742: #define kugrave k83_00end+43
3743: #define kucaret k83_00end+44
3744: #define kudier  k83_00end+45
3745: #define kcapcced    k83_00end+46
3746: #define kcced   k83_00end+47
3747: #define kcapntilde  k83_00end+48
3748: #define kntilde k83_00end+49
3749: #define kaccent k83_00end+50
3750: #define kgrave  k83_00end+51
3751: #define kdieresis   k83_00end+52
3752: #define kquesdown   k83_00end+53
3753: #define kexclamdown     k83_00end+54
3754: #define kalpha          k83_00end+55
3755: #define kbeta           k83_00end+56
3756: #define kgamma          k83_00end+57
3757: #define kcapdelta   k83_00end+58
3758: #define kdelta  k83_00end+59
3759: #define kepsilon    k83_00end+60
3760: #define klambda k83_00end+61
3761: #define kmu k83_00end+62
3762: #define kpi2    k83_00end+63
3763: #define krho    k83_00end+64
3764: #define kcapsigma   k83_00end+65
3765: #define ksigma  k83_00end+66
3766: #define ktau    k83_00end+67
3767: #define kphi    k83_00end+68
3768: #define kcapomega   k83_00end+69
3769: #define kphat   k83_00end+70
3770: #define kchi2   k83_00end+71
3771: #define kstatf2 k83_00end+72
3772: #define kla k83_00end+73
3773: #define klb k83_00end+74
3774: #define klc k83_00end+75
3775: #define kld k83_00end+76
3776: #define kle k83_00end+77
3777: #define klf k83_00end+78
3778: #define klg k83_00end+79
3779: #define klh k83_00end+80
3780: #define kli k83_00end+81
3781: #define klj k83_00end+82
3782: #define klk k83_00end+83
3783: #define kll k83_00end+84
3784: #define klm k83_00end+85
3785: #define klsmalln    k83_00end+86
3786: #define klo k83_00end+87
3787: #define klp k83_00end+88
3788: #define klq k83_00end+89
3789: #define klsmallr    k83_00end+90
3790: #define kls k83_00end+91
3791: #define klt k83_00end+92
3792: #define klu k83_00end+93
3793: #define klv k83_00end+94
3794: #define klw k83_00end+95
3795: #define klx k83_00end+96
3796: #define kly k83_00end+97
3797: #define klz k83_00end+98
3798: #define kgarbagec   k83_00end+99 ;garbagecollect
3799: #define ke2bt2_end  kgarbagec
3800: 
3801: ;ti-83 plus context equates
3802: ;---------------------------------------------
3803: #define cxcmd   kquit ;home screen
3804: #define cxmatedit   kmatrixed ;matrix editor
3805: #define cxprgmedit  kprgmed ;program editor
3806: #define cxequedit   kyequ ;equation editor
3807: #define cxgrrange   kwindow ;graph range editor
3808: #define cxgrzfact   kzfacted ;graph zoom factors editor
3809: #define cxgraph kgrap ;graph mode
3810: #define cxstatedit  kstated ;statistics list editor
3811: #define cxprgminput kprgminput ;programmed input
3812: #define cxerror kerror ;error handler
3813: #define cxlinkio    klinkio ;link i/o interface
3814: #define cxmem   kresetmem ;reset memory
3815: #define cxdefmem    kresetdef ;reset default
3816: #define cxramapp    kchkram ;ram usage screen
3817: #define cxmode  kmode ;mode settings screen
3818: #define cxerase kdelmem ;memory erase
3819: #define cxprgmcreate    kprgmcr ;program create
3820: #define cxtableeditor   ktable ;table editor
3821: #define cxtableset  ktblset ;table set up
3822: #define cxstatplot  kstatp ;stat plots
3823: #define cxinfstat   kinfstat ;inferential statistic
3824: #define cxformat    kformat ;format context
3825: #define cxsolvetvm  ksolvetvm ;solve tvm
3826: #define cxsolveroot ksolveroot ;solve root
3827: #define lastoldapp  kextapps ;external applications
3828: #define cxextapps   kextapps
3829: #define cxnewapps   knewapps ;new cerberus applications
3830: #define cxgroup cxnewapps+0 ;$1st new app.
3831: #define cxungroup   cxnewapps+1 ;$2nd new app.
3832: #define lastnewapp  cxungroup ;last new app for this ver
3833: 
3834: ;scan code equates
3835: ;-------------------------------
3836: #define skdown  $01
3837: #define skleft  $02
3838: #define skright $03
3839: #define skup    $04
3840: #define skenter $09
3841: #define skadd   $0a
3842: #define sksub   $0b
3843: #define skmul   $0c
3844: #define skdiv   $0d
3845: #define skpower $0e
3846: #define skclear $0f
3847: #define skchs   $11
3848: #define sk3 $12
3849: #define sk6 $13
3850: #define sk9 $14
3851: #define skrparen    $15
3852: #define sktan   $16
3853: #define skvars  $17
3854: #define skdecpnt    $19
3855: #define sk2 $1a
3856: #define sk5 $1b
3857: #define sk8 $1c
3858: #define sklparen    $1d
3859: #define skcos   $1e
3860: #define skprgm  $1f
3861: #define skstat  $20
3862: #define sk0 $21
3863: #define sk1 $22
3864: #define sk4 $23
3865: #define sk7 $24
3866: #define skcomma $25
3867: #define sksin   $26
3868: #define skmatrix    $27
3869: #define skgraphvar  $28
3870: #define skstore $2a
3871: #define skln    $2b
3872: #define sklog   $2c
3873: #define sksquare    $2d
3874: #define skrecip $2e
3875: #define skmath  $2f
3876: #define skalpha $30
3877: #define skgraph $31
3878: #define sktrace $32
3879: #define skzoom  $33
3880: #define skwindow    $34
3881: #define skyequ  $35
3882: #define sk2nd   $36
3883: #define skmode  $37
3884: #define skdel   $38
3885: 
3886: ;tokens
3887: ;----------------------------------------------------
3888: #define eosstart    $00
3889: 
3890: ;display conversions come immediately before 'tstore'
3891: ;
3892: #define dconv   $01
3893: ;
3894: #define ttodms  dconv ;$01
3895: #define ttodec  dconv+1 ;$02
3896: #define ttoabc  dconv+2 ;$03 > a b/c
3897: ;
3898: #define tstore  dconv+3 ;$04 lstore 01
3899: ;
3900: #define tboxplot    $05
3901: ;
3902: #define bracks  $06
3903: ;
3904: #define tlbrack bracks ;$06 '['
3905: #define trbrack bracks+1 ;$07 ']'
3906: #define tlbrace bracks+2 ;$08 '{'
3907: #define trbrace bracks+3 ;$09 '}'
3908: ;
3909: #define tpost1  bracks+4
3910: ;
3911: #define tfromrad    tpost1 ;$0a lradian
3912: #define tfromdeg    tpost1+1 ;$0b ldegree
3913: #define trecip  tpost1+2 ;$0c linverse
3914: #define tsqr    tpost1+3 ;$0d lsquare
3915: #define ttrnspos    tpost1+4 ;$0e ltranspose
3916: #define tcube   tpost1+5 ;$0f '^3'
3917: ;
3918: #define tlparen $10 ;$10 '('
3919: #define trparen $11 ;$11 ')'
3920: ;
3921: #define imun    $12
3922: ;
3923: #define tround  imun ;$12 'round'
3924: #define tpxtst  imun+1 ;$13 'pxl-test'
3925: #define taug    imun+2 ;$14 'aug'
3926: #define trowswap    imun+3 ;$15 'rswap'
3927: #define trowplus    imun+4 ;$16 'radd'
3928: #define tmrow   imun+5 ;$17 'multr'
3929: #define tmrowplus   imun+6 ;$18 'mradd'
3930: #define tmax    imun+7 ;$19 'max'
3931: #define tmin    imun+8 ;$1a 'min'
3932: #define trtopr  imun+9 ;$1b 'r>pr
3933: #define trtopo  imun+10 ;$1c 'r>po
3934: #define tptorx  imun+11 ;$1d 'p>rx
3935: #define tptory  imun+12 ;$1e 'p>ry
3936: #define tmedian imun+13 ;$1f 'median
3937: #define trandm  imun+14 ;$20 'randm'
3938: #define tmean   imun+15 ;$21
3939: #define troot   imun+16 ;$22 'root'
3940: #define tseries imun+17 ;$23 'seq'
3941: #define tfnint  imun+18 ;$24 'fnint'
3942: #define tnderiv imun+19 ;$25 'fnir'
3943: #define tevalf  imun+20 ;$26
3944: #define tfmin   imun+21 ;$27
3945: #define tfmax   imun+22 ;$28
3946: ;
3947: #define teosel  imun+23
3948: ;
3949: #define tspace  teosel ;$29 ' '
3950: #define tstring teosel+1 ;$2a '"'
3951: #define tcomma  teosel+2 ;$2b ','
3952: ;
3953: #define tii $2c ;i
3954: 
3955: ;postfix functions
3956: ;-----------------------------------------
3957: #define tpost   $2d
3958: ;
3959: #define tfact   tpost ;$2d '!'
3960: ;
3961: #define tcubicr $2e
3962: #define tquartr $2f
3963: 
3964: ;number tokens
3965: ;---------------------------------------
3966: #define nums    $30
3967: ;
3968: #define t0  nums ;$30
3969: #define t1  nums+1 ;$31
3970: #define t2  nums+2 ;$32
3971: #define t3  nums+3 ;$33
3972: #define t4  nums+4 ;$34
3973: #define t5  nums+5 ;$35
3974: #define t6  nums+6 ;$36
3975: #define t7  nums+7 ;$37
3976: #define t8  nums+8 ;$38
3977: #define t9  nums+9 ;$39
3978: #define tdecpt  nums+10 ;$3a
3979: #define tee nums+11 ;$3b
3980: 
3981: ;binary op
3982: ;-------------------------------------------
3983: #define tor $3c ;$3c '_or_'
3984: #define txor    $3d ;$3d
3985: ;
3986: #define tcolon  $3e ;$3e ':'
3987: #define tenter  $3f ;$3f lenter
3988: ;
3989: #define tand    $40 ;$40 '_and_'
3990: 
3991: ;letter tokens
3992: ;--------------------------------------
3993: #define let $41
3994: #define ta  let ;$41
3995: #define tb  let+1 ;$42
3996: #define tc  let+2 ;$43
3997: #define td  let+3 ;$44
3998: #define te  let+4 ;$45
3999: #define tf  let+5 ;$46
4000: #define tg  let+6 ;$47
4001: #define th  let+7 ;$48
4002: #define ti  let+8 ;$49
4003: #define tj  let+9 ;$4a
4004: #define tk  let+10 ;$4b
4005: #define tl  let+11 ;$4c
4006: #define tm  let+12 ;$4d
4007: #define tn  let+13 ;$4e
4008: #define to  let+14 ;$4f
4009: #define tp  let+15 ;$50
4010: #define tq  let+16 ;$51
4011: #define tr  let+17 ;$52
4012: #define ts  let+18 ;$53
4013: #define tt  let+19 ;$54
4014: #define tu  let+20 ;$55
4015: #define tv  let+21 ;$56
4016: #define tw  let+22 ;$57
4017: #define tx  let+23 ;$58
4018: #define ty  let+24 ;$59
4019: #define tz  let+25 ;$5a
4020: #define ttheta  let+26 ;$5b
4021: 
4022: ;these var tokens are 1st of a double token
4023: ;------------------------------------------
4024: 
4025: #define vtoks   let+27
4026: 
4027: ;user matrix token, 2nd token needed for name
4028: ;
4029: #define tvarmat vtoks ;$5c
4030: ;
4031: ;user list token, 2nd token needed for name
4032: ;
4033: #define tvarlst vtoks+1 ;$5d
4034: ;
4035: ;user equation token, 2nd token needed for name
4036: ;
4037: #define tvarequ vtoks+2 ;$5e
4038: #define tprog   vtoks+3 ;$5f
4039: ;
4040: ;user pict token, 2nd token needed for name
4041: ;
4042: #define tvarpict    vtoks+4 ;$60
4043: ;
4044: ;user gdb token, 2nd token needed for name
4045: ;
4046: #define tvargdb vtoks+5 ;$61
4047: #define tvarout vtoks+6 ;$62
4048: #define tvarsys vtoks+7 ;$63
4049: 
4050: ;mode setting commands
4051: ;-------------------------------------------------
4052: #define modesa  vtoks+8 ;$64
4053: #define trad    modesa ;$64 'radian'
4054: #define tdeg    modesa+1 ;$65 'degree'
4055: #define tnormf  modesa+2 ;$66 'normal'
4056: #define tsci    modesa+3 ;$67 'sci'
4057: #define teng    modesa+4 ;$68 'eng'
4058: #define tfloat  modesa+5 ;$69 'float'
4059: #define cmps    $6a
4060: #define teq cmps ;$6a '=='
4061: #define tlt cmps+1 ;$6b '<'
4062: #define tgt cmps+2 ;$6c '>'
4063: #define tle cmps+3 ;$6d lle
4064: #define tge cmps+4 ;$6e lge
4065: #define tne cmps+5 ;$6f lne
4066: 
4067: ;binary op
4068: ;---------------------------------------
4069: #define tadd    $70 ;$70 '+'
4070: #define tsub    $71 ;$71 '-'
4071: #define tans    $72 ;$72
4072: 
4073: ;mode setting commands
4074: ;-------------------------------------------------------
4075: #define modes   $73
4076: #define tfix    modes ;$73 'fix_'
4077: #define tspliton    modes+1 ;$74
4078: #define tfullscreen modes+2 ;$75
4079: #define tstndrd modes+3 ;$76 'func'
4080: #define tparam  modes+4 ;$77 'param'
4081: #define tpolar  modes+5 ;$78 'pol'
4082: #define tseqg   modes+6 ;$79
4083: #define tafillon    modes+7 ;$7a 'auto fill on'
4084: #define tafilloff   modes+8 ;$7b
4085: #define tacalcon    modes+9 ;$7c
4086: #define tacalcoff   modes+10 ;$7d 'autofill off'
4087: 
4088: ;graph format tokens are 2 byte tokens
4089: ;----------------------------------------
4090: #define tgformat    modes+11 ;$7e
4091: #define tboxicon    $7f
4092: #define tcrossicon  $80
4093: #define tdoticon    $81
4094: 
4095: ;(more) binary op
4096: ;---------------------------------------
4097: #define tmul    $82 ;$82 '*'
4098: #define tdiv    $83 ;$83 '/'
4099: 
4100: ;some graph commands
4101: ;------------------------------------------------------
4102: #define grcmds  $84
4103: #define ttrace  grcmds ;$84 'trace'
4104: #define tcldrw  grcmds+1 ;$85 'cldrw'
4105: #define tzoomstd    grcmds+2 ;$86 'zstd'
4106: #define tzoomtrg    grcmds+3 ;$87 'ztrg'
4107: #define tzoombox    grcmds+4 ;$88 'zbox'
4108: #define tzoomin grcmds+5 ;$89 'zin'
4109: #define tzoomout    grcmds+6 ;$8a 'zout'
4110: #define tzoomsqr    grcmds+7 ;$8b 'zsqr'
4111: #define tzoomint    grcmds+8 ;$8c 'zint'
4112: #define tzoomprev   grcmds+9 ;$8d 'zprev'
4113: #define tzoomdec    grcmds+10 ;$8e 'zdecm'
4114: #define tzoomstat   grcmds+11 ;$8f 'zstat
4115: #define tusrzm  grcmds+12 ;$90 'zrcl'
4116: #define tprtscrn    grcmds+13 ;$91 'prtscrn'
4117: #define tzoomsto    grcmds+14 ;$92  zoom store
4118: #define ttext   grcmds+15 ;$93
4119: 
4120: ;binary op (combination & permutation)
4121: ;-------------------------------------------------
4122: #define tnpr    grcmds+16 ;$94 '_npr_'
4123: #define tncr    grcmds+17 ;$95 '_ncr_'
4124: 
4125: ;more graph commands
4126: ;--------------------------------------------------
4127: #define tyon    grcmds+18 ;$96 'fnon_'
4128: #define tyoff   grcmds+19 ;$97 'fnoff_'
4129: #define tstpic  grcmds+20 ;$98 'stpic_'
4130: #define trcpic  grcmds+21 ;$99 'rcpic_'
4131: #define tstodb  grcmds+22 ;$9a 'stgdb_'
4132: #define trcldb  grcmds+23 ;$9b 'rcgdb_'
4133: #define tline   grcmds+24 ;$9c 'line'
4134: #define tvert   grcmds+25 ;$9d 'vert_'
4135: #define tpton   grcmds+26 ;$9e 'pton'
4136: #define tptoff  grcmds+27 ;$9f 'ptoff'
4137: 
4138: ;token a0 cannot be an eos function since low mult=a0 already
4139: ;------------------------------------------------------------
4140: #define tptchg  grcmds+28 ;$a0 'ptchg'
4141: #define tpxon   grcmds+29 ;$a1
4142: #define tpxoff  grcmds+30 ;$a2
4143: #define tpxchg  grcmds+31 ;$a3
4144: #define tshade  grcmds+32 ;$a4 'shade'
4145: #define tcircl  grcmds+33 ;$a5 'circl'
4146: #define thorz   grcmds+34 ;$a6 'horizontal'
4147: #define ttanln  grcmds+35 ;$a7 'tanln'
4148: #define tdrinv  grcmds+36 ;$a8 'drinv_'
4149: #define tdrawf  grcmds+37 ;$a9 'drawf_'
4150: #define tvarstrng   $aa
4151: 
4152: ;functions with no arguments
4153: ;--------------------------------------------------
4154: #define noarg   $0ab
4155: #define trand   noarg ;$ab 'rand'
4156: #define tpi noarg+1 ;$ac  lpi
4157: #define tgetkey noarg+2 ;$ad 'getky'
4158: #define tapost  tgetkey+1 ;apostrophy
4159: #define tquest  tapost+1 ;question mark
4160: #define unary   tquest+1 ;$b0
4161: #define tchs    unary ;$b0
4162: #define tint    unary+1 ;$b1
4163: #define tabs    unary+2 ;$b2
4164: #define tdet    unary+3 ;$b3
4165: #define tident  unary+4 ;$b4
4166: #define tdim    unary+5 ;$b5
4167: #define tsum    unary+6 ;$b6
4168: #define tprod   unary+7 ;$b7
4169: #define tnot    unary+8 ;$b8
4170: #define tipart  unary+9 ;$b9
4171: #define tfpart  unary+10 ;$ba
4172: 
4173: ;new 2 byte tokens
4174: ;------------------------------------------
4175: #define t2bytetok   $bb
4176: #define unarylr unary+12
4177: #define tsqrt   unarylr ;$bc
4178: #define tcubrt  unarylr+1 ;$bd
4179: #define tln unarylr+2 ;$be
4180: #define texp    unarylr+3 ;$bf
4181: #define tlog    unarylr+4 ;$c0
4182: #define talog   unarylr+5 ;$c1
4183: #define tsin    unarylr+6 ;$c2
4184: #define tasin   unarylr+7 ;$c3
4185: #define tcos    unarylr+8 ;$c4
4186: #define tacos   unarylr+9 ;$c5
4187: #define ttan    unarylr+10 ;$c6
4188: #define tatan   unarylr+11 ;$c7
4189: #define tsinh   unarylr+12 ;$c8
4190: #define tasinh  unarylr+13 ;$c9
4191: #define tcoshh  unarylr+14 ;$ca
4192: #define tacosh  unarylr+15 ;$cb
4193: #define ttanh   unarylr+16 ;$cc
4194: #define tatanh  unarylr+17 ;$cd
4195: 
4196: ;some programming commands
4197: ;------------------------------------------------------
4198: #define progtok unarylr+18
4199: #define tif progtok ;$ce
4200: #define tthen   progtok+1 ;$cf
4201: #define telse   progtok+2 ;$d0
4202: #define twhile  progtok+3 ;$d1
4203: #define trepeat progtok+4 ;$d2
4204: #define tfor    progtok+5 ;$d3
4205: #define tend    progtok+6 ;$d4
4206: #define treturn progtok+7 ;$d5
4207: #define tlbl    progtok+8 ;$d6 'lbl_'
4208: #define tgoto   progtok+9 ;$d7 'goto_'
4209: #define tpause  progtok+10 ;$d8 'pause_'
4210: #define tstop   progtok+11 ;$d9 'stop'
4211: #define tisg    progtok+12 ;$da 'is>'
4212: #define tdsl    progtok+13 ;$db 'ds<'
4213: #define tinput  progtok+14 ;$dc 'input_'
4214: #define tprompt progtok+15 ;$dd 'prompt_'
4215: #define tdisp   progtok+16 ;$de 'disp_'
4216: #define tdispg  progtok+17 ;$df 'dispg'
4217: #define toutput progtok+18 ;$e0 'outpt'
4218: #define tcllcd  progtok+19 ;$e1 'cllcd'
4219: #define tconst  progtok+20 ;$e2 'fill'
4220: #define tsorta  progtok+21 ;$e3 'sorta_'
4221: #define tsortd  progtok+22 ;$e4 'sortd_'
4222: #define tdisptab    progtok+23 ;$e5 'disp table
4223: #define tmenu   progtok+24 ;$e6 'menu'
4224: #define tsendmbl    progtok+25 ;$e7 'send'
4225: #define tgetmbl progtok+26 ;$e8 'get'
4226: 
4227: ;stat plot commands
4228: ;------------------------------------------------------
4229: #define statpcmd    progtok+27
4230: #define tploton statpcmd ;$e9 ' plotson'
4231: #define tplotoff    statpcmd+1 ;$ea ' plotsoff
4232: #define tlistname   $eb ;list designator
4233: #define tplot1  $ec
4234: #define tplot2  $ed
4235: #define tplot3  $ee
4236: #define tunused01   $ef ;available?
4237: #define tpower  $f0 ;'^'
4238: #define txroot  $f1 ;lsupx,lroot
4239: #define statcmd $f2
4240: #define tonevar statcmd ;f2 'onevar_'
4241: #define ttwovar statcmd+1 ;f3
4242: #define tlr statcmd+2 ;f4 'linr(a+bx
4243: #define tlrexp  statcmd+3 ;f5 'expr_'
4244: #define tlrln   statcmd+4 ;f6 'lnr_'
4245: #define tlrpwr  statcmd+5 ;f7 'pwrr_'
4246: #define tmedmed statcmd+6 ;f8
4247: #define tquad   statcmd+7 ;f9
4248: #define tclrlst statcmd+8 ;$fa 'clear list
4249: #define tclrtbl statcmd+9 ;$fb clear table
4250: #define thist   statcmd+10 ;$fc 'hist_'
4251: #define txyline statcmd+11 ;$fd 'xyline_'
4252: #define tscatter    statcmd+12 ;$fe 'scatter_'
4253: #define tlr1    statcmd+13 ;$ff 'linr(ax+b
4254: 
4255: ;$2nd half of graph format tokens
4256: ;----------------------------------------------
4257: ;           format settings commands
4258: ;
4259: #define gfmt    $00
4260: #define tseq    gfmt ; 'seqg'
4261: #define tsimulg gfmt+1 ; 'simulg'
4262: #define tpolarg gfmt+2 ; 'polargc'
4263: #define trectg  gfmt+3 ; 'rectgc'
4264: #define tcoordon    gfmt+4 ; 'coordon'
4265: #define tcoordoff   gfmt+5 ; 'coordoff'
4266: #define tdrawline   gfmt+6 ; 'drawline'
4267: #define tdrawdot    gfmt+7 ; 'drawdot'
4268: #define taxison gfmt+8 ; 'axeson'
4269: #define taxisoff    gfmt+9 ; 'axesoff'
4270: #define tgridon gfmt+10 ; 'gridon'
4271: #define tgridoff    gfmt+11 ; 'gridoff'
4272: #define tlblon  gfmt+12 ; 'labelon'
4273: #define tlbloff gfmt+13 ; 'labeloff'
4274: #define twebon  gfmt+14 ; 'webon'
4275: #define tweboff gfmt+15 ; 'weboff'
4276: #define tuv gfmt+16 ; u vs v
4277: #define tvw gfmt+17 ; v vs w
4278: #define tuw gfmt+18 ; u vs w
4279: 
4280: ;$2nd half of user matrix tokens
4281: ;-------------------------------------
4282: #define tmata   $00 ;mat a
4283: #define tmatb   $01 ;mat b
4284: #define tmatc   $02 ;mat c
4285: #define tmatd   $03 ;mat d
4286: #define tmate   $04 ;mat e
4287: #define tmatf   $05 ;mat f
4288: #define tmatg   $06 ;mat g
4289: #define tmath   $07 ;mat
4290: #define tmati   $08 ;mat i
4291: #define tmatj   $09 ;mat j
4292: 
4293: ;$2nd half of user list tokens
4294: ;--------------------------------------
4295: #define tl1 $00 ;list 1
4296: #define tl2 $01 ;list 2
4297: #define tl3 $02 ;list 3
4298: #define tl4 $03 ;list 4
4299: #define tl5 $04 ;list 5
4300: #define tl6 $05 ;list 6
4301: 
4302: ;$2nd half of user equation tokens
4303: ;----------------------------------
4304: ;  "y" equations have bit 4 set
4305: ;
4306: #define ty1 $10 ;y1
4307: #define ty2 $11 ;y2
4308: #define ty3 $12 ;y3
4309: #define ty4 $13 ;y4
4310: #define ty5 $14 ;y5
4311: #define ty6 $15 ;y6
4312: #define ty7 $16 ;y7
4313: #define ty8 $17 ;y8
4314: #define ty9 $18 ;y9
4315: #define ty0 $19 ;y0
4316: 
4317: ;param equations have bit 5 set
4318: ;-----------------------------------
4319: #define tx1t    $20 ;x1t
4320: #define ty1t    $21 ;y1t
4321: #define tx2t    $22 ;x2t
4322: #define ty2t    $23 ;y2t
4323: #define tx3t    $24 ;x3t
4324: #define ty3t    $25 ;y3t
4325: #define tx4t    $26 ;x4t
4326: #define ty4t    $27 ;y4t
4327: #define tx5t    $28 ;x5t
4328: #define ty5t    $29 ;y5t
4329: #define tx6t    $2a ;x6t
4330: #define ty6t    $2b ;y6t
4331: 
4332: ;polar equations have bit 6 set
4333: ;----------------------------------
4334: #define tr1 $40 ;r1
4335: #define tr2 $41 ;r2
4336: #define tr3 $42 ;r3
4337: #define tr4 $43 ;r4
4338: #define tr5 $44 ;r5
4339: #define tr6 $45 ;r6
4340: 
4341: ;recursion equations have bit 7 set
4342: ;----------------------------------
4343: #define tun $80 ;un
4344: #define tvn $81 ;vn
4345: #define twn $82 ;wn
4346: 
4347: ;$2nd half of user picture tokens
4348: ;------------------------------------
4349: #define tpic1   $00 ;pic1
4350: #define tpic2   $01 ;pic2
4351: #define tpic3   $02 ;pic3
4352: #define tpic4   $03 ;pic4
4353: #define tpic5   $04 ;pic5
4354: #define tpic6   $05 ;pic6
4355: #define tpic7   $06 ;pic7
4356: #define tpic8   $07 ;pic8
4357: #define tpic9   $08 ;pic9
4358: #define tpic0   $09 ;pic0
4359: 
4360: ;$2nd half of user graph database tokens
4361: ;--------------------------------------
4362: #define tgdb1   $00 ;gdb1
4363: #define tgdb2   $01 ;gdb2
4364: #define tgdb3   $02 ;gdb3
4365: #define tgdb4   $03 ;gdb4
4366: #define tgdb5   $04 ;gdb5
4367: #define tgdb6   $05 ;gdb6
4368: #define tgdb7   $06 ;gdb7
4369: #define tgdb8   $07 ;gdb8
4370: #define tgdb9   $08 ;gdb9
4371: #define tgdb0   $09 ;gdb0
4372: 
4373: ;$2nd half of string vars
4374: ;------------------------------
4375: #define tstr1   $00
4376: #define tstr2   $01
4377: #define tstr3   $02
4378: #define tstr4   $03
4379: #define tstr5   $04
4380: #define tstr6   $05
4381: #define tstr7   $06
4382: #define tstr8   $07
4383: #define tstr9   $08
4384: #define tstr0   $09
4385: 
4386: ;$2nd half of system output only variables
4387: ;-----------------------------------------------------------------
4388: ;open   $00
4389: #define tregeq  $01 ;regression equation
4390: #define tstatn  $02 ;statistics n
4391: #define txmean  $03 ;x mean
4392: #define tsumx   $04 ;sum(x)
4393: #define tsumxsqr    $05 ;sum(x^2)
4394: #define tstdx   $06 ;standard dev x
4395: #define tstdpx  $07 ;standard dev pop x
4396: #define tminx   $08 ;min x value
4397: #define tmaxx   $09 ;max x value
4398: #define tminy   $0a ;min y value
4399: #define tmaxy   $0b ;max y value
4400: #define tymean  $0c ;y mean
4401: #define tsumy   $0d ;sum(y)
4402: #define tsumysqr    $0e ;sum(y^2)
4403: #define tstdy   $0f ;standard dev y
4404: #define tstdpy  $10 ;standard dev pop y
4405: #define tsumxy  $11 ;sum(xy)
4406: #define tcorr   $12 ;correlation
4407: #define tmedx   $13 ;med(x)
4408: #define tq1 $14 ;1st quadrant of x
4409: #define tq3 $15 ;3rd quadrant of x
4410: #define tquada  $16 ;1st term of quad poly reg/ y-int
4411: #define tquadb  $17 ;2nd term of quad poly reg/ slope
4412: #define tquadc  $18 ;3rd term of quad poly reg
4413: #define tcubed  $19 ;4th term of cubic poly reg
4414: #define tquarte $1a ;5th term of quart poly reg
4415: #define tmedx1  $1b ;x1 for med-med
4416: #define tmedx2  $1c ;x2 for med-med
4417: #define tmedx3  $1d ;x3 for med-med
4418: #define tmedy1  $1e ;y1 for med-med
4419: #define tmedy2  $1f ;y2 for med-med
4420: #define tmedy3  $20 ;y3 for med-med
4421: #define trecurn $21 ;recursion n
4422: #define tstatp  $22
4423: #define tstatz  $23
4424: #define tstatt  $24
4425: #define tstatchi    $25
4426: #define tstatf  $26
4427: #define tstatdf $27
4428: #define tstatphat   $28
4429: #define tstatphat1  $29
4430: #define tstatphat2  $2a
4431: #define tstatmeanx1 $2b
4432: #define tstatstdx1  $2c
4433: #define tstatn1 $2d
4434: #define tstatmeanx2 $2e
4435: #define tstatstdx2  $2f
4436: #define tstatn2 $30
4437: #define tstatstdxp  $31
4438: #define tstatlower  $32
4439: #define tstatupper  $33
4440: #define tstat_s $34
4441: #define tlrsqr  $35 ;r^2
4442: #define tbrsqr  $36 ;r^2
4443: 
4444: ;these next tokens are only used to access the data
4445: ;they are display only and the user cannot access them at all
4446: ;------------------------------------------------------------
4447: #define tf_df   $37 ;anofav factor df
4448: #define tf_ss   $38 ;anofav factor ss
4449: #define tf_ms   $39 ;anofav factor ms
4450: #define te_df   $3a ;anofav error df
4451: #define te_ss   $3b ;anofav error ss
4452: #define te_ms   $3c ;anofav error ms
4453: 
4454: ;$2nd half of system input/output variables
4455: ;------------------------------------------------
4456: ;      system variable equates
4457: ;
4458: #define tuxscl  $00
4459: #define tuyscl  $01
4460: #define txscl   $02
4461: #define tyscl   $03
4462: #define trecuru0    $04 ;u 1st initial cond
4463: #define trecurv0    $05 ;v 1st initial cond
4464: #define tun1    $06 ;u(n-1); not used
4465: #define tvn1    $07 ;v(n-1); not used
4466: #define turecuru0   $08 ;
4467: #define turecurv0   $09 ;
4468: #define txmin   $0a
4469: #define txmax   $0b
4470: #define tymin   $0c
4471: #define tymax   $0d
4472: #define ttmin   $0e
4473: #define ttmax   $0f
4474: #define tthetamin   $10
4475: #define tthetamax   $11
4476: #define tuxmin  $12
4477: #define tuxmax  $13
4478: #define tuymin  $14
4479: #define tuymax  $15
4480: #define tuthetmin   $16
4481: #define tuthetmax   $17
4482: #define tutmin  $18
4483: #define tutmax  $19
4484: #define ttblmin $1a
4485: #define tplotstart  $1b
4486: #define tuplotstart $1c
4487: #define tnmax   $1d
4488: #define tunmax  $1e
4489: #define tnmin   $1f
4490: #define tunmin  $20
4491: #define ttblstep    $21
4492: #define ttstep  $22
4493: #define tthetastep  $23
4494: #define tutstep $24
4495: #define tuthetstep  $25
4496: #define tdeltax $26
4497: #define tdeltay $27
4498: #define txfact  $28
4499: #define tyfact  $29
4500: #define ttblinput   $2a
4501: #define tfinn   $2b
4502: #define tfini   $2c
4503: #define tfinpv  $2d
4504: #define tfinpmt $2e
4505: #define tfinfv  $2f
4506: #define tfinpy  $30
4507: #define tfincy  $31
4508: #define trecurw0    $32 ;w0(1)
4509: #define turecurw0   $33
4510: #define tplotstep   $34
4511: #define tuplotstep  $35
4512: #define txres   $36
4513: #define tuxres  $37
4514: #define trecuru02   $38 ;u0(2)
4515: #define turecuru02  $39
4516: #define trecurv02   $3c ;v0(2)
4517: #define turecurv02  $3d
4518: #define trecurw02   $3e ;w0(2)
4519: #define turecurw02  $3f
4520: 
4521: ;$2nd byte of t2bytetok tokens
4522: ;------------------------------
4523: #define tfinnpv $00
4524: #define tfinirr $01
4525: #define tfinbal $02
4526: #define tfinprn $03
4527: #define tfinint $04
4528: #define tfintonom   $05
4529: #define tfintoeff   $06
4530: #define tfindbd $07
4531: #define tlcm    $08
4532: #define tgcd    $09
4533: #define trandint    $0a
4534: #define trandbin    $0b
4535: #define tsubstrng   $0c
4536: #define tstddev $0d
4537: #define tvariance   $0e
4538: #define tinstrng    $0f
4539: #define tdnormal    $10
4540: #define tinvnorm    $11
4541: #define tdt $12
4542: #define tchi    $13
4543: #define tdf $14
4544: #define tbinpdf $15
4545: #define tbincdf $16
4546: #define tpoipdf $17
4547: #define tpoicdf $18
4548: #define tgeopdf $19
4549: #define tgeocdf $1a
4550: #define tnormalpdf  $1b
4551: #define ttpdf   $1c
4552: #define tchipdf $1d
4553: #define tfpdf   $1e
4554: #define trandnorm   $1f
4555: #define tfinfpmt    $20
4556: #define tfinfi  $21
4557: #define tfinfpv $22
4558: #define tfinfn  $23
4559: #define tfinffv $24
4560: #define tconj   $25
4561: #define treal   $26
4562: #define timag   $27
4563: #define tangle  $28
4564: #define tcumsum $29
4565: #define texpr   $2a
4566: #define tlength $2b
4567: #define tdeltalst   $2c
4568: #define tref    $2d
4569: #define trref   $2e
4570: #define ttorect $2f
4571: #define ttopolar    $30
4572: #define tconste $31
4573: #define tsinreg $32
4574: #define tlogistic   $33
4575: #define tlinregttest    $34
4576: #define tshadenorm  $35
4577: #define tshadet $36
4578: #define tshadechi   $37
4579: #define tshadef $38
4580: #define tmattolst   $39
4581: #define tlsttomat   $3a
4582: #define tztest  $3b
4583: #define tttest  $3c
4584: #define t2sampztest $3d
4585: #define t1propztest $3e
4586: #define t2propztest $3f
4587: #define tchitest    $40
4588: #define tzintval    $41
4589: #define t2sampzint  $42
4590: #define t1propzint  $43
4591: #define t2propzint  $44
4592: #define tgraphstyle $45
4593: #define t2sampttest $46
4594: #define t2sampftest $47
4595: #define ttintval    $48
4596: #define t2samptint  $49
4597: #define tsetuplst   $4a
4598: #define tfinpmtend  $4b
4599: #define tfinpmtbeg  $4c
4600: #define trealm  $4d
4601: #define tpolarm $4e
4602: #define trectm  $4f
4603: #define texpron $50
4604: #define texproff    $51
4605: #define tclralllst  $52
4606: #define tgetcalc    $53
4607: #define tdelvar $54
4608: #define tequtostrng $55
4609: #define tstrngtoequ $56
4610: #define tdellast    $57
4611: #define tselect $58
4612: #define tanova  $59
4613: #define tmodbox $5a
4614: #define tnormprob   $5b
4615: #define tmgt    $64 ;vertical split
4616: #define tzfit   $65 ;zoom fit
4617: #define tdiag_on    $66 ;dianostic display on
4618: #define tdiag_off   $67 ;dianostic display off
4619: #define tokend2v0   $67 ;end of 2byte tokens for version 0.
4620: #define tarchive    $68 ;archive
4621: #define tunarchive  $69 ;unarchive
4622: #define tasm    $6a
4623: #define tasmcomp    $6b ;asm compile
4624: #define tasmprgm    $6c ;signifies a program is asm
4625: #define tasmcmp $6d ;asm program is compiled
4626: #define tlcapaacute $6e
4627: #define tlcapagrave $6f
4628: #define tlcapacaret $70
4629: #define tlcapadier  $71
4630: #define tlaacute    $72
4631: #define tlagrave    $73
4632: #define tlacaret    $74
4633: #define tladier $75
4634: #define tlcapeacute $76
4635: #define tlcapegrave $77
4636: #define tlcapecaret $78
4637: #define tlcapedier  $79
4638: #define tleacute    $7a
4639: #define tlegrave    $7b
4640: #define tlecaret    $7c
4641: #define tledier $7d
4642: #define tlcapigrave $7f
4643: #define tlcapicaret $80
4644: #define tlcapidier  $81
4645: #define tliacute    $82
4646: #define tligrave    $83
4647: #define tlicaret    $84
4648: #define tlidier $85
4649: #define tlcapoacute $86
4650: #define tlcapograve $87
4651: #define tlcapocaret $88
4652: #define tlcapodier  $89
4653: #define tloacute    $8a
4654: #define tlograve    $8b
4655: #define tlocaret    $8c
4656: #define tlodier $8d
4657: #define tlcapuacute $8e
4658: #define tlcapugrave $8f
4659: #define tlcapucaret $90
4660: #define tlcapudier  $91
4661: #define tluacute    $92
4662: #define tlugrave    $93
4663: #define tlucaret    $94
4664: #define tludier $95
4665: #define tlcapcced   $96
4666: #define tlcced  $97
4667: #define tlcapntilde $98
4668: #define tlntilde    $99
4669: #define tlaccent    $9a
4670: #define tlgrave $9b
4671: #define tldieresis  $9c
4672: #define tlquesdown  $9d
4673: #define tlexclamdown    $9e
4674: #define tlalpha $9f
4675: #define tlbeta  $a0
4676: #define tlgamma $a1
4677: #define tlcapdelta  $a2
4678: #define tldelta $a3
4679: #define tlepsilon   $a4
4680: #define tllambda    $a5
4681: #define tlmu    $a6
4682: #define tlpi    $a7
4683: #define tlrho   $a8
4684: #define tlcapsigma  $a9
4685: #define tlphi   $ab
4686: #define tlcapomega  $ac
4687: #define tlphat  $ad
4688: #define tlchi   $ae
4689: #define tlstatf $af
4690: #define tla $b0
4691: #define tlb $b1
4692: #define tlc $b2
4693: #define tld $b3
4694: #define tlsmalle    $b4
4695: #define tlf $b5
4696: #define tlsmallg    $b6
4697: #define tlh $b7
4698: #define tli $b8
4699: #define tlj $b9
4700: #define tlk $ba
4701: #define tll $bc
4702: #define tlm $bd
4703: #define tlsmalln    $be
4704: #define tlo $bf
4705: #define tlp $c0
4706: #define tlq $c1
4707: #define tlsmallr    $c2
4708: #define tls $c3
4709: #define tlsmallt    $c4
4710: #define tlu $c5
4711: #define tlv $c6
4712: #define tlw $c7
4713: #define tlx $c8
4714: #define tly $c9
4715: #define tlz $ca
4716: #define tlsigma $cb
4717: #define tltau   $cc
4718: #define tlcapiacute $cd
4719: #define tgarbagec   $ce
4720: #define lasttoken   $ce ;tlast token in this version...
4721: 
4722: ;data type equates
4723: ;---------------------------------------------------------------------
4724: #define realobj $00
4725: #define listobj $01
4726: #define matobj  $02
4727: #define equobj  $03
4728: #define strngobj    $04
4729: #define progobj $05
4730: #define protprogobj $06
4731: #define pictobj $07
4732: #define gdbobj  $08
4733: #define unknownobj  $09
4734: #define unknownequobj   $0a
4735: #define newequobj   $0b
4736: #define cplxobj $0c
4737: #define clistobj    $0d
4738: #define undefobj    $0e
4739: #define windowobj   $0f
4740: #define zstoobj $10
4741: #define tblrngobj   $11
4742: #define lcdobj  $12
4743: #define backupobj   $13
4744: #define appobj  $14 ;application, only used in menus/link
4745: #define appvarobj   $15 ;application variable
4746: #define tempprogobj $16 ;program, home deletes when finished
4747: #define groupobj    $17 ;group.
4748: 
4749: ;i/o equates
4750: ;---------------------------------------------------
4751: #define d0d1_bits   $03
4752: #define d0ld1l  $03
4753: #define d0ld1   $01
4754: #define d0d1l   $02
4755: #define d0d1    $00
4756: #define bport   $00 ;$4-bit link port (i/o)
4757: 
4758: ;device codes
4759: ;-----------------------------------------------------------------
4760: #define ti82dev $82
4761: #define pc82dev $02
4762: #define mac82dev    $12
4763: #define ti83fdev    $73
4764: #define link83fdev  $23
4765: #define ti83dev $83
4766: #define pc83dev $03
4767: #define mac83dev    $13
4768: #define ti85dev $95 ;different than real 85 so me talk
4769: #define pc85dev $05
4770: #define mac85dev    $15
4771: #define ti73dev $74 ;device x3 is always an 83
4772: #define pc73dev $07
4773: #define mac73dev    $17
4774: #define link73fdev  $23
4775: #define pc83fdev    $23
4776: 
4777: ;system error codes
4778: ;-----------------------------------------------------------
4779: #define e_editf 7 ;allow re-entering application
4780: #define e_edit  1<<e_editf
4781: #define e_mask  $7f
4782: #define e_overflow  1+e_edit
4783: #define e_divby0    2+e_edit
4784: #define e_singularmat   3+e_edit
4785: #define e_domain    4+e_edit
4786: #define e_increment 5+e_edit
4787: #define e_break 6+e_edit
4788: #define e_nonreal   7+e_edit
4789: #define e_syntax    8+e_edit
4790: #define e_datatype  9+e_edit
4791: #define e_argument  10+e_edit
4792: #define e_dimmismatch   11+e_edit
4793: #define e_dimension 12+e_edit
4794: #define e_undefined 13+e_edit
4795: #define e_memory    14+e_edit
4796: #define e_invalid   15+e_edit
4797: #define e_illegalnest   16+e_edit
4798: #define e_bound 17+e_edit
4799: #define e_graphrange    18+e_edit
4800: #define e_zoom  19+e_edit
4801: #define e_label 20
4802: #define e_stat  21
4803: #define e_solver    22+e_edit
4804: #define e_singularity   23+e_edit
4805: #define e_signchange    24+e_edit
4806: #define e_iterations    25+e_edit
4807: #define e_badguess  26+e_edit
4808: #define e_statplo   27
4809: #define e_toltoosmall   28+e_edit
4810: #define e_reserved  29+e_edit
4811: #define e_mode  30+e_edit
4812: #define e_lnkerr    31+e_edit
4813: #define e_lnkmemerr 32+e_edit
4814: #define e_lnktranserr   33+e_edit
4815: #define e_lnkduperr 34+e_edit
4816: #define e_lnkmemfull    35+e_edit
4817: #define e_unknown   36+e_edit
4818: #define e_scale 37+e_edit
4819: #define e_idnotfound    38
4820: #define e_nomode    39+e_edit
4821: #define e_validation    40
4822: #define e_length    41+e_edit
4823: #define e_application   42+e_edit
4824: #define e_apperr1   43+e_edit
4825: #define e_apperr2   44+e_edit
4826: #define e_expiredapp    45
4827: #define e_badadd    46
4828: #define e_archived  47+e_edit
4829: #define e_version   48
4830: #define e_archfull  49
4831: #define e_variable  50+e_edit
4832: #define e_duplicate 51+e_edit
4833: #define higerrnum   51
4834: ;obsolete error numbers 34 ;first link error
4835: #define e_linkiochksum  34
4836: #define e_linkiotimeout 35
4837: #define e_linkiobusy    36
4838: #define e_linkiover 37
4839: 
4840: ;equates to ram locations for stat vars
4841: ;----------------------------------------------------------------
4842: #define fplen   9 ;length of a floating-point number.
4843: #define statn   statvars
4844: #define xmean   statn+fplen
4845: #define sumx    xmean+fplen
4846: #define sumxsqr sumx+fplen
4847: #define stdx    sumxsqr+fplen
4848: #define stdpx   stdx+fplen
4849: #define minx    stdpx+fplen
4850: #define maxx    minx+fplen
4851: #define miny    maxx+fplen
4852: #define maxy    miny+fplen
4853: #define ymean   maxy+fplen
4854: #define sumy    ymean+fplen
4855: #define sumysqr sumy+fplen
4856: #define stdy    sumysqr+fplen
4857: #define stdpy   stdy+fplen
4858: #define sumxy   stdpy+fplen
4859: #define corr    sumxy+fplen
4860: #define medx    corr+fplen
4861: #define q1  medx+fplen
4862: #define q3  q1+fplen
4863: #define quada   q3+fplen
4864: #define quadb   quada+fplen
4865: #define quadc   quadb+fplen
4866: #define cubed   quadc+fplen
4867: #define quarte  cubed+fplen
4868: #define medx1   quarte+fplen
4869: #define medx2   medx1+fplen
4870: #define medx3   medx2+fplen
4871: #define medy1   medx3+fplen
4872: #define medy2   medy1+fplen
4873: #define medy3   medy2+fplen
4874: #define pstat   medy3+2*fplen
4875: #define zstat   pstat+fplen
4876: #define tstat   zstat+fplen
4877: #define chistat tstat+fplen
4878: #define fstat   chistat+fplen
4879: #define df  fstat+fplen
4880: #define phat    df+fplen
4881: #define phat1   phat+fplen
4882: #define phat2   phat1+fplen
4883: #define meanx1  phat2+fplen
4884: #define stdx1   meanx1+fplen
4885: #define statn1  stdx1+fplen
4886: #define meanx2  statn1+fplen
4887: #define stdx2   meanx2+fplen
4888: #define statn2  stdx2+fplen
4889: #define stdxp2  statn2+fplen
4890: #define slower  stdxp2+fplen
4891: #define supper  slower+fplen
4892: #define sstat   supper+fplen
4893: #define f_df    anovaf_vars
4894: #define f_ss    f_df+fplen
4895: #define f_ms    f_ss+fplen
4896: #define e_df    f_ms+fplen
4897: #define e_ss    e_df+fplen
4898: #define e_ms    e_ss+fplen