TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Show HN: I'm 17 and I created a Forth interpreter for the TI-84+ calculator

56 pointsby DogestFogeyover 6 years ago
<a href="https:&#x2F;&#x2F;github.com&#x2F;siraben&#x2F;ti84-forth" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;siraben&#x2F;ti84-forth</a><p>Hi HN!<p>For the past year I&#x27;ve been getting into programming in Z80 assembly (especially for the TI-84+). More recently I&#x27;ve been learning about the Forth programming language and after a lot of searching online (in vain) for a Forth interpreter for the TI-84, I decided to write one myself. It&#x27;s been fun demoing this to others, because it&#x27;s a very unexpected use of a calculator.<p>It&#x27;s my largest project to date, and I&#x27;m interested to know what the HN community thinks, please feel free to critique my code!<p>-- Ben

9 comments

Annatarover 6 years ago
Great work and accomplishment, but even better that you are giving Forth some much needed advertising boost: small, light and fast, it&#x27;s ideal for embedded devices, which is why it has been used for running space ships and powering the OpenBoot PROM in Sun, IBM and Apple systems.<p>The computer industry needs more people like you.
neilsimp1over 6 years ago
I remember writing a text adventure game on my TI 83+ in high school, thinking I was a hacker extraordinaire. In reality it was just a bunch of If and Print statements.<p>What you did is truly incredible.
daniel-cussenover 6 years ago
Hey, if you like forth, check out the GA144. It&#x27;s amazing. You can do things with it you can&#x27;t do with anything else, like make viruses in one word of memory, with several useful applications. Underrated, with a small community, but very fun and rewarding too.
评论 #18610890 未加载
joshstrangeover 6 years ago
I started my programming career on a TI 84+ SE. I bought it a year earlier than was required because I had friend in higher level math that had to have them and they showed my how you could program and run right on the device. My parents told me they wouldn&#x27;t pay for it (it was over $100 IIRC) because I didn&#x27;t need it yet but that if I did buy it they would reimburse me when I did need it. I wore the labels off the buttons of that thing (I still have it!) and the number of programs I wrote on it numbered in the 100s. I&#x27;d write games, solvers, utilities, etc, after some googling I even found some of things I actually posted online [0]. I was very active on a number of TI calculator programming forums and worked on an adventure game with my friend.<p>I still remember being amazed by xlib [1], a util to give you access to things only assembly programs could do in TI-BASIC. This meant you could do ALL your programming on the calculator itself but leverage things like clearing the screen, drawing a sprite, scroll the screen and more. This added capability blew my mind and I used it heavily in my development. After that I realized you could use this (very crappy, but I didn&#x27;t know it at the time) &quot;IDE&quot; toolset from TI that ran on my computer. I remember the OS X and Windows versions didn&#x27;t have feature parity and so I always liked using my friend&#x27;s Mac because it was easier. Being able to code on the computer and push my code to my calculator was another huge step forward for me but I still loved being able to make tweaks on the go.<p>I never did jump into Z80 though, it was a little too arcane for me at the time and by this point I&#x27;d hit my 10th grade year (Sophomore in High School) and I could finally take the &quot;Intro to Programming&quot; class offered by my school where I learned Java. That really changed things for me, curly braces and the ability to group and abstract code crazy concepts to me but I picked them up fast enough.<p>I&#x27;m going to go ahead and stop here because I realize I&#x27;ve rambled on and this is a pretty off-topic comment as-is without me going into my history of programming.<p>[0] <a href="http:&#x2F;&#x2F;calcg.org&#x2F;cgi-bin&#x2F;files.cgi?action=autha&amp;autha=Josh+Strange" rel="nofollow">http:&#x2F;&#x2F;calcg.org&#x2F;cgi-bin&#x2F;files.cgi?action=autha&amp;autha=Josh+S...</a><p>[1] <a href="http:&#x2F;&#x2F;tibasicdev.wikidot.com&#x2F;xlib" rel="nofollow">http:&#x2F;&#x2F;tibasicdev.wikidot.com&#x2F;xlib</a>
mhh__over 6 years ago
I&#x27;m 17 and also _started_ writing a (Asm) forth interpreter, so well done for finishing it.<p>The code looks readable and pretty clean. Very cool.<p>If you want to continue down the Z80 route, and have too much time on your hands, I recommend designing a simple IR and building a little compiler&#x2F;code generator for the Z80 (twas fun for me).
评论 #18618388 未加载
zygotic12over 6 years ago
Rock on mate - I came from the same place 40 years ago. But. no language is ever complete for me unless I canz Space Invader. I guess your now onto lisp? Do the Space Invader first in your Forth. Chuck is a god.
评论 #18619851 未加载
toutouastover 6 years ago
I had many attempts at writing my language from the age of 14 to the age 17 with no success: the problem I did not any thing about theory (grammars, parsers, ...)!
评论 #18619905 未加载
philip142auover 6 years ago
Cool, how about write some Z80 code for the Microbee computer, its an Australian computer which was very popular with schools in Australia in the 1980&#x27;s
faissalooover 6 years ago
Grear work man, love seeing other young people building cool projects like this, it really shows the good the internet has done for us.