` ``Input ¨Order:¨,O O+1→O O→dim(L₁) O→dim(L₂) O→dim(L₃) For(A,1,0) Input ¨Coefficient: ¨,C C→L₁(A) End Input ¨Num Of Real Roots: ¨,N N→dim(L₂) For(A,1,N) Input ¨Root: ¨,R R→L₂(A) End For(A,1,N) L₁(1)→L₃(1) For(B,1,O-1) L₂(A)*L₃(B)→L₄(B+1) L₁(B+1)+L₄(B+1)→L₃(B+1) End L₃→L₁ O-1→O Disp L₁ End`

]]>
I have also not been so active on the forums lately, school and my new job have gotten in the way of this. I am letting you know I am not dead.

]]>So I asked what she wanted to talk about, and I got this:

So, is this a scam?

A few other questions as well:

- Why was wikidot chosen originally? There is plenty of other websites.
- Why Was I the target? There is more users on this site.

For example, the decimal 0.010203 would become ABC by the following:

- decimal multiplied by 100, integer part (iPart) stored in variable I
- decimal multiplied by 100, decimal part (fPart) stored back in the list
- value of I is matched up with a letter/symbol/number, stored in a string (numbers 1-26 are A-Z, then 27=_, 28=., 29=,, and 30-39=1-9, and 40=?)
- repeats until I=0.
- Outputs entire string

Currently, the code I have is:

` ``100(iPart(⸤FLASH(1→I 100(fPart(⸤FLASH(1→⸤FLASH(1`

But I don't know how to convert the decimal to a string at that point. The list>string routines use the whole list, not just one cell. I was thinking it might be possible to have a separate list that, as the loop of the above code repeats, each integer gets stored. For example:

` ``1→I 1→A Repeat I=0 100(iPart(⸤FLASH(1→I 100(fPart(⸤FLASH(1→⸤FLASH(1 I→⸤CODE(A A+1→A End //then the list>string routine`

But I don't think this will be the most optimized/fastest way to do this (Speed is a necessity in this program).

Any thoughts, fixes, ideas appreciated.

Thanks,

UBER

` ``For(I,0,1 ClrHome Disp "Product/Brand "+sub("12",I+1,1)+"? . . . If not(I:Ans→B If I:Ans→C End`

you save 2 bytes ]]>

pause

:ClrHome

:0->dim(L1)

:input A

:int(abs(A))

:While Ans not = 1

:Ans->L1 (1+dim(L1))

:if fpart (Ans/2)

:then: 3Ans+1

:else: Ans/2

:End:End

Now lets talk about this. My calculator crashed a week ago, and when I turned it on, it said 'Memory cleared'. Sure enough, I thought EVERYTHING was gone. But it was not. The only two things that was erased whas Omnicalc and Calendar (from Detached Solutions). When I attempt to archive any program, AppVar, or any file, I recieve a ERR:BAD ADDRESS. I sent a new 2.55 operating system, and still recieving the same error. There are certain files I cannot afford to lose, and I cannot send *anything* to TI-Connect CE because I keep getting the "Hello?" message when I select "Send to computer". What should I do? These are valuable files and I would be very upset if I lost them forever (Even with prgmARCHUDEL).

Has this happened to any of you before? Or something similar? Tell me your story! I'd like to know if this can help me solve this situation.

` ``ClrHome StoreGDB 1 AxesOff FnOff ClrDraw 0→Xmin 94→Xmax 0→Ymin 62→Ymax Vertical 31 Vertical 64 Line(32,0,63,0 Text(0,0,"Next Text(6,0,"Piece: Text(29,0,"Hold: Text(0,66,"Score: Text(12,66,"High: Text(24,66,"Level: Text(36,66,"Lines: For(θ,0,23,23 Line(0,49-θ,15,49-θ Line(15,49-θ,15,34-θ Line(15,34-θ,0,34-θ Line(0,34-θ,0,49-θ End DelVar [A] {21,12→dim([A] For(B,1,21 1→[A](B,1 1→[A](B,12 End For(A,2,11 1→[A](21,A End SetUpEditor TH UnArchive ⸤TH If not(dim(⸤TH {0→⸤TH 0→Z 1→R 0→T 0→W 20→J SetUpEditor L₃ DelVar L₃0→Q randInt(1,7→P Repeat K=45 or Q If T=1 and not(C 1→Q For(I,0,1 If not(I Goto GP End Ans→[B] dim(Ans→L₁ For(I,0,1 If not(I Goto GB End randInt(1,7→P For(I,0,1 If not(I Goto GP End Ans→[C] dim(Ans→L₂ For(I,0,1 If not(I Goto SN End 6→S 1→T 0→X 0→C 0→G Repeat K=45 or G or Q Text(6,66,Z Text(18,66,⸤TH(1 Text(30,66,R Text(42,66,W For(I,0,1 If not(I Goto SC End getKey→K If K=105 Then Text(57,0,"Paused Pause " Text(57,0,Ans+Ans End If K=34 or X>9 Then If X>9 0→X If K=34 Z+1→Z For(I,0,1 If not(I Goto EC End 1→θ For(A,1,L₁(2 If [A](T+⸤BB(A),S+A-1 0→θ End T+θ→T not(θ→G End If K=21 Then For(I,0,1 If not(I Goto EC End 1→G 0→H 1→θ While θ For(A,1,L₁(2 If [A](T+⸤BB(A),S+A-1 0→θ End If θ Then T+1→T H+1→H End End Z+2H→Z For(I,0,1 If not(I Goto SC End End If K=26 Then For(I,0,1 If not(I Goto EC End 1→θ For(B,1,L₁(1 If [A](T+B-1,S+⸤RB(B 0→θ End S+θ→S End If K=24 Then For(I,0,1 If not(I Goto EC End 1→θ For(B,1,L₁(1 If [A](T+B-1,S-2+⸤LB(B 0→θ End S-θ→S End If K=11 or K=15 Then If not(21<T+L₁(2) or 12<S+L₁(1 Then If 5=sum(L₁ Then If K=15 rowSwap([B],1,L₁(1))^^T^^ //^^T^^ is the transpose character If K=11 rowSwap([B]^^T^^,1,L₁(2 //^^T^^ is the transpose character Ans→[E] dim(Ans→L₅ 1→θ For(B,1,L₅(1 For(A,1,L₅(2 If [A](T+B-1,S+A-1) and [E](B,A 0→θ End End If θ Then For(I,0,1 If not(I Goto EC End [E]→[B] L₅→L₁ For(I,0,2 If not(I Goto GB If I=1 Goto SC End End End End End If K=91 and not(C Then 1→C For(I,0,1 If not(I Goto EC End If dim(L₃ Then For(B,1,L₃(1 For(A,1,L₃(2 If [D](B,A Pt-Off(3A,26-3B,2 End End [B]→[E] [D]→[B] [E]→[D] Else For(I,0,1 If not(I Goto EN End [B]→[D] [C]→[B] randInt(1,7→P For(I,0,1 If not(I Goto GP End Ans→[C] dim(Ans→L₂ For(I,0,1 If not(I Goto SN End End dim([B]→L₁ dim([D]→L₃ For(I,0,1 If not(I Goto GB End For(B,1,L₃(1 For(A,1,L₃(2 If [D](B,A Pt-On(3A,26-3B,2 End End 6→S 1→T End If G Then If T<J T→J For(B,1,L₁(1 For(A,1,L₁(2 If [B](B,A Then 1→[A](T+B-1,S+A-1 25+3A+3S→N 66-3B-3T→O Pt-On(N,O,1 Pt-On(N,O,2 End End End 0→θ L₁(1→dim(⸤C Fill(0,⸤C For(B,T,T-1+L₁(1 Matr>list([A]^^T^^,B,L₄ //^^T^^ is the transpose character If not(sum(not(L₄ Then B→⸤C(B-T+1 θ+1→θ For(A,2,11 0→[A](B,A End [A] For(A,B,J,-1 rowSwap(Ans,A,A-1 End Ans→[A] End End SortD(⸤C Z+R(80(θ=1)+|E2(θ=2)+200(θ=3)+400(θ=4→Z If Ans>⸤TH(1 Ans→⸤TH(1 W+θ→W 1+int(W/10→R If θ Then Text(57,0,"Clearing For(B,⸤C(1),J,-1 For(A,2,11 28+3A→N 63-3B→O If [A](B,A Then Pt-On(N,O,1 Pt-On(N,O,2 Else Pt-Off(N,O,1 Pt-Off(N,O,2 End End End " Ans+Ans Text(57,0,Ans+Ans J+θ→J End End X+R→X End For(I,0,1 If not(I Goto EN End End Archive ⸤TH RecallGDB 1 DelVar GDB1DelVar ADelVar BDelVar CDelVar GDelVar HDelVar IDelVar JDelVar KDelVar NDelVar ODelVar PDelVar QDelVar RDelVar SDelVar TDelVar WDelVar XDelVar YDelVar ZDelVar θDelVar [A]DelVar [B]DelVar [C]DelVar [D]DelVar [E]DelVar L₁DelVar L₂DelVar L₃DelVar L₄DelVar L₅DelVar ⸤CDelVar ⸤BBDelVar ⸤LBDelVar ⸤RB AxesOn ClrHome Return Lbl EC For(B,1,L₁(1 For(A,1,L₁(2 If [B](B,A Pt-Off(25+3A+3S,66-3B-3T,2 End End End Lbl EN For(B,1,L₂(1 For(A,1,L₂(2 If [C](B,A Pt-Off(3A,49-3B,2 End End End Lbl GB L₁(2→dim(⸤BB Fill(0,⸤BB L₁(1→dim(⸤LB Fill(0,⸤LB ⸤LB→⸤RB For(B,L₁(1),1,-1 For(A,1,L₁(2 If [B](B,A) and not(⸤BB(A B→⸤BB(A End End For(B,1,L₁(1 For(A,L₁(2),1,-1 If [B](B,A) and not(⸤RB(B A→⸤RB(B End End For(B,1,L₁(1 For(A,1,L₁(2 If [B](B,A) and not(⸤LB(B A→⸤LB(B End End End Lbl GP If P=1 [[1,1][1,1 If P=2 [[1][1][1][1 If P=3 [[0,1,0][1,1,1 If P=4 [[1,0][1,0][1,1 If P=5 [[0,1][0,1][1,1 If P=6 [[1,0][1,1][0,1 If P=7 [[0,1][1,1][1,0 End Lbl SC For(B,1,L₁(1 For(A,1,L₁(2 If [B](B,A Pt-On(25+3A+3S,66-3B-3T,2 End End End Lbl SN For(B,1,L₂(1 For(A,1,L₂(2 If [C](B,A Pt-On(3A,49-3B,2 End End End`

I am trying to follow this tutorial (tibasic(dot)wikia(dot)com/wiki/Pong) but im having an error with the line function that I cannot fix at all.

The bit of code im stuck on is this.

` ``:Line(91,B,91,B+9`

And the error I get is this

"ERR:INVALID DIM"

I have no idea what this means.

Thanks! ]]>

` ``:0→Xmin :-62→Ymin`

I have the -62→Ymin bit typed in correctly but it gives me an error.

"ERR:SYNTAX"

EDIT: I have fixed it now (I was using the subtract symbol instead of minus symbol) but now I have a different error

On this bit of code

` ``:Line(91,B,91,B+9`

i am getting the error "ERR:INVALID DIM" ]]>

Small Piece of the game:

` ``If M=0002 Then ClrHome Output(1,1,"TEST MAP 2" Pause ClrHome 200->G 5->X 6->Y 1->S While 1 Repeat I getKey->I Output(Y,X,"X" If I=24 Then ClrHome X-1->X End If I=25 Then ClrHome Y-1->Y End If I=26 Then ClrHome X+1->X End If I=34 Then ClrHome Y+1->Y End If S=1 Then Output(1,1,"TTTTTTTTTTTTTTTT" Output(8,1,"TTTTTTTTTTTTTTTT" End If S=2 Then Output(3,4,"III" End If Y=1 and S=1 //Collision Detection Then If X=1 Then 2->Y End If X=2 Then 2->Y End If X=3 Then 2->Y End If X=4 Then 2->Y End If X=5 Then 2->Y End If X=6 Then 2->Y End If X=7 Then 2->Y End If X=8 Then 2->Y End If X=9 Then 2->Y End If X=10 Then 2->Y End If X=11 Then 2->Y End If X=12 Then 2->Y End If X=13 Then 2->Y End If X=14 Then 2->Y End If X=15 Then 2->Y End If X=16 Then 2->Y End End End End End`

