0 Members and 8 Guests are viewing this topic.
I cant seem to find the elseif token
the more dispgraphs the faster it goes.
Quote from: happybobjr on August 22, 2010, 09:05:25 amthe more dispgraphs the faster it goes.If you mean the grayscale refresh, yes. If you mean the program execution, no. In Super Sonic Ball, if I add grayscale then run a for loop executing dispgraphr 100 times, there will be a considerable drop in speed
^||I thought custom interrupts didn't work with 4lvl grayscale
"[A]->GDB1getcalc(GDB1)->ADisp A(1,1)
"[A]"→GDB1GetCalc(GDB1)→P.Number of columns{P-2}→CDisp float{A-1*C+(B-1)*9+P}▸Dec
There is no built-in support for reading specific entries from OS matrices or lists. However, the most recent version of Axe (0.4.4) includes the new float{PTR} function, which is the fPart() function. This converts a 9-byte real number from the OS to a 2-byte integer Axe can understand. This would not accurately convert decimal data or numbers that exceed the 2-byte integer limitation (0-65,535), but it should work otherwise.Anyways, how to apply this to a matrix. The first two bytes of an OS matrix (the 2 bytes before the pointer a GetCalc() would return) are the number of columns and rows. To access the entry in row A and column B, for example, you'd have to do something like the following:Code: [Select]"[A]"→GDB1GetCalc(GDB1)→P.Number of columns{P-2}→CDisp float{A-1*C+(B-1)*9+P}▸DecI haven't tried this code myself, so I can't guarantee it will work. But it should (unless I have where the OS stores the rows and columns reversed).EDIT: I have tried this code, and it works.