Show Posts

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 - Matrefeytontias

Pages: 1 ... 49 50 [51] 52 53 ... 133
751
ASM / Re: I need to load page x of an app without calling code.
« on: December 14, 2013, 02:44:34 am »
You must not think of flash and RAM as two separate memories. Memory $0000-$7FFF is flash, and $8000-$FFFF is RAM.

To make a flash page available, just write its number to port 6 to put it in $4000-$7FFF, and port 5 to put it in $0000-$3FFF (a flash page is 16384 = $3FFF bytes).

When code of an app is executed, all addresses between $4000 and $7FFF refers to its own code (since it always takes one full page), so if you want to copy something in RAM, only a ldir instruction is enough.

752
News / Re: Contest 2013 - Public Vote Ends Tonight!
« on: December 14, 2013, 02:36:33 am »
So ? Results ? ;D

753
TI-Nspire / Re: [C] F-Zero : trackSpire
« on: December 08, 2013, 01:42:28 pm »
DJ_O well the original SNES game uses a tilemap, not a bitmap :P and I don't think resolution is quartered either - though I may be wrong since I last played it a long time ago.

754
TI-Nspire / Re: [C] F-Zero : trackSpire
« on: December 08, 2013, 10:40:21 am »
Necro bump,

I finally decided to go in the F-Zero directory, press Ctrl+A then Del. I restarted everything from scratch without replicating many errors I made, including using floats. Now the engine runs incredibly faster than the last version at maximal resolution (1*1), where the previous engine used quartered resolution (2*2). Also, this new version projects variable-size tilemaps instead of bitmaps.

I'll soon post a screenshot.

EDIT : here you go.



Don't worry, both the quality and speed are not nearly as bad on-calc. You can try it if you want. You'll need F-Zero.tns and textures.tga.tns in the same directory, w/e it is. For now you can't do much : use the clickpad/touchpad to move around. Everything that is black means it's outside the tilemap.

755
Math and Science / Best way to use quaternions ?
« on: December 08, 2013, 08:33:23 am »
Hey guys,

I've recently got some interest for quaternions, since I couldn't take Gimbal Lock anymore. So what I did is write a small quaternion lib in Axe, but realized I could do at max 15 FPS, where with a classical 3*3 XY rotation matrix I could do more than 56 FPS. So I was asking myself, what's the best way (by that understand : the fastest, the one that uses the less calculations) to use quaternions ?

Right now I use this technique :
  • Start with an identity quaternion and its conjugate.
  • Game loop :
    • Multiply each vertex by the quaternion and its opposite : v' = q * v * q-1
    • If an arrow key is pressed, multiply the quaternion by another quaternion representing the correct rotation : if left arrow is pressed, multiply by a quaternion traducing -4° around the (0,1,0) axis, if it's the up arrow multiply it by a quaternion traducing 4° around the (1,0,0) axis etc. I build a quaternion out of an axis and an angle : q = sin(Θ/2) * axis + cos(Θ/2)
    • After that, get the conjugate of the resulting quaternion.
    • Get back to the beginning.
I'm not quite sure this is the best way to do it since multiplying two quaternions implies 16 multiplications, and rotating a vertex by a quaternion implies 2 quaternions multiplications. Any idea ?

756
TI-Nspire / Re: Jumping Squares 2
« on: December 08, 2013, 08:21:41 am »
Windows Media Player fails too :(

757
TI Z80 / Re: VVVVVV
« on: December 07, 2013, 07:34:58 am »
That's true, remember how Vlambeer was amazed when he learnt about my Super Crate Box port :)

758
Axe / Re: On Calc Axe IDE
« on: December 07, 2013, 02:50:31 am »
This is because some tokens are 2-bytes tokens that you need to take care of. There is a number of bytes that, if encountered, marks a 2-bytes token, but I don't remember them all.

Also, why do you put {Y1+1} in A if it's to overwrite it with {Y1} two lines later ?

759
Axe / Re: On Calc Axe IDE
« on: December 06, 2013, 09:17:46 pm »
First, files only work with archived variables, so make sure your call to GetCalc doesn't return 0.

Second, >Tok takes a pointer to a token, not the token itself. Passing Y1 as an argument won't work, so you'll have to copy the byte you want to check in RAM, then display it from there. That will do something like Disp Select(°A,{Y1}->A)>Tok.

760
TI Z80 / Re: [axe] GLib model editor (WIP)
« on: December 05, 2013, 03:40:18 pm »
Awesome :D sure shows how good both your program and GLib are :D

761
HP Calculators / Re: FILLPOLY_P: Insufficient memory
« on: December 04, 2013, 09:51:42 am »
Aren't you missing a parameter ? In the text you quoted, it seems that you must pass 3 parameters (4 with alpha) and you passed 3 parameters including alpha.

762
TI Z80 / Re: [axe] GLib model editor (WIP)
« on: December 03, 2013, 04:57:22 pm »
I don't think grey is that useful since the cursor is already on the selected vertex.

763
Axe / Re: Help Request - ERROR INVALID TOKEN
« on: December 02, 2013, 04:49:47 pm »
Don't know why noone said that already : Axe doesn't have a randInt( routine. If you want randInt(X,Y), do rand^(Y-X)+X instead.

764
News / Re: Contest 2013 Calculator Gaming Roots - Public Vote
« on: December 02, 2013, 01:03:56 pm »

765
Yes, but of course you'll lose one bit of precision. But I don't think that matters much.

Pages: 1 ... 49 50 [51] 52 53 ... 133