I have a very interesting challenge for those interested. Make a game engine using a movement routine and a clock sub-routine. The cloc could be used for seasons, events, and other time related events. This will benefit research into TI-BASIC to see how well it holds up to just 2 routines working at the same time to bind together.

]]>` ``PROGRAM:BASICOS :"BasicOS ClrHome FnOff PlotsOff AxesOff ZStandard ZInteger Normal:Float Degree:Func Sequential Real:Full 1→Xmin 100→Xmax If det([[1:Then Disp "Library Error.","Install Celtic 3","to continue Pause ClrHome Return End real(7,0 If 2000>det(4:Then Disp "Memory Error.","There is not","enough RAM","memory. Pause ClrHome Return End "INPUT→Str2 det(0,7,Str2 If Ans=".P:NT:FN":Then Disp "Program Missing.","prgmINPUT is","missing from","RAM. Pause ClrHome Return End real(13,1 Text(0,0," GRAPHICS TEST real(13,0 If not(pxl-Test(6,0:Then ClrDraw ClrHome real(7,0 Disp "Graphics Error. "Re-Enable CLASSIC Mode and Re-Run the Program. If 2>real(11 "Re-Install the Celtic 3 Application. Output(2,1,Ans Pause ClrHome Return End det(0,7,Str2 sub(Ans,1,1 If Ans="A det(0,Str2 DelVar Str2 Lbl M ClrDraw real(7,0 real(13,1 Text(1,0,0," BasicOS real(13,0 Text(8,4,"FILE MANAGER Text(14,4,"ABOUT CALC Text(20,4,"TURN OFF Text(26,4,"----- ------ Text(32,4,"REPLACE WITH RETURN Text(38,4,"FILE TRANSFER Text(44,4,"QUIT 8→O:real(7,0 Repeat max(K={21,105 Text(O,0,"▶ Repeat K getKey→K End Text(O,0," max(8,min(44,O+6(K=34)-6(K=25→O End If O=8:Goto FM If O=14 Goto AC If O=20 Goto TO If O=26 Goto BC If O=32 Goto AR If O=38 Goto FT Lbl Q ClrDraw ClrHome real(7,0 real(13,1 Disp "Basic real(13,0 Output(1,6,"OS Disp "Bio_Hazard1282","Ver 8.5","TI-83+/84+/SE DelVar Str1DelVar Str2DelVar Str3DelVar Str4Return Lbl BC ClrDraw real(7,0 Text(1,24,0,"This option is Text(1,32,0,"available yet. Pause Goto M Lbl FT For(I,1,2 ClrDraw Text(1,24,0,"Input name for "Source If I=2 "Back-Up Text(1,32,0,Ans+" File real(7,0 Pause prgmINPUT If I=1:Str1→Str2 If I=2:Str1→Str3 End If Str2=Str3:Then Text(1,24,0,"Both files Text(1,32,0,"cannot have the Text(1,40,0,"same name. Pause End If Str2=Str3 Goto M sub(det(0,7,Str2),1,1 If Ans="A det(0,Str2 sub(det(0,7,Str3),1,1 If Ans="A det(0,Str3 ClrDraw real(7,0 real(13,1 Text(1,0,0," File Transfer real(13,0 Text(8,4,"COPY SOURCE Text(14,4,"RESTORE BACK-UP Text(20,4,"SWAP BOTH Text(26,4,"BACK Text(50,0,"SOURCE: "+Str2 Text(56,0,"BACK-UP: "+Str3 8→O Lbl M0 real(7,0 Repeat max(K={21,105 Text(O,0,"▶ Repeat K getKey→K End Text(O,0," max(8,min(26,O+6(K=34)-6(K=25→O End If O=8:Goto CS If O=14 Goto RB If O=20 Goto SB If O=26:Then Text(38,0,"ARCHIVING SOURCE det(0,Str2 Text(38,0,"ARCHIVING BACK-UP det(0,Str3 End If O=26 Goto M Lbl SB Text(44,0,"NOT IMPLEMENTED Goto M0 Lbl CS det(5,Str2→R For(I,4,5 det(0,I,Str3 End For(I,1,R det(5,Str2,I det(6,Str3,Ans,I Line(0,Ymin,int(100I/R),Ymin End Line(0,Ymin,Xmax,Ymin,0 Goto M0 Lbl RB det(5,Str3→R For(I,4,5 det(0,I,Str2 End For(I,1,R det(5,Str3,I det(6,Str2,Ans,I Line(0,Ymin,int(100I/R),Ymin End Line(0,Ymin,Xmax,Ymin,0 Goto M0 Lbl AC ClrDraw real(7,0 real(13,1 Text(1,0,0," About Calc real(13,0 Text(8,0,"TI-"+sub("83+ 83+SE84+ 84+SE",5(1+real(11))-4,5 det(4,2 Text(14,0,"SERIAL: ",sub(Ans,1,5)+"-"+sub(Ans,6,5 det(4,3 Text(20,0,"OS "+sub(Ans,1,1)+"."+sub(Ans,3,2 Text(26,0,"RAM: ",det(4 Text(32,0,"ROM: ",det(4,1 1+det(20,"EF6F4C3D280A78FE1E3805EF21521808EFB3503E042001AFEF8C47EFBF4A sub("DEADPOOROK GOODFULL",4Ans-3,4 Text(38,0,"BATTERY: "+Ans Pause Goto M Lbl TO ClrDraw real(7,0 real(12,6,0,0,94,62,1 real(13,1 Text(1,28,0," Turning Off real(13,0 rand(100 real(5→C For(I,C,0,1 real(5,0,I rand End det(20,"3E01D303FB76FDCB09A6 real(13,1 Text(1,28,0," Turning On real(13,0 For(I,0,C real(5,0,I rand End rand(100 Goto M Lbl AR ClrDraw real(7,0 prgmINPUT sub(det(0,7,Str1),1,1→Str2 If Ans="A det(0,Str1 ClrDraw real(13,1 Text(1,0,0," Scanning real(7,0 real(13,0 Text(8,0,"FINDING AND REPLACING ANY Text(14,0,"Stop COMMANDS WITH Return Text(28,0,"FILE: "+Str1 Text(34,0,"REPLACED: 0 DelVar Adet(5,Str1→R Text(40,0,"LINES: ",R For(I,1,R det(5,I,Str1 If Ans="Stop Then det(8,Str1,"Return",I A+1→A Text(34,0,"REPLACED: ",A End Line(0,Ymin,int(100I/R),Ymin End If Str2="A":Then Text(55,0,"ARCHIVING det(0,Str1 End real(7,0 Line(0,Ymin,Xmax,Ymin,0 Text(55,0,"ACTION COMPLETE Pause Goto M Lbl FM prgmINPUT If Str1="BASICOS" or Str1="INPUT":Goto M 8→O Lbl 0 ClrDraw real(7,0 Lbl 00 real(7,0 real(13,1 Text(1,0,0," File Manager real(13,0 sub(det(0,7,Str1),1,3→Str2 "rowSwap("=sub(Str1,1,1→A If not(Ans Text(8,4,"EXECUTE "ARCHIVE If "A"=sub(Str2,1,1:"UNARCHIVE Text(14,4,Ans "HIDE If "H"=sub(Str2,2,1:"UNHIDE Text(20,4,Ans If not(A:Then "LOCK If "L"=sub(Str2,3,1:"UNLOCK Text(26,4,Ans End Text(32,4,"DELETE Text(38,4,"DOWNLOAD If not(A Text(44,4,"TO APPVAR Text(50,4,"BACK Line(0,31,33,31 Text(8,47,sub(det(0,7,Str1),4,5)+"b Text(14,47,det(1,det(5,Str1))+" LINES Text(26,47,"RAM: ",det(4 Line(0,31,66,31 Text(32,47,"ROM: ",det(4,1 Str1 If sub(Str1,1,1)="rowSwap( "a"+sub(Str1,2,length(Str1)-1 Text(44,47,Ans Line(0,31,100,31 rand(5 Line(0,31,100,31,0 real(7,0 Repeat max(K={21,105 Text(O,0,"▶ Repeat K getKey→K End Text(O,0," max(8,min(50,O+6(K=34)-6(K=25→O End If A and max(O={8,26,44:Goto 0 If O=8:Goto 1 If max(O={14,20,26:Goto 2 If O=32:Goto 3 If O=38:Goto 4 If O=44:Goto 5 Goto M Lbl 1 For(I,0,13 Line(Xmin,I,Xmax,I,0 Line(Xmin,I,Xmax,I,0 End Horizontal 13 Horizontal 13 real(13,1 Text(1,20,0," Program Type real(13,0 Text(28,4,"BASIC Text(34,4,"ASSEMBLY 28→O Repeat max(K={21,105 Text(O,0,"▶ Repeat K getKey→K End Text(O,0," max(28,min(34,O+6(K=34)-6(K=25→O End O→B 8→O 2(10+expr(sub(det(0,7,Str1),4,5 If Ans>det(4 Goto 0 B→O StoreGDB 7 det(0,4,"XTEMP001 Str1 real(10,0,1 If O=28 prgmXTEMP001 If O=34 Asm(prgmXTEMP001 8→O ClrDraw real(7,0 det(0,4,"XTEMP001 RecallGDB 7 DelVar GDB7DelVar Pic7 8→O Goto 0 Lbl 2 Line(0,Ymin,50,Ymin If O=14 det(0,Str1 If O=20 det(0,3,Str1 If O=26 det(0,1,Str1 Line(0,Ymin,100,Ymin rand(5 Line(0,Ymin,100,Ymin,0 Goto 00 Lbl 3 det(0,4,Str1 Goto M Lbl 4 "DOWNLOAD→Str2 For(I,4,5 det(0,I,Str2 End det(5,Str1→R For(I,1,R det(5,Str1,I det(6,Str2,Ans,I If 2000>det(4:Then det(0,4,Str2 R→I real(13,1 Text(54,80," ! real(13,0 End Line(0,Ymin,int(100I/R),Ymin End Line(0,Ymin,100,Ymin,0 Text(1,54,89,"_ Text(1,52,89,"⬇ //Little bold arrow Goto 00 Lbl 5 det(0,2,Str1 Goto M`

It's not perfect, but this is a test version. This program size is a lot shorter compared to the other version in the archives. Here is an input program that is critical to have for the main program. This program is compatible from shells, but not from MirageOS. It will not work properly. (This is a sub-program, do not run it by itself):

` ``ClrDraw real(13,1 Text(1,0,0," File Name real(7,0 real(13,0 Text(8,0,"TYPE A EXISTING FILE NAME Horizontal 4 Horizontal 4 Line(Xmin,4,Xmin,4 Line(Xmax,4,Xmax,4 Pt-Off(Xmin,4 Pt-Off(Xmin,4 Pt-Off(Xmax,4 Pt-Off(Xmax,4 " →Str1 1→M Lbl 0 real(13,1 Text(1,91,sub("Aa1",M,1 real(13,0 Repeat max(K={21,105,31,23,45 Text(28,1,Str1+"| Repeat K getKey→K End If M<3(K>40 and K<95 and K≠44 and 9>length(Str1:Then "ABC DEFGHIJKLMNOPQRSTUVWXYZθ If M=2 "abc defghijklmnopqrstuvwxyzθ Str1+sub(Ans,K-5int(.1K)-20,1→Str1 End If M=3(9>length(Str1) and max(K={72,73,74,82,83,84,92,93,94,102 Str1+sub("0123456789",27-3int(.1K)+10fPart(.1K)+2(K=102),1→Str1 End If K=31:Then M+1 If Ans>3:1 Ans→M End If K=23(1<length(Str1 sub(Str1,1,length(Str1)-1→Str1 If K=45:Then For(I,2,0,1 Line(2,I,99,I,0 Line(2,I,99,I,0 End " →Str1 End If 1=length(Str1) or max(K={23,45,31:Goto 0 real(13,1 Text(28,1,Str1+" real(13,0 sub(Str1,2,length(Str1)-1→Str1 Text(36,0,"SELECT FILE TYPE Text(42,4,"PROGRAM Text(48,4,"APP VARIABLE 42→O Repeat max(K={21,105 Text(O,0,"▶ Repeat K getKey→K End Text(O,0," max(42,min(48,O+6(K=34)-6(K=25→O End If O=48:"rowSwap("+Str1→Str1 det(0,7,Str1 If Ans=".P:NT:FN":Then If "rowSwap("=sub(Str1,1,1 sub(Str1,2,length(Str1)-1→Str1 " "+Str1→Str1 Text(28,90,"× ".P:NT:FN End If Ans=".P:NT:FN":Goto 0 Text(28,90," ClrDraw ClrHome real(7,0 Return`

