Files
ppsspp/docs/emu-api/README.md
T

26 lines
946 B
Markdown

# PPSSPP Emulator API
`ppsspp_emu_api.h` is a small, header-only C wrapper around the emulator-only tricks PPSSPP exposes
to homebrew through the `"emulator:"` device of `sceIoDevctl` (implemented in `Core/HLE/sceIo.cpp`,
search for `"emulator:"`).
None of this works on real PSP hardware - always check `ppsspp_is_emulator()` before relying on
anything else in the header, and keep a working fallback path for real hardware.
C API documentation: https://www.ppsspp.org/docs/development/ppsspp-internals/emu-api/
Raw `sceIoDevctl` protocol (commands, layouts, quirks): see [protocol.md](protocol.md).
## Usage
Just copy `ppsspp_emu_api.h` into a PSPSDK-based homebrew project and `#include` it. It's entirely
`static inline` functions over `sceIoDevctl`, so there's no library to build or link.
```c
#include "ppsspp_emu_api.h"
if (ppsspp_is_emulator()) {
ppsspp_send_output_str("Hello from homebrew, running under PPSSPP!\n");
}
```