Matrix manipulation routines.
gLoadIdentity | - | Loads the do-nothing matrix |
gPushMatrix | - | Push the current matrix to the stack |
gPopMatrix | - | Pop the top matrix of the stack |
gTranspose | - | Calculates the transpose of a specified matrix |
gAngle | - | Generates the XYZ rotation matrix |
gMulVec | - | Transforms the specified vector with the current matrix |
gMat3 |
Small (4 bytes) memory region used by some library commands as temporary data storage. Located at $848F.
Loads the identity matrix into the static library matrix. This matrix as no effect on rotation and translation.
none |
none |
A, HL, DE |
171 T-States |
Push the current matrix onto the stack. It require a minimum of 16 bytes of free stack space. The current stack space can be acquire by a call to gGet routine
Return from the current subroutine level after calling this routine will most likely crash the calculator, as the stack wouldn't proprely set for the return. You should call gPopMatrix at the same subroutine level. Call is allowed within call to these two routine.
None |
SP | - | Original SP + 16 |
AF, HL, DE |
231 T-States |