There are some empty pockets in the main program. You can add some features of your own. There is no Input commands in either program, so I took GatoradeDC's advice and made a text-input instead.

I'll add this to the archives, once we try to sniff out all the remaining bugs, and features.

Here is some other information about the programs:

Size: 4,422

Lines: 417

Size: 942

Lines: 80

Let me know if you have any suggestions.

]]>I wanted to share a YouTube channel that I recently made called **Tech Tribe**. About a week ago, I started recording a new playlist that focuses on programming the TI Nspire calculator. The first two videos have been published and the third one is coming next week. I would love it if you guys checked it out / shared it on the forum because my main goal is to help people.

Thanks!

Tech Tribe

I am excited to be part of this community. I am a student studying computer science right now and a starting YouTuber. I recently began a series on programming the Ti Nspire CAS calculator. I would appreciate if you checked it out (and my channel as well). My channel is called Tech Tribe. Thanks!

]]>Since my unsuccessful Kickstarter campaign (only 5 backers) in 2015 to publish one of my game ideas as a printed board game, I have since wondered how to continue with it. I know, that this game as an app is a winner. (don' all game makers think so…lol) I will have no investment or production costs. Just time. But I would need to invest another 100-200 or so hours more, on top of the 100's of hours already put in.

Setbacks happen, but I still have about 25 other board and card games made out of old-fashioned cardboard, plastic and inkjet prints. All have been played and tested over the years by so many of my family and friends, but never found the enthusiasm to take it to the limit. The hardest part is the marketing and distribution. But with an app that's almost not needed as you just put it in the app store and hope wit a bit of luck you get the desired exposure.

But first, back to Basic, TI Basic that is and in parallel learning how to use Android Studio.

Anybody else here using Android Studio?

]]>:Asm84CEPrgm

:EFD74A

:EFEF4A

:7B

:EF0445

:C9

Unfortunately, it does not work on my TI-84+CE. Anybody have a solution? ]]>

I just installed the CEmu emulator on my laptop. I had to run a dump file and copy ROMData to create a ROM image. All went well. But, when I tried to connect the calc to my desktop TI Connect it didn't recognise that I connected it. So I reset the calc, as it is new and has no important stuff on it. Now it connects again. But I can see ROMData files in the explorer and wonder if they were there before the dump. Also they are in archive, about 10 of them which take 65530 each. So, I am not sure if that's all ok. I have now RAM Free 152558 and ARC FREE 1002K. Can somebody explain if this is all ok. Can't I delete the archived ROMData0 to L, as I think they were not there before, or were they? I am sure it's all ok.

Thanks.

Benarius

]]>Her is how the program will work.

1. an opening screen

2. menu

- explaining each trick with section to practice
- training mode where you can chose which technique you want to practice (same as practice without explanation)
- competition mode where different difficulty levels can be set with highs cores. e.g answer time (speed), 3 life system (most answers in a row), etc.
- high score table with results of performance

3. exit screen

The first question I ask myself is if I code everything into one file or create sub files that can be called and exited back to main file.

How much graphics I want to implement. I will write it for the TI-84 Plus CE-T, but want to also make versions for all other 84 models.

I will get started with an old fashioned flow chart. I will do it in a way so that I can add more modules as soon they become available, without disrupting the general program structure.

That's it for the moment. I you like to comment and contribute, please feel free.

Next post: first version of flow chart

Moving code to the top for easy access. Each new version will be updated here now:

Many thanks go to Trenly & UBERhelp (see exit screen). Next challenge coding about 50 trick units with explanations how they work. And last, the game with highscoring. Timeframe: 1 week.

UPDATES:

Version 1.0.1. Four parts working 1 1 1 and 1 1 2 (will automatically go to practice mode after wait 25 command, no need for flags) and 2 1 1 and 2 1 2.

Version 1.0.2. Main architecture, menus, functionality, GUI, ok.

Version 1.0.3. 2 tricks ready

Version 1.0.4. squaring tricks numbers ending in 5 (1 1 3 or 2 1 3) plus squaring any 2 digit numbers (1 1 4 or 2 1 4)

