Giter Site home page Giter Site logo

b0nefish / pcsx-redux Goto Github PK

View Code? Open in Web Editor NEW

This project forked from grumpycoders/pcsx-redux

0.0 1.0 0.0 4.37 MB

License: GNU General Public License v2.0

C 23.92% C++ 73.69% Objective-C 0.06% Dockerfile 0.27% Shell 0.12% Makefile 0.40% Assembly 1.18% Batchfile 0.04% Verilog 0.32%

pcsx-redux's Introduction

Platform Build status
Windows build Build Status
Linux build CircleCI
MacOS build macOS CI

Discord

PCSX-Redux

What?

This is yet another fork of the Playstation Emulator, PCSX. While the work here is very much in progress, the goal is roughly the following:

  • Bring the codebase to more up to date code standards.
  • Get rid of the plugin system and create a single monolithic codebase that handles all aspects of the playstation emulation.
  • Write everything on top of SDL/OpenGL3+/ImGui for portability and readability.
  • Improve the debugging experience.
  • Improve the rendering experience.

Where?

There are currently nightly builds of pcsx-redux for Windows, available here: https://github.com/pcsx-redux/nightlies/releases

How ?

The code is meant to be built using very modern compilers. Also it's still fairly experimental, and lots of things can break. If you still want to proceed, here are instructions to build it on Linux, MacOS and Windows.

Getting sources

The only location for the source is on github. Clone recursively, as the project uses submodules: git clone https://github.com/grumpycoders/pcsx-redux.git --recursive.

Windows

Install Visual Studio 2019 Community Edition. Open the file vsprojects\pcsx-redux.sln, select pcsx-redux -> main, right click, Set as Startup Projet, and hit F7 to build. The project follows the open-and-build paradigm with no extra step, so no specific dependency ought to be needed, as NuGet will take care of downloading them automatically for you on the first build.

Linux

Run ./dockermake.sh. You need docker for this to work. You will also need a few libraries on your system for this to work. Check the Dockerfile for a list of library packages to install.

MacOS

You need MacOS Catalina with the latest XCode to build, as well as a few homebrew packages. Run the brew installation script to get all the necessary dependencies. Simply run make to build.

Who?

I used to contribute to the PCSX codebase. It is very likely that a sourceforge account of mine still has write access to the old cvs repository for PCSX. A long time ago, I contributed the telnet debugger, and the parallel port support. This means I am fairly familiar with this codebase, and I am also ashamed of the contributions I have done 15+ years ago, as one should.

Why?

When Sony released the Playstation mini recently, I came to realize two things: first, the state of the Playstation emulation isn't that great, and second, the only half-decent debugging tool still available for this console is that old telnet debugger I wrote eons ago, while other emulators out there for other consoles gained a lot of debugging superpowers. I think it was time for the Playstation emulation to get to better standards with regards to debuggability. I also felt I had a responsability to cleaning up some of the horrors I've introduced myself in the codebase long ago, and that made me cry a little looking at them. Hopefully, I got better at programming. Hopefully.

Status?

The codebase still requires a lot of cleanup, and the current product isn't properly usable yet. Despite that, a lot can already be achieved using the product in its current state.

What works?

  • x86 dynarec
  • interpreted CPU
  • software GPU
  • VRAM viewer and debugger
  • fully featured MIPS debugger
  • memory cards
  • XBox controller support
  • save states

What still requires some work?

  • GLSL GPU
  • proper SPU multithreaded code
  • save state slots
  • memory card manager
  • better customization
  • more generic dynarec
  • ...

Redux definition

pcsx-redux's People

Contributors

nicolasnoble avatar manz avatar totalcaesar659 avatar jaczekanski avatar asmblur avatar ryusan-at avatar orphis avatar yaz0r avatar ndr008 avatar azure-pipelines[bot] avatar jonathandotcel avatar

Watchers

James Cloos avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.