pcsx-redux/src/supportpsx
2024-03-28 21:36:07 -07:00
..
assembler Fix for Lua assembler implementation of la, trim() now removes also comments 2023-12-31 03:15:28 +00:00
adpcm.cc Various fixes to Adpcm encoder. 2024-02-28 19:55:38 -08:00
adpcm.h Various fixes to Adpcm encoder. 2024-02-28 19:55:38 -08:00
adpcmffi.lua [Chores] Format code 2024-02-24 02:50:51 +00:00
adpcmlua.cc Adding ADPCM encoder API. 2024-02-13 23:41:30 -08:00
adpcmlua.h Adding ADPCM encoder API. 2024-02-13 23:41:30 -08:00
assembler.cc Adding luacov submodule and properly renaming built-in imports. 2024-01-20 19:45:14 -08:00
assembler.h Properly splitting off the support and supportpsx directories. 2023-11-13 08:02:52 -08:00
binffi.lua [Chores] Format code 2023-12-09 15:04:21 +00:00
binloader.cc [Chores] Format code 2023-12-09 15:04:21 +00:00
binloader.h Properly splitting off the support and supportpsx directories. 2023-11-13 08:02:52 -08:00
binlua.cc Adding luacov submodule and properly renaming built-in imports. 2024-01-20 19:45:14 -08:00
binlua.h Properly splitting off the support and supportpsx directories. 2023-11-13 08:02:52 -08:00
iec-60908b.cc Properly splitting off the support and supportpsx directories. 2023-11-13 08:02:52 -08:00
iec-60908b.h Properly splitting off the support and supportpsx directories. 2023-11-13 08:02:52 -08:00
n2e-d.h Properly splitting off the support and supportpsx directories. 2023-11-13 08:02:52 -08:00
n2e-d.S Shuffling tools. 2023-03-26 23:13:44 -07:00
ps1-packer.cc Making raw files generated by ps1-packer fully PIC 2024-03-28 21:36:07 -07:00
ps1-packer.h Adding nopad option to ps1-packer. 2023-11-14 11:04:56 -08:00
README.md Adding ADPCM encoder API. 2024-02-13 23:41:30 -08:00
ucl-glue.c Properly splitting off the support and supportpsx directories. 2023-11-13 08:02:52 -08:00

PCSX-Redux SupportPSX library

This library contains a few functions that are used by the PCSX-Redux emulator. It is a collections of standalone functions that are not specific to the emulator itself, but are aimed at being used in the context of the PlayStation 1. The library is written in C++ and is meant to be used in a pick-and-choose fashion. The library is not meant to be used as a whole, but rather as a collection of functions that can be used in other projects. Some pieces are header-only, while others require compilation of some C++ files. Usually, if compilation is required, it will be with the same base name as the header file.

Very little external dependencies are required. They will be documented in a per-file basis below.

License

The code in this folder is licensed under the terms of the MIT license.

Contents

  • adpcm.h & adpcm.cc - Provides a simple ADPCM encoder. It is a re-creation of the original encvag.dll from Sony's development kit for the PlayStation 1, and is meant to produce similar results with a similar API.
  • binloader.h & binloader.cc - Loads a PlayStation 1 binary file from a File abstraction to another File abstraction. The binary file can be of the following formats:
    • PlayStation 1 executable file (needs the "PS-X EXE" signature)
    • ELF
    • CPE
    • PSF
    • MiniPSF
  • iec-60908b.h & iec-60908b.cc - Provides iec-60908b helpers and encoders for MODE2 discs, such as the ones used by the PlayStation 1.
  • ps1-packer.h & ps1-packer.cc - Provides a function to pack a PlayStation 1 executable file into a self-decompressing executable file. The resulting file can be loaded directly into the PlayStation 1 memory and executed. Supports multiple encoding methods.