TinyMe is lightweight PSP (Playstation Portable) Media Engine library to run code over the second mips CPU
-
Updated
Aug 30, 2025 - C++
TinyMe is lightweight PSP (Playstation Portable) Media Engine library to run code over the second mips CPU
This repository contains technical documentation and code examples related to the Sony PSP (PlayStation Portable) Media Engine. It covers architecture, memory mapping, VME, GE, DMAC, spinlocks, interrupts & Color Space Conversion. The content is based on new personal findings and research from 2025, building on previous community exploration.
Basic sample code demonstrating how to use the hardware spinlock as a mutex between the Sony PSP (Playtation Portable) main CPU and the Media Engine CPU, enabling concurrent writing in cached memory.
Sample code for loading YCbCr planes from the main Sony PSP's CPU to uncached memory, transferring them to the Media Engine's eDRAM, and processing RGB conversion via the VME. The converted output is written to VRAM as the destination framebuffer, demonstrating Color Space Conversion hardware registers for video processing.
Sample code for the Sony PSP's Media Engine, demonstrating how to write and update a Ge list concurrently from both CPU.
Bullying Zoom,Signal and many others
First demo using the primary DMAC of the VME/DSP over the PSP's Media Engine, transferring data betwen DSP buffers and main memory
Sample implementation for converting YCbCr to RGB using PSP (Playstation Portable) CSC controller with VME backend. Supports 992×992 resolution through dual buffer system. Requires physical hardware with Media Engine support.
This repository demonstrates transferring data between the Sony PSP Media Engine CPU and the main CPU via DMACPlus, drawing one half of a 'clock' on each side and gathering data with DMACPlus channels and LLIs.
This is a minimal reset handler for the Sony PSP's Media Engine CPU. After a hardware reset, the CPU jumps to 0xBFC00000, initializes the status register, configures the FPU coprocessor flags, and continues execution in kernel mode.
Transfer data using dmacplus hardware registers from RAM on the main CPU to the Media Engine's eDRAM, then transfer the data from me edram to ge edram
Example of a dmacplus transfer, between the PSP's Media Engine and the Main CPU (me2sc).
Add a description, image, and links to the media-engine topic page so that developers can more easily learn about it.
To associate your repository with the media-engine topic, visit your repo's landing page and select "manage topics."