Releases: zPSP-Dev/Zig-PSP
Zig-PSP v0.7!
Special thanks to @Ryp for continued contributions to the code base!
Major Changes
- Full support for Zig v0.16
mipsel-pspsupport in upstream Zig- New
std.Iosupport on PSP, allowing fullstdcompatibility - Major overhaul of wrapper APIs and NID autoimport improvement
- PSP Encryption support, allowing running on OFW (Official Firmware)
- Major GE / sceGu improvement w/
CommandBuffermid-level API - New
netutility, allowing PSP to connect to the internet - Many more samples for different capabilities including HTTP/HTTPS
- Improved error traces and error types
- Improved default system allocator similar to PSPSDK heap allocator.
Major Fixes
- Fixed multiple bugs with PRX Generation, allowing for very stable Release builds on PSP and full compatibility with PPSSPP
- All four build modes work properly now on PSP
- Fixed trap generation bugs which resulted in Illegal Instruction Exception
Full Changelog: v0.6...v0.7
Zig-PSP v0.6!
Special thanks to @Ryp and @silbinarywolf who really helped with updating this project in the interrim!
The current version on this tagged release supports Zig v0.15.2 with fully working demos and improvements to nearly every aspect!
Big Changes:
- Moving related tooling into this repo as a monorepo, done by @Ryp
- zPRXGen now replaces psp-prxgen C implementation
- Autogenerated stubs and documentation from the PSPSDK repository to make the upstream/downstream process faster
- Major bug fixes with sceGu implementation, with plans to overhaul GE architecture in the future
- Change to NID inclusion now supports automatic NID generation if a module is referenced, done by @Ryp
- API now has three distinctions: Raw C API, Zig Wrapper API available as either
sdk.sceXXX()orsdk.submodule.xxx() - Zig-PSP now self-hosts its documentation on Github Pages
- Errors now provide stack traces, allocation was brought up to modern standards.
Zig-PSP v0.5
In this update, many changes were made to stabilize the toolchain and provide an adequate user experience. It also helped to squash bugs, and improve quality of life.
Major Changes:
- Fix to SFO tool that made PBP files not bootable (alignment)
- Code size reduction for default applications
- Standard library support for most file operations (std.io, std.fs, std.debug.warn)
- Cleaned up error messages
- Safety compatibility layer for Zig
- Updated for Zig master branch (no LLD dependency!)
A corresponding release has been made for the Zig-PSP Template repository
Zig-PSP!
This update is a quick patch that removes the LLD dependency. This toolchain is meant to be used with Zig master-branch / v0.7.0.
Zig-PSP!
Welcome to the first release of the Zig-PSP toolchain! This toolchain is meant to be used with Zig master-branch / v0.7.0, and (for now) has a dependency on LLVM's linker, LLD. Zig-PSP is a repository that contains all the tools and APIs needed to make an application in Zig for the PSP. It also has the ability to generate a standalone library which can be linked to any C applications using a clang toolchain. Zig-PSP is User Mode complete, and allows programmers to develop for the Sony PSP to make homebrew games, applications, and more!
To get started, all you need is an up-to-date Zig install, and LLD. Then, you can make a repository based on this template in order to get a ready environment for PSP development!