In learning Axe Parser (v 1.2.2), I naturally have quite a few questions!

1. First of all, what do I do for buffers? I know what they are, but do the buffers' names have any special requirements?

2. What does the bitmap( command do?

3. On the command list, one of the commands(?) in the syntax says "Pointer". How exactly would I set this up? Would it be a label and finish with a return, or what?

4. How would I make a tilemap? (I have a feeling it'll be related to bitmap...)

5. I just need help with data reading in general... Like, what's big-endian mean? How so I store and read data?


Yeah... it's a lot, but hopefully it'll help me make AWESOME programs soon! Thanks!
documentation yet?
Yup, seen that, printed it, still need more help.
gaventemples31415 wrote:
In learning Axe Parser (v 1.2.2), I naturally have quite a few questions!

I naturally have quite a few answers!

gaventemples31415 wrote:
1. First of all, what do I do for buffers? I know what they are, but do the buffers' names have any special requirements?

You can treat any pointer, named or not, as a buffer. It's just up to you to ensure that it's a pointer to 768 bytes of usable RAM.

gaventemples31415 wrote:
2. What does the bitmap( command do?

I believe the command list explains the basics fairly well. For more detailed format explanation, see this post.

gaventemples31415 wrote:
3. On the command list, one of the commands(?) in the syntax says "Pointer". How exactly would I set this up? Would it be a label and finish with a return, or what?

I don't follow the question. I think you're going to have to be a bit more specific than asking about "one of the commands."

gaventemples31415 wrote:
4. How would I make a tilemap? (I have a feeling it'll be related to bitmap...)

They're unrelated, as the Bitmap() command is for drawing images and a tilemap is just a 2D array of tile values. The most simple/common way people make tilemaps in Axe is by specifying them as hexadecimal data, one byte per tile. For instnace, here's an 8x8 tilemap with tile 1 all around the outside, a 2x2 square of tile 2 in the middle, and tile 0 everywhere else:

Code:
[]→┬░Map
[0101010101010101]
[0100000000000001]
[0100000000000001]
[0100000202000001]
[0100000202000001]
[0100000000000001]
[0100000000000001]
[0101010101010101]


gaventemples31415 wrote:
5. I just need help with data reading in general... Like, what's big-endian mean? How so I store and read data?

Wikipedia can explain endianness better than I can, probably.

As for reading and storing data, all the relevant single-value commands are listed at the bottom of the Data and Storage section of the command list, and the mass data commands are listed at the top of the following Data Processing section.

Sections 3.2-3.4 of the documentation touch on points all around the general topic of using data. I'd suggest looking at them again and, if you have any specific questions, asking those.
Runer112 wrote:

gaventemples31415 wrote:
1. First of all, what do I do for buffers? I know what they are, but do the buffers' names have any special requirements?


You can treat any pointer, named or not, as a buffer. It's just up to you to ensure that it's a pointer to 768 bytes of usable RAM.


So... I just say something like this?

Code:

.A
"Buffer"→Str1
[FF818181818181FF]→Pic1BOX
Pt-On(0,0,Pic1BOX,Str1)






Runer112 wrote:
gaventemples31415 wrote:

3. On the command list, one of the commands(?) in the syntax says "Pointer". How exactly would I set this up? Would it be a label and finish with a return, or what?


I don't follow the question. I think you're going to have to be a bit more specific than asking about "one of the commands."


Never mind, I've got this problem solved.

Thanks Runer!
gaventemples31415 wrote:
Runer112 wrote:

gaventemples31415 wrote:
1. First of all, what do I do for buffers? I know what they are, but do the buffers' names have any special requirements?


You can treat any pointer, named or not, as a buffer. It's just up to you to ensure that it's a pointer to 768 bytes of usable RAM.


So... I just say something like this?

Code:

.A
"Buffer"→Str1
[FF818181818181FF]→Pic1BOX
Pt-On(0,0,Pic1BOX,Str1)



Now what you just did was take the string "Buffer" and have a pointer at the first element of that string. Buffers are really just 768 byte spaces of memory that you can use, since the whole screen takes up 768 bytes. L1, L3, and L6 are just free ram areas that you can manipulate without damaging the calculator when you exit and overwrite in program, which are 768 bytes. When drawing to a buffer, do this instead:

Code:
Pt-On(0,0,Pic1BOX,L6)

or any other free ram area.
If you want to name it something else, like Buffer, do this

Code:
L1->^^oBuffer
.this stores the data in the first element of L1 to be a pointer, it basically can make Buffer a small variable or pointer
.you can use any other free ram area as well, look in commands list for more
L6->Buffer
[FF818181818181FF]→Pic1BOX
Pt-On(0,0,Pic1BOX,Buffer)
Ah, okay.

New question: How do I mix drawing and text commands? It seems like I can use one but not the other, like DispGraph erases all the text, and you need DispGraph to... display... the graph.
It's probably really simple, but I cannot figure this out!
Here is a very detailed axe tutorial (in French). It includes tilemapping, sprites and maybe a little on other stuff that you'd like to know.
http://sdz.tdct.org/sdz/l-axe-parser.html

To draw text to the buffer which is needed to draw text and graphics at the same time. Use fix 5 (float 5) to turn on text to buffer and at the end of the program fix 4 (float 4) to return the calc to its original state.
Oh, okay. And thank for the link to the site! It does indeed look very detailed!
No problem, if you have any other questions I'll try my best to help but I'm still an axe parser novice too. Good luck on making some cool programs.
Thanks, I'm working on one right now; I think it's pretty cool! Very Happy
  
Register to Join the Conversation
Have your own thoughts to add to this or any other topic? Want to ask a question, offer a suggestion, share your own programs and projects, upload a file to the file archives, get help with calculator and computer programming, or simply chat with like-minded coders and tech and calculator enthusiasts via the site-wide AJAX SAX widget? Registration for a free Cemetech account only takes a minute.

» Go to Registration page
Page 1 of 1
» All times are UTC - 5 Hours
 
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum

 

Advertisement