Version 1.0.5. multplying any 2 digit numbers (1 1 5 or 2 1 5

Version 1.0.6. multplying any 3 digit numbers (1 1 6 or 2 1 6

Version 1.0.7. adding 2 and 3 digit numbers (1 2 1 or 2 2 1 & 1 2 2 or 2 2 2

Version 1.0.8. subtracting 2 and 3 digit numbers (1 4 1 or 2 2 2 & 2 4 1 or 2 4 2

Version 1.0.8. cubing 2-digit numbers (11-19) (1 1 7 or 2 1 7)

Will be updating once or twice a day.

I will add to this code modules as soon I have them ready. Version will be changed accordingly.

` ``"main menu" Lbl MM ClrHome Menu(" MENU "," TRICK EXPLANATION",TE," TRICK PRACTICE",TP," GAME MODE",GM," HIGH SCORE",HS,"QUIT",QT) "1st level menu" "trick explanation" Lbl TE ClrHome Menu(" TRICK EXPLANATION "," MULTIPLICATION",MP," ADDITION",AD," DIVISION",DV," SUBTRACTION",ST,"MAIN MENU",MM) Lbl MP ClrHome Menu(" MULTIPLICATION ","Same 10s, end dgt sum 10",AA,"Multiply 2dgt nmbr by 11",AB,"Square 2dgt nmbr ends 5",AC,"Square any 2digit number",AF,"Multiply any 2dgt number",AG,"Multiply any 3dgt number",AH,"Cube 2-digit (11-19)",AI," Next Page",MQ,"Previous Menu",TE) Lbl MQ ClrHome Menu(" MULTIPLICATION "," TRICK 8",AJ," TRICK 9",AK," TRICK 10",AL," Previous Page",MP,"Previous Menu",TE) Lbl AD ClrHome Menu(" ADDITION ","2-digit addition (easy)",BA,"3-digit addition",BB," TRICK 3",BC," TRICK 4",BD," TRICK 5",BE," TRICK 6",BF," TRICK 7",BG," Next Page",AE,"Previous Menu",TE) Lbl AE ClrHome Menu(" ADDITION "," TRICK 8",BH," TRICK 9",BI," TRICK 10",BJ," Previous Page",AD,"Previous Menu",TE) Lbl DV ClrHome Menu(" DIVISION "," TRICK 1",DA," TRICK 2",DB," TRICK 3",DC," TRICK 4",DD," TRICK 5",DE," TRICK 6",DF," TRICK 7",DG," Next Page",DW,"Previous Menu",TE) Lbl DW ClrHome Menu(" DIVISION "," TRICK 8",DH," TRICK 9",DI," TRICK 10",DJ," Previous Page",DV,"Previous Menu",TE) Lbl ST ClrHome Menu(" SUBTRACTION ","2-digit subtraction",SA,"3-digit subtraction",SB," TRICK 3",SC," TRICK 4",SD," TRICK 5",SE," TRICK 6",SF," TRICK 7",SG," Next Page",SS,"Previous Menu",TE) Lbl SS ClrHome Menu(" SUBTRACTION "," TRICK 8",SH," TRICK 9",SI," TRICK 10",SJ," Previous Page",ST,"Previous Menu",TE) "1st level menu" "trick practice" Lbl TP ClrHome Menu(" TRICK PRACTICE "," MULTIPLICATION",MU," ADDITION",MD," DIVISION",MI," SUBTRACTION",MS,"MAIN MENU",MM) Lbl MU ClrHome Menu(" MULTIPLICATION ","Same 10s, end dgt sum 10",PA,"Multiply 2dgt nmbr by 11",PB,"Square 2dgt nmbr ends 5",PC,"Square any 2digit number",PD,"Multiply any 2dgt number",PE,"Multiply any 3dgt number",PF,"Cube 2-digit (11-19)",PG," Next Page",MV,"Previous Menu",TP) Lbl MV ClrHome Menu(" MULTIPLICATION "," TRICK 8",PH," TRICK 9",PI," TRICK 10",PJ," Previous Page",MU,"Previous Menu",TP) Lbl MD ClrHome Menu(" ADDITION ","2-digit addition (easy)",BA,"3-digit addition",BB," TRICK 3",BC," TRICK 4",BD," TRICK 5",BE," TRICK 6",BF," TRICK 7",BG," Next Page",ME,"Previous Menu",TE) Lbl ME ClrHome Menu(" ADDITION "," TRICK 8",BH," TRICK 9",BI," TRICK 10",BJ," Previous Page",MD,"Previous Menu",TP) Lbl MI ClrHome Menu(" DIVISION "," TRICK 1",PA," TRICK 2",PB," TRICK 3",PC," TRICK 4",PD," TRICK 5",PE," TRICK 6",PF," TRICK 7",PG," Next Page",MJ,"Previous Menu",TP) Lbl MJ ClrHome Menu(" DIVISION "," TRICK 8",PH," TRICK 9",PI," TRICK 10",PJ," Previous Page",MI,"Previous Menu",TP) Lbl MS ClrHome Menu(" SUBTRACTION ","2-digit subtraction",ZA,"3-digit subtraction",ZB," TRICK 3",ZC," TRICK 4",ZD," TRICK 5",ZE," TRICK 6",ZF," TRICK 7",ZG," Next Page",MT,"Previous Menu",TP) Lbl MT ClrHome Menu(" SUBTRACTION "," TRICK 8",ZH," TRICK 9",ZI," TRICK 10",ZJ," Previous Page",MS,"Previous Menu",TP) "1st level menu" "game mode" Lbl GM ClrHome Menu(" GAME MODE "," TIMED GAME",GA," 3 LIFE GAME",GB," LEVEL GAME",GC,"MAIN MENU",MM) Lbl HS ClrHome Output(1,9,"HIGH SCORE") Output(3,3,"MIK 3500 SAM 1200") Output(4,3,"TOM 3000 CAT 0900") Output(5,3,"SIK 2900 ARC 0500") Output(6,3,"POT 2600 PAM 0100") Output(7,3,"RIK 1400 LUC 0050") Output(9,3,"PRESS KEY FOR MAIN MENU") Repeat getKey End Goto MM Lbl QT ClrHome Output(1,10,"ABOUT") Output(3,3,"DESIGNER: BENARIUS") Output(4,3,"DATE: 14.12.18") Output(5,3,"VERSION: 1.0.9") Output(7,3,"THANKS TO:TRENLY &") Output(8,3," UBERhelp") Output(10,3,"THANKS FOR PLAYING") Wait 5 ClrHome Stop "2nd level menus" "trick explanation" "multiplication" Lbl AA ClrHome Output(1,1," ENDING DIGITS ADD TO 10") Output(2,1,"AND HAVE SAME 1st DIGITS") Output(3,1," e.g. 27 x 23") Output(4,1," 20*(20+10)+(7x3)") Output(5,1," 600 + 21") Output(6,1,"Answer: 621") Output(7,1," e.g. 49 x 41") Output(8,1," 40*(40+10)+(9*1)") Output(9,1," 2000 + 9") Output(10,1,"Answer: 2009") Wait 25 Goto PA Lbl AB ClrHome Output(1,1," MULTIPLY ANY 2-DIGIT ") Output(2,1," NUMBER BY 11") Output(3,1," e.g. 32 x 11") Output(4,1,"add digits for center nmbr.") Output(5,1," 3+2=5") Output(6,1," 3 5 2") Output(7,1,"Answer: 352") Output(8,1,"more: 45x11=495 27x11=281") Output(9,1,"carry over: 79x11=7 16 9") Output(10,1," 7+1 6 9-> 869") Wait 25 Goto PB Lbl AC ClrHome Output(1,1," SQUARING NUMBERS") Output(2,1," ENDING IN 5") Output(3,1," e.g. 35 x 35") Output(4,1,"add 1 to 1st digit add 25") Output(5,1," 3*(3+1)+(5x5)") Output(6,1," 12 <-> 25") Output(7,1,"Answer: 1225") Output(8,1,"e.g. 65x65=4225 25x25=625") Output(9,1," 6x(7)25 2x(3)25") Output(10,1," 4225 625") Wait 25 Goto PC Lbl AF ClrHome Output(1,1," SQUARING ANY 2 DIGIT") Output(2,1," NUMBERS") Output(3,1," e.g. 13 x 13") Output(4,1,"difference to tenner is 3") Output(5,1," take 13-3 and 13+3") Output(6,1," multiply 10 and 16") Output(7,1," add square of difference 3") Output(8,1," (10 x 16) + (3 x 3)") Output(9,1,"Answer: 169") Output(10,1,"e.g.56 dif4 60x52+4x4=3136") Wait 25 Goto PD Lbl AG Output(1,1,"MULTIPLY ANY 2 DGT NUMBER") Output(2,1," e.g. 73") Output(3,1," x 64") Output(4,1,"sum of last digit 3x4=1(2)") Output(5,1,"cros mltply add carry over") Output(6,1," (7x4)+(3x6)+1 ") Output(7,1," 28+18+1=4(7)") Output(8,1,"sum tenner add carry over") Output(9,1," (7x6)+4=46") Output(10,1,"Answer: 4672") Wait 25 Goto PE Lbl AH Output(1,1,"MULTIPLY ANY 3 DGT NUMBER") Output(2,1," e.g. 764") Output(3,1," x 389") Output(4,1,"sum of last digit 3x4=3(6)") Output(5,1,"cros mltply add carry over") Output(6,1,"(6x9)+(4x8)+3,54+32+3=8(9)") Output(7,1,"cros mltply add carry over") Output(8,1,"(7x9)+(6x8)+(4x3)+8=13(1)") Output(9,1,"(7x8)+(6x3)+13=8(7)") Output(10,1,"(7x3)+8=29 Answer: 297196") Wait 25 Goto PF Lbl AI ClrHome Output(1,1," CUBING 2 DIGIT") Output(2,1," NUMBERS (11-19)") Output(3,1," e.g. 13 x 13 x 13") Output(4,1,"difference to tenner is 3") Output(5,1," take 13-3 and 13+3") Output(6,1,"multiply 10 x 13 x 16") Output(7,1," add (3x3) x 13") Output(8,1," 2080 + 117") Output(9,1,"") Output(10,1,"Answer: 2197") Wait 25 Goto PG Lbl AJ Lbl AK Lbl AL "addition" Lbl BA Output(1,1," 2-DIGIT ADDITION (EASY) ") Output(2,1,"") Output(3,1,"Simplify and break into") Output(4,1,"smaller parts") Output(5,1,"") Output(6,1,"e.g. 48") Output(7,1," +39 (30+9)") Output(8,1,"") Output(9,1," 78 + 9") Output(10,1,"Answer: 87 ") Wait 25 Goto DA Lbl BB Output(1,1," 3-DIGIT ADDITION (EASY) ") Output(2,1,"") Output(3,1,"Simplify and break into") Output(4,1,"smaller parts") Output(5,1,"e.g. 457") Output(6,1," +368(300+60+8)") Output(7,1," 757+60+8") Output(8,1," 817+8") Output(9,1,"") Output(10,1,"Answer: 825 ") Wait 25 Goto DB Lbl BC Lbl BD Lbl BE Lbl BF Lbl BG Lbl BH Lbl BI Lbl BJ "division" Lbl OA Lbl OB Lbl OC Lbl OD Lbl OE Lbl OF Lbl OG Lbl OH Lbl OI Lbl OJ "subtraction" Lbl SA Output(1,1," 2-DIGIT SUBTRACTION") Output(2,1,"") Output(3,1,"Simplify and break into") Output(4,1,"smaller parts") Output(5,1,"") Output(6,1,"e.g. 68") Output(7,1," -26 (20+6)") Output(8,1,"") Output(9,1," 48 - 6") Output(10,1,"Answer: 42 ") Wait 25 Goto ZA Lbl SB Output(1,1," 3-DIGIT SUBTRACTION") Output(2,1,"") Output(3,1,"Simplify and break into") Output(4,1,"smaller parts") Output(5,1,"e.g. 678") Output(6,1," -346(300+40+6)") Output(7,1," 778-(40+6") Output(8,1," 738-6") Output(9,1,"") Output(10,1,"Answer: 732") Wait 25 Goto ZB Lbl SC Lbl SD Lbl SE Lbl SF Lbl SG Lbl SH Lbl SI Lbl SJ "trick practice" "multiplication" Lbl PA Repeat not(K) ClrHome randInt(11,99→A 10iPart(.1A)+10(1-fPart(.1A→H Output(3,1,"Multiply Output(3,10,A Output(3,13,"x Output(3,15,H Input "Answer:",J ClrHome Output(4,7,"Booo… If J=AH:Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl PB Repeat not(K) ClrHome randInt(1,99→A Output(3,1,"Multiply Output(3,10,A Output(3,13,"x Output(3,15,11 Input "Answer:",J ClrHome Output(4,7,"Booo… If J=11A:Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl PC Repeat not(K) ClrHome randInt(1,9→A 10A+5→I Output(3,1,"Multiply Output(3,10,I Output(3,13,"x Output(3,15,I Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(II):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl PD Repeat not(K) ClrHome randInt(11,99→A Output(3,1,"Multiply Output(3,10,A Output(3,13,"x Output(3,15,A Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(AA):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl PE Repeat not(K) ClrHome randInt(11,99→A randInt(11,99→B Output(3,1,"Multiply Output(3,10,A Output(4,9,"x Output(4,10,B Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(AB):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl PF Repeat not(K) ClrHome randInt(101,999→A randInt(101,999→B Output(3,1,"Multiply Output(3,10,A Output(4,9,"x Output(4,10,B Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(AB):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl PG Repeat not(K) ClrHome randInt(11,19→A Output(3,1,"Cube Output(3,10,A Output(4,9,"x Output(4,10,A Output(5,9,"x Output(5,10,A Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(AAA):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl PH Lbl PI Lbl PJ "addition" Lbl DA Repeat not(K) ClrHome randInt(11,99→A randInt(11,99→B Output(3,1,"Add Output(3,10,A Output(3,13,"+ Output(3,15,B Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(A+B):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl DB Repeat not(K) ClrHome randInt(101,999→A randInt(101,999→B Output(3,1,"Add Output(3,9,A Output(3,13,"+ Output(3,15,B Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(A+B):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End Goto TP Lbl DC Lbl DD Lbl DE Lbl DF Lbl DG Lbl DH Lbl DI Lbl DJ "division" Lbl PA Lbl PB Lbl PC Lbl PD Lbl PE Lbl PF Lbl PG Lbl PH Lbl PI Lbl PJ "subtraction" Lbl ZA Repeat not(K) ClrHome randInt(11,99→A randInt(11,99→B If A>B:Then Output(3,1,"Add Output(3,10,A Output(3,13,"- Output(3,15,B Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(A-B):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End End Goto TP Lbl ZB Repeat not(K) ClrHome randInt(101,999→A randInt(101,999→B If A>B:Then Output(3,1,"Add Output(3,9,A Output(3,13,"- Output(3,15,B Input "Answer:",J ClrHome Output(4,7,"Booo… If J=(A-B):Output(4,7,"Bravo Pause Disp "Play Again? Input "Yes(1) No(0)",K End End Goto TP Lbl ZC Lbl ZD Lbl ZE Lbl ZF Lbl ZG Lbl ZH Lbl ZI Lbl ZJ "game mode" Lbl GA Lbl GB Lbl GC`

I just wanted to share some old stories from when I was about 13 years old. Back in the 80's I came in contact with my first computer. I was given a Sinclair ZX 81 for testing. My moms boss at that time started distributing those new black boxes and wanted to find out how a young kid like me was able to do anything with it. A week later I requested the 16Kb memory upgrade as with only about 50 lines of code my appetite for bigger Basic games grew carnivorously quick. 6 months later after doing some summer jobs I wanted to get a C64 but only had enough to get a TI-99/4A which price dropped to around 300 bucks where as the C64 was still almost a 1000 with floppy drive. But I had so much fun with the 99er and my ghetto blaster as storing unit. But the joysticks were terrible. Nonetheless I was getting good at coding and my biggest achievement at that time was translating a C64 game listing out of a magazine into the 99er. Yes, those were the times when you had to type thousands of lines of code for hours just to find for another few hours all the typos. In the hope that electricity doesn't fail you, I saved the programs very rarely because that also took sometimes half an hour. But it was worth it. Every minute of it. 16 colors, 8 bit graphics and a lousy sound generator….what else does one want? A C64, of course. I did get one in the end, but mostly played with it. But the time with the 99er was the time I spent mostly coding and learning Basics. And here I am again. For some reason I just wanted to buy this graphing calculator. Knowing now what I realy can do with it just reminded me of the good old times which I wanted to share with you. It's like having a pocket sized 99er. I am looking forward to create some games and keep the brain juices flowing. Did anyone of you have the 99er? If intrested we can exchange some stories regards issues and experiences. I remember how the cartridge slot area got realy realy hot. Or you know how you could simulate 256 colors with only 16 available? Where there is a will there is a coding trick…lol. Nostalgia. I miss those times and that certain feeling you got using such old equipment. Let's here it maybe from you. I will share more stories later if I can still recall them again…laters.

]]>1. random number generated is 73 (so I need another which is 77)

2. divide 73 by 10 and assign to variable. A=7.3

3. B=ipart(A) giving me 7

4. C=fpart(A) giving me 0.3

5. B×10=70 and (1-C)×10=7 aded to gether giving me 77 assigned to D

6. result is 73 generated from 77

The rest is straight forward. Prompt and check that 77×73 is 5621. I want to add difficulty levels that shortens answer times. Also add highscores, nice UI,etc.

Here is the result so far:

:ClrHome

:Lbl A

:randInt(11,99)->A

:A/10->B

:A/10->C

:fpart(B)->D

:ipart(C)->E

:E×10->F

:(1-D)×10->G

:F+G->H

:A×H->I (fixed mistake pointed out by UEBERhelp)

:Disp A,H

:Prompt J

:If J=I

:Then

:ClrHome

:Output(5,8,"Bravo")

:Goto A

:Else

:ClrHome

:Output(5,8,"Boooo…")

:Goto A

Enjoy!

I am aware I can get rid of some variables and calculate some inside the commands. Also its just spaghetti code. But for the time it works.

In case you know of some more elegant solution to find the second nunber with the given requierments, let me know. I will post final results on my new wiki page.

Have a nice day.

Benarius

]]>it all started over 35 years ago when I got my first Sinclair ZX81, later a TI 99/4A and shortly after the C64. Then I drifted into a life almost without computers, gave up the geek life style also almost completely. About a year ago I bought myself an Arduino starter kit. Learned some electronics, calculus, algebra….the lot. But the Wabbitemu app just wasn't enough anymore. You should have seen my face when the 84 arrived by post, yesterday. Nostalgia poor. Knowing already what great times lie ahead with this little power bundle, I searched for a site like this. I already read most of the available user and programming books for the 84. But this Wiki on TI Basic here is amazing. Hope to get some decent results very soon and hope to share. Please feel free to ask any questions. I also like to help whenever I can. My hobbies and partly professional intrests are Maths, Physics, Astronomy, Game Design, Graphic Design, Excel, Programming, Marketing. Greetings to all. Ben.

]]>- TI-84 Plus CE (Classic, white, gold)
- $20 Nintendo eShop Gift Card (For steel diver sub wars)
- Peace and quiet
- No missing assignments
- Good grades

