If you’ve been looking at operating systems for the TI-84+, chances are you’ve come across KnightOS. It’s well developed and has plenty of Unix-like features such as filesystems and tasks, and even a C compiler. But maybe that’s not what you want. You want an minimal operating system that allows you to extend it in any way you wish, bonus points if you don’t need to know Z80 assembly to do so.
zkeme80 is that operating system, a minimal core with a mostly ANS standard conforming Forth interpreter/compiler. From words covering sprites and graphics, to text and memory access, everything you need to make the next hit Snake clone or RPN-based layer is already there. zkeme80 lowers the barrier of entry for customizing an operating system and enable rapid development cycles. Below the Forth layer, you’ll find two lowest level and highest level languages, Z80 assembly and Scheme. The best assembler is an extensible one, where writing macros should be a joy, not a pain, and Scheme has that macro system.
I wish I still had the TI-83 I used back in high school. A friend and I bought a communication cable for our TI-83s so that we could play multiplayer Bomberman during classes. Fun times.
I feel like I missed out, with Western Australia secondary education standardizing on Casio for some strange reason. Still, made for an interesting programming experience with only 28 variables (all global, across programs/scripts) allowed in a cut down version of BASIC.
kwan_e,
We made use of TI-8x graphing calculators in classes. We used them for graphing more than programming, but they were all programmable too. I had a TI86 with 128k ram. I remember that we could root them and install assembly programs (as the article suggests). There were lots of OS shells you could download and install to make them do a great deal more than the firmware. Obviously there were games, but a couple other applications.
I did spend some time tinkering with that, I wrote a of clone of the gorillas from qbasic but TBH I found it less interesting than programming a more capable computer.
QBASIC Gorillas
https://www.youtube.com/watch?v=UDc3ZEKl-Wc
My secondary education in Poland around year 2000, on math-physics profile, omitted graphing calculators entirely :/ …I only had some barely programmable Citizen one with numerical 7-segment display, but even that wasn’t allowed on tests.
Ehh, I need to get some RPN calculator one day…
I remember using Forth on my old Atari 400. Forth was more of an 8-bit language, so it’s not surprising to see it on a TI calculator.
One day I’ll learn Forth, I promise. 🙂
BTW, some fun trivia about it that I stumbled on https://books.google.pl/books?id=s55-xmGMGBAC&pg=PT64&lpg=PT64&dq=Forth+firmware&source=bl&ots=maRjDkNiLL&sig=pdLJW10HCjdG9rt6Tlf7q9IfE90&hl=en&sa=X&ved=0ahUKEwi4weWNh5zXAhWMDuwKHerPD0sQ6AEIVjAI#v=onepage&q=Forth%20firmware&f=false
😀
also:
zima,
I’ve used it a bit, but not for anything serious.
I don’t think we make enough use of stack based programming languages/calculators. There’s something about them that I find appealing compared to the complex syntax trees needed by many other languages.
Funnily enough, JVM bytecode is a stack-oriented language like Forth. I once managed to write a JVM bytecode “interpreter” with template metaprogramming, which naturally lends itself also to a stack-oriented approach. Compile-times were a bitch, of course.
So, you also partake in creation of slow software… 😛 (I remember you chastised Alfman quite recently for defending garbage collection 😛 )