Coder Social home page Coder Social logo

crazyvito11 / vita-hello-world-docker Goto Github PK

View Code? Open in Web Editor NEW
0.0 2.0 0.0 33 KB

A simple Hello World application for the Vita, build with VitaSDK via Docker

Dockerfile 2.23% CMake 6.47% Shell 2.82% C 82.17% HTML 4.99% C++ 1.32%
cmake cpp docker docker-compose hello-world homebrew playstation-vita ps-vita vitasdk vita-companion boilerplate

vita-hello-world-docker's Introduction

Vita Hello World Docker

A simple Hello World application for the Vita, build with VitaSDK via Docker.

Why?

While setting up VitaSDK manually isn't that difficult, doing it via Docker should lower the barrier to entry even further.

This repository contains the Hello World C++ example from VitaSDK as a proof of concept.

Setup

To get started with this example, simply follow these steps.

Copy the example vita.env file

We first want to create the environment file that we will then use inside the container, this file contains information about your Vita console.

An vita.env.example file has been provided, so you only have to make a copy of it and fill it in.

Store the environment file as vita.env, this way it should be picked up by our container later on.

Fill in the vita.env file

Now that you have an Vita environment file, we can enter information about our Vita console.

Tip

It's recommended that you assign a static IP address to your Vita console.

Install the Vita Companion plugin

To use the build-and-test-app.sh script, your Vita also needs to have the Vita Companion plugin installed.

Simply follow the steps on their GitHub page.

Note

This is a fork of devnoname120's Vita Companion that also allows installing VPK files remotely.

Tip

Don't forget to also enable the "CMD/FTP Servers" option in the quick start menu, as otherwise you won't be able to connect to your Vita.

Start the container

We should now be ready to start the container!

You can start it using docker compose up -d, it should automatically build the image if it's the first time.

Tip

If you need to rebuild the image, you can add --build at the end of the command.

Create Intellisense-src directory (Recommended)

While this step is optional, it is highly recommended to make the development experience a lot easier.

Note

In this example we will be using VS Code, but this likely will also work for other IDE's.

First, install the "C/C++" extension from Microsoft. This can be installed by pressing CTRL + P, and then running ext install ms-vscode.cpptools.

Tip

If you can't find the extension, you might be running an unofficial build of VS Code that doesn't have Microsoft extensions.

You can install the extension manually by downloading the .vsix file straight from Microsoft's website.

Once you have the extension installed, simply run ./configure-intellisense.sh in a terminal on your host to copy the relevant files to your host machine.

Your editor should now be able to find the sources and provide you with proper Intellisense.

Building + Testing

First, enter the Bash shell of the contain with docker compose exec builder bash.

You should now be inside the /src directory, in which is the source code of our application and 2 scripts.

If you only want to compile the application, simply run ./build-app.sh to receive the application in vpk form, which you can then copy to the Vita manually.

Note

./build-app.sh builds the application as a Release candidate, meaning it will have better performance.

If you also want to transfer it to your Vita console over the network with Vita Companion, run ./build-and-test-app.sh instead. This should automatically transfer, install and run the application.

Warning

Running the build-and-test-app.sh script will close all running applications on the Vita, so keep that in mind.

Note

build-and-test-app.sh builds the application as a Debug release, meaning it has worse performance but with better debug information.

Debugging

If your application crashes, you can use the vita-parse-core.sh script to parse the crash dump and get more information about what went wrong.

First, copy the crash dump file from your Vita and store it in the crashdumps directory.

Tip

If you have multiple crash dumps at ux0:data/, check the Vita error screen, as it should show the filename of the current crash.

Once you have copied the crash dump file over to your machine, once again enter the builder container. Inside the container run the following command: vita-parse-core.sh /crashdumps/<YOUR_CRASH_DUMP_FILE>.psp2dmp build/<YOUR_PROJECT_TECHNICAL_NAME>

Here is an example: vita-parse-core.sh /crashdumps/psp2core-1720985303-0x0002492929-eboot.bin.psp2dmp build/hello_cpp_world

vita-hello-world-docker's People

Contributors

crazyvito11 avatar

Watchers

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