OldSchool Library
|
Main Oldschool Library header file. More...
#include <pspkernel.h>
#include <pspdisplay.h>
#include <pspdebug.h>
#include <stdlib.h>
#include <stdio.h>
#include <malloc.h>
#include <math.h>
#include <string.h>
#include <ctype.h>
#include <time.h>
#include <pspctrl.h>
#include <psputility.h>
#include <pspgu.h>
#include <pspgum.h>
#include <psppower.h>
#include <pspiofilemgr.h>
#include <psphprm.h>
#include "oslmath.h"
#include "vram_mgr.h"
#include "VirtualFile.h"
#include "drawing.h"
#include "map.h"
#include "text.h"
#include "messagebox.h"
#include "keys.h"
#include "audio.h"
#include "bgm.h"
#include "usb.h"
#include "dialog.h"
#include "osk.h"
#include "saveload.h"
#include "net.h"
#include "browser.h"
#include "adhoc/pspadhoc.h"
#include "ccc.h"
#include "sfont.h"
Data Structures | |
struct | OSL_MEMSTATUS |
Structure for the return value of oslGetRamStatus. More... | |
Macros | |
#define | OSL_VERSION "1.3.0" |
OSLib version. | |
#define | oslSetQuitOnLoadFailure(enabled) |
Sets the "no fail" mode. | |
#define | oslSetQuitOnLoadFailureCallback(function) |
Sets the function to call in case of failure to load something. | |
#define | oslSetExitCallback(function) |
Sets an exit callback. | |
#define | oslSetFrameskip(val) |
Sets the current fixed frameskipping value. | |
#define | oslSetMaxFrameskip(val) |
Sets the maximum frameskip value. | |
#define | oslSetVSync(val) |
Sets the VSync parameter. | |
#define | oslSyncFrame() |
Synchronization function to be called at the end of a frame. | |
#define | oslUncacheData(data, size) |
Ensures that the data is no longer in the CPU cache. | |
#define | oslGetUncachedPtr(adr) |
Returns a pointer to an uncached address. | |
#define | oslGetCachedPtr(adr) |
Returns a pointer to cached data. | |
#define | oslAbs(x) |
Returns the absolute value of a number. | |
#define | oslMin(x, y) |
Returns the smallest value between the two. | |
#define | oslMax(x, y) |
Returns the greatest value between the two. | |
#define | oslMinMax(x, min, max) |
Returns a value clamped between a minimum and maximum. | |
#define | oslNumberof(n) |
Returns the number of objects in an array. | |
#define | oslPrintf(format...) |
Prints formatted text to the current position of the cursor. | |
#define | oslPrintf_xy(x, y, str, format...) |
Prints formatted text at a specific position on the screen. | |
#define | oslCls() |
Clears the screen (to black) and resets the cursor to the top-left corner of the screen. | |
#define | oslMoveTo(x, y) |
Moves the cursor to a place on the screen. | |
#define | OSL_BENCH_SLOTS 8 |
Number of available benchmark slots. | |
#define | OSL_BENCH_SAMPLES 20 |
Number of samples used for mean benchmarking. | |
#define | OSL_UVRAM_BASE ((u8*)0x04000000) |
Base address of the UVRAM (Uncached Video RAM) on the PSP. | |
#define | OSL_UVRAM_SIZE (2 << 20) |
Size of the UVRAM (Uncached Video RAM) in bytes. | |
#define | OSL_UVRAM_END ((u8*)((u32)OSL_UVRAM_BASE + OSL_UVRAM_SIZE)) |
End address of the UVRAM (Uncached Video RAM) region. | |
Enumerations | |
enum | OSL_INITFLAGS { OSL_IF_USEOWNCALLBACKS = 1 , OSL_IF_NOVBLANKIRQ = 2 } |
Flags for oslInit function. More... | |
enum | { OSL_BENCH_INIT = 0 , OSL_BENCH_START , OSL_BENCH_END , OSL_BENCH_GET , OSL_BENCH_GET_LAST , OSL_BENCH_DISPLAY } |
Enumeration for benchmark actions in OSLib. More... | |
Functions | |
void | oslInit (int flags) |
Initializes the library. | |
void | oslQuit () |
Exits the application immediately. | |
void | oslHandleLoadNoFailError (const char *filename) |
Handles errors when a file fails to load in "no fail" mode. | |
void | oslEndFrame () |
Call this function when a frame has ended. | |
int | oslSyncFrameEx (int frameskip, int max_frameskip, int vsync) |
Synchronization function with explicit parameters. | |
void | oslWaitVSync () |
Waits for the VSync, synchronizing your game. | |
int | sceDmacMemcpy (void *dest, const void *source, unsigned int size) |
Copies data using the internal DMAC. | |
int | sceDmacTryMemcpy (void *dest, const void *source, unsigned int size) |
Same as sceDmacMemcpy. | |
void | oslFasterMemset (u64 *dst, u64 *src, u32 length) |
Does a memset using the 64-bit capabilities of the CPU. | |
void | oslFlushDataCache () |
Flushes the whole cache. | |
void * | memalign (size_t alignment, size_t size) |
Allocates a memory block, ensuring it is aligned. | |
OSL_MEMSTATUS | oslGetRamStatus () |
Gets info about currently available memory in main RAM. | |
float | oslSin (float angle, float dist) |
Calculates the sine of an angle in degrees multiplied by a radius. | |
float | oslCos (float angle, float dist) |
Calculates the cosine of an angle in degrees multiplied by a radius. | |
int | oslSini (int angle, int dist) |
Returns the sine of an angle in degrees (0 to 360) multiplied by an integer radius. | |
int | oslCosi (int angle, int dist) |
Returns the cosine of an angle in degrees (0 to 360) multiplied by an integer radius. | |
int | oslGetNextPower2 (int val) |
Returns the next (upper) power of two of a number. | |
void | oslSetupFTrigo () |
Sets up the floating-point trigonometric tables. | |
int | oslBenchmarkTestEx (int startend, int slot) |
Does a benchmark action. | |
int | oslMeanBenchmarkTestEx (int startend, int slot) |
Same as oslBenchmarkTestEx but does a mean of 20 samples before returning a value. | |
void | oslSysBenchmarkDisplay () |
Displays the system benchmark results on the top-left corner of the screen. | |
void | oslVblankInterrupt (int sub, void *parg) |
Handles the VBLANK interrupt. | |
int | oslShowSplashScreen1 () |
Displays the first predefined splash screen. | |
int | oslShowSplashScreen2 () |
Displays the second predefined splash screen. | |
Variables | |
int | osl_intraInit |
Indicates if the internal initialization process of OSLib is complete. | |
int | osl_noFail |
Controls the "no fail" mode in OSLib. | |
void(* | osl_noFailCallback )(const char *filename, u32 reserved) |
Pointer to the callback function used when a file load operation fails in "no fail" mode. | |
int | osl_quit |
Indicates whether the application should exit. | |
int | osl_standByUnpermitted |
Controls whether standby mode is permitted. | |
int(* | osl_powerCallback )(int arg1, int arg2, void *common) |
Pointer to the power callback function. | |
int(* | osl_exitCallback )(int arg1, int arg2, void *common) |
Pointer to the exit callback function. | |
int | osl_vblInterruptNumber |
The interrupt number for the VBLANK interrupt. | |
int | osl_maxFrameskip |
Maximum allowed frameskip value. | |
int | osl_vsyncEnabled |
Indicates whether VSync is enabled. | |
int | osl_frameskip |
Current frameskip setting. | |
volatile int | osl_vblCount |
Count of VBLANK interrupts. | |
volatile int | osl_vblCallCount |
Count of VBLANK interrupt calls. | |
volatile int | osl_vblankCounterActive |
Indicates if the VBLANK counter is active. | |
volatile int | osl_skip |
Indicates whether the current frame should be skipped. | |
volatile int | osl_currentFrameRate |
Current framerate setting. | |
int | osl_isinus [361] |
Precomputed sine values for angles from 0 to 360 degrees. | |
int | osl_icosinus [361] |
Precomputed cosine values for angles from 0 to 360 degrees. | |
Main Oldschool Library header file.
This header defines the main structures, macros, and functions used in the OldSchool Library (OSLib) framework. OSLib provides a comprehensive set of tools for developing applications on the PSP platform, including graphics, input handling, memory management, and more. This file includes both general utility functions and platform-specific implementations for the PSP.