Omnimaga
Omnimaga => News => Topic started by: DJ Omnimaga on September 27, 2010, 10:30:03 pm
-
A new version of Axe Parser has been released tonight by Quigibo. This is one of the final updates before version 1.0.0 comes out in a few months and the first in one month (due to the contest and being busy). Here are the features and changes below, quoted from his post at http://ourl.ca/4060/121984
Axe Parser
Delta 0.4.5
Wow, its been a while :)
New Features:
- Direct Nibble manipulation!
- Subroutines can save and restore argument variables (for recursive uses).
- Most Axe variables can be dereferenced.
Changed:
- Correct number of Ends after nested elseif statements
- White space in program is handled better when scrolling to an error.
- Axioms are temporarily disabled.
- Fixed Auto Power Down bug.
- getkey() routines alway delay long enough to register a key even in 15MHz.
- DispGraphrr can be used in an interrupt routine now.
- Optimized Copy() Fill() and Exch() commands.
Download link: Axe Parser v.0.4.5 (http://www.omnimaga.org/index.php?action=dlattach;topic=1463.0;attach=3502)
In addition to that, some of the games that were submitted for the Omnimaga contest (http://ourl.ca/7076) are being updated and/or finished right now. Make sure to check out the Other calc projects and ideas (http://www.omnimaga.org/index.php?board=5.0) section for the many updates and downloads!
Don't forget to vote (http://ourl.ca/7076) for your favorite contest entry as well!
-
Ok, I've been staring at the command list for 10 mins now, and I can't figure this out.
What are nibbles?
-
Well, you know how a byte is two hexadecimal digits? Well, a nibble is one digit.
-
Half-bytes.
Basically, native nibble support in Axe means you are no longer forced to grab half a byte from a pointer using L1/16 and the other half using L1^16 anymore. That made it complicated for scrolling tilemappers. Now the new nibbles command should make this process easier.
Btw, the number range a nibble can contain is 0 to 15 (or maybe -8 to 7?). Basically 0 through F. A regular byte is 0 to 255 (00 to FF)
-
-7 to 7 signed and 0 to 15 unsigned. Can't wait for 1.0.0. Good luck quigibo.
-
Mhmm no I think it was -8 for signed. For full bytes it's -128 to 127. Otherwise it wouldn't even be full 16 range.
http://en.wikipedia.org/wiki/Integer_(computer_science)
I do not remember if for anything else than the 26 variables Axe uses signed or unsigned nibbles and bytes, though.
-
Oh yes, I think you are correct. I was thinking 7 to 0 to -7 made 15, so that was correct. But yes, It is -8 to 7 I think.
-
Yes, signed (two's-complement) 4-bit integers range from -8 to 7 :)
-
Ah ok. I was not sure since I am used to storing stuff like 250 to L1, not even knowing if it's signed or not. I guess it simply changes to -6 since 128 to 255 == -128 to -1
-
Well, you can store 250 to L1, and, although its representation is the same as -6, you can still use it as 250.
For example, code sample 1 displays 250, while code sample 2 display 65530 (-6).
-6->{L1
Disp {L1}>Dec
250->{L1
Disp int{L1}>Dec
(Note that I store the other value just to emphasize my point. Either -6 or 250 would have worked for both.)
-
Yeah, which is kinda cool in some ways because depending of the situation, one might be easier to read than the other. In a game based on a center screen point of view or something (like 3D games) having negatives helps a lot, while in a game like a RPG we may want our character stats to be stored in a 0 through 255 format.
-
Yeah, which is kinda cool in some ways because depending of the situation, one might be easier to read than the other. In a game based on a center screen point of view or something (like 3D games) having negatives helps a lot.
....cuberunner ;D
-
Yep ;D
Mhmm... Starfox...