home.social

#ti92 — Public Fediverse posts

Live and recent posts from across the Fediverse tagged #ti92, aggregated by home.social.

fetched live
  1. I just completed "Cafeteria" - Day 5 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/5

    On a #Ti92 calculator using TI-BASIC.

    I like that Part 1 was doable using array operations, and therefore finished quite fast.

    Part 2 took much longer, but I was still surprised how well it runs, given it scales quadratically with input size.

    Edit: Forgot the repo link: git.grois.info/aoc-2025/tree/d

  2. I just completed "Cafeteria" - Day 5 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/5

    On a #Ti92 calculator using TI-BASIC.

    I like that Part 1 was doable using array operations, and therefore finished quite fast.

    Part 2 took much longer, but I was still surprised how well it runs, given it scales quadratically with input size.

    Edit: Forgot the repo link: git.grois.info/aoc-2025/tree/d

  3. I was wondering why the #Ti92 can do element-wise comparisons, resulting in a list of bools, but does not have any/all functions.
    By trial and error I found out that `if` statements work with lists of bools too, and only enter the `true` branch if all entries in the list are `true`. Same for the `when()` function.
    I might have missed it, but I think this isn't documented.

  4. I was wondering why the #Ti92 can do element-wise comparisons, resulting in a list of bools, but does not have any/all functions.
    By trial and error I found out that `if` statements work with lists of bools too, and only enter the `true` branch if all entries in the list are `true`. Same for the `when()` function.
    I might have missed it, but I think this isn't documented.

  5. @soulsource Wow... the #ti92's arbitrary precision arithmetic is capable, but fast it is not! Especially when using mod in an inner loop! Day 4 took 10 seconds on my #ti92 Plus as an "assembly program" compiled from C. This is really making me appreciate why people wanted assembly programs on these calculators so badly!
    Well done getting it running in TI-Basic rather than falling back to Fargo!

  6. @soulsource Wow... the #ti92's arbitrary precision arithmetic is capable, but fast it is not! Especially when using mod in an inner loop! Day 4 took 10 seconds on my #ti92 Plus as an "assembly program" compiled from C. This is really making me appreciate why people wanted assembly programs on these calculators so badly!
    Well done getting it running in TI-Basic rather than falling back to Fargo!

  7. I just completed "Printing Department" - Day 4 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/4

    Part 2 took more than 12 hours on my #Ti92 #GraphingCalculator, and it is already an optimized version. No clue how long the naive approach (part 1 in a loop) would have taken...

    git.grois.info/aoc-2025/tree/d

  8. I just completed "Printing Department" - Day 4 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/4

    Part 2 took more than 12 hours on my #Ti92 #GraphingCalculator, and it is already an optimized version. No clue how long the naive approach (part 1 in a loop) would have taken...

    git.grois.info/aoc-2025/tree/d

  9. I left my #Ti92 calculator running over night, for Day4 Part2 of this year's #AdventOfCode. Today I woke up to the wrong result.

    It did work for the test data....

    I found a bug meanwhile, so I'll re-run it now. I hope that there was only this one bug, as it takes several hours to process the actual input.

  10. I left my #Ti92 calculator running over night, for Day4 Part2 of this year's #AdventOfCode. Today I woke up to the wrong result.

    It did work for the test data....

    I found a bug meanwhile, so I'll re-run it now. I hope that there was only this one bug, as it takes several hours to process the actual input.

  11. Today I got back to #AdventOfCode. I spent a couple of minutes getting annoyed by the limitations of #Ti92 basic:
    - No structures. No tuples.
    - Functions cannot use lists-of-lists ("Data").
    - No passing-by-reference (except for non-local variables).
    - Functions are pure. They cannot mutate non-local variables.

    I think I now have a solution for Day4 Part2, that will finish in just a few hours, but the code is ugly and not reusable...

    It's running now. Not sure if it will finish still today...

  12. Today I got back to #AdventOfCode. I spent a couple of minutes getting annoyed by the limitations of #Ti92 basic:
    - No structures. No tuples.
    - Functions cannot use lists-of-lists ("Data").
    - No passing-by-reference (except for non-local variables).
    - Functions are pure. They cannot mutate non-local variables.

    I think I now have a solution for Day4 Part2, that will finish in just a few hours, but the code is ugly and not reusable...

    It's running now. Not sure if it will finish still today...

  13. @psf The 8088 has access to more RAM than what's available on the #Ti92, though I admit I keep everything in global variables, so only using 64KB max for data.

    Also, I had a pretty good compiler and IDE ready to use, I didn't have to... *checks notes*... port an entire interpreter. That's pretty impressive as well, if you ask me 😄

  14. @psf The 8088 has access to more RAM than what's available on the #Ti92, though I admit I keep everything in global variables, so only using 64KB max for data.

    Also, I had a pretty good compiler and IDE ready to use, I didn't have to... *checks notes*... port an entire interpreter. That's pretty impressive as well, if you ask me 😄

  15. @alrj Wow, congratulations! You did much better on the #Xi8088 than I did on the #Ti92 :)

    I know you don't usually post code, but this is one where I'm really curious to see what you did!

  16. @alrj Wow, congratulations! You did much better on the #Xi8088 than I did on the #Ti92 :)

    I know you don't usually post code, but this is one where I'm really curious to see what you did!

  17. #adventOfCode day 12 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 2ms
    • Raspberry Pi 2: 76ms
    • #ti92 Plus: Crashed

    I wasn't expecting that to work!

    And as usual, AoC is a good source of stressing cases to expose crashes/bugs in the #ticalc Lua port :p

    Merry Christmas!
    This is the first Advent of Code I've ever completed!

  18. #adventOfCode day 12 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 2ms
    • Raspberry Pi 2: 76ms
    • #ti92 Plus: Crashed

    I wasn't expecting that to work!

    And as usual, AoC is a good source of stressing cases to expose crashes/bugs in the #ticalc Lua port :p

    Merry Christmas!
    This is the first Advent of Code I've ever completed!

  19. #adventOfCode day 10 in #LuaLang and #Mathematica

    gitlab.cs.washington.edu/fidel

    • PC - 487 ms
    • Raspberry Pi 4: a few seconds
    • #ti92 Plus: N/A

    Ok, finally all caught up and looking forward to some sleep and Day 12!

    After a night and day in math land confusing myself with row echelon matrices and intersecting N-spaces, I remembered that I have a Raspberry Pi that for some reason has free preinstalled Mathematica.

    So my Lua program code-gens a Mathematica program, which then runs on the Pi to solve Part B!

    This generated code is checked in if you want to look at it - it's several thousand lines of simultaneous equations being solved with constraints applied: gitlab.cs.washington.edu/fidel

    Given all that, it's pleasantly fast. Mathematica over VNC on wifi is pretty laggy but the actual execution couldn't have taken more than a second or two!

    (Yes, I did attempt to solve the equations on the TI-92+ #ticalc, as it has a very capable computer algebra system, but I couldn't figure out how to apply all the necessary constraints -- maybe later.)

  20. #adventOfCode day 10 in #LuaLang and #Mathematica

    gitlab.cs.washington.edu/fidel

    • PC - 487 ms
    • Raspberry Pi 4: a few seconds
    • #ti92 Plus: N/A

    Ok, finally all caught up and looking forward to some sleep and Day 12!

    After a night and day in math land confusing myself with row echelon matrices and intersecting N-spaces, I remembered that I have a Raspberry Pi that for some reason has free preinstalled Mathematica.

    So my Lua program code-gens a Mathematica program, which then runs on the Pi to solve Part B!

    This generated code is checked in if you want to look at it - it's several thousand lines of simultaneous equations being solved with constraints applied: gitlab.cs.washington.edu/fidel

    Given all that, it's pleasantly fast. Mathematica over VNC on wifi is pretty laggy but the actual execution couldn't have taken more than a second or two!

    (Yes, I did attempt to solve the equations on the TI-92+ #ticalc, as it has a very capable computer algebra system, but I couldn't figure out how to apply all the necessary constraints -- maybe later.)

  21. #adventOfCode day 11 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1m 10s
    • Raspberry Pi 2: N/A
    • #ti92 Plus: N/A

    EDIT: wow I added 3 lines and now this is one of my fastest programs

    • PC - 2.1 ms
    • Raspberry Pi 2 - 65 ms
    • #ti92 Plus: N/A

    Yeah, I don't have day 10 part B results to share yet. However, I took a break from that to do day 11!

    It's brute force with a small twist to make it finish before the heat death of the universe. And it's based on intimate knowledge of my input file, so I don't know if it generalizes to others. At least the program itself is short....

    Bonus: puzzle input visualized in graphviz!

  22. #adventOfCode day 11 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1m 10s
    • Raspberry Pi 2: N/A
    • #ti92 Plus: N/A

    EDIT: wow I added 3 lines and now this is one of my fastest programs

    • PC - 2.1 ms
    • Raspberry Pi 2 - 65 ms
    • #ti92 Plus: N/A

    Yeah, I don't have day 10 part B results to share yet. However, I took a break from that to do day 11!

    It's brute force with a small twist to make it finish before the heat death of the universe. And it's based on intimate knowledge of my input file, so I don't know if it generalizes to others. At least the program itself is short....

    Bonus: puzzle input visualized in graphviz!

  23. #adventOfCode day 9 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 148 ms
    • Raspberry Pi 2: 6.133 sec
    • #ti92 Plus: out of memory

    I'm very pleased with the speed here, although I'm sure looking at other peoples' solutions will deflate some of that pride.

    The feasibility of the whole solution relied on a big insight I got while staring at the grid far too long. To avoid spoilers, I won't elaborate here.

    My original version took about 4 seconds on PC: I owe some of the later ~20x optimizations to studying a friend's Rust solution after we both got ours working.

  24. #adventOfCode day 9 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 148 ms
    • Raspberry Pi 2: 6.133 sec
    • #ti92 Plus: out of memory

    I'm very pleased with the speed here, although I'm sure looking at other peoples' solutions will deflate some of that pride.

    The feasibility of the whole solution relied on a big insight I got while staring at the grid far too long. To avoid spoilers, I won't elaborate here.

    My original version took about 4 seconds on PC: I owe some of the later ~20x optimizations to studying a friend's Rust solution after we both got ours working.

  25. I'm still on day 4 of #AdventOfCode. Part1 is done, but it took about an hour on my #Ti92 calculator...

    Part 2 will therefore take days if I don't implement some kind of trimming feature that removes already cleared-out areas from the search-space. Even with proper trimming I do expect it to take over a day... Not sure if the calculator's batteries last that long 😉.

  26. I'm still on day 4 of #AdventOfCode. Part1 is done, but it took about an hour on my #Ti92 calculator...

    Part 2 will therefore take days if I don't implement some kind of trimming feature that removes already cleared-out areas from the search-space. Even with proper trimming I do expect it to take over a day... Not sure if the calculator's batteries last that long 😉.

  27. #adventOfCode day 8 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1.79 sec
    • Raspberry Pi 2: 57 sec
    • #ti92 Plus: hahaha, no - judging by the scale factor from previous problems, it'd take about two months, if it fit in ram, which it decidedly does not.

    Eric is sadistic putting the first big problem on a work night, huh?

    I'm lucky that breaking Part A into steps, then stringing together well-intentioned but non-optimal solutions to each step, was good enough to return an answer before the heat death of the universe.

    I'm not sure how to make my Part A more efficient - it is O(N2 ) and takes a good 500ms by itself on my PC. It'll be really interesting to learn faster ways from other peoples' solutions.

    My Part B is doing obvious repeated work. I left some performance on the table to solve the problem sooner using building blocks I already had from Part A.

    Getting this working on a TI-92+ or other retro platform seems like a daunting task!

  28. #adventOfCode day 8 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1.79 sec
    • Raspberry Pi 2: 57 sec
    • #ti92 Plus: hahaha, no - judging by the scale factor from previous problems, it'd take about two months, if it fit in ram, which it decidedly does not.

    Eric is sadistic putting the first big problem on a work night, huh?

    I'm lucky that breaking Part A into steps, then stringing together well-intentioned but non-optimal solutions to each step, was good enough to return an answer before the heat death of the universe.

    I'm not sure how to make my Part A more efficient - it is O(N2 ) and takes a good 500ms by itself on my PC. It'll be really interesting to learn faster ways from other peoples' solutions.

    My Part B is doing obvious repeated work. I left some performance on the table to solve the problem sooner using building blocks I already had from Part A.

    Getting this working on a TI-92+ or other retro platform seems like a daunting task!

  29. #adventOfCode day 7 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1.5 ms
    • Raspberry Pi 2: 41 ms
    • #ti92 Plus: >18 min

    After a couple of days where the TI-92+ has been disagreeable, it was refreshing to get a puzzle where the Lua solution Just Works without memory exhaustion. Though, speedy it ain't. And when I got my camera out to photograph the real calc, I found it had crashed, so you get a boring emulator screenshot of it working instead.... ;)

    I'm a little confused why it's this slow on the #ticalc: something about it seems difficult compared to the other working examples. I think it's because my approach generates lots of garbage so Lua's gc is working hard.

  30. #adventOfCode day 7 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1.5 ms
    • Raspberry Pi 2: 41 ms
    • #ti92 Plus: >18 min

    After a couple of days where the TI-92+ has been disagreeable, it was refreshing to get a puzzle where the Lua solution Just Works without memory exhaustion. Though, speedy it ain't. And when I got my camera out to photograph the real calc, I found it had crashed, so you get a boring emulator screenshot of it working instead.... ;)

    I'm a little confused why it's this slow on the #ticalc: something about it seems difficult compared to the other working examples. I think it's because my approach generates lots of garbage so Lua's gc is working hard.

  31. I got my #Ti92 calculator back in 1999, but I was today years old when I learned that one can store values at a given row/column inside a matrix:

    ```
    [1,2;3,4]->x
    5->x[1,1]
    x
    ```

    will yield
    ```
    [5,2;3,4]
    ```

  32. I got my #Ti92 calculator back in 1999, but I was today years old when I learned that one can store values at a given row/column inside a matrix:

    ```
    [1,2;3,4]->x
    5->x[1,1]
    x
    ```

    will yield
    ```
    [5,2;3,4]
    ```

  33. For anyone interested in the port of #LuaLang I'm using for #AdventOfCode on the #Ti92 Plus graphing calculator, I've uploaded the patched Lua sources and prebuilt binaries for TI-89 and TI-92+ to gitlab.cs.washington.edu/fidel
    Please let me know if you try it out!

    #ticalc #retrocomputing

  34. For anyone interested in the port of #LuaLang I'm using for #AdventOfCode on the #Ti92 Plus graphing calculator, I've uploaded the patched Lua sources and prebuilt binaries for TI-89 and TI-92+ to gitlab.cs.washington.edu/fidel
    Please let me know if you try it out!

    #ticalc #retrocomputing

  35. #adventOfCode day 6 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 5.1 ms
    • Raspberry Pi 2: 147 ms
    • #ti92 Plus: out of memory

    I'm steadily accumulating a backlog that I need to rewrite into C for the #ticalc. I'm really jonesing to switch back to the DOS-based HP 200LX palmtop... 640K RAM feels mighty spacious in comparison to the calculator. Maybe in my copious spare time I need to track down the memory corruption problem that's stopping the 16-bit MS-DOS Lua from working.

  36. #adventOfCode day 6 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 5.1 ms
    • Raspberry Pi 2: 147 ms
    • #ti92 Plus: out of memory

    I'm steadily accumulating a backlog that I need to rewrite into C for the #ticalc. I'm really jonesing to switch back to the DOS-based HP 200LX palmtop... 640K RAM feels mighty spacious in comparison to the calculator. Maybe in my copious spare time I need to track down the memory corruption problem that's stopping the 16-bit MS-DOS Lua from working.

  37. #adventOfCode day 5 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1.7 ms
    • Raspberry Pi 2: 49 ms
    • #ti92 Plus: out of memory

    The #ticalc doesn't make it through input parsing before exhausting memory. It will be necessary to rewrite in C again.

  38. #adventOfCode day 5 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 1.7 ms
    • Raspberry Pi 2: 49 ms
    • #ti92 Plus: out of memory

    The #ticalc doesn't make it through input parsing before exhausting memory. It will be necessary to rewrite in C again.

  39. My port of #LuaLang to TI-92+ had a bug where math.huge was accidentally NaN instead of +∞. This is now fixed, so we can infinitely loop the fun way.

    I like that the screen's slow update speed is clearly visible in the photo....

    #ti92 #ticalc #retrocomputing

  40. My port of #LuaLang to TI-92+ had a bug where math.huge was accidentally NaN instead of +∞. This is now fixed, so we can infinitely loop the fun way.

    I like that the screen's slow update speed is clearly visible in the photo....

    #ti92 #ticalc #retrocomputing

  41. #adventOfCode day 4 rewritten in C

    gitlab.cs.washington.edu/fidel

    This is a very simpleminded solution with no algorithmic fanciness: it's performing lots of repeated work in Part B.

    • PC - 1 ms
    • Raspberry Pi 2: 23 ms
    • #ti92 Plus: 10 seconds

    It was stunning to see a result returned in just 10 seconds on the #ticalc, rather than minutes for previous days. The performance difference between an interpreter and an optimizing compiler is stark! Also, the TI-92 doesn't have a floating-point coprocessor, which makes Lua in particular struggle to run at speed.

  42. #adventOfCode day 4 rewritten in C

    gitlab.cs.washington.edu/fidel

    This is a very simpleminded solution with no algorithmic fanciness: it's performing lots of repeated work in Part B.

    • PC - 1 ms
    • Raspberry Pi 2: 23 ms
    • #ti92 Plus: 10 seconds

    It was stunning to see a result returned in just 10 seconds on the #ticalc, rather than minutes for previous days. The performance difference between an interpreter and an optimizing compiler is stark! Also, the TI-92 doesn't have a floating-point coprocessor, which makes Lua in particular struggle to run at speed.

  43. The input for Day 3 of this year's #AdventOfCode is so long again, that I'm afraid that I will have to split it in order to allow my #Ti92 #TiCalc to process it...

    At least part 1 seems to be simple enough to finish in a reasonable time on that ancient hardware.

  44. The input for Day 3 of this year's #AdventOfCode is so long again, that I'm afraid that I will have to split it in order to allow my #Ti92 #TiCalc to process it...

    At least part 1 seems to be simple enough to finish in a reasonable time on that ancient hardware.

  45. I just completed "Gift Shop" - Day 2 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/2

    On my #Ti92 #GraphingCalculator. Part2 took quite a while to finish. Not sure if that's normal or if there's a bug...

    In any case, the result was correct, so I'm happy.

    git.grois.info/aoc-2025/tree/d

  46. I just completed "Gift Shop" - Day 2 - Advent of Code 2025 #AdventOfCode adventofcode.com/2025/day/2

    On my #Ti92 #GraphingCalculator. Part2 took quite a while to finish. Not sure if that's normal or if there's a bug...

    In any case, the result was correct, so I'm happy.

    git.grois.info/aoc-2025/tree/d

  47. #adventOfCode day 3 in #LuaLang, update: Execution time on my real #ti92 was 17m12s.

    The TI-92+ appears to run Lua programs at 1/10,000 the speed of my Raspberry Pi 2B: that is, take the RPi execution time, shift to the next SI size category (like milliseconds to seconds) then multiply by ten, and you'll be in the ballpark.

    Meanwhile, the Raspberry Pi is about 1/50 the speed of my desktop.

    #ticalc #retrocomputing

  48. #adventOfCode day 3 in #LuaLang, update: Execution time on my real #ti92 was 17m12s.

    The TI-92+ appears to run Lua programs at 1/10,000 the speed of my Raspberry Pi 2B: that is, take the RPi execution time, shift to the next SI size category (like milliseconds to seconds) then multiply by ten, and you'll be in the ballpark.

    Meanwhile, the Raspberry Pi is about 1/50 the speed of my desktop.

    #ticalc #retrocomputing

  49. #adventOfCode day 3 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 5.4 ms
    • Raspberry Pi 2: 156 ms
    • #ti92 Plus: ??? minutes (still running)

    The program runs successfully in TiEmu with the emulation speed multiplier unlocked. It has yet to be seen how long it'll take on the real calc...

    #ticalc #retrocomputing

  50. #adventOfCode day 3 in #LuaLang

    gitlab.cs.washington.edu/fidel

    • PC - 5.4 ms
    • Raspberry Pi 2: 156 ms
    • #ti92 Plus: ??? minutes (still running)

    The program runs successfully in TiEmu with the emulation speed multiplier unlocked. It has yet to be seen how long it'll take on the real calc...

    #ticalc #retrocomputing

  51. @everythingalsocan The keyboard is pretty great! It beats the TI-89's calculator keypad by a mile. I've keyed in some substantial TI-BASIC programs (like a space sim) but for Advent I'm doing my main development on a PC, then when I have time, optimizing the program, backporting from Lua 5.4 to 5.2, and transferring to the #ti92 using a USB-serial cable.

  52. @everythingalsocan The keyboard is pretty great! It beats the TI-89's calculator keypad by a mile. I've keyed in some substantial TI-BASIC programs (like a space sim) but for Advent I'm doing my main development on a PC, then when I have time, optimizing the program, backporting from Lua 5.4 to 5.2, and transferring to the #ti92 using a USB-serial cable.

  53. My plans for this year's #AdventOfCode were to try to do at least some of the riddles on my #Ti92 calculator.

    Turns out, already the first one is a challenge, due to the input size.

    It's so large, that one cannot even create a single string variable on th calculator that holds all of it.

    This is going to be fun.

  54. My plans for this year's #AdventOfCode were to try to do at least some of the riddles on my #Ti92 calculator.

    Turns out, already the first one is a challenge, due to the input size.

    It's so large, that one cannot even create a single string variable on th calculator that holds all of it.

    This is going to be fun.

  55. On real hardware the Day 2 puzzle takes about 4 minutes to run!
    #ticalc #ti92 #retrocomputing

  56. On real hardware the Day 2 puzzle takes about 4 minutes to run!
    #ticalc #ti92 #retrocomputing

  57. Adapted #adventOfCode 2025 day 2 in #LuaLang to use a much more efficient algorithm to fit on #ti92 Plus.

    gitlab.cs.washington.edu/fidel

    • Desktop: 1.1 ms
    • Raspberry Pi 2B: 20 ms

    This also found a bug in my port of Lua: math.huge was the wrong value, so a particular loop was never running.

    #ticalc #ti92

  58. Adapted #adventOfCode 2025 day 2 in #LuaLang to use a much more efficient algorithm to fit on #ti92 Plus.

    gitlab.cs.washington.edu/fidel

    • Desktop: 1.1 ms
    • Raspberry Pi 2B: 20 ms

    This also found a bug in my port of Lua: math.huge was the wrong value, so a particular loop was never running.

    #ticalc #ti92