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

Pages: 1 ... 127 128 [129] 130 131 ... 135
1921
The Axe Parser Project / Re: Axe Parser
« on: February 23, 2010, 04:50:56 pm »
Oh, I though it was in 15MHz mode by default... I'll try that.  But wouldn't safe copy make the routine really slow?  And if that's the case, why not just use GrBufCpy since isn't that what it does already?

I currently have reading and writing to ram working now, it was surprisingly simple to add.  But as I was using it, I realized that it would be an extreme convenience to have built-in data structure support that allows for adding, removing, reading, and writing data from a predetermined stack in ram.  I'll have to come up with some really clever syntax though, it'll be tough.

1922
The Axe Parser Project / Re: Bug Reports
« on: February 22, 2010, 09:29:16 pm »
Yes I did.  You have to add >Dec when displaying numbers in base 10.  Otherwise, it things you are displaying the string at the location of B.  I really couldn't think of any other way to have the same command be able to display in 2 different formats since it doesn't know which one you're talking about.

Edit: ninjad'

1923
The Axe Parser Project / Re: Features Wishlist
« on: February 22, 2010, 09:20:26 pm »
Well I haven't worked with Axe or Assembly very much (not Assembly much at all) but is 150 labels/subs really very necessary?  Maybe its just my BASIC attitude towards labels but it would seem to me that you wouldn't need to use them that much. 
Its not that labels in particular that worry me, its the naming of strings, sprites, pictures, etc. that you often need to name a decent amount.

1924
The Axe Parser Project / Re: Axe Parser
« on: February 22, 2010, 09:13:31 pm »
Just fyi, 1.5x slower was an upper estimate.  Most games will spend the vast majority of their CPU time drawing sprites and copying the buffer to the screen, which is same speed as pure ASM anyway, so there will be no considerable difference with regular asm speed.  The slowdown would only be noticeable if you had to do intense computations like trying to do 3d graphics or large particle effects or something like that.  In the case where you do need some "really fast processing" you can always write it in assembly and include it in the program.  You could for instance import an entire ray casting engine into the program but write the actual game mechanics in axe parser and it would probably be a lot easier to program than if the entire thing were assembly and run at about the same speed.

@ProphetsDementia
If you want to see how it works, download the latest version.  It comes with 4 example programs so you can get an idea about how the syntax looks.  I also included a complete instruction set.

I am trying very hard to make sure that every new version only adds features and is reverse compatible with older versions.  Occasionally I may have to make some changes, but they will always be minor and easy to fix.

1925
The Axe Parser Project / Re: Features Wishlist
« on: February 22, 2010, 08:52:41 pm »
I wish I could name labels and strings and pictures of arbitrary length!  The problem is that the calculator has EXTREMELY limited memory.  Each individual label currently takes up 5 bytes.  That is 2 bytes for the location the label is pointing to, 1 for the type, and 2 for the letters.  I need these to be in a continuous array in ram.  The largest free ram is 768 bytes and so rounded to 750, that's exactly 150 Labels.  If each label was 7 letters, you would only be allowed 75 labels.  Unless I can somehow figure out how to read and write data directly to ROM, there really just isn't enough memory to keep track of long names.

1926
The Axe Parser Project / Re: Features Wishlist
« on: February 22, 2010, 06:11:06 pm »
You can still leak in Axe Parser, but only by calling a subroutine that keeps calling itself in a non-terminating infinite loop.  I mean, you can have subroutines call themselves if you want to have a recursive subroutine, but it has to actually exit somewhere.  All the other commands are leak-proof unlike basic.

The next update will definitely have Else, but I'm not sure if it will have the Ternary operator since I have so many other things to do.

Btw, the buffer is stored in plotSScreen.  What would be the use of copying the screen to the buffer?  All of the drawing commands draw to the buffer anyway.

1927
The Axe Parser Project / Re: Axe Parser
« on: February 22, 2010, 02:51:36 pm »
I've never used xLib, but if there's any commands from there you would like to see in Axe Parser, you can always request them.

1928
The Axe Parser Project / Re: Features Wishlist
« on: February 22, 2010, 02:48:37 pm »
Yeah, the sprites right now are not clipped.  I was thinking of adding that, but I was kind of in a hurry.  That would be great if you can optimize a routine for me!  I need it optimized for size, not speed though.

I'll get working on Else soon.  You can do this in the mean time:

If <statement>
<code to do if true>
Goto 1
End
<code to do if false>
Lbl 1
Delvar 1

The asm code generated from this will be identical to the code generated when using Else.

1929
The Axe Parser Project / Your Projects - Post and Critique
« on: February 21, 2010, 10:00:35 pm »
If you have any Axe Parser projects you'd like to share, post them here.  If its a massive project, you can probably just create a separate thread for it, but this is mostly for small projects, demos, and even code snippets.  I can't wait to see what you all come up with  :)

1930
The Axe Parser Project / Re: Axe Parser
« on: February 21, 2010, 09:28:25 pm »
New update is here!  Expect a new update every Sunday from now on I think.

This version is much more powerful, but still lacks data structure manipulation for complex games (you know, lists and matrices and stuff).  But that will be what I'm going to work on next.

I also included a tiny optimization tutorial with some stats.

1931
The Axe Parser Project / Re: Latest Updates (***DO NOT POST HERE!***)
« on: February 21, 2010, 09:24:31 pm »
Axe Parser
Alpha 0.0.5



New Features:
  • Sprite support!
  • Screen shifting
  • Screen inversion
  • Fixed unary operators
  • Direct key input
  • Static pointers
  • More automatic optimizations

Changed:
  • You must add >Dec to display integers
  • ClrHome now clears the text buffer as well

New example program.

1932
The Axe Parser Project / Re: Bug Reports
« on: February 20, 2010, 03:03:50 am »
False.  In BASIC, its actually 2 bytes since you have to include the [Enter] character or the colon to get to the next instruction (I think only DelVar doesn't require this).  This type of next line character isn't needed in assembly, so its only a 1 byte difference.

1933
The Axe Parser Project / Re: Bug Reports
« on: February 20, 2010, 12:37:42 am »
No, I think I'll just add it to ClrHome.  Its only 3 additional bytes I think.  That would bring the total size of the ClrHome command to 12 bytes each call.  This is over my limit of 10 bytes for an inline command, so I will optimize it to be a subroutine so it will actually be 18 bytes the first time its called, but only 3 bytes every additional time you call it.

There isn't really much interesting you can do with the text shadow.

1934
Axe / Re: Routines
« on: February 20, 2010, 12:26:26 am »
Check this out:

http://en.wikipedia.org/wiki/Bresenham%27s_line_algorithm

Its probably what I'll be using, it only requires addition and bit-shifting, no floats.

1935
Axe / Re: Routines
« on: February 19, 2010, 03:24:03 pm »
Line drawing will obviously be built in later, so don't worry too much about that.

Pages: 1 ... 127 128 [129] 130 131 ... 135