Let me know what you have!

]]>NOTE: the asterisks represent spaces. (easier to count, and there’s no multiplication in this program)

` ``:Lbl 0 :0→A :ClrHome :SetUpEditor ⸤Boom :ClrHome :20→dim(⸤Boom :Fill(0,⸤Boom :Menu “*******Defuse*************”,”Play”,1,”How to Play”,2,”Quit”,3 :Lbl 1 :ClrHome :Output (1,1,” //this is all one line, just broken up so it is easier to read ****************!**1[***]* ----------------!**2[***]* ****************!**3[***]* ****************!**4[***]* ******O==)******!**5[***]* ****O==O==)*****!**6[***]* ****************!**7[***]* ****************!**8[***]* ----------------!**9[***]* Defuse*the*Bomb!)*10[***] //this is the end of that very long line :If A=0 :Then :randInt(1,999→D //picks the number, but only on the first try :A+1→A :End :1→B :Repeat B=11 //this loop displays previous inputs :Output(B,22,⸤Boom(B :B+1→B :End :1→B :Repeat B=11 //this loop displays whether those inputs are higher or lower than the random number :If ⸤Boom(B+10)=1 :Output(B,26,”+ :If ⸤Boom(B+10)=-1 :Output(B,26,”- :End :Input C :If C>999 or C<1 //from here.... :Goto 98 :If fPart(C:Then :Goto 97 :C→⸤Boom(A //to here, it tests if the input is a valid number :If C<D //tests if the input if higher or lower than the random number, then stores the input :1→⸤Boom(A+10 :If C>D :-1→⸤Boom(A+10 :If C=D :Goto 99 :A+1→A :If A=11 :Goto L :Goto 1 :Lbl 98 //error conditions (when there is not a valid number) :ClrHome :Output(1,1,”Error:*Number*over*999 or less than 1 :Pause :Goto 0 :Lbl 97 :ClrHome :Output(1,1,”Error:*Number*is*Decimal :Pause :Goto 0 :Lbl 99 :ClrHome :Output(2,10,”You*Win! //win :Output(6,7,” //all one line, but broken up for readability ******O==)**************** ****O==O==) //end of the really long line :Pause :Goto 0 :Lbl L :ClrHome :Output(2,1,”You*Lose! //lose :Output(3,1,”The*Number*was: :Output 3,17,D :Pause :Goto 0 :Lbl 3 :Stop :“ :Lbl 2 :ClrHome :Output(1,1,” //all one line, but broken up for readability *******How*to*Play******** -------------------------- Type*a*number*(3*digits)* to*defuse*the*bomb.******* The*Game*will*tell*you*if* the*code*is*higher*or***** lower.************************** You*Have*10*Guesses. //end of the really long line :Pause :ClrHome :Output(1,1,” //all one line, but broken up for readability *******How*to*Play******** -------------------------- No*numbers*that*are:****** Decimals,*over*999,*or* below*1. //end of the really long line :Pause :Goto 0`

