0 Members and 4 Guests are viewing this topic.
[pic1]->Pic2 ; Absorb the 756 bytes that make up the pic1 variable on the calc into the program. Pic2 is now the pointer to the first byte of the data for pic1 inside the program. Pic2 does not mean Picture 2 as in the calculator.det(12) ; Adds 12 more bytes (all zeros) in order to make the total length 768, as that is the byte-size of the calculator screen.for(A,0,767) ; A goes from 0 to 767.{Pic2+A}->{L6+A} ; Since Pic2 is pointing to the first byte of the picture, {Pic2} gets the actual first byte. So, {Pic2+A} gets the first byte, plus some offset. So, {Pic2+1} gets the second byte. This is why we went from 0 to 767 and not 1 to 768.end ; End to the for loopDispGraph ; Display the buffer on the screen.
So basically, it points to the byte where the pic is being stored?
[Pic1]->Str1
Str1->DispGraph
Copy(Str1,L6,768Dispgraph
For(A,0,5) A+9->{L1+A}End
So the buffer and back buffer are extra screens. And when you draw stuff to them, it doesn't appear on the screen until you use dispgraph^r?
And I was reading a guide by sircpm, and it said when I see something like [0a3ff0457f-pic1, its using hexadecimal? And is that making pic1 point somewhere, or is storing bytes to the area that pic1 already points to?
<code here>Return (Don't actually put this in your code - It's automatically added at the bottom of each program.)[0A3FF0457F]
Quote from: Masinini on December 09, 2010, 03:53:31 pmSo the buffer and back buffer are extra screens. And when you draw stuff to them, it doesn't appear on the screen until you use dispgraph^r?Not quite. They're two seperate buffers. Normally you only want to display the front one, so you'd use Dispgraph (r and rr are for Greyscale). Normally the Back Buffer is for storing stuff you don't want changed while you change something on the front buffer.
0110100110010110
0110011010011001100110010110011001100110100110011001100101100110