Omnimaga
Calculator Community => TI Calculators => TI-BASIC => Topic started by: Galandros on May 30, 2010, 10:16:44 am
-
Ok, I did the programs and they do the job. (small and feature Pure TI-BASIC grayscale (best viewed in a TI-84+SE))
I am not kidding about grayscale. Test if it looks good another calculators models. I messed a lot with = and its "reversed colour" token without success.
I guess there aren't bugs but I optimized as much as I could...
Controls are:
2nd to select/finish
up/down=next/back 9 tokens (not 10 because that is 2 more bytes in code)
right/left=next/back 1 token
Some programs may require.
Del to delete one token
Mode to see next screen of tokens
F1 to finish
Then look in Ans or Str9 the tokens you want.
Destroys Str0 and Str9. My convention in TI-BASIC coding is that Str0 is a temporary string, Pic0 a temporary picture and so on.
I will polish a bit more and release with proper donotreadme. I can say there is a reason in the naming of the programs. Oh, this will get release in ticalc, it is probably one of the best token selectors in TI-BASIC.
I did some odd decisions because of size optimization... You will see.
I will gladly reply to feedback and suggestions. Thanks.
EDIT: I released this to backup and don't forget to credit meishe91 and others.
EDIT2: I will try to come with a decent screenshoot in the final release.
-
Am I crazy or did I just read pure BASIC grayscale?
-
Am I crazy or did I just read pure BASIC grayscale?
Yes but kind of.
It is actually 3 level (white, grayish and black), done with ASCII and probably only looks good in my calculator (TI-84+SE).
You only see gray in the token you select (it has a lighter colour tone of the rest of the screen black pixels and black underscore bellow) because I am erasing and redrawing the character during the getkey loop.
In UTI there is discussion of this kind of made grayscale and Weregoose has a large pictures with all mixtures of TI-BASIC tokens to achieve different patterns of gray sprites. So I am quite serious about Pure TI-BASIC grayscale. It is VERY limited. With luck, you can do a simple ASCII game with one symbol being grayish (some imagination may be needed).
EDIT: picture may have been lost in the Internet because of UTI move but here's a topic about it http://www.unitedti.org/forum/index.php?showtopic=8828&view=findpost&p=134331
I might have a copy in my hard drive.
-
Ah, found it:
(http://www.unitedti.org/forum/uploads/post-383-1128442228.gif)
It's in this post:
http://www.unitedti.org/forum/index.php?showtopic=3586&view=findpost&p=57778 (http://www.unitedti.org/forum/index.php?showtopic=3586&view=findpost&p=57778)
There's a similar image made by Weregoose here:
(http://weregoose.unitedti.org/files/duocharmap.png)
EDIT: Sorry about the size.
EDIT2: And the horizontal scrollbar. http://www.explosm.net/comics/2030/ (http://www.explosm.net/comics/2030/)
-
Yes, that is exactly it.
I think my program has all visual tokens with 1 symbol of width we need. AXSYMBZ has all non accessible from TI-OS menus like Catalogue and statistics and ATOKZ2.8xp has all of them.
What do you think about the order of tokens and usage?
The programs were shrunk a few more bytes on my calculator and is all I can reduce. After I receive feedback and write the ignoreme, I mean readme, I will release in ticalc since is one of the best tokens picker and the only with grayscale. ;D
The grayscale I note in the program is that the current selected token is a bit lighter than the other tokens on the screen.
Do you think there is any problem saying it has grayscale? People may bash me with it being flicker and not grayscale. (especially TI-83+ users) I though it is quite funny to say this has grayscale.
-
Yes, that is exactly it.
I think my program has all visual tokens with 1 symbol of width we need. AXSYMBZ has all non accessible from TI-OS menus like Catalogue and statistics and ATOKZ2.8xp has all of them.
What do you think about the order of tokens and usage?
The programs were shrunk a few more bytes on my calculator and is all I can reduce. After I receive feedback and write the ignoreme, I mean readme, I will release in ticalc since is one of the best tokens picker and the only with grayscale. ;D
The grayscale I note in the program is that the current selected token is a bit lighter than the other tokens on the screen.
Do you think there is any problem saying it has grayscale? People may bash me with it being flicker and not grayscale. (especially TI-83+ users) I though it is quite funny to say this has grayscale.
That's as close as you can get to TI-BASIC grayscale on my TI-83 Plus. The only time I've seen nearly flickerless BASIC grayscale was when I tried it out with a single pixel turning on and off with nothing else in the loop. Can't find a use for that, though. :)
-
Yes, that is exactly it.
I think my program has all visual tokens with 1 symbol of width we need. AXSYMBZ has all non accessible from TI-OS menus like Catalogue and statistics and ATOKZ2.8xp has all of them.
What do you think about the order of tokens and usage?
The programs were shrunk a few more bytes on my calculator and is all I can reduce. After I receive feedback and write the ignoreme, I mean readme, I will release in ticalc since is one of the best tokens picker and the only with grayscale. ;D
The grayscale I note in the program is that the current selected token is a bit lighter than the other tokens on the screen.
Do you think there is any problem saying it has grayscale? People may bash me with it being flicker and not grayscale. (especially TI-83+ users) I though it is quite funny to say this has grayscale.
That's as close as you can get to TI-BASIC grayscale on my TI-83 Plus. The only time I've seen nearly flickerless BASIC grayscale was when I tried it out with a single pixel turning on and off with nothing else in the loop. Can't find a use for that, though. :)
I do. It is one of my old TI-BASIC projects I want to finish: a picture editor. The cursor is a gray pixel. ;)
-
Wow I still remember the second pic, that brought back some old memories.
In BASIC the closest thing to grayscale I ever had was While 1:Dispgraph:Disp:End and it flickers very bad
Nice program Galandros btw, it should be useful to some people.
-
In BASIC the closest thing to grayscale I ever had was While 1:Dispgraph:Disp:End and it flickers very bad
Nice program Galandros btw, it should be useful to some people.
Thanks.
Funny, I was going to post about that piece of code. I was amazed to what I saw in my calculator.
It flickers bad but not that bad in a TI-84+SE and a very simple ASCII game is possible. I am so gonna do it, most for my amusement. I just need a good and simple idea to implement. Any ideas? (if I knew some easy yet addicting game like snake but not as much repetitively coded)
-
I've managed to get two level grayscale in BASIC before, but it was just ASCII flickering.
-
I wish Output() on the SE calcs was as fast as Locate on the Casio FX-9860G. Even without running Kucalc's CPU speed modifier add-on, it's still insanely fast. The bad thing, though, is that it doesn't word-wrap...
-
Saved one more byte. ;D And more important, I will upload to ticalc today. I just need to lock the programs for not bloating user menu of edit programs.
EDIT: uploaded, pending now.
I took some time because of study and sport competition. So progress on calc stuff is going to be relatively slow for a while during summer. :(
-
Aw sorry to hear, I hope you don't vanish completly like last Summer though, I was sad to see you go :(
Glad the program will be available soon, though :)
-
Sounds cool!
I hope you don't vanish, but have fun! ;D
-
Wait, why am I getting credit?
Also, isn't that second picture by Weregoose a chart of Dual-Layers?
This seems cool. I will check this out later when I have a chance.
Last thing...I just made a pretty legit looking 4-level grayscale test in TI-BASIC...
It isn't anything special and I doubt it would be good in a program but it looks really nice on the graphscreen I think.
ClrDraw
0
While 1
Text(-1,Ans,Ans,"888
Text(-1,Ans,Ans,"88_
Text(-1,Ans,Ans,"8__
End
I realize similar things have been accomplished before but I just thought I'd share it because it is really practically flickerless (I only see a tiny little flicker thing like every few seconds). I'm on a 84+ by the way. Sorry, just got excited :P
-
I'm really tempted to mess with that stuff on Casio FX-9860G/Graph 85 at one point. The homescreen text display on that thing is so friggin fast
-
That's pretty cool. I like how it's four level, gradient style. ;D
-
Ya, I was trying to do it on the homescreen at first with Output( but then remembered that the Text( is faster.
-
It is?
There's only one problem: Hardcoding is faster than Ans.
As in Text(-1,0,0,"Hi is faster than 0:Text(-1,Ans,Ans,"Hi
-
isn't Ans faster only for mathematical operations?
like ans2 is faster than 22 albeit by a very small fraction of a second, but not when displaying things?
-
I've heard somewhere (I don't remember where, but it might be on TI|BD) that pxl-Test(X,Y:If Ans is faster than If pxl-Test(X,Y. Is there a way to predict whether using Ans in some expression is faster or slower than using the original expression itself?
-
Oh ya. I forgot that. Oh well, doesn't make much of a difference :P I think nemo is right though (I just got in the habit from seeing Weregoose's code :P).
-
I didn't knew Text was faster than Output? In my old tests, Output always seemed faster...
-
I didn't knew Text was faster than Output? In my old tests, Output always seemed faster...
I think I've gotten the same test results. Output seems faster. Huh... :)
-
Yeah, I only tried in OS 1.12 through 1.14, though. Maybe it changed on the 84?
-
Oh, I could have sworn that you said Text( was faster, but I guess I remember it wrong or misread. Why does my little test program work on the graphscreen and not the homescreen then?
-
Idk what you mean x.x
-
If you swap the Text(s with Output(s it doesn't work. Or are you talking about a different thing?
-
oh it's because on home screen output is aligned on a grid. To display a char at row 16 column 0 you would use Output(3,1,"HI" instead of Text(-1,16,0,"HI"
-
Well I just mean it is really flickery when you use Output( as opposed to Text when it seems almost flickerless.
By the way, what was your old test to see which is faster?
@ztrumpet
What test did you do?
-
oh ok. Idk then.
As for the test I just took Zelda DLQ and converted it to graph screen, and got about half the speed I had
-
Oh ok.
-
Wait, why am I getting credit?
Because I used the reordered extra characters in this: http://ourl.ca/5906
-
Oh ok, that's what I thought but I haven't had time to use this so wasn't sure.
-
When I worked on setting up the sprites for Elmgon, I tested for speed and Output(always seemed faster. :)
I tested with this:
For(A,1,5
Output(1,1,sub("123451234",A,5
End
and
For(A,1,5
Text(-1,0,0,sub("123451234",A,5
End
-
Well actually, if I'm reading this right (I'm using the timer commands) Text( is actually a little bit faster. I could be wrong though and be reading the results wrong.
-
What are your OS versions by the way? I am curious if the speed might vary between them and calc models. Also I think stuff on home screen was slower with Omnicalc, xLIB or Celtic III enabled
-
I'm on a 84+ with 2.43 running. I don't think xLib was enabled but it might have been. I can test again later when I make sure it is turned off.
-
It's interesting, though. That said, I think Text(-1 is better due to the higher freedom we get with that. It can be larger, though, since rows/col aren't multiple of 8/6 divided by that amount, meaning more numbers taking 2 digits, wasting one byte of RAM.