If you find any bugs or such, I will do my best to fix them. Please remember that the asterisks (*) are spaces, otherwise your program will look wrong.

If you want to add an exploding bomb animation to the end when you lose:

This code below should work if you copy and paste it onto the calculator.

If you don't have a CE, don't worry! My next game will be functional for both the monochromatic and ce calculators.

Enjoy defusing!

UBER

Changelog

_{V2.2 - some bugfixes}

_{V2.1 - added animation}

_{V2.0 - added basic optimizations}

_{V1.0 - game posted}

Throughout the year, TICalc.org runs articles featuring outstanding programs written by the TI community. In December, the community votes on which program they think is the best in it's category (categorized by the calc model). The program that receives the most votes receives the distinction of Program Of The Year.

It looks like this year's entries for the 83+/84+ category are all older programs. It seems like it has been a slow year for monochrome calc development, especially as the color models are maturing.

]]>[[a,b,c][d,e,f][g,h,i]] is stored row by row in a list: {a,b,c,d,e,f,g,h,i}. I would like an algorithm for multiplying an m*n matrix by a p*m matrix and keeping it in this list compression syntax. ]]>

They kind of stick when I push them, how do I clean them?

Buttons affected: Numbers 1-7, [.] and [(-)]

So now I want to know how TI implemented logarithms and other functions and how to make my own versions. I've looked at the ln page, but there isn't anything there about how it's calculated. I'm familiar with Taylor series, Newton's Method, and Halley's method but I don't know how to use them correctly or if any of those would work for complex values. ]]>

- Converts TI-Basic to an assembly program
- finds out the total RAM and ROM of a calculator model

Thanks

]]>` ``... int main() { printf("Hello World\n"); printf("Hello World\n"); printf("I'm still here dawg\n"); return 0; }`

Hey! I just created an account to ask for some optimizations for my 3D rendering program for a TI-84 Plus CE. I've been coding in TI-BASIC for quite some time, so I have sufficient knowledge of the language. This code was translated from The Coding Train (java) to BASIC, so the original code is not mine, all I did was port it over.

Feel free to drop by and contribute what you may, all help is accepted, including constructive criticism.

Here's my code:

` ``: //Setup : ClrHome : TextColor(BLACK : 2→L : : //Matrix Setup : {8,2→dim([D] : {8,3→dim([A] : Fill(.5,[A] : For(A,2,8,2 : -.5→[A](A,3 : End : For(B,0,4,4 : For(A,3,4 : -.5→[A](A+B,2 : End : End : For(A,5,8 : -.5→[A](A,1 : End : : //Graph Setup : 16.5→Xmax : -Ans→Xmin : 10.25→Ymax : -Ans→Ymin : ClrDraw : GridOff : AxesOff : PlotsOff : FnOff : : //Main Loop : 0→θ : Repeat getKey=45 : //Calcualations : startTmr→W : For(A,1,8 : Matr▶list([A]^^T^^,A,L₁ //"^^T^^" is the superscript transpose token : List▶matr(L₁,[B] : [[cos(θ),-sin(θ),0][sin(θ),cos(θ),0][0,0,1→[J] : [[1,0,0][0,cos(θ),-sin(θ)][0,sin(θ),cos(θ→[I] : [[cos(θ),0,-sin(θ)][0,1,0][sin(θ),0,cos(θ→[H] : [J][B] : [I]Ans : [H]Ans→[B] : 1/(L-[B](3,1 : [[Ans,0,0][0,Ans,0 : 20Ans[B]→[B] : [B](1,1→[D](A,1 : [B](2,1→[D](A,2 : End : : //Drawing Edges : ClrDraw : For(A,1,4 : For(B,0,4,4 : [D](A+B-(A=4),1→N : [D](A+B-(A=4),2→O : [D](A+B+1+(A=2)-4(A=4),1→S : [D](A+B+1+(A=2)-4(A=4),2→T : Line(N,O,S,T,BLACK,1 : End : [D](A,1→N : [D](A,2→O : [D](A+4,1→S : [D](A+4,2→T : Line(N,O,S,T,BLACK,1 : End : : Text(0,0,"SPF: ",checkTmr(W //SPF is seconds per frame : θ+π/16→θ : End`

Feel free to drop by and contribute what you may, all help is accepted, including constructive criticism.

Here's my code:

` ``: //Setup : ClrHome : TextColor(BLACK : 2→L : : //Matrix Setup : {8,2→dim([D] : {8,3→dim([A] : Fill(.5,[A] : For(A,2,8,2 : -.5→[A](A,3 : End : For(B,0,4,4 : For(A,3,4 : -.5→[A](A+B,2 : End : End : For(A,5,8 : -.5→[A](A,1 : End : : //Graph Setup : 16.5→Xmax : -Ans→Xmin : 10.25→Ymax : -Ans→Ymin : ClrDraw : GridOff : AxesOff : PlotsOff : FnOff : : //Main Loop : 0→θ : Repeat getKey=45 : //Calcualations : startTmr→W : For(A,1,8 : Matr▶list([A]^^T^^,A,L₁ //"^^T^^" is the superscript transpose token : List▶matr(L₁,[B] : [[cos(θ),-sin(θ),0][sin(θ),cos(θ),0][0,0,1→[J] : [[1,0,0][0,cos(θ),-sin(θ)][0,sin(θ),cos(θ→[I] : [[cos(θ),0,-sin(θ)][0,1,0][sin(θ),0,cos(θ→[H] : [J][B] : [I]Ans : [H]Ans→[B] : 1/(L-[B](3,1 : [[Ans,0,0][0,Ans,0 : 20Ans[B]→[B] : [B](1,1→[D](A,1 : [B](2,1→[D](A,2 : End : : //Drawing Edges : ClrDraw : For(A,1,4 : For(B,0,4,4 : [D](A+B-(A=4),1→N : [D](A+B-(A=4),2→O : [D](A+B+1+(A=2)-4(A=4),1→S : [D](A+B+1+(A=2)-4(A=4),2→T : Line(N,O,S,T,BLACK,1 : End : [D](A,1→N : [D](A,2→O : [D](A+4,1→S : [D](A+4,2→T : Line(N,O,S,T,BLACK,1 : End : : Text(0,0,"SPF: ",checkTmr(W //SPF is seconds per frame : θ+π/16→θ : End`

