Skip to content
This repository was archived by the owner on Apr 22, 2025. It is now read-only.

Commit e7d11d1

Browse files
Clicker 2.0
1 parent 54ce8ca commit e7d11d1

File tree

2 files changed

+75
-24
lines changed

2 files changed

+75
-24
lines changed

README.txt

Lines changed: 75 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -1,19 +1,28 @@
1-
/*** Clicker 1.0 **************************************************************\
2-
* Author: twisted_nematic57 *
3-
* Date: 11/11/2024 [MM-DD-YYYY] *
4-
* License: Public Domain :) *
5-
* Product Type: TI-89 Titanium BASIC program *
1+
/*** Clicker 2.0 **************************************************************\
2+
* Author: twisted_nematic57 *
3+
* Date: 11/17/2024 [MM-DD-YYYY] *
4+
* License: CC0 :) *
5+
* Product Type: BASIC program *
6+
* Platform: TI-89 Titanium *
67
\******************************************************************************/
78

89
Clicker is a very simple BASIC program that enables you to perform repetitive
910
tasks on your TI-89 Titanium much quicker than you can on the Home Screen.
11+
Thanks to new features in v2.0, you can even store and later access intermediate
12+
calculation results just as you'd be able to do on the real Home Screen!
1013

1114
I created this program because I often use my calculator to count large numbers
1215
of things to guarantee the lack of human error. However, especially if my
13-
calculation history is populated, I find that repeatedly pressing the Enter key
14-
when doing `ans(1)+1` is not ideal, since the calculator will "miss" a couple
15-
counts while "processing" previous ones. It is very annoying, and I hate having
16-
to pull out my 36X Pro for anything.
16+
calculation history is populated, I find that repeatedly pressing the [ENTER]
17+
key when doing `ans(1)+1` is not ideal, since the calculator will "miss" a
18+
couple counts while "processing" previous ones. It is very annoying, and I hate
19+
having to pull out my 36X Pro for anything.
20+
21+
Ultimately, this program is just a fancy recursive function executor. You can
22+
use it to count huge numbers and do other very repetitive tasks without filling
23+
up your Home Screen with garbage.
24+
25+
- with passion, twisted_nematic57
1726

1827

1928
I. INSTALLATION
@@ -26,31 +35,73 @@ Send clicker.89p to your calculator. It will be in its own folder "AAA" for
2635
II. DETAILS
2736

2837
* Clicker is purely a TUI program.
29-
* To work it, you have to pass a starting value and an operation.
30-
- Think of the operation as a function of `x`. op(x) = {your operation}
31-
- When you press Enter, your starting value is plugged into op(x). The
38+
* It works by executing an operation on a starting value.
39+
- Think of the operation as a function of `x`. `op(x)` = {your operation}
40+
- When you press [ENTER], your starting value is plugged into `op(x)`. The
3241
result is then stored to `x`, and displayed on the screen.
33-
- As you keep pressing Enter, op(x) will be executed and its result stored
34-
to `x`, over and over again. It's essentially recursively executing the
35-
operation with its own previous output every time you press Enter.
42+
- As you keep pressing [ENTER], `op(x)` will be executed and its result
43+
stored to `x`, over and over again. It's essentially recursively executing
44+
the operation with its own previous output every time you press [ENTER].
3645
* You may press [CLEAR] to exit the program and go back to the Home Screen at
3746
any time.
47+
* Clicker will store your calculation history to a list of your choice, if you
48+
tell it to do so.
3849

3950

4051
III. USAGE
4152

42-
* Please make sure the variable `x` is undefined.
43-
* At the Home Screen, invoke Clicker with two arguments, in this order:
44-
- `x`: A number specifying the initial value to be plugged into op(x).
53+
* At the Home Screen, invoke Clicker with 3 arguments, in this order:
54+
- `x`: A number specifying the initial value to be plugged into op(x). Can
55+
be negative, complex, whatever.
4556
- `op`: A string containing any function of `x`.
57+
- `calclist`: A string containing the name of the list that the calculation
58+
history should be stored to upon exit. It must not start with
59+
a number, it must not contain a space character, and its
60+
length must be between 1 and 8. If this is set to 0 (integer),
61+
then calculation history will not be recorded at all.
4662
* The calc will switch to the PrgmIO screen and display "Ready." Now, whenever
47-
you press Enter, the current value of `x` will be plugged into the operation
48-
you specified, and its result stored to `x`.
63+
you press [ENTER], the current value of `x` will be plugged into the
64+
operation you specified, and its result stored to `x`.
65+
* Upon pressing [CLEAR], the program will return to the Home Screen, save the
66+
calculation history to a list if specified, and terminate.
67+
- Keep in mind the calculator starts to lag a bit and respond more slowly to
68+
quicker presses of the [ENTER] key when the length of the list reaches ~80
69+
or so.
70+
71+
Treating the program in ways that deviate from the specification above may cause
72+
unexpected and erratic behavior. No damage should occur to your calculator by
73+
using this program, but I do not claim liability for ANYTHING should undesirable
74+
events occur as a result of the execution, storage, transmission, or reception
75+
of this program.
4976

5077

5178
IV. EXAMPLES
5279

53-
* `clicker(0,"x+1")`: The first press of Enter will display a 1. Pressing it
54-
repeatedly will count upwards.
55-
* `clicker(2,"x^2")`: The first press of Enter will display a 4. Pressing it
56-
repeatedly will display successively larger powers of 2.
80+
* `clicker(0,"x+1",0)`: The first press of [ENTER] will display a 1. Pressing
81+
it repeatedly will count upwards. The calculation
82+
history will be discarded upon program termination.
83+
84+
* `clicker(2,"x^2","pow2")`: The first press of [ENTER] will display a 4.
85+
Pressing it repeatedly will display successively
86+
larger powers of 2. The calculation history will
87+
be stored to a list named `pow2`.
88+
89+
* `clicker(0,"x^2+c","mandel")`: Repeatedly pressing [ENTER] will quickly
90+
reveal if the complex number in `c` is part of
91+
the Mandelbrot Set. Calculation history will
92+
be stored to a list named `mandel`.
93+
94+
95+
V. CHANGELOG (LATEST-FIRST)
96+
97+
* Clicker 2.0: Adds ability to save calculation history to a list
98+
- CODE: Add functionality to keep track of clicking history in a list
99+
- Due to the (relatively) performance-critical nature of this code, some
100+
code duplication has taken place to enhance processing speed during
101+
execution of the program.
102+
- DOC: Reformat header, clarify some minor details
103+
- DOC: Update documentation to reflect changes in the code
104+
- DOC: Add one more example and update previous ones to align with the new
105+
version of the program's requirements
106+
107+
* Clicker 1.0: Initial release

clicker.89p

313 Bytes
Binary file not shown.

0 commit comments

Comments
 (0)