Omnimaga
Calculator Community => TI Calculators => Axe => Topic started by: Munchor on January 24, 2011, 05:20:18 pm
-
If you consider this a bug, then merge into bugs and reports please.
.UPROG
Asm(EF4045
Asm(FDCB00AE
Asm(EF7045
Asm(210100
0->I
While I<5
Asm(EF0745
I+1->I
End
(Not sure if this code is correct, it's just a sample one)
Asm(EF4045
Asm(FDCB00AE
Asm(EF7045
//The above lines could be changed to:
ClrDraw
DiagnosticOff
In fact, they're just the same thing. However, the second option runs much faster.
Now, the questions:
1. Is it just me?
2. Is it supposed to be like this?
3. If not, can it be fixed?
I think it is supposed to be this way, hence not considering it a 'bug'.
Thanks.
-
I'm no expert in asm but it looks like you're using bcalls. My guess is that quigibo doesn't use _ClrLCDFull for ClrDraw. For DiagnosticOff, my guess is that he resets 0, (IY+12h) and 5,(IY+0) but idk if he went for speed or size with DiagnosticOff. But again, I only just started asm.
-
Yeah, ClrDraw clears the buffer, not the LCD (and clearing the LCD would definitely be slower, especially if it's a TI-OS routine)
-
Yeah, ClrDraw clears the buffer, not the LCD (and clearing the LCD would definitely be slower, especially if it's a TI-OS routine)
I'm no expert in asm but it looks like you're using bcalls. My guess is that quigibo doesn't use _ClrLCDFull for ClrDraw. For DiagnosticOff, my guess is that he resets 0, (IY+12h) and 5,(IY+0) but idk if he went for speed or size with DiagnosticOff. But again, I only just started asm.
Oh thanks! That makes sense now.