Code Monkey home page Code Monkey logo

dobiestation's Introduction

DobieStation

Discord Server GitHub Actions Status AppVeyor Build Status

A young PS2 emulator with plans for an optimized Android port, as well as a fast, accurate, and easy-to-use PC port.

A large portion of the PS2's library can boot or get to menus. Some titles can even go in-game, including high-profile ones such as Final Fantasy X and Shadow of the Colossus. Not intended for general use.

Compiling

DobieStation uses Qt 5 and supports qmake and CMake.

Building with qmake

cd DobieStation/DobieStation
qmake DobieStation.pro
make

Building with CMake

# Linux
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo
make

# MacOS (using Homebrew Qt5)
mkdir build && cd build
cmake .. -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_PREFIX_PATH=/usr/local/opt/qt5
make

# Windows (MSVC)
#  - change 'CMAKE_PREFIX_PATH' to point to your Qt installation.
#  - replace 'Visual Studio 16 2017' with your desired VS version (eg: "Visual Studio 16 2019")
mkdir build && cd build
cmake -DCMAKE_PREFIX_PATH="C:/Qt/5.13.1/msvc2017_64" \
      -G "Visual Studio 15 2017" -A x64 ..
start DobieStation.sln

Note for Ubuntu Xenial

While 16.04 is still officially supported they don't provide a recent enough version of Qt. As such if you wish to build Dobie on Xenial you will need to update Qt through a PPA

add-apt-repository ppa:beineri/opt-qt-5.11.1-xenial
apt-get update
apt-get install qt511-meta-minimal qt511multimedia libglu1-mesa-dev
source /opt/qt511/bin/qt511-env.sh

Alternatively, you may upgrade to the most recent Ubuntu LTS, 18.04.

Building with Visual Studio

DobieStation is known to compile on 2017 and 2019.

Before opening Visual Studio, you must set the QTDIR environment variable to your 64 bit QT install. For example on Visual Studio 2017: C:\path\to\qt\5.12.1\msvc2017_64

Once the variable is set open DobieStation\DobieStation.sln in Visual Studio.

Using the Emulator

DobieStation requires a copy of the PS2 BIOS, which must be dumped from your PS2.

The various command line options are as follows:

-b [BIOS file] - Takes the form of /path/to/bios.bin. Required for booting DobieStation.
-f [file] (optional) - The ELF or ISO that DobieStation loads. Takes the form of /path/to/game.iso or /path/to/homebrew.elf.
-s (optional) - Skip the BIOS boot animation when starting DobieStation with an ISO/ELF loaded.

The key bindings are as follows:

Keyboard DualShock 2
S Triangle
A Square
X Circle
Z Cross
Enter Start
Space Select
Q L1
N/A L2
N/A L3
W R1
N/A R2
N/A R3
D-pad up
D-pad down
D-pad left
D-pad right
R Left Analog up
F Left Analog down
D Left Analog left
G Left Analog right
I Right Analog up
K Right Analog down
J Right Analog left
L Right Analog right
Keyboard DobieStation
F1 Dump current frame from GS
F8 Take a screenshot
. Advance a single frame

PS2 Homebrew

Want to test DobieStation? Check out this repository: https://github.com/PSI-Rockin/ps2demos

Compatibility not guaranteed, but some demos do work.

Contributing

First, review the Contribution Guide. Once you have done so, take a look at the issue tracker to look for tasks you may be interested in.

Legal

DobieStation uses arg.h by Christoph "20h" Lohmann.

dobiestation's People

Contributors

andriii25 avatar arcum42 avatar cpba avatar didgeridoomh avatar feikname avatar hch12907 avatar margen67 avatar mnadareski avatar mrlinkwii avatar nobbs66 avatar nwplayer123 avatar psi-rockin avatar ravenslofty avatar refractionpcsx2 avatar screllicopter avatar souzooka avatar ssk97 avatar tadanokojin avatar tokumeiwokiboushimasu avatar turtleli avatar turtlewit avatar water111 avatar weirdbeardgame avatar wilfriedrabouin avatar ziemas avatar

Watchers

 avatar  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.