The "RAM cleared" is not mine ]]>

So just today, our school announced a science fair and there was a Computer Science section, and you already know I was going for it. So we had to pick a topic, since TI-BASIC is very limited i wondered how limited really is TI-BASIC? I thought and thought, I say we have't met that limit yet. TI-BASIC is one thing that Texas Instruments put on their calculator for whatever reason being and it is VERY SLOW. Optimizations can be made to help the program run faster though so speed is not as a big of a problem as some spectate. Just look at some of the programs made by the community, some of them look as if they would be very slow but they aren't.

What are your thoughts on the limitations of TI-BASIC? Can TI-BASIC be pushed father than at it's current state? Let me know.

]]>I have been using this site as a tool for probably 4+ years and yet only decided to make an account now.

I absolutely love programming on the ti series and own a ti-84+CSE. I really like how much I, and many others can make using the very limited platform that is the ti series calculators, and as many have stated before, creativity can often come from limitations.

Let me give a bit of backstory on my calculator adventures as well as other programming endeavors. It's a long one, so be prepared.

Back in about 7th grade I saw a guy on the bus messing with his calculator. I looked around him and couldn't find any papers or books so I was completely lost as to what he was doing with just a random calculator.

So I went over and asked him. He explained that it was his graphing calculator and that he was programming a game on it.

"A game?" I thought. "How could that be possible? A calculator surely couldn't make anything too exciting…"

And boy did he prove me wrong… He immediately showed me a new game he was working on, it was essentially a wip pokemon card game on the calculator. He also showed me snake, a survival game, a basic ray-casting game and more.

I was amazed. I would almost immediately become friends with him and would maintain a friendship for about a year and a half before we arrived at some "issues". During our friendship however, he introduced me to Scratch, Ti programming, and basic game design. I ended up getting my first and only graphing calculator, the Ti-84+CSE. I never really did too much with it as the calculator was so difficult to navigate at the time. The most advanced thing I made was a guessing game where you had to guess a combination and it would give you clues. I would end up taking a class called "computer programming and game design." I loved it but I always found myself taking on projects far too ambitious for me to complete ( I tried making a RPG from scratch in game maker studios).

I enjoyed all the programming that I learned and would continue trying to push forth until high school. When I finally reached high school, I ended up having way too much work to do and could not make games or work on programming as much. So I would take frequent hiatuses lasting several months. I would occasionally try programming on my calculator, as it was the only language I was super familiar with, and would experience my first loss. My first "advanced program", the combination guesser, was lost to a ram clear. To say I was disappointed, would be an understatement.

Back since Minecraft was officially released, I had been almost obsessed with the game and especially redstone. And while I loved seeing the mods people would make and seeing all of different, I would never use a mod until I was given a gift in high school. A mod making course for Minecraft. I only made it part way through it before I eventually was side tracked by school again.

I would however, play with Minecraft in other ways. As I stated before I love redstone. I loved how all the wires mixed and mingled to create fantastic machines with most machines being built for the purpose of automation. I would over the entire duration of middle and high school grow increasingly more fond of redstone as I built increasingly more complex contraptions. I would eventually indefinitely stop after having made a fully functional calculator that could add and subtract 2, 2 digit numbers and output their values in the most compact way I could manage. That was finished back in high school around 10th grade.

My stop was not something I did intentionally though, as my parents had gotten upset with me and not having as good of grades as I should (A's and B's were an expectation). And so I went on to have about a 7 month period in which I was allowed no electronics. NONE, except for the essentials, that being my calculator, and my school assigned/controlled chromebook. That was about when my calculator programming started really increasing.

I found that this very site I had been using since year one of me owning my calculator, had a lot of useful information. So I would use this site with increasing frequency, but I never really liked the idea of joining forums and social media (I still only have facebook and I never use it). So I ended up only lurking about on the forums, always fascinated by the level of depth that some people had reached with their programming.

During the last few years of high school I ended up learning HTML, CSS, C++, Java, and bits of other languages thrown in. It had become pretty apparent that I was a very technology based individual, and would likely do something involving computers for a job.

Eventually I reached graduation, and it was stressful. But I made it through, and watched my friends go on to the next step of their lives as I entered college. I am currently in my first quarter of college as of writing this, and am about to go into my second. My planned major is computer science (unsurprisingly) and I expect to transfer into a 4 year university from the community college I am currently enrolled at.

About 3 months ago… I remembered that there was a game called "Tetris". It's a bit of an obscure game but I am sure you'll find something if you look it up. Anyways I never really found that much of an interest in tetris, as it seemed to be a rather mindless game with pretty simple rules, and I had always tried avoiding games where I don't need strategy or much thinking. I thought it was mindless… until I stumbled upon competitive tetris. If you have never seen a match of competitive tetris I highly suggest looking at some of the modern tournaments. I decided I wanted to try it, so within about 3 days I made it to almost a professional level (not a god like level though).

I really started enjoying the game for a good several weeks and then realized that I was wasting precious homework time. So I decided to use my newfound interest in tetris for something useful instead. I wanted to program tetris on my calculator. I had realized that it was something that had been done a handful of times but I wanted to make it myself. Using only my own code, and no external files. It was during this project that I finally broke. I made an account on here and dropped in with questions about optimizations for coding. As it stands I am currently most of the way through the tetris program, however I am having difficulties with memory.

Now I am pretty much up-to-date with this post.

My hope for what I do here is to help optimize and create programming. And, if I can, I want to help make the community better by either sparking up new things, or creating tools to aide in calculator programming, as it is something that has helped me throughout the past several years.

Now there are two ways that I could go on this forums. I will either leave the forums after a few months of activity as I have never been one to engage much in online communities, or I will make my best effort to make some kind of a name for myself on this site and help others for as long as I can.

I hope that I can be of use, and make wonderful things with you all. Also sorry for the incredibly long backstory, I got a lot of stuff to look back on when it comes to programming (and I shortened everything down too). I would like to make a list of goals for myself while I am here.

- Optimize or create a few useful scripts.
- Make or improve a tool for the community
- Make a community project
- Get to know most of the frequent people on here as well as anyone new
- Make games for others to enjoy

I am using a ti 84 se

]]>Now while I have managed to do this, it took several hours of prodding with about slightly better than basic programming skills. For others, this could be a nightmare to the extent that they wont even bother despite the amount of time it appears to save (if you make longer programs in ti connect). I figured that because this is such an issue that I could create a version of this where it has a convenient function (likely in the toolbar) that would allow you to build one of these drop downs at a will without entering the code. So my question actually lies with the potential legality of distributing this. (I was unable to find the end user license agreement).

I obviously would not ever ask for money for something like this.

There are 4 ways I think I could distribute this with varying levels of likelihood of some legal problem.

A. I make a downloadable version of the patched ti connect to include the function I am referring to.

B. I make a downloadable patch that automatically "fixes" ti connect.

C. I make a folder containing the files that need to be replaced and explain how to replace them.

D. I make instructions explaining in detail where to include code from copy and paste.

These range from easiest to most difficult as well as likelihood that I am breaking their agreement by doing so (its possible I already did).

I want to make it so that people can have access to this tool (when/if I make it) but I don't want to get sued for trying to change a free program.

If anyone could find the license agreement or knows which of the options I could take, I would appreciate it.