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 - chickendude
Pages: 1 ... 15 16 [17] 18 19 ... 55
241
« on: May 29, 2014, 08:30:01 am »
Haha but this isn't a PC game, and (practically) every Gameboy game uses it. Also, the majority of games are written for shells, and if you have an 83+ games written for shells will be smaller since they can reuse (probably Ion's) sprite code. It's also not much code to implement yourself. And using SMC here would be smaller than using an AppVar, as the AppVar takes up 9 bytes in RAM (for the VAT entry) and 3 bytes in archive (plus all the code to handle the AppVar). I guess it's not really a big deal, i just prefer having everything in one program when it's possible/convenient. @JWinslow23: I just loaded this up on my calc, it looks and works great, i was proud of myself for getting to 512
242
« on: May 28, 2014, 07:59:23 pm »
Why do you save the high score in an AppVar? It can't be more than 2 bytes. Just add two empty bytes in your program and save it there, ion/whatever shell you use will take care of the SMC for you. If you want it to be nostub you can do the SMC yourself by finding the program in RAM and overwriting the two high score bytes. People these days are AppVar crazy Anyway it looks really great, i'm going to download this now and send it to me calc
243
« on: May 20, 2014, 10:16:41 pm »
Wow this looks great! I also have to admit that i'm excited you've made the switch to assembly
244
« on: May 18, 2014, 04:06:06 pm »
There's also Ti-Lib that deeph was working on, which includes a "C-ified" version of GBA lib. You can see some examples of early versions of the library here. And i thought that the first two 8th notes shouldn't have been connected to the 16th notes, but i wasn't sure. Either way it looks really great. How long does it take to render things? I imagine there are a lot of calculations and things going on behind the scenes... Great work so far
245
« on: April 26, 2014, 07:49:07 pm »
Oops, i was looking at the decimal version Thanks for catching that (and that it actually saves two bytes), though i'm pretty sure it wouldn't have been an issue for Xeda
246
« on: April 26, 2014, 04:59:12 pm »
Xeda, i was just looking through the 24-bit division routine and saw this line:
or a \ sbc hl,de \ jr c,$+7 \ set 7,b \ jp $+4 \ add hl,de \ srl d \ rr e I was just wondering if instead of all those "jp $+4"s, if you tried using "set 7,b \ .db $38 ;jr c,... \ add hl,de \ ; ..." you might be able to save two bytes and 3 t-states (x 15 repetitions). Since the carry will never be set there, it'll just skip the add hl,de which it will read as part of the jr. When the condition is false, jr is actually faster (and, of course, smaller) than a jp.
247
« on: April 16, 2014, 07:08:09 pm »
I modified the sources for it to compile under (64-bit) Linux, see if this works better for you: http://www.mirari.fr/wo0HI made a patch and sent it to Buckeye Dude, they said they'd put it in. There are a couple parts that tried to use Windows functions that needed to be commented out/#if'd around and you need to add some includes: You'll need to add #include <functional> and #include <unordered_map> at the top (under #include "list.h"). [In hash.h] You'll also need to add the flag: -std=c++11 ..to g++ in the makefile: CXXFLAGS+= -I. -DUSE_REUSABLES -DUSE_GMP -DUNIXVER -DUSE_BUILTIN_FCREATE -std=c++11
248
« on: April 15, 2014, 09:53:55 am »
I can't help you at all with Axe, if you decide to incorporate some assembly parts i can (try to) help you out with that. Or if you want to talk about theory/algorithms. Inspired by your posts i actually started writing some simple parsers (in assembly), too.
249
« on: April 10, 2014, 03:27:01 pm »
Impressive as always, James! You keep putting the rest of us to shame, but i'm not complaining!
So [Alpha] is essentially a "strafe" button?
250
« on: April 10, 2014, 03:23:38 pm »
I think it's also a good way to run your batteries out real quick, but the second animation looks really nice. For some reason i keep seeing pokéballs appear...
251
« on: April 09, 2014, 09:09:32 pm »
That sounds pretty much like what we were talking about before, only the other way didn't require a special stack as it's processed on the fly. That sounds like a fine method to me, personally i would start working on converting something like "3+2(4-1)" into "3 + 2*4 + 2*-1". Once you get to that point, adding X shouldn't be too difficult.
252
« on: April 08, 2014, 05:09:24 pm »
253
« on: April 08, 2014, 02:16:25 pm »
I'm not sure, if that's how you're planning on doing it, you might want to reconsider your algorithm. I'm not sure what the best way to do that might be, maybe working one "group" at a time? For example "3+x(2x-3(1+x))-3x(x^2+2)+2x", you would first work "x(2x-3(1+x))" then "3x(x^2+2)" and finally you'd put it all together and try to simplify it.
That seems a good deal more complicated, i'm not really sure how i'd go about it.
254
« on: April 07, 2014, 08:28:59 am »
I'm just saying that once you're at step 3, you should have a simplified equation, so all you need to do is pass that last equation back to your routine for evaluating expressions once more. You can just overwrite the space you're working with (it should be smaller anyway), there's no need to copy it someplace else, evaluate that, then copy it back. Just evaluate what you have there the same as you did for all the parenthesis pairs, just like treating it as if there were one final set of parentheses around the equation: ( 2+4*(3/(7+1))+3 ).
255
« on: April 06, 2014, 06:29:35 pm »
Support for other variables is just find and replace. You would probably do that when you parse the numbers to convert them into whatever format you plan on using, just replace the variable with the value it holds.
Step 2 and 4 will use the same code to parse, since there won't be any parentheses to evaluate in step 2 (you've found the innermost parenthesis), so you should just need one last call to the parse routine (that handles the multiplication, division, etc.). I think step 3 is unnecessary.
EDIT: Also, there are more possible errors than just the parentheses, for example you need to make sure there is a number/expression before and after every operator (2+3* is invalid, as is +2+3*4) and ideally you'd have something in between the parentheses (not "2+3*( )" ), but i would set that aside for now. I wrote a little parsing routine last night just to see how difficult this project would be, currently it just converts the numbers into a 2-byte number (that fits inside hl/de/bc/etc.) and finds the first parenthesis.
Pages: 1 ... 15 16 [17] 18 19 ... 55
|