shithub: psxe

Download patch

ref: ea49e10dc531d0f3d4b14aecc9a30d315baba8e3
parent: 0ba99d05a4e514da5a78ef2bf7a339548c4c7bb5
author: Jean-André Santoni <jean.andre.santoni@gmail.com>
date: Sun Mar 8 18:26:14 EDT 2026

Remove unused files

--- a/.gitignore
+++ b/.gitignore
@@ -24,4 +24,5 @@
 *.iso
 *.mcd
 *.rom
-*.o
\ No newline at end of file
+*.o
+*.6
--- a/Info.plist
+++ /dev/null
@@ -1,32 +1,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
-<plist version="1.0">
-	<dict>
-		<key>CFBundleDevelopmentRegion</key>
-			<string>en</string>
-		<key>CFBundleExecutable</key>
-			<string>psxe</string>
-		<key>CFBundleIdentifier</key>
-			<string>psxe.app.0</string>
-		<key>CFBundleInfoDictionaryVersion</key>
-			<string>6.0</string>
-		<key>CFBundleName</key>
-			<string>psxe</string>
-		<key>CFBundlePackageType</key>
-			<string>APPL</string>
-		<key>CFBundleShortVersionString</key>
-			<string>0.1-alpha</string>
-		<key>CFBundleSignature</key>
-			<string>psxe</string>
-		<key>CFBundleVersion</key>
-			<string>0.1-alpha</string>
-		<key>LSApplicationCategoryType</key>
-			<string>public.app-category.games</string>
-		<key>LSMinimumSystemVersion</key>
-			<string>10.6</string>
-		<key>NSHighResolutionCapable</key>
-			<true/>
-		<key>NSPrincipalClass</key>
-			<string>NSApplication</string>
-	</dict>
-</plist>
--- a/Makefile
+++ /dev/null
@@ -1,35 +1,0 @@
-.ONESHELL:
-
-CFLAGS := -g -DLOG_USE_COLOR `sdl2-config --cflags --libs`
-CFLAGS += -Ofast -Wno-overflow -Wall -pedantic -Wno-address-of-packed-member -flto
-
-PLATFORM := $(shell uname -s)
-
-ifeq ($(PLATFORM),Darwin)
-	CFLAGS += -mmacosx-version-min=10.9 -Wno-newline-eof
-endif
-
-VERSION_TAG := $(shell git describe --always --tags --abbrev=0)
-COMMIT_HASH := $(shell git rev-parse --short HEAD)
-OS_INFO := $(shell uname -rmo)
-
-SOURCES := $(wildcard psx/*.c)
-SOURCES += $(wildcard psx/dev/*.c)
-SOURCES += $(wildcard psx/dev/cdrom/*.c)
-SOURCES += $(wildcard psx/input/*.c)
-SOURCES += $(wildcard psx/disc/*.c)
-SOURCES += $(wildcard frontend/*.c)
-
-bin/psxe frontend/main.c:
-	mkdir -p bin
-
-	gcc $(SOURCES) -o bin/psxe \
-		-I"." \
-		-I"psx" \
-		-DOS_INFO="$(OS_INFO)" \
-		-DREP_VERSION="$(VERSION_TAG)" \
-		-DREP_COMMIT_HASH="$(COMMIT_HASH)" \
-		$(CFLAGS)
-
-clean:
-	rm -rf "bin"
--- a/README.md
+++ /dev/null
@@ -1,90 +1,0 @@
-# psxe
-A simple and portable Sony PlayStation emulator and emulation library written in C
-
-## Screenshots
-| Windows  | Ubuntu | macOS |
-| ------------- | ------------- | ------------- 
-| ![Mega Man X6 (USA)](https://github.com/allkern/psxe/assets/15825466/34dde8f9-eedb-4b44-a08d-c17026df2ff2) | ![Bloody Roar 2 - Bringer of the New Age (Europe)](https://github.com/allkern/psxe/assets/15825466/41a6dc67-b0ba-442f-bed6-7b207c0db4dd) | ![Parodius (Europe)](https://github.com/allkern/psxe/assets/15825466/9ab291d9-ec47-4997-92d3-23e38982ae45) |
-| ![Spyro 2 - Ripto's Rage (USA)](https://github.com/allkern/psxe/assets/15825466/e161ab66-af57-4327-9a94-8b2591a0012a) | ![Namco Museum Vol. 1 (USA)](https://github.com/allkern/psxe/assets/15825466/67ea61e4-5f30-470c-a978-23e0755850b6) | ![Darius Gaiden (Japan)](https://github.com/allkern/psxe/assets/15825466/0c55118c-ab42-40e5-b34a-7594528080bf) |
-
-### CI status
-![Windows](https://github.com/allkern/psx/actions/workflows/windows.yml/badge.svg)
-![macOS](https://github.com/allkern/psx/actions/workflows/macos.yml/badge.svg)
-![Ubuntu](https://github.com/allkern/psx/actions/workflows/ubuntu.yml/badge.svg)
-
-## Running
-You can download the latest automated build for your platform on Releases. If your system isn't supported, you can easily build the emulator from source, instructions on "Building" below.
-
-In order to run the emulator, you will need a BIOS file. You can either get one from the internet or [dump it from your own console](https://www.youtube.com/watch?v=u8eHp0COcBo).
-
-Most BIOS versions are confirmed to work.
-
-Use the `-b` or `--bios` setting to configure the BIOS file.
-
-## Progress
-All components have been implemented, Memory card support is temporarily disabled.
-
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> CPU </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> DMA </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> GPU </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> SPU </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> MDEC </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> GTE </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> Timers </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/199c20e4-4e7e-4d0a-a033-eda347034ed5" width="12" height="12"/> CDROM </br>
-<img src="https://github.com/allkern/psxe/assets/15825466/0ed1fe97-de2f-47de-bb30-82286e6c5fa0" width="12" height="12"/> Memory cards </br>
-
-## Building
-Building the emulator should be easy, just use the scripts provided in this repo.
-
-On Windows, the `build-deps.ps1` script downloads SDL2 and unzips it. If you want to run the emulator standalone, you will have to move the SDL2 DLL to the same folder where the executable is located.
-
-**If you already have SDL2 on your system**, you can skip running `build-deps.ps1`. Though you will have to edit `build-win.ps1` to point the `SDL2_DIR` variable to your installation path.
-
-On Ubuntu, you will also need to install `libsdl2-dev`, you can get it from `apt` like so:
-```
-sudo apt update
-sudo apt upgrade
-sudo apt install libsdl2-dev
-```
-
-Building on macOS requires installing SDL2 and dylibbundler, this can be done using `brew`:
-```
-brew install sdl2
-brew install dylibbundler
-```
-
-Assuming you did everything described above, you should be able to build the emulator by using the following commands.
-
-### Windows
-```
-git clone https://github.com/allkern/psxe
-cd psxe
-./build-deps
-./build-win64.ps1
-```
-On rare cases these scripts might not work (PowerShell/Windows bugs). If so, please open an issue on the issues tab with information about your system so we can make sure we cover the maximum amount of systems. 
-
-### Ubuntu
-```
-git clone https://github.com/allkern/psxe
-cd psxe
-make clean && make
-```
-
-### macOS
-```
-git clone https://github.com/allkern/psxe
-cd psxe
-./build.sh
-```
-
-## Acknowledgements
-This project uses external open source code that can be found on the following GitHub repos:
-- argparse.c: https://github.com/cofyc/argparse
-- log.c (slightly modified): https://github.com/rxi/log.c
-- tomlc99: https://github.com/cktan/tomlc99
-
-Their original licenses are respected and apply to the code in this project.
-
-As always, thanks to all original developers for their amazing work.
--- a/build-clean.ps1
+++ /dev/null
@@ -1,1 +1,0 @@
-Remove-Item -Recurse bin
\ No newline at end of file
--- a/build-deps.ps1
+++ /dev/null
@@ -1,10 +1,0 @@
-if (Test-Path "SDL2-2.30.3") {
-    Remove-Item -Recurse "SDL2-2.30.3"
-}
-
-$SDL2_URL = "https://github.com/libsdl-org/SDL/releases/download/release-2.30.3/SDL2-devel-2.30.3-mingw.zip"
-
-Invoke-WebRequest -URI $SDL2_URL -OutFile "sdl2.zip"
-Expand-Archive "sdl2.zip" -DestinationPath "." -Force
-
-Remove-Item "sdl2.zip"
\ No newline at end of file
--- a/build-win32.ps1
+++ /dev/null
@@ -1,32 +1,0 @@
-git fetch --all --tags
-
-$VERSION_TAG = git describe --always --tags --abbrev=0
-$COMMIT_HASH = git rev-parse --short HEAD
-$OS_INFO = (Get-WMIObject win32_operatingsystem).caption + " " + `
-           (Get-WMIObject win32_operatingsystem).version + " " + `
-           (Get-WMIObject win32_operatingsystem).OSArchitecture
-
-$SDL2_DIR = "SDL2-2.30.3\i686-w64-mingw32"
-$PSX_DIR = "."
-
-mkdir -Force -Path bin > $null
-
-gcc -I"$($PSX_DIR)" `
-    -I"$($PSX_DIR)\psx" `
-    -I"$($SDL2_DIR)\include\SDL2" `
-    "psx\*.c" `
-    "psx\dev\*.c" `
-    "psx\input\*.c" `
-    "psx\disc\*.c" `
-    "frontend\*.c" `
-    -o "bin\psxe.exe" `
-    -DREP_VERSION="`"$($VERSION_TAG)`"" `
-    -DREP_COMMIT_HASH="`"$($COMMIT_HASH)`"" `
-    -DOS_INFO="`"$($OS_INFO)`"" `
-    -L"$($SDL2_DIR)\lib" `
-    -lSDL2main -lSDL2 -Wno-overflow `
-    -Wall -pedantic -DLOG_USE_COLOR `
-    -Wno-address-of-packed-member `
-    -ffast-math -Ofast -g -flto
-
-    Copy-Item -Path "$($SDL2_DIR)\bin\SDL2.dll" -Destination "bin"
\ No newline at end of file
--- a/build-win64.ps1
+++ /dev/null
@@ -1,32 +1,0 @@
-git fetch --all --tags
-
-$VERSION_TAG = git describe --always --tags --abbrev=0
-$COMMIT_HASH = git rev-parse --short HEAD
-$OS_INFO = (Get-WMIObject win32_operatingsystem).caption + " " + `
-           (Get-WMIObject win32_operatingsystem).version + " " + `
-           (Get-WMIObject win32_operatingsystem).OSArchitecture
-
-$SDL2_DIR = "SDL2-2.30.3\x86_64-w64-mingw32"
-$PSX_DIR = "."
-
-mkdir -Force -Path bin > $null
-
-gcc -I"$($PSX_DIR)" `
-    -I"$($PSX_DIR)\psx" `
-    -I"$($SDL2_DIR)\include\SDL2" `
-    "psx\*.c" `
-    "psx\dev\*.c" `
-    "psx\dev\cdrom\*.c" `
-    "psx\input\*.c" `
-    "frontend\*.c" `
-    -o "bin\psxe.exe" `
-    -DREP_VERSION="`"$($VERSION_TAG)`"" `
-    -DREP_COMMIT_HASH="`"$($COMMIT_HASH)`"" `
-    -DOS_INFO="`"$($OS_INFO)`"" `
-    -L"$($SDL2_DIR)\lib" `
-    -m64 -lSDL2main -lSDL2 -Wno-overflow `
-    -Wall -pedantic -DLOG_USE_COLOR `
-    -Wno-address-of-packed-member `
-    -ffast-math -Ofast -g -flto -Werror
-
-Copy-Item -Path "$($SDL2_DIR)\bin\SDL2.dll" -Destination "bin"
\ No newline at end of file
--- a/build.sh
+++ /dev/null
@@ -1,19 +1,0 @@
-#!/bin/sh
-
-# Build emulator
-make clean && make
-
-# Create bundle filesystem
-mkdir -p psxe.app/Contents/MacOS/Libraries
-
-# Move executable to folder
-mv bin/psxe psxe.app/Contents/MacOS
-
-# Make executable
-chmod 777 psxe.app/Contents/MacOS/psxe
-
-# Bundle required dylibs
-dylibbundler -b -x ./psxe.app/Contents/MacOS/psxe -d ./psxe.app/Contents/Libraries/ -p @executable_path/../Libraries/ -cd
-
-# Move plist to Contents folder
-mv Info.plist psxe.app/Contents/Info.plist
\ No newline at end of file
--- a/compat.txt
+++ /dev/null
@@ -1,77 +1,0 @@
-Not working:
-  Fixed: Aconcagua (Japan) (Disc 1) *6
-  Fixed: Animetic Story Game 1 - Card Captor Sakura (Japan) (Disc 1) *1 (2989bb6)
-  Fixed: Ape Escape (USA) *21 (0=10000h CDROM DMA BS)
-  Fixed: Blade (USA) *3
-  Fixed: CTR - Crash Team Racing (USA) *16 (regression) (f7e41cf)
-  Fixed: Crash Bash (USA) *1 (2989bb6)
-  Fixed: Crime Crackers (Japan) *20 (e145a4e)
-  Fixed: Disney's Hercules Action Game (USA) *22
-  Fixed: Disney's The Emperor's New Groove (USA).cue *22
-  Fixed: Doom (All) *4 (e145a4e)
-  Fixed: Elder Gate (Japan) *1 (2989bb6)
-  Fixed: Fear Effect (USA) (Disc 1) *3
-  Fixed: Final Doom (All) *4 (e145a4e)
-  Fixed: Final Fantasy IX (USA) (Disc 1) *22
-  Fixed: Gran Turismo 2 - Music at the Speed of Sound - The Album (USA) (Bonus PlayStation Disc) *19 (regression)
-  Fixed: Hello Kitty - Cube Frenzy (USA) *22 (FMVs are very slow though)
-  Fixed: Initial D (Japan) *22
-  Fixed: Konami 80's Arcade Gallery (Japan) *1 (2989bb6)
-Nagano Winter Olympics '98 (USA) *18
-Need for Speed II (USA) *17
-Over Drivin' - Skyline Memorial (Japan) + Nissan Presents - Over Drivin' - Skyline Memorial (Japan) *7
-PS One Winter 03 Kiosk Version 1.21 (USA) *13
-PaRappa the Rapper (Japan) (USA version works) *16
-  Fixed: Paro Wars (Japan) *12 (e145a4e)
-  Fixed: Pet in TV - With My Dear Dog (Japan) *1 (2989bb6)
-  Fixed: Philosoma (USA) *15
-  Fixed: PoPoRoGue (Japan) *14 (2989bb6)
-  Fixed: RayStorm (USA) + RayCrisis (Japan) + RayCrisis - Series Termination (USA) *12
-  Fixed: Rockman (Japan) *1 (2989bb6)
-S.C.A.R.S (USA) *11
-SimCity 2000 (USA) *3
-Sister Princess 2 - Premium Fan Disc (Japan) (Disc A) *2 (regression)
-Star Wars - Rebel Assault II - The Hidden Empire (USA) (Disc 1) *9
-  Fixed: Strider Hiryuu 1 & 2 (Japan) (Disc 1) (Strider Hiryuu) *6 (2989bb6)
-Tama - Adventurous Ball in Giddy Labyrinth (Japan) *5
-  Fixed: Time Gal & Ninja Hayate (Japan) (En,Ja) (Disc 1) (Time Gal) *9
-  Fixed: Time Gal & Ninja Hayate (Japan) (En,Ja) (Disc 2) (Ninja Hayate) *9
-  Fixed: Tokimeki Memorial 2 (Japan) *1 (2989bb6)
-  Fixed: Tomb Raider (USA) *8 (e145a4e)
-  Fixed: Tony Hawk's Pro Skater (USA) *22
-  Fixed: Vib-Ribbon (Japan) *8 (f7e41cf)
-WipeOut (USA) *7
-  Fixed: Yu-Gi-Oh! Forbidden Memories (USA) *1 (2989bb6)
-
-Notes:
-*1  Hangs after CdlGetTN
-*2  Hangs while loading (possibly timer related)
-*3  Hangs after XA ReadS (MDEC playback (flags?) related, fixable)
-*4  Hangs after CdlPlay (timer? CDROM?)
-*5  Hangs after CdlSetSession (timeout)
-*6  Hangs on a retry deadloop, non-v0 command used (CdlReadTOC)
-*7  Hangs after SIO1 accesses
-*8  CdlGetlocP deadlock
-*9  Hangs on MDEC playback (tries, but dies)
-*10 Sector read errors (can't recover)
-*11 Input not working
-*12 Hang on a retry deadloop, ReadN XA playback?
-*13 Requires special hardware
-*14 Hangs after CdlTest
-*15 Hangs after CdlSetloc (early)
-*16 Hangs on XA playback
-*17 Hangs on sector error retry deadloop
-*18 Hangs on MDEC playback (Getstat deadloop)
-*19 Hangs on CdlSetloc deadloop
-*20 GetlocP loop hangs
-*21 Hangs after 0-sized CDROM DMA
-*22 MDEC corruption (fixed, XA resample buffer overflow)
-
-Graphical issues:
-Most graphical issues (black models, 1-pixel seams, polygon explosions, etc.) have been fixed!
-
-Silent Hill requires mask bit emulation, otherwise, semi-transparent white boxes appear on top of
-models/sprites
-
-Sound/music issues:
-Some games might play incorrect CDDA tracks, this is due to a bugfix that introduced slight track LBA deviations in our CUE loading code.
--