pspsdk-1.0+beta2
|
Data Structures | |
struct | pspvfpu_context |
Macros | |
#define | NMAT 8 |
#define | SV(N) |
#define | LV(N) |
Functions | |
void | pspvfpu_use_matrices (struct pspvfpu_context *c, vfpumatrixset_t keepset, vfpumatrixset_t tempset) |
Use a set of VFPU matrices. | |
struct pspvfpu_context * | pspvfpu_initcontext (void) |
Prepare to use the VFPU. | |
void | pspvfpu_deletecontext (struct pspvfpu_context *c) |
Delete a VFPU context. |
#define LV | ( | N | ) |
#define NMAT 8 |
Referenced by pspvfpu_deletecontext().
#define SV | ( | N | ) |
void pspvfpu_deletecontext | ( | struct pspvfpu_context * | context | ) |
|
read |
Prepare to use the VFPU.
This set's the calling thread's VFPU attribute, and returns a pointer to some VFPU state storage. The initial value all all VFPU matrix registers is undefined.
References c, memalign(), NULL, pspvfpu_context::owned, PSP_THREAD_ATTR_VFPU, sceKernelChangeCurrentThreadAttr(), pspvfpu_context::valid, and VFPU_ALIGNMENT.
void pspvfpu_use_matrices | ( | struct pspvfpu_context * | context, |
vfpumatrixset_t | keepset, | ||
vfpumatrixset_t | tempset | ||
) |
Use a set of VFPU matrices.
This restores the parts of the VFPU state the caller wants restored (if necessary). If the caller was the previous user of the the matrix set, then this call is effectively a no-op. If a matrix has never been used by this context before, then it will initially have an undefined value.
context | The VFPU context the caller wants to restore from. It is valid to pass NULL as a context. This means the caller wants to reserve a temporary matrix without affecting other VFPU users, but doesn't want any long-term matrices itself. |
keepset | The set of matrices the caller wants to use, and keep the values persistently. |
tempset | A set of matrices the callers wants to use temporarily, but doesn't care about the values in the long-term. |
References c, NULL, pspvfpu_context::owned, and pspvfpu_context::valid.