Go to file
Jaby fb8337206d Add 32BIT.TMD file 2025-01-05 15:57:14 +01:00
bin Add 32BIT.TMD file 2025-01-05 15:57:14 +01:00
config Allow SPU debug messages (on by default for now) 2024-09-28 13:29:30 +02:00
docs Update bug report 2025-01-05 14:42:56 +01:00
examples/PoolBox Add 32BIT.TMD file 2025-01-05 15:57:14 +01:00
include Update documentation 2024-12-31 20:07:07 +01:00
mkfile Create GCC in podman 2025-01-02 19:47:47 +01:00
podman Also map JABY_ENGINE_DIR 2025-01-05 14:39:21 +01:00
scripts Update ENV variables for local build 2025-01-05 15:50:30 +01:00
src Change seperator to : 2025-01-05 15:38:35 +01:00
support Change seperator to : 2025-01-05 15:38:35 +01:00
template Rename fconv to pxfconv 2024-10-10 22:11:39 +02:00
.gitattributes Add 32BIT.TMD file 2025-01-05 15:57:14 +01:00
.gitignore Ignore temp .VAG files 2024-10-07 20:12:22 +02:00
license Add MIT license 2025-01-01 14:29:39 +01:00
readme.md Add 32BIT.TMD file 2025-01-05 15:57:14 +01:00

readme.md

JabyEngine

About

JabyEngine is my personal attempt to eventually make my own PS1 game from "ground up". Originally I didn't indented to release this code publicly but recently I decided to give it a try. If you read this, thank you!

Podman

  • sudo apt install podman
  • podman build -t jaby_engine <Folder of Dockerfile>
  • podman images: lists all images
  • podman image rm <COMMIT ID>: removes an image
  • podman run -it <COMMIT ID> /bin/bash: runs bash and interactive
  • podman run --rm <-v <local_folder>:<absolute docker_folder> <-e ENV_VAR=VALUE> jaby_engine: clean up after run
  • podman image tree <TAG/ID>: lists usefull information
  • podman run --rm -it -v ${JABY_ENGINE_PATH}:${JABY_ENGINE_PATH} jaby_engine /bin/bash maybe a good idea...?
  • ${JABY_ENGINE_PATH}/scripts/podman_jaby_engine.sh make all BUILD_PROFILE=release PSX_TV_FORMAT=PAL CUSTOM_CONFIG=

How to build

JabyEngine relies on linux to be build. For Windows users it uses wsl instead but support for it might get dropped during further development.

The following environment variables should be set:

  • JABY_ENGINE_PATH: The path to the root folder of this repo
  • PSX_LICENSE_PATH: The path to a folder containing the PS1 licenses for generating a CD.

Additionally you can also specify the following optional environment variables:

  • JABY_ENGINE_NO_DOCKER: Turns off usage of podman for build. This is only recommended for specific development.

Building JabyEngine (without VSCode)

make requires the following values to be passed:

  • BUILD_PROFILE: debug/release
  • PSX_TV_FORMAT: PAL/NTSC
  • CUSTOM_CONFIG: Empty or folder name under ./config

Building support library (without VSCode)

These projects shall eventually turn into useful extensions for the engine. So far they are more tests then proper code. However PoolBox is depended on FontWriter.

FontWriter (without VSCode)

make requires the following values to be passed:

  • BUILD_PROFILE: debug/release

Building PoolBox (without VSCode)

PoolBox is the one and only example project so far. make requires the following values to be passed:

  • BUILD_PROFILE: debug/release
  • REGION: SCEE/SCEA/SCEI
  • CUSTOM_CONFIG: Empty or folder name under $(JABY_ENGINE_PATH)/config

Media creators

JabyEngine

Art Author
ressources\Splash_ntsc.png
ressources\Splash_ntsc.png
Niuka
bin/extern/32BIT.TMD http://psx.arthus.net/homebrew/assets/boot_logos/32BIT.TMD

PoolBox

Art Author
examples\PoolBox\assets\AllTheJaby.png Niuka
examples\PoolBox\assets\IconTexture.png Charlie Nax
examples\PoolBox\assets\Paco.png Paco
Music Author
examples\PoolBox\assets\audio\apple.wav ???
examples\PoolBox\assets\audio\blubb-mono.wav ???
examples\PoolBox\assets\audio\Evacuation_cdda.wav Cody the white tiger
examples\PoolBox\assets\audio\Friendship_samp.wav From Dragon Quest VII
examples\PoolBox\assets\audio\jlbrock44_Three_Kings_Funk_cdda_ready.wav Three Kings Funk by spinningmerkaba
examples\PoolBox\assets\audio\OnMyOwn_BailBonds.mp3 On My Own by Bail Bonds

Special thanks

  • Cody the white tiger
  • Nicolas Noble
  • Pyravia
  • Sickle

TODO before commit

  • Remove wslpath
  • Double check documentation