https://github.com/gecko0307/psxlib
Custom standard library for homebrew PlayStation 1 development
https://github.com/gecko0307/psxlib
homebrew playstation psx psyq
Last synced: 3 months ago
JSON representation
Custom standard library for homebrew PlayStation 1 development
- Host: GitHub
- URL: https://github.com/gecko0307/psxlib
- Owner: gecko0307
- License: mit
- Created: 2022-01-13T07:48:18.000Z (over 3 years ago)
- Default Branch: main
- Last Pushed: 2022-01-13T09:20:03.000Z (over 3 years ago)
- Last Synced: 2024-12-06T10:12:28.515Z (5 months ago)
- Topics: homebrew, playstation, psx, psyq
- Language: C
- Homepage:
- Size: 73.2 KB
- Stars: 5
- Watchers: 3
- Forks: 1
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
README
PSXLib is a library for homebrew PlayStation 1 development. This project aims to implement fully free and open replacement to proprietary standard library from Psy-Q SDK.
PSXLib doesn't provide its own MIPS toolchain though, it is meant to be used with Psy-Q CCPSX compiler and corresponding tools.
## Features
Currently PSXLib contains only the most basic functionality:
- GPU initialization and OT management
- Uploading TIM images to VRAM
- Rendering basic 2D primitives - sprites, dots and lines
- Rendering text
- Reading controller input
- TTY output (printf)PSXLib API doesn't imitate Psy-Q one-to-one. I tried to design it in a simpler and more consistent manner. Some functions are inspired by Blade's PSX library.
PSXLib is written in ANSI C with part in ASPSX assembler.
## Why another library?
libgs from Psy-Q is a closed-source abandonware, so it can't be patched or updated. Other homebrew libraries out there often require non-standard toolchains and specific environment setups, while I wanted something simple and CCPSX-friendly. PSXLib can be used with other Psy-Q functionality, such as CD-ROM functions, until they are reimplemented from scratch.
## Usage
A simple usage example can be found in the `demo` folder. Keep in mind that this repository doesn't contain third-party utilities needed to build it. You can download a prepackaged version for Windows from Releases page, but you still need to install Psy-Q SDK by yourself.[](https://raw.githubusercontent.com/gecko0307/psxlib/main/media/controller.png)
## License
PSXLib is distributed under the MIT license.