Recent Forum Posts

Looking for something?

Don't see a match? Post to the community

From categories:
page »

I'm sure a QR code generator is possible, but then there are some problems to consider. Devices that would try to read completely random QRs would have a hard time trying to find out what the QR is for. Another is that there are many types of QR codes. And finally, you need to make long list or big matrix, and you need to have the squares in the corners pregenerated.


So, just as a question and maybe future project, do you think that making a QR Code generator (or DataMatrix or anything that can store text) is possible ?

QR Code generator ? by FlibidiFlibidi, 18 Nov 2019 20:22
print("Yes, it is Python. I don't know what version of it Wikidot reads it as.")
languages_list = ["TI-Basic" , "BASIC" , "Scratch" , "JavaScript" , "Java" , "Python" , "SeaSharp" , "C"]
print("Languages I know-ish:")
for i in range(8):
print("You are very welcome.")

Not sure if that list recall was coded correctly, but it's still Python.


Yes, it is Python. I don't know what version of it Wikidot reads it as.
Languages I know-ish:
You are very welcome.


Re: HELLO WORLD by Bio_Hazard1282_rPi3Bio_Hazard1282_rPi3, 17 Nov 2019 20:24

XD (It's in Python right ? I haven't take a look yet (I'll do it when I stop doing 5847 differents things at the same time))
Anyway thanks for the greetings !

Re: HELLO WORLD by FlibidiFlibidi, 17 Nov 2019 11:54
Re: Vandaler
TrenlyTrenly 17 Nov 2019 01:25
in discussion Forum 101 / Site Feedback » Vandaler

If you believe a person to be a spammer or spambot, or a site to be in violation of the WikiDot TOS, you can always flag the user as you did. However, you can also create a report at for their account to be reviewed.

Re: Vandaler by TrenlyTrenly, 17 Nov 2019 01:25

I checked his/her contribution activity, and I see that they are only changing their own page. Majority of people don't understand Chinese (I do however), but it seems that they are only making changes to their site.

Has this user spammed other sites promoting their page?

Link to their page:


Re: Vandaler by Bio_Hazard1282_rPi3Bio_Hazard1282_rPi3, 16 Nov 2019 14:37
LaclaleLaclale 16 Nov 2019 12:02
in discussion Forum 101 / Site Feedback » Vandaler

xdxhrrd117xdxhrrd117 is one of QQ spammer! Have you banned and turned on "abusive"?

Vandaler by LaclaleLaclale, 16 Nov 2019 12:02

What if I also wanted to store -1 instead of 1 every other time?

No, not in pure TI-Basic. The built-in language does not support any commands that retrieve that information. However, a simple way to determine if a calculator is a monochrome or color…


For the output, one is color and zero is monochrome.

You can use Celtic 3 (Flash app library) to retrieve that info though (Link to .zip folder will be posted tomorrow).

Celtic 3 commands for calc info:

det(4 - RAM memory
det(4,1 - ROM memory
det(4,2 - Product ID, First 10 hex digits from the about screen
det(4,3 - OS version (Note that the period will be bugged, it still works correctly. E.x. "2CubicReg55")

real(11    ;Same command in xLib
0- 83+
1- 83+SE
2- 84+
3- 84+SE

EDIT: The .zip archive has been uploaded to forum attachments. Please see the top right of the page.


Is there a way to identify the calculator model in a program? I have a program I first wrote for the TI-83/84. I have modified the program for the TI-84 Plus CE with its larger screen size. I would like to identify the calculator model in the program and adjust the screen output within the program. The model is available from the keypad through MEM->About, but can that information be accessed via a program?

Calculator model identification by jimaxjimax, 15 Nov 2019 22:13
print("Hello, Flibidi. Welcome to TI|BD. It's great that you made those programs you stated above!")
langs = 3
print(f"So you know {langs} languages, and want to learn Python?")


Re: HELLO WORLD by Bio_Hazard1282_rPi3Bio_Hazard1282_rPi3, 15 Nov 2019 19:21

Hi !
Some years ago, I watch a tutorial about ti basic, then it asks me to make a snake (so I made one). Then I thought I could make a 3d maze (so I made one). However the tutorial I followed was very basic, so my programs works… and aren't optimized at all (the maze one is so big), and then I remembered this site, I saw there was tutorials and here I am.
Languages:French (native), English (not that much though), and ti-basic (that's all, even if I want to try Python)

HELLO WORLD by FlibidiFlibidi, 13 Nov 2019 18:46

Your version doesn't actually save any memory, both are 72 bytes. If you wanted to save 8 bytes by using Ans you would have to do this:

Repeat (Ans>71)(Ans<95)not(sum(Ans={75,81,85,91

Or to save a little more memory…

DelVar K
Repeat (Ans>71)(Ans<95)not(sum(Ans={75,81,85,91


If you use the patterns in the numbers, you can get it down to this:

DelVar K
Repeat (K>71)(K<95)not(sum(K={75,81,85,91

Let me know if you would like any explanation on how it works

Thanks. That was all very helpful. I've modified my code based on what you said, and it works fine now. The basic purpose of it is to store 1 to [A](3x3) based on which number key you pressed (1 through 9), so the 3x3 grid of numbers corresponds with the 3x3 matrix. There's probably a better way, but this is what I've come up with.

:Repeat A>7:.1getKet→A
:If A>7:7→B
:If A>8:5→B
:If A>9:3→B

So what I gather from your code, is this:

Set up a 3x3 Matrix
Wait until user presses a keycode above 70
If keycode is in the interval (70,80], B is 8
If keycode is in the interval (80,90], B is 6
If keycode is in the interval (90,105], B is 4
You take the iPart of the keycode, which will be in the set {7,8,9, 10}, subtract C, and add 10fPart of the keycode which will be in the set {1,2,3,4,5}

-- continued in next box --

This is where it gets tricky. What we know now is that A will be one of the numbers in the set {8,9,10,11,12,13,14,15}, minus C. It is important to note that certain keys such as 72 and 81 will result in the same A although they have different B's. It would be helpful to know what C is, since I don't see it being set anywhere in the code.
-- continued from above --
"If  int(A/3)" will always be true, as long as A is not 0 or 2 so A equals A-1. 
At this point, A is one of {7,8,9,10,11,12,13,14} minus C
If you take int(A/3)+1, and store it to X, it has to be in the set {1,2,3}, so int(A/3) has to be in the set {0,1,2}. Which means A has to be between 0 and 8. Because of this, C has to be either 6 or 7
3fpart(A/3) also has to be in the set {1,2,3}. This means that A cannot be divisible by 3, since it will result in 0 if it is. 3fpart(A/3) can result in {0,1,2}, so you really should be using 1+3fpart(A/3)

I probably didn't explain all that the best I could have, but basically the lines where you set X and Y are dependent upon what A and C are. You should change $3fpart(A/3$ into $1+3fpart(A/3$ because if A is divisible by three it will result in 0. If C is anything other than 6 or 7, your code won't work either. I think you may need to double check your if statements or make sure you're using int( in the right way. If you need more help, posting the full code as well as the purpose of the code would be the easiest way

Use the [code] block to insert code.

"Code will look like this→Str1
Disp Str1

I see what your problem is, make sure X and Y is 1, and not 0 or some other number.


:Repeat A>7
:If A>7:8→B
:If A>8:6→B
:If A>9:4→B
:If int(A/3):A-1→A

Sorry, I'm not sure how to post it in a separate box

Can you post a snipper of code where the problem is? Storing 1 to [A](Y,X) shouldn't cause problems. Unless X or Y somehow changed and was greater than 1, a INVALID DIM error would be thrown because the dimension of [A] is 1x1, so the only reason that you are getting that error is X or Y is greater than 1.


page »