My new project is a hexadecimal spite drawer/interpreter. It can give you hexadecimal data for a sprite you choose- when you do, each pixel is enlarged to 9 sq. pixels- and you can input a hex code and see what it looks like. It also displays random sprites as well as their hex codes. Another option is to edit sprites- when you do this, there are two options: input a hex code and then edit it, or use a sprite drawn to the top-left corner of the graph screen before the program was run. If I get this done, I'm thinking of making it work for 16x16 sprites- as of now, it only handles 8x8 sprites.
Questions, Comments, Concerns, Ideas?
Nice idea
didn´t make ti-freak somethink like it?
but you can insert somethink like paint with lines etc.
but nice idea
should it be written in TI-basic; AXE or asm ?
Which calc???
gaventemples31415 wrote:
Questions, Comments, Concerns, Ideas?

I'll cheat a tiny bit and offer you a way to grab a specific list of bits based on the hex numeral found in Str1:

Code:
expr("{"+sub("0,0,0,0,1,0,0,1,1,0,1,0,1,1,1,1,0,0,0",2inString("0124936DA5B7FEC8",Str1)-1,7

Feel free to trade out Str1 for an inner sub() command that extracts the nth digit from a larger string.
alex99:
Thank you.
Yes, he did, but they were different programs.
Is that a suggestion?
Thank you again.
TI-BASIC.
83-84

Weregoose:
So, I'm assuming this is for a single numeral rather than the entire code? It seems quite... advanced, but I'll try it. If it works properly, the program should be much faster. Thank you.
hmm, I wrote something similar that drew WBMP images from their hexadecimal representation. It's inefficient but provides a method for drawing hex things as pictures. Not sure if it helps, but it can't hurt.
Code:
:sub(Str8,5,length(Str8)-4→Str1
:{0}→L₁
:For(X,1,length(Str1
:inString("0123456789ABCDEF",sub(Str1,X,1))-1→L₁(X
:End
:1→Y
:{0}→L₂
:For(X,1,dim(L₁)-1,2
:16L₁(X)+L₁(X+1→L₂(Y
:Y+1→Y
:End
:"B"→Str2
:For(X,5,dim(L₁
:Str2+sub("0000000100100011010001010110011110001001101010111100110111101111",4L₁(X)+1,4→Str2
:End
:sub(Str2,2,length(Str2)-1→Str2
:L₂(1→A
:L₂(2→B
:FnOff
:PlotsOff
:AxesOff
:ClrDraw
:For(Q,1,B)
:For(P,1,A)
:If "1"=sub(Str2,8(Q-1)iPart(1+A/8)+P,1
:Pxl-On(Q-1,P-1
:End
:End

(from http://www.cemetech.net/forum/viewtopic.php?p=215577#215577 )

It can handle an image of any size (up to 255 on either side, or screen size), as far as I have tested. I need to do more rigorous testing of this code though.
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement