This is mainly an experiment in user input processing on the TI-84+ CE, but it may turn into a larger project if you want it to!

It is based (sorta) off of Terminal on my Mac, and has a very similar style of commands. Full command list/documentation will be posted ASAP.

Short-Term Project Goals:

1) full command documentation

2) more commands

Long-Term Goals:

1) More commands

2) Optimization/neatness

3) User Friendlyness

I know this could be optimized/made neater, and it is very small, but keep in mind I haven't had much time lately.

Here's a small GIF I made (My friend wanted it to be a SIRI-like program )

If you have a suggestion, PM me or post a comment in the thread!

Documentation:

grph:

..Parameters:

....Slot (1-3), then Expression

......Ex:

grph -1 sin(X)

a’, then equality/inequality

Ex:

grph -a sin(X)<cos(X+Z)

Use “Z” instead of Y.

disp:

Parameters:

‘c’, then constant name.

Constant list:

e (Euler’s Number)

Pi

More coming Soon

Example:

disp -c pi

say:

Parameters:

Whatever you want the program to spit back out at you.

list:

Parameters:

list num (1-3), then what you want in your list

Example:

list -1 {1,2,3,4,5,6,7,8,9,10,11

‘r’ , calculates linear regression

It is based (sorta) off of Terminal on my Mac, and has a very similar style of commands. Full command list/documentation will be posted ASAP.

Short-Term Project Goals:

1) full command documentation

2) more commands

Long-Term Goals:

1) More commands

2) Optimization/neatness

3) User Friendlyness

I know this could be optimized/made neater, and it is very small, but keep in mind I haven't had much time lately.

**Code:**```
```

ClrDraw

PlotsOff

Lbl A

Input ":",Str0

Disp "Processing...

length(Str0)→L

If L<4

Then

Goto ER

End

sub(Str0,1,4→Str2

Disp Str2

If L≥9

Then

sub(Str0,5,4→Str1

sub(Str0,9,L-8)→Str9

End

Disp "","Result:"

If Str2="eval" or Str2="EVAL"

Then

If Str1=" b " or Str1=" B "

Then

If expr(Str9

Then

Disp "true"

Else

Disp "false"

End

Else

If Str1=" n " or Str1=" N "

Then

Disp expr(Str9

End

End

Else

If Str2="stop" or Str2="STOP"

Then

Goto ZZ

Else

If Str2="grph" or Str2="GRPH"

Then

If Str1=" 1 "

Then

StringEqu(Str9,Y₁

Else

If Str1=" 2 "

Then

StringEqu(Str9,Y₂

Else

If Str1=" 3 "

Then

StringEqu(Str9,Y₃

Else

If Str1=" a " or Str1=" A "

Then

FnOff

PlotsOff

ClrDraw

ZStandard

For(X,Xmin,Xmax,0.1

For(Z,Ymin,Ymax,0.1

If expr(Str9

Pt-On(X,Z

End

End

End

End

End

Else

If Str2="list" or Str2="LIST"

Then

If Str1=" 1 "

Then

expr(Str9)→L₁

Else

If Str1=" 2 "

Then

expr(Str9)→L₂

Else

If Str1=" 3 "

Then

expr(Str9)→L₃

Else

If Str1=" r " or Str1=" R "

Then

Plot1(Scatter,L₁,L₂

LinReg(ax+b) L₁,L₂,Y₁

ZoomStat

End

End

End

End

Else

If Str2="say " or Str2="SAY"

Then

Disp sub(Str0,5,L-4

Else

If Str2="disp" or Str2="disp"

Then

Disp "1"

Disp Str1

If Str1=" c " or Str1=" C "

Then

Disp Str9

If Str9="pi" or Str9="π" or Str9="PI"

Then

Disp π

Else

If Str9="e" or Str9="" or Str9="E"

Then

Disp

End

End

End

Else

Disp "Invalid instruction"

End

End

End

End

Goto Z

Lbl ER

Disp "ERROR!"

Lbl Z

Goto A

Lbl ZZ

Here's a small GIF I made (My friend wanted it to be a SIRI-like program )

If you have a suggestion, PM me or post a comment in the thread!

Documentation:

grph:

..Parameters:

....Slot (1-3), then Expression

......Ex:

grph -1 sin(X)

a’, then equality/inequality

Ex:

grph -a sin(X)<cos(X+Z)

Use “Z” instead of Y.

disp:

Parameters:

‘c’, then constant name.

Constant list:

e (Euler’s Number)

Pi

More coming Soon

Example:

disp -c pi

say:

Parameters:

Whatever you want the program to spit back out at you.

list:

Parameters:

list num (1-3), then what you want in your list

Example:

list -1 {1,2,3,4,5,6,7,8,9,10,11

‘r’ , calculates linear regression