You all know Befunge, right?
Well, now it's time to port it to the Ti-83+ line of calculators! Very Happy
I'm using Axe 1.2.2 to write this, for the amount of user control and the speed.
It can now let the user see and pick programs, but nothing else.
Source code:

Code:
.BFINTPR
#Axiom(MEMKIT)
DiagnosticOff
ClrHome
ZXmin)
1->X-1->N->A
While X
   If dim()=21 and (dim()^^r^^r=0)
      ZXresL1+A)
      While {L1+A}
         A++
      End
      0->{L1+A}
      A++
      N++
   End
   ZXmax)->X
End
If N
   Text(0,0,"Choose a file.
   0->A
   For(B,7,N*7
      Text(5,B,B/7+48>Char
      Text(9,B,":
      Text(11,B,L1+A
      While {L1+A}
         A++
      End
      A++
      B+6->B
   End
Else
   Text(0,0,"No Files Found!
   Text(0,7,"Press any key to exit.
   getKey
   Repeat getKey
   End
   Return
End
1->K->A-1->B
Repeat K=15 or (K=54)
   getKey->K
   If getKey(1) and (A<N)
      Text(0,A*7,"   
      A++
   End
   If getKey(4) and (A>1)
      Text(0,A*7,"   
      A--
   End
   Text(0,A*7,5>Char
   Pause 250
End
If K=54
   For(A)
      "appv"->Str1
      Copy(L1+B,Str1+1,length(L1+B)+1
      GetCalc(Str1)->P
      While {L1+B}
         B++
      End
      B++
   End
Else
Return
End

Programs are AppVars, and I plan to interpret Befunge-93, as it's easier, and also doesn't have an infinite grid of cells.

Compilation instructions:
Compile using Axe 1.2.2 and the axiom MEMKIT (included in the axe.zip file).

If anyone knows how to make 2000 byte long appvars easily, please leave a post below Smile
UPDATE:
To make development faster, for the time being I'll just allow users to use one AppVar for programs.
Also, an on-calc editor is on the way. Smile
Forget the last post... it's rubbish

Anyways, typing 2000 characters by hand on a calculator isn't feasible, so I'm just going to write a convertor in Python using the tivars_lib library. Smile

Hope this goes well. (I have virtually 0 experience dealing with files in Python) Sad
Ok, a crude version of the convertor is available here. (Look in the tools folder. It uses the tivars_lib_py libraries)
The generated AppVar is named "UNNAMED" on the calculator, and the input file must be named "hello.bf".
Stay tuned! (3-day break coming soon Very Happy)
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement