This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Messages - bilyp
1
« on: April 10, 2013, 11:38:00 pm »
So, after I bought my fancy new TI-84+, after having lost my previous TI-83+ for about 5 months, I looked at my empty program list, and felt a sad, empty feeling within me. I have concluded that this feeling is because I need more calculator programs!
Which brings me to my main question... What are the ESSENTIAL (ok, some games may not be essential, but I want those too!) programs, apps, tools, any things for your calculator?
So... comment with your favorite calc programs!
2
« on: September 07, 2012, 05:47:30 pm »
I think I found a bug...
whenever you use the #define command, if the text that the variable equals is longer than the name of the variable, it throws an unhandled exception.
for example,
#define word k
disp "k"
works, but
#define word applesauce
disp "word"
does not, and it appears that it is because applesauce is longer than word. The bug appears to be in the latest version.
3
« on: March 19, 2012, 08:14:53 pm »
I ordered mine right when it came out, and it should arrive around April 7. I don't know, but maybe there could be a section of this forum, or something like that for people who did get one. Omnimaga has been great for programming calculators and I think that a raspberry pi (sub)forum would be awesome!
4
« on: November 24, 2011, 01:56:15 pm »
Hi, I was wondering how you can store more than one byte of data to an appvar. Whatever i try, it can only store one byte, or just crashes my calc. I want to store my level data:
:[000000000000] :[000000000000] :[000000000000] :[000000000000] :[220000000000] :[112000000022] :[331220002211] :[333112221133] :.And then there are 3 more of these, so 4 "screens" of data, 192 bytes total :[011414] -> GDB1 .This is the player data, so the first byte is the "screen" you are on, the next, the x value, and finally, the y value. 3 bytes total.
All of the map data is currently being absorbed into the main program, and accessed as {GDB1-(location in comparison to GDB1)}, which works fine. I don't want to have so much data taking up space in my program, and would rather have multiple worlds, etc, in external memory. (as appvars)
My question would be how to store the full 195 bytes of data to an appvar, then read it back into GDB1, without affecting the format. Thanks for your time.
5
« on: November 17, 2011, 09:56:57 am »
Thanks! I just tested and it worked! You were right I was going to need that routine in many places.
6
« on: November 16, 2011, 10:14:15 am »
Like I said, the player is 16 tall, and 8 wide. The X and Y values correspond to the top left corner of the character, and i want the middle of the bottom part of the character to see if its in a block, and the block below that to see if it is standing on a block. And even though they are 8*8 tiles, I still think that it needs to be pushed down, please correct me if I'm wrong.
7
« on: November 16, 2011, 12:29:40 am »
So I have a matrix (12x8) for a tilemapper that I wrote... :[000000000000]→GDB1 :[000000000002] :[000000000001] :[000000000001] :[220000000001] :[112000000021] :[331220002213] :[333112221133]
and a routine that displays it: :For(A,0,7) :For(B,0,11) :Pt-On(B*8,A*8,nib{A*12+B+(GDB1*2)}*8+Pic1) :End :End
and then a routine to detect if you are in a block, and store the block ID to C, where B = X+2, A = Y + 16. (the character is 16x8) :If nib{B*12+A+(GDB1*2)}→C
but even though the core of the routines :nib{VAR1*12+VAR2+(GDB1*2)}
are the same, only the first one shows correct blocks. The second one sometimes detects non existent blocks, and doesn't detect some existing blocks. Is there something wrong in my syntax? Please help, I could not find the reason. (attached is the source of the file with the buggy routines)
8
« on: November 15, 2011, 08:08:58 pm »
Oh... sorry. Thanks though!
9
« on: November 15, 2011, 08:06:06 pm »
I feel so dumb asking this.. but how do you +1 a post? I've looked and looked, but to no avail. I feel like I should know... :'(
10
« on: November 15, 2011, 07:40:43 pm »
I ended up posting in the Axe section (thank you DJ_O), and I did get a response, from Quigibo. I'll quote it here in case anyone wants to see the formula. A surprisingly accurate approximation for arctangent is:
atan(x) ≈ (π/2)*x/(abs(x)+1) Which, when converted from radians, can be implemented in fixed point notation as x*64//(abs(x)+256) however this has overflow problems in the numerator. The best way to fix this issue is to split the equation into 2, one for large numbers, and one for small:
:Lbl atan :If abs(r1)+256→r2>768 : Return 64-(16384//r2) :End :Return r1*64//r2
11
« on: November 15, 2011, 07:34:51 pm »
Wow. That is perfect, exactly what I needed! Thank you for this, it answers my question!
12
« on: November 15, 2011, 01:10:55 am »
How would you go about doing trigonometric functions in axe, like the arctan (tan -1()), to calculate the reverse of the tangent or sine of an angle. I looked all over the internet, but all I could find was that tan(X) = sin(X)/cos(X), nothing about calculating the arctangent.
13
« on: November 14, 2011, 07:42:34 pm »
Another question... How would you go about doing trigonometric functions in axe, like tan-1() or sin-1(), to calculate the reverse of the tangent or sine of an angle. I looked all over the internet, but all I could find was that tan(X) = sin(X)/cos(X).
14
« on: November 13, 2011, 11:49:16 pm »
Well, actually collision testing is done by comparing the three points (first line point, second line point, and ball location) and testing if they are collinear, not by pxl-checking. but the 3-4 ticks before refresh is a good idea!
EDIT: Sorry I meant cycles, not ticks.
15
« on: November 13, 2011, 11:36:14 pm »
Haha sorry about that. Thanks for not having me banned though! The game is not nearly finished, so far i have only spent my time on the line rotation, but yeah, those were mockups. Here is a real screenshot! As you can see, it needs a lot of work, especially the ball collision...
|