-
Notifications
You must be signed in to change notification settings - Fork 0
/
ti83plus.inc
5038 lines (4957 loc) · 154 KB
/
ti83plus.inc
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
;TI-83 Plus Include File
;05/07/2007
;Included for TASM Compatibility
;-------------------------------
#define equ .equ
#define EQU .equ
#define end .end
#define END .end
;System Variable Equates
;------------------------------
XSCLt equ 2
YSCLt equ 3
XMINt equ 0Ah
XMAXt equ 0Bh
YMINt equ 0Ch
YMAXt equ 0Dh
TMINt equ 0Eh
TMAXt equ 0Fh
THETMINt equ 10h
THETMAXt equ 11h
TBLMINt equ 1Ah
PLOTSTARTt equ 1Bh
NMAXt equ 1Dh
NMINt equ 1Fh
TBLSTEPt equ 21h
TSTEPt equ 22h
THETSTEPt equ 23h
DELTAXt equ 26h
DELTAYt equ 27h
XFACTt equ 28h
YFACTt equ 29h
FINNt equ 2Bh
FINIt equ 2Ch
FINPVt equ 2Dh
FINPMTt equ 2Eh
FINFVt equ 2Fh
FINPYt equ 30h
FINCYt equ 31h
PLOTSTEPt equ 34h
XRESt equ 36h
;Run indicators
;------------------------------------
busyPause equ 10101010b
busyNormal equ 11110000b
;Banked Call Equates/Macros
;-----------------------------------------------
rBR_CALL equ 28h
BRT_JUMP0 equ 50h
#define bcall(xxxx) rst 28h \ .dw xxxx
#define bjump(xxxx) call 50h \ .dw xxxx
;Common Restart Routines
;------------------------------
rOP1TOOP2 equ 08h
rFINDSYM equ 10h
rPUSHREALO1 equ 18h
rMOV9TOOP1 equ 20h
rFPADD equ 30h
;Error Handler Equates/Macros
;-------------------------------------------
APP_PUSH_ERRORH equ 59h
APP_POP_ERRORH equ 5Ch
#define AppOnErr(xxxx) ld hl,xxxx \ call 59h
#define AppOffErr call 5Ch
;Page 1Bh ROM Calls
;--------------------------------
_JErrorNo equ 4000h
_FontHook equ 4003h
_call_character_hook equ 4006h ;calls character(localize) hook
_ldHLind equ 4009h ;l=a=(hl),h=(hl+1)
_CpHLDE equ 400Ch
_DivHLBy10 equ 400Fh
_DivHLByA equ 4012h
_kdbScan equ 4015h
_GetCSC equ 4018h ;key board scan codes
_coorMon equ 401Bh ;
_Mon equ 401Eh ;system monitor, customized through the context vectors
_monForceKey equ 4021h ;
_sendKPress equ 4024h
_JForceCmdNoChar equ 4027h
_JForceCmd equ 402Ah ;
_sysErrHandler equ 402Dh ;loads error context? sp=(onSP)
_newContext equ 4030h ;(kbdKey)=0, loads context, restores page in 4000h-7fffh
_newContext0 equ 4033h ;loads context
_cxPutAway equ 4036h ;
_cxPutAway2 equ 4039h ;same but also does a B_CALL CanAlphIns
_cxPPutAway equ 403Ch
_cxSizeWind equ 403Fh
_cxErrEP equ 4042h
_cxMain equ 4045h
_monErrHand equ 4048h ;installs errorhandler to start of ROM call, loads error context, jumps to mon
_AppInit equ 404Bh ;loads vector data at hl to cxMain and the rest of the vectors
_resetRam equ 404Eh
_lcd_busy equ 4051h ;wait till bit 1 of port 2 is set
_Min equ 4054h ;op1 = lowest number between op1 and op2
_Max equ 4057h ;op1 = highest number between op1 and op2
_Trunc equ 4060h
_InvSub equ 4063h
_Times2 equ 4066h
_Plus1 equ 4069h ;op1=op1+1
_Minus1 equ 406Ch
_FPSub equ 406Fh
_FPAdd equ 4072h
_DToR equ 4075h
_RToD equ 4078h
_Cube equ 407Bh
_TimesPt5 equ 407Eh
_FPSquare equ 4081h
_FPMult equ 4084h ;op1=op1*op2
_LJRND equ 4087h ;adjusts op1 if 0s precede the actual number... rounding? when
_InvOP1SC equ 408Ah
_InvOP1S equ 408Dh
_InvOP2S equ 4090h
_frac equ 4093h
_fprecip equ 4096h
_fpdiv equ 4099h
_SqRoot equ 409Ch
_RndGuard equ 409Fh
_RnFx equ 40A2h
_int equ 40A5h
_Round equ 40A8h
_LnX equ 40ABh
_LogX equ 40AEh
_LJNORND equ 40B1h ;like _LJRND but no rounding
_EToX equ 40B4h
_TenX equ 40B7h
_SinCosRad equ 40BAh
_Sin equ 40BDh
_cos equ 40C0h
_Tan equ 40C3h
_SinHCosH equ 40C6h
_TanH equ 40C9h
_cosh equ 40CCh
_SinH equ 40CFh
_ACosRad equ 40D2h
_ATanRad equ 40D5h
_ATan2Rad equ 40D8h
_ASinRad equ 40DBh
_ACos equ 40DEh
_ATan equ 40E1h
_ASin equ 40E4h
_ATan2 equ 40E7h
_ATanH equ 40EAh
_ASinH equ 40EDh
_ACosH equ 40F0h
_PtoR equ 40F3h
_RToP equ 40F6h
_HLTimes9 equ 40F9h
_CkOP1Cplx equ 40FCh
_CkOP1Real equ 40FFh
_Angle equ 4102h
_COP1Set0 equ 4105h
_CpOP4OP3 equ 4108h
_Mov9OP2Cp equ 410Bh
_AbsO1O2Cp equ 410Eh
_cpop1op2 equ 4111h
_OP3ToOP4 equ 4114h
_OP1ToOP4 equ 4117h
_OP2ToOP4 equ 411Ah
_OP4ToOP2 equ 411Dh
_OP1ToOP3 equ 4123h
_OP5ToOP2 equ 4126h
_OP5ToOP6 equ 4129h
_OP5ToOP4 equ 412Ch
_OP1ToOP2 equ 412Fh
_OP6ToOP2 equ 4132h
_OP6ToOP1 equ 4135h
_OP4ToOP1 equ 4138h
_OP5ToOP1 equ 413Bh
_OP3ToOP1 equ 413Eh
_OP6ToOP5 equ 4141h
_OP4ToOP5 equ 4144h
_OP3ToOP5 equ 4147h
_OP2ToOP5 equ 414Ah
_OP2ToOP6 equ 414Dh
_OP1ToOP6 equ 4150h
_OP1ToOP5 equ 4153h
_OP2ToOP1 equ 4156h
_Mov11B equ 4159h
_Mov10B equ 415Ch
_Mov9B equ 415Fh
_mov9B2 equ 4162h ;points to _mov9B
_Mov8B equ 4165h
_Mov7B equ 4168h
_Mov7B2 equ 416Bh ;same pointer as _Mov7B
_OP2ToOP3 equ 416Eh
_OP4ToOP3 equ 4171h
_OP5ToOP3 equ 4174h
_OP4ToOP6 equ 4177h
_Mov9ToOP1 equ 417Ah
_Mov9OP1OP2 equ 417Dh
_Mov9ToOP2 equ 4180h
_MovFrOP1 equ 4183h
_OP4Set1 equ 4186h
_OP3Set1 equ 4189h
_OP2Set8 equ 418Ch
_OP2Set5 equ 418Fh
_OP2SetA equ 4192h
_OP2Set4 equ 4195h
_OP2Set3 equ 4198h
_OP1Set1 equ 419Bh
_OP1Set4 equ 419Eh
_OP1Set3 equ 41A1h
_OP3Set2 equ 41A4h
_OP1Set2 equ 41A7h
_OP2Set2 equ 41AAh
_OP2Set1 equ 41ADh
_Zero16D equ 41B0h
_OP5Set0 equ 41B3h
_OP4Set0 equ 41B6h
_OP3Set0 equ 41B9h
_OP2Set0 equ 41BCh
_OP1Set0 equ 41BFh
_OPSet0 equ 41C2h ;hl = location to write floating point 0
_ZeroOP1 equ 41C5h
_ZeroOP2 equ 41C8h
_ZeroOP3 equ 41CBh
_ZeroOP equ 41CEh
_ClrLp equ 41D1h
_ShRAcc equ 41D4h ;move high nibble in a to low nibble
_ShLAcc equ 41D7h ;move low nibble in a to high nibble
_ShR18 equ 41DAh ;insert a 0 nibble at high nibble of (hl), shift 9 bytes 1 nibble to right
_SHR18A equ 41DDh ;insert low nibble in a at high nibble of (hl), shift 9 bytes 1 nibble to right
_SHR16 equ 41E0h ;insert a 0 nibble at highnibble of (hl), shift 8 bytes 1 nibble to right
_SHR14 equ 41E3h ;insert low nibble in a at high nibble of (hl), shift 7 bytes 1 nibble to right
_SHL16 equ 41E6h ;insert nibble of 0 in low nibble of (hl), shift 8 bytes (before and including (hl)) to the left 1 nibble
_SHL14 equ 41E9h ;insert low nibble of a in low nibble of (hl), shift 7 bytes (before and including (hl)) to the left 1 nibble
_SRDO1 equ 41ECh
_SHRDRND equ 41EFh
_MANTPA equ 41F2h ;adds the value of a to hl which points to the end of the bcd 7 bytes long
_ADDPROP equ 41F5h ;adds the value of a to hl which points to the end of the bcd (b bytes long)
_ADDPROPLP equ 41F8h ;adds the value of a and carry to hl which points to the end of the bcd (b bytes long)
_ADD16D equ 41FBh ;adds the bcd numbers at (hl-7) and (de-7)
_ADD14D equ 41FEh ;adds the bcd numbers at (hl-6) and (de-6)
_SUB16D equ 4201h ;subtracts bcd numbers at (hl-7) and (de-7)
_SUB14D equ 4204h ;subtracts bcd numbers at (hl-6) and (de-6)
_OP2ExOP6 equ 4207h
_OP5ExOP6 equ 420Ah
_OP1ExOP5 equ 420Dh
_OP1ExOP6 equ 4210h
_OP2ExOP4 equ 4213h
_OP2ExOP5 equ 4216h
_OP1ExOP3 equ 4219h
_OP1ExOP4 equ 421Ch
_OP1ExOP2 equ 421Fh
_ExLp equ 4222h
_CkOP1C0 equ 4225h
_CkOP1FP0 equ 4228h
_CkOP2FP0 equ 422Bh
_PosNo0Int equ 422Eh
_CKPosInt equ 4231h
_CKInt equ 4234h
_CKOdd equ 4237h
_CKOP1M equ 423Ah
_GETCONOP1 equ 423Dh ;a=0 opX=57.29577951308232 (1 radian in degrees)
_GETCONOP2 equ 4240h ;a=1 opX=1.570796326794897 (90 deg = pi/2)
;a=2 opX=.7853981633974483 (45 deg = pi/4)
;a=3 opX=.4342944819032518 (log e)
;a=4 opX=3.141592653589800 (pi)
;a=5 opX=.0174532925199433 (pi/180 = 1 degree in radians)
;a=6 opX=2.302585092994046 (ln 10)
_PIDIV2 equ 4243h ;not code, but a pointer to: .db 80h,15h,70h,79h,63h,26h,79h,48h,97h
_PIDIV4 equ 4246h ; .db 7fh,78h,53h,98h,16h,33h,97h,44h,83h
_PItimes2 equ 4249h ;not code, but a pointer to a 2*pi in non-OP format (no exponent byte)
_PI equ 424Ch ;not code, but a pointer to a pi in non-OP format (no exponent byte)
_ExpToHex equ 424Fh
_OP1ExpToDec equ 4252h
_ckop2pos equ 4255h
_CkOP1Pos equ 4258h
_ClrOP2S equ 425Bh
_ClrOP1S equ 425Eh
_FDIV100 equ 4261h ;op1=op1/100
_FDIV10 equ 4264h ;op1=op1/10
_DecO1Exp equ 4267h ;decrease exponent by 1, this can go from 0 to FF
_INCO1EXP equ 426Ah ;op1=op1*10
_INCEXP equ 426Dh ;hl points to the floating point's exponent to be multiplied by 10
_CkValidNum equ 4270h
_GETEXP equ 4273h ;a=OP1's exponent, carry set if negative exponent, Z if e0
_HTimesL equ 4276h
_EOP1NotReal equ 4279h
_ThetaName equ 427Ch
_RName equ 427Fh
_REGEQNAME equ 4282h
_RECURNNAME equ 4285h
_XName equ 4288h
_YName equ 428Bh
_TName equ 428Eh
_REALNAME equ 4291h
_SETesTOfps equ 4294h ;moves the word at fps to es
_markTableDirty equ 4297h ;looks up table variable and marks VAT entry as "dirty" or selected
_OP1MOP2EXP equ 429Ah ;op1's exponent = op1's expoent - op2's exponent
_OP1EXPMinusE equ 429Dh ;a=(op1+1)-e
_CHKERRBREAK equ 42A0h
_isA2ByteTok equ 42A3h
_GETLASTENTRY equ 42A6h
_GETLASTENTRYPTR equ 42A9h
_REGCLRCHNG equ 42ACh
_RESETWINTOP equ 42AFh ;takes into account grfsplitoverride and grfsplit flags
_SetYUp equ 42B2h ;loads 7 to port 10... what does this do?
_SetXUp equ 42B5h ;loads 5 to port 10...
_ISO1NONTLSTorPROG equ 42B8h ;checks if op1 contains a list, program, group, or appvar obj name
_ISO1NONTEMPLST equ 42BBh ;checks if op1 contains a list (why would op1+1 contain 01, or 0d for a var name?)
_IS_A_LSTorCLST equ 42BEh ;checks if a = 1 or 0Dh
_CHK_HL_999 equ 42C1h ;returns nc if less than 999, throws invalid dim error if greater than or equal to 999
_equ_or_newequ equ 42C4h
_errd_op1notpos equ 42C7h
_ErrD_OP1Not_R equ 42CAh
_ErrD_OP1NotPosInt equ 42CDh
_ErrD_OP1_LE_0 equ 42D0h
_ErrD_OP1_0 equ 42D3h
_FINDSYM_GET_SIZE equ 42D6h ;like findsym, but on output hl is the size of the variable
_STO_STATVAR equ 42D9h
_Rcl_StatVar equ 42DCh
_CkOP2Real equ 42DFh
_GET_X_INDIRECT equ 42E2h ;whatever this is, it uses the imathptrX locations
_MemChk equ 42E5h
_CMPPRGNAMLEN1 equ 42E8h ;gets variable name length from HL
_CMPPRGNAMLEN equ 42EBh ;gets variable name length from OP1
_FINDPROGSYM equ 42EEh ;find the program whose name is in op1 (see chkfindsym in SDK)
_ChkFindSym equ 42F1h
_FindSym equ 42F4h
_InsertMem equ 42F7h
_INSERTMEMA equ 42FAh ;not sure how this differs from insertmem
_EnoughMem equ 42FDh
_CMPMEMNEED equ 4300h
_CREATEPVAR4 equ 4303h
_CREATEPVAR3 equ 4306h
_CREATEVAR3 equ 4309h
_CreateCplx equ 430Ch
_CreateReal equ 430Fh
_CreateTempRList equ 4312h
_CreateRList equ 4315h
_CREATETCLIST equ 4318h
_CreateCList equ 431Bh
_CreateTempRMat equ 431Eh
_CreateRMat equ 4321h
_CreateTempString equ 4324h
_CreateStrng equ 4327h
_Create0Equ equ 432Ah
_CreateTempEqu equ 432Dh
_CreateEqu equ 4330h
_CreatePict equ 4333h
_CreateGDB equ 4336h
_CreateProg equ 4339h
_CHKDEL equ 433Ch
_CHKDELA equ 433Fh
_ADJPARSER equ 4342h
_ADJMATH equ 4345h
_ADJM7 equ 4348h
_DELMEMA equ 434Bh
_GET_FORM_NUM equ 434Eh
_DelVar equ 4351h
_DELVARIO equ 4354h
_DelMem equ 4357h
_DELVAR3D equ 435Ah
_DELVAR3C equ 435Dh
_DELVAR3DC equ 4360h ;may be incorrect
_IsFixedName equ 4363h
_DelVarEntry equ 4366h
_DataSizeA equ 4369h
_DataSize equ 436Ch
_POPMCPLXO1 equ 436Fh
_POPMCPLX equ 4372h
_MOVCPLX equ 4375h
_popOP5 equ 4378h
_popOP3 equ 437Bh
_popOP1 equ 437Eh
_PopRealO6 equ 4381h
_PopRealO5 equ 4384h
_PopRealO4 equ 4387h
_PopRealO3 equ 438Ah
_PopRealO2 equ 438Dh
_PopRealO1 equ 4390h
_PopReal equ 4393h
_FPOPCPLX equ 4396h
_FPOPREAL equ 4399h
_FPOPFPS equ 439Ch
_DeallocFPS equ 439Fh
_DeallocFPS1 equ 43A2h
_AllocFPS equ 43A5h
_AllocFPS1 equ 43A8h
_PushRealO6 equ 43ABh
_PushRealO5 equ 43AEh
_PushRealO4 equ 43B1h
_PushRealO3 equ 43B4h
_PushRealO2 equ 43B7h
_PushRealO1 equ 43BAh
_PushReal equ 43BDh
_PushOP5 equ 43C0h
_PushOP3 equ 43C3h
_PUSHMCPLXO3 equ 43C6h
_PushOP1 equ 43C9h
_PUSHMCPLXO1 equ 43CCh
_PUSHMCPLX equ 43CFh
_ExMCplxO1 equ 43D2h
_Exch9 equ 43D5h
_CpyTo1FPS11 equ 43D8h
_CpyTo2FPS5 equ 43DBh
_CpyTo1FPS5 equ 43DEh
_CpyTo2FPS6 equ 43E1h
_CpyTo1FPS6 equ 43E4h
_CpyTo2FPS7 equ 43E7h
_CpyTo1FPS7 equ 43EAh
_CpyTo1FPS8 equ 43EDh
_CpyTo2FPS8 equ 43F0h
_CpyTo1FPS10 equ 43F3h
_CpyTo1FPS9 equ 43F6h
_CpyTo2FPS4 equ 43F9h
_CpyTo6FPS3 equ 43FCh
_CpyTo6FPS2 equ 43FFh
_CpyTo2FPS3 equ 4402h
_CPYCTO1FPS3 equ 4405h
_CpyTo1FPS3 equ 4408h
_CPYFPS3 equ 440Bh
_CpyTo1FPS4 equ 440Eh
_CpyTo3FPS2 equ 4411h
_CpyTo5FPST equ 4414h
_CpyTo6FPST equ 4417h
_CpyTo4FPST equ 441Ah
_CpyTo3FPST equ 441Dh
_CpyTo2FPST equ 4420h
_CpyTo1FPST equ 4423h
_CPYFPST equ 4426h
_CpyStack equ 4429h
_CpyTo3FPS1 equ 442Ch
_CpyTo2FPS1 equ 442Fh
_CpyTo1FPS1 equ 4432h
_CPYFPS1 equ 4435h
_CpyTo2FPS2 equ 4438h
_CpyTo1FPS2 equ 443Bh
_CPYFPS2 equ 443Eh
_CpyO3ToFPST equ 4441h
_CpyO2ToFPST equ 4444h
_CpyO6ToFPST equ 4447h
_CpyO1ToFPST equ 444Ah
_CpyToFPST equ 444Dh
_CpyToStack equ 4450h
_CpyO3ToFPS1 equ 4453h
_CpyO5ToFPS1 equ 4456h
_CpyO2ToFPS1 equ 4459h
_CpyO1ToFPS1 equ 445Ch
_CpyToFPS1 equ 445Fh
_CpyO2ToFPS2 equ 4462h
_CpyO3ToFPS2 equ 4465h
_CpyO6ToFPS2 equ 4468h
_CpyO1ToFPS2 equ 446Bh
_CpyToFPS2 equ 446Eh
_CpyO5ToFPS3 equ 4471h
_CpyO2ToFPS3 equ 4474h
_CpyO1ToFPS3 equ 4477h
_CpyToFPS3 equ 447Ah
_CpyO1ToFPS6 equ 447Dh
_CpyO1ToFPS7 equ 4480h
_CpyO1ToFPS5 equ 4483h
_CpyO2ToFPS4 equ 4486h
_CpyO1ToFPS4 equ 4489h
_ErrNotEnoughMem equ 448Ch ;only if not HL bytes free
_FPSMINUS9 equ 448Fh
_HLMINUS9 equ 4492h
_ErrOverflow equ 4495h
_ErrDivBy0 equ 4498h
_ErrSingularMat equ 449Bh
_ErrDomain equ 449Eh
_ErrIncrement equ 44A1h
_ErrNon_Real equ 44A4h
_ErrSyntax equ 44A7h
_ErrDataType equ 44AAh
_ErrArgument equ 44ADh
_ErrDimMismatch equ 44B0h
_ErrDimension equ 44B3h
_ErrUndefined equ 44B6h
_ErrMemory equ 44B9h
_ErrInvalid equ 44BCh
_ErrBreak equ 44BFh
_ErrStat equ 44C2h
_ErrSignChange equ 44C5h
_ErrIterations equ 44C8h
_ErrBadGuess equ 44CBh
_ErrTolTooSmall equ 44CEh
_ErrStatPlot equ 44D1h
_ErrLinkXmit equ 44D4h
_JError equ 44D7h
_noErrorEntry equ 44DAh
_pushErrorHandleR equ 44DDh
_popErrorHandleR equ 44E0h
_strcopy equ 44E3h
_strCat equ 44E6h
_isInSet equ 44E9h
_sDone equ 44ECh ;this should actually be called _SetEquToOP1
_serrort equ 44EFh
_sNameEq equ 44F2h
_sUnderScr equ 44F5h
_sFAIL equ 44F8h
_sName equ 44FBh
_sOK equ 44FEh
_PutMap equ 4501h
_PutC equ 4504h
_DispHL equ 4507h
_PutS equ 450Ah
_putpsb equ 450Dh
_PutPS equ 4510h
_wputps equ 4513h
_putbuf equ 4516h
_putbuf1 equ 4519h
_wputc equ 451Ch
_wputs equ 451Fh
_wputsEOL equ 4522h ;displays string in HL in big font, and uses ... if too long
_wdispEOL equ 4525h
_whomeup equ 4528h
_setNumWindow equ 452Bh ;based on current cursor position, sets winleft and similar (for input prompts)
_newline equ 452Eh
_moveDown equ 4531h
_scrollUp equ 4534h
_shrinkWindow equ 4537h
_moveUp equ 453Ah
_scrollDown equ 453Dh
_ClrLCDFull equ 4540h
_ClrLCD equ 4543h
_ClrScrnFull equ 4546h
_ClrScrn equ 4549h
_ClrTxtShd equ 454Ch
_ClrWindow equ 454Fh
_EraseEOL equ 4552h
_EraseEOW equ 4555h
_HomeUp equ 4558h
_getcurloc equ 455Bh
_VPutMap equ 455Eh
_VPutS equ 4561h
_VPutSN equ 4564h
_vputsnG equ 4567h
_vputsnT equ 456Ah
_RunIndicOn equ 456Dh
_RunIndicOff equ 4570h
_saveCmdShadow equ 4573h
_saveShadow equ 4576h
_rstrShadow equ 4579h
_rstrpartial equ 457Ch
_rstrCurRow equ 457Fh
_rstrUnderMenu equ 4582h
_rstrbotrow equ 4585h
_saveTR equ 4588h ;save top right corner of LCD so 2nd arrow can be displayed, indicinuse flag must be set
_restoreTR equ 458Bh ;restore top right corner of LCD destroyed by an arrow. indicinuse flag must be set
_GetKeyPress equ 458Eh
_GetTokLen equ 4591h ;input: hl=pointer to token. output: a=lenght of string, hl=pointer to string on page 1
_GET_TOK_STRNG equ 4594h ;input: hl=pointer to token. output: op3=string of the token, a=length of string
_GETTOKSTRING equ 4597h ;input: DE=token. output: hl=pointer to the string on page 1
_PUTBPATBUF2 equ 459Ah
_PUTBPATBUF equ 459Dh
_putbPAT equ 45A0h
_putcCheckScrolL equ 45A3h
_DispEOL equ 45A6h
_fdispEOL equ 45A9h
_MAKEROWCMD equ 45ACh
_TOTOSTRP equ 45AFh
_SETVARNAME equ 45B2h
_DispDone equ 45B5h
_finishoutput equ 45B8h
_curBlink equ 45BBh
_CursorOff equ 45BEh
_hideCursor equ 45C1h
_CursorOn equ 45C4h
_showCursor equ 45C7h
_KeyToString equ 45CAh
_PULLDOWNCHK equ 45CDh ;something wrong here
_MenuCatCommon equ 45D0h
_ZIfCatalog equ 45D3h
_ZIfMatrixMenu equ 45D6h ;_loadCurCat
_LoadMenuNum equ 45D9h
_LoadMenuNumL equ 45DCh
_MenCatRet equ 45DFh ;restores display as though a menu were just cleared (restores some flags too)
_MenuSwitchContext equ 45E2h ;switches to context in A, calls menu hook with A=3, set 5,(iy+16h) for some sort of override to not make switch
_MenuEdKey equ 45E5h
_BackUpGraphSettings equ 45E8h
_notalphnum equ 45EBh
_SaveSavedFlags equ 45EEh
_SetMenuFlags equ 45F1h
_RstrSomeFlags equ 45F4h
_RstrOScreen equ 45F7h ;restores saveSScreen to the display
_SaveOScreen equ 45FAh ;stores display in saveSScreen
_dispListName equ 45FDh ;_SeeIfErrorCx
_PrevContext equ 4600h
_CompareContext equ 4603h
_AdrMRow equ 4606h
_AdrMEle equ 4609h
_GETMATOP1A equ 460Ch
_GETM1TOOP1 equ 460Fh
_GETM1TOP1A equ 4612h
_GetMToOP1 equ 4615h
_PUTTOM1A equ 4618h
_PUTTOMA1 equ 461Bh
_PutToMat equ 461Eh
_MAT_EL_DIV equ 4621h
_CMATFUN equ 4624h
_ROWECH_POLY equ 4627h
_ROWECHELON equ 462Ah
_AdrLEle equ 462Dh
_GETL1TOOP1 equ 4630h
_GETL1TOP1A equ 4633h
_GetLToOP1 equ 4636h
_GETL1TOOP2 equ 4639h
_GETL1TOP2A equ 463Ch
_GETL2TOP1A equ 463Fh
_PUTTOLA1 equ 4642h
_PutToL equ 4645h
_MAXMINLST equ 4648h
_LLOW equ 464Bh
_LHIGH equ 464Eh
_LSUM equ 4651h
CUMSUM equ 4654h
_ToFrac equ 4657h
_SEQSET equ 465Ah
_SEQSOLVE equ 465Dh
_CMP_NUM_INIT equ 4660h
_BinOPExec equ 4663h
_EXMEAN1 equ 4666h
_SET2MVLPTRS equ 4669h
_SETMAT1 equ 466Ch
_CREATETLIST equ 466Fh
_UnOPExec equ 4672h
_ThreeExec equ 4675h
_RESTOREERRNO equ 4678h
_FourExec equ 467Bh
_FiveExec equ 467Eh
_CPYTO2ES1 equ 4681h
_CPYTO6ES1 equ 4684h
_CPYTO1ES1 equ 4687h
_CPYTO3ES1 equ 468Ah
_CPYTO3ES2 equ 468Dh
_CPYTO2ES2 equ 4690h
_CPYTO1ES2 equ 4693h
_CPYTO2ES3 equ 4696h
_CPYTO1ES3 equ 4699h
_CPYTO3ES4 equ 469Ch
_CPYTO6ES3 equ 469Fh
_CPYTO2ES4 equ 46A2h
_CPYTO1ES4 equ 46A5h
_CPYTO2ES5 equ 46A8h
_CPYTO1ES5 equ 46ABh
_CPYTO4EST equ 46AEh
_CPYTO2EST equ 46B1h
_CPYTO1EST equ 46B4h
_CPYTO2ES6 equ 46B7h
_CPYTO1ES6 equ 46BAh
_CPYTO2ES7 equ 46BDh
_CPYTO1ES7 equ 46C0h
_CPYTO2ES8 equ 46C3h
_CPYTO1ES8 equ 46C6h
_CPYTO1ES9 equ 46C9h
_CPYTO2ES9 equ 46CCh
_CPYTO2ES10 equ 46CFh
_CPYTO1ES10 equ 46D2h
_CPYTO2ES11 equ 46D5h
_CPYTO1ES11 equ 46D8h
_CPYTO2ES12 equ 46DBh
_CPYTO1ES12 equ 46DEh
_CPYTO2ES13 equ 46E1h
_CPYTO1ES13 equ 46E4h
_CPYTO1ES14 equ 46E7h
_CPYTO1ES16 equ 46EAh
_CPYTO1ES17 equ 46EDh
_CPYTO1ES18 equ 46F0h
_CPYTO1ES15 equ 46F3h
_CPYTO2ES15 equ 46F6h
_CPYO1TOEST equ 46F9h
_CPYO1TOES1 equ 46FCh
_CPYO6TOES1 equ 46FFh
_CPYO6TOES3 equ 4702h
_CPYO1TOES2 equ 4705h
_CPYO2TOES2 equ 4708h
_CPYO1TOES3 equ 470Bh
_CPYO1TOES4 equ 470Eh
_CPYO1TOES5 equ 4711h
_CPYO1TOES6 equ 4714h
_CPYO1TOES7 equ 4717h
_CPYO2TOES4 equ 471Ah
_CPYO2TOES5 equ 471Dh
_CPYO2TOES6 equ 4720h
_CPYO2TOES7 equ 4723h
_CPYO2TOES8 equ 4726h
_CPYO2TOES9 equ 4729h
_CPYO1TOES8 equ 472Ch
_CPYO1TOES9 equ 472Fh
_CPYO1TOES10 equ 4732h
_CPYO1TOES11 equ 4735h
_CPYO1TOES12 equ 4738h
_CPYO1TOES13 equ 473Bh
_CPYO1TOES14 equ 473Eh
_CPYO1TOES15 equ 4741h
_EVALF3A equ 4744h
_GetK equ 4747h ;?
_setTitle equ 474Ah
_dispVarVal equ 474Dh
_RecallEd equ 4750h ;_setupBuffer
_createNumEditBuf equ 4753h
_ProcessBufKeys equ 4756h ;may be default key processing like [CLEAR], etc. especially for an edit buffer.
_CallCommon equ 4759h
_CommonKeys equ 475Ch
_Leftmore equ 475Fh
_fDel equ 4762h
_fClear equ 4765h
_finsDisp equ 4768h ;Michael says _FinsDisp02 equ 4768h (something's not right)
_FinsDisp02 equ 476Bh ;_setIndicator
_closeeditbufnor equ 476Eh
_releaseBuffer equ 4771h
_varnameToOP1hl equ 4774h
_nameToOP1 equ 4777h
_numPPutAway equ 477Ah
_numRedisp equ 477Dh
_numError02 equ 4780h
_Load_SFont equ 4783h
_SFont_Len equ 4786h
_InitNumVec equ 4789h ;inits window settings/table setup/finance solver context (dialog-like)
_SetXXOP1 equ 478Ch
_SetXXOP2 equ 478Fh
_SetXXXXOP2 equ 4792h
_UCLineS equ 4795h
_CLine equ 4798h
_CLineS equ 479Bh
_XRootY equ 479Eh
_YToX equ 47A1h
_ZmStats equ 47A4h
_POINT_STAT_HLP equ 47A7h
_DRAWSPLOT equ 47AAh
_INITNEWTRACEP equ 47ADh ;A is input here, goes to (8E63h)
_SPLOTCOORD equ 47B0h
_SPLOTRIGHT equ 47B3h
_SPLOTLEFT equ 47B6h
_CMPBOXINFO equ 47B9h
_NEXTPLOT equ 47BCh
_PREVPLOT equ 47BFh
_CLRPREVPLOT equ 47C2h
_PUT_INDEX_LST equ 47C5h
_GET_INDEX_LST equ 47C8h
_HEAP_SORT equ 47CBh
_StoGDB2 equ 47CEh
_RclGDB2 equ 47D1h
_CircCmd equ 47D4h
_GrphCirc equ 47D7h
_Mov18B equ 47DAh
_DarkLine equ 47DDh
_ILine equ 47E0h
_IPoint equ 47E3h
_XYRNDBOTH equ 47E6h
_XYRND equ 47E9h
_CheckTOP equ 47ECh
_CheckXY equ 47EFh
_DarkPnt equ 47F2h
_CPointS equ 47F5h
_WTOV equ 47F8h
_VtoWHLDE equ 47FBh
_Xitof equ 47FEh
_YftoI equ 4801h
_XftoI equ 4804h
_TraceOff equ 4807h
_GrRedisp equ 480Ah
_GDISPTOKEN equ 480Dh
_GRDECODA equ 4810h
_LABCOOR equ 4813h ;draws labels with _GRLABELS and X/Y/whatever coordinates, including stat plot stuff
_COORDISP equ 4816h ;draws X & Y coordinates (or R and theta if PolarGC)
_TMPEQUNOSRC equ 4819h
_GRLABELS equ 481Ch
_YPIXSET equ 481Fh
_XPIXSET equ 4822h
_COPYRNG equ 4825h
_VALCUR equ 4828h ;just sets/resets three flags, enables graph cursor
_GRPUTAWAY equ 482Bh
_RSTGFLAGS equ 482Eh
_GRReset equ 4831h
_XYCENT equ 4834h
_ZOOMXYCMD equ 4837h
_CPTDELY equ 483Ah
_CPTDELX equ 483Dh
_SetFuncM equ 4840h
_SetSeqM equ 4843h
_SetPolM equ 4846h
_SetParM equ 4849h
_ZmInt equ 484Ch
_ZmDecml equ 484Fh
_ZmPrev equ 4852h
_ZmUsr equ 4855h
_SETUZM equ 4858h
_ZmFit equ 485Bh
_ZmSquare equ 485Eh
_ZmTrig equ 4861h
_SetXMinMax equ 4864h
_ZooDefault equ 4867h
_GrBufCpy equ 486Ah
_DRAWSPLITLINE equ 486Dh
_RestoreDisp equ 4870h
_FNDDB equ 4873h
_AllEq equ 4876h
_fndallseleq equ 4879h
_NEXTEQ equ 487Ch
_PREVEQ equ 487Fh
_BLINKGCUR equ 4882h
_NBCURSOR equ 4885h
_STATMARK equ 4888h
_CHKTEXTCURS equ 488Bh
_Regraph equ 488Eh
_DOREFFLAGS02 equ 4891h ;something wrong here
INITNSEQ equ 4894h
_YRES equ 4897h ;_PLOTPTXY2
_Ceiling equ 489Ah ;ceil(OP1)
_PutXY equ 489Dh ;draws X & Y coordinates (regardless of PolarGC)
_PUTEQUNO equ 48A0h
_PDspGrph equ 48A3h
_HorizCmd equ 48A6h
_VertCmd equ 48A9h
_LineCmd equ 48ACh
_UnLineCmd equ 48AFh
_PointCmd equ 48B2h
_PixelTest equ 48B5h
_PixelCmd equ 48B8h
_TanLnF equ 48BBh
_DRAWCMD_INIT equ 48BEh
_DrawCmd equ 48C1h
_SHADECMD equ 48C4h
_InvCmd equ 48C7h
_STATSHADE equ 48CAh
_dspmattable equ 48CDh
_dsplsts equ 48D0h
_closeEditBuf equ 48D3h
_parseEditBuf equ 48D6h
_putsm equ 48D9h
_DspCurTbl equ 48DCh
_DSPGRTBL equ 48DFh
_zeroTemplate equ 48E2h
_settblrefs equ 48E5h
_dispTblBot equ 48E8h
_DispTblTop equ 48EBh
_dispTblbody equ 48EEh
_VPUTBLANK equ 48F1h
_TBLTRACE equ 48F4h
_dispListNameY equ 48F7h
_CurNameLength equ 48FAh
_NameToBuf equ 48FDh
_jpromptcursor equ 4900h
_BufLeft equ 4903h
_BufRight equ 4906h
_bufInsert equ 4909h
_bufQueueChar equ 490Ch
_BufReplace equ 490Fh
_BufDelete equ 4912h
_BUFPEEK equ 4915h
_BUFPEEK1 equ 4918h
_BUFPEEK2 equ 491Bh
_BUFPEEK3 equ 491Eh
_BufToBtm equ 4921h
_setupEditEqu equ 4924h
_BufToTop equ 4927h
_isEditFull equ 492Ah
_IsEditEmpty equ 492Dh
_IsAtTop equ 4930h
_IsAtBtm equ 4933h
_BufClear equ 4936h
_JcursorFirst equ 4939h
_JcursorLast equ 493Ch
_CursorLeft equ 493Fh
_cursorRight equ 4942h
_cursorUp equ 4945h
_CursorDown equ 4948h
_cursorToOffset equ 494Bh
_InsDisp equ 494Eh
_FDISPBOL1 equ 4951h
_FDISPBOL equ 4954h
_DispEOW equ 4957h
_DispHead equ 495Ah
_DispTail equ 495Dh
_PutTokString equ 4960h
_setupEditCmd equ 4963h
_setEmptyEditEqu equ 4966h
_SetEmptyEditPtr equ 4969h
_CloseEditEqu equ 496Ch
_GetPrevTok equ 496Fh
_getkey equ 4972h
_canIndic equ 4975h
_LCD_DRIVERON equ 4978h
_DFMIN2 equ 497Bh
_formDisp equ 497Eh ;this is directly what the OS calls on the homescreen to display a result
_formMatrix equ 4981h
_wscrollLeft equ 4984h
_wscrollUp equ 4987h
_wscrollDown equ 498Ah
_wscrollRight equ 498Dh
_FormEReal equ 4990h
_formERealTOK equ 4993h
_FormDCplx equ 4996h
_FormReal equ 4999h
_formScrollUp equ 499Ch
_setwinabove equ 499Fh
_disarmScroll equ 49A2h
_OP1toEdit equ 49A5h
_MinToEdit equ 49A8h
_rclVarToEdit equ 49ABh
_rclVarToEditPtR equ 49AEh
_RCLENTRYTOEDIT equ 49B1h
_rclToQueue equ 49B4h ;recalls bytes at OP1 into edit buffer
_FORMTOTOK equ 49B7h
_DISP_INTERVAL equ 49BAh
_DisplstName equ 49BDh
_dispSLstNameHL equ 49C0h
_EditEqu equ 49C3h
_closeEquField equ 49C6h
_AutoSelect equ 49C9h
_DISPYEOS equ 49CCh
_dispNumEOS equ 49CFh
_setupdispeq equ 49D2h
_DispForward equ 49D5h
_DispYPrompt2 equ 49D8h
_stringwidth equ 49DBh
_dispErrorScreen equ 49DEh ;displays top row of error screen (error message)
_POPCX equ 49E1h ;moves 14 bytes at cxPrev to cxMain, 15th byte goes to replace appflags
_loadnoeentry equ 49E4h
_SaveScreen equ 49E7h
_RETSCREEN equ 49EAh
_RetScreenErr equ 49EDh
_CheckSplitFlag equ 49F0h
_SolveRedisp equ 49F3h
_SolveDisp equ 49F6h
_itemName equ 49F9h
_SetNorm_Vals equ 49FCh
_SetYOffset equ 49FFh ;sets up YOffset and next 4 bytes (possibly specialized for the table editor)
_ConvKeyToTok equ 4A02h
_ConvFCKeyToTok equ 4A05h
_ConvFEKeyToTok equ 4A08h
_TokToKey equ 4A0Bh
_SendSkipExitPacket equ 4A0Eh
_GETVARCMD equ 4A11h
_SendVarCmd equ 4A14h
_SendScreenshot equ 4A17h
keyscnlnk equ 4A1Ah
_DeselectAllVars equ 4A1Dh
_DelRes equ 4A20h
_ConvLcToLr equ 4A23h
_RedimMat equ 4A26h
_IncLstSize equ 4A29h
_InsertList equ 4A2Ch
_dellistel equ 4A2Fh
_EditProg equ 4A32h
_CloseProg equ 4A35h
_ClrGraphRef equ 4A38h
_FixTempCnt equ 4A3Bh
_SAVEDATA equ 4A3Eh
_RESTOREDATA equ 4A41h
_FindAlphaUp equ 4A44h
_FindAlphaDn equ 4A47h
_CmpSyms equ 4A4Ah
_CREATETEMP equ 4A4Dh
_CleanAll equ 4A50h
_MoveToNextSym equ 4A53h ;input: hl=pointer to type byte of VAT entry. output: hl = pointer to next entry's type byte
_ConvLrToLc equ 4A56h
_TblScreenDn equ 4A59h ;something is not right here
_TblScreenUp equ 4A5Ch
_SCREENUP equ 4A5Fh
_ScreenUpDown equ 4A62h
_ZifRclHandler equ 4A65h
_zifrclkapp equ 4A68h
_rclkeyRtn equ 4A6Bh
_RCLKEY equ 4A6Bh
_RCLREGEQ_CALL equ 4A6Eh
_RCLREGEQ equ 4A71h
_initNamePrompt equ 4A74h
_NamePrompt2 equ 4A77h
_CATALOGCHK equ 4A7Ah
_clrTR equ 4A7Dh
_QUAD equ 4A80h
_GRAPHQUAD equ 4A83h
_BC2NOREAL equ 4A86h
_ErrNonReal_FPST_FPS1 equ 4A89h
_ErrNonReal equ 4A8Ch ;ERR:DATA TYPE if top B numers from FPS are non-real
_WRITE_TEXT equ 4A8Fh
_FORSEQINIT equ 4A92h
_GRPHPARS equ 4A95h
_PLOTPARS equ 4A98h
_ParseInp equ 4A9Bh
_PARSEOFF equ 4A9Eh
_PARSESCAN equ 4AA1h
_GETPARSE equ 4AA4h
_SAVEPARSE equ 4AA7h
_InitPFlgs equ 4AAAh
_CKENDLINERR equ 4AADh
_OP2Set60 equ 4AB0h
_GETSTATPTR equ 4AB3h
_CMP_STATPTR equ 4AB6h
_VARSYSADR equ 4AB9h
_StoSysTok equ 4ABCh
_StoAns equ 4ABFh
_StoTheta equ 4AC2h
_StoR equ 4AC5h
_StoY equ 4AC8h
_StoN equ 4ACBh
_StoT equ 4ACEh
_StoX equ 4AD1h
_StoOther equ 4AD4h