funcLib is a function library for the PSP, designed to help programmers program a little more easily and a bit more efficiently. It shortens programming time for pros, and also makes it simpler for the newer members of the scene to join in.
funcLib is currently an arrangement of files containing functions which are seperated and commented to make it easier for you to search through them. We're hoping to make it interactive in the future, but don't hold your breath.
Features List
BMP Loading, TGA Loading/Saving, PCX Loading, RAW Loading/Saving
Full texture support with swizzling, mipmap and palette support aswell as vmem.
Easy and extendable graphics API with support for perspective and ortho modes aswell as vsync, Show FPS, etc.
Memory allocation module, with vmem allocation included aswell as a simple paging mechanism, memory pooling, scratchpad usage, stride allocation and much more.
File wrapper that allows loading of files from memory aswell as from the memorystick and from a pbp-plus file aswell as additional functions.
Fullscreen effects Invert, Grayscale, Sepia, Night Vision, Thermal Vision, Monochrome, Di-Chrome, Light Enhance, Color Enhance
2d graphics module capable of drawing ellipses, quads, triangles, lines, outlines, shaded ellipsoids, textures (strip blitted), etc.
3d graphics module capable of many primatives, textured or otherwise at fast speeds.
Sprite module capable of drawing rotated and scaled sprites aswell as handling animations and a few other things.
Math module with fast vfpu maths to speed up your maths heavy programs aswell as 3 types of random number generation.
2d Collision module supporting closestLine, line-line, circle-circle, line-circle, rect-rect.
Input module for polling input and retrieving the state of buttons (e.g JUST_UP, STILL_UP, etc.)
Callbacks sorted out (aswell as power callbacks).
Complex debugging module that logs errors, screenshots them and shows a warning (all configurable).
Font module which can draw most types of font, and also converts the debug font into a swizzled clut4 texture in vram for faster rendering.
Timer module, for timing oddly enough
A collection of samples of how to use different features, including 2 full games (flAstro and flMineSweeper).
Color manipulation module for graphical programs and random color generation.
A 3d camera class that allows all views and is easy to use.
Thousands of defines, types, etc. which should come in handy (e.g SCREEN_GAMMA, MATH_PI, etc.)