mirror of
https://github.com/open-goal/jak-project
synced 2026-07-07 14:13:45 -04:00
docs: fix Arch installation steps, and some typos (#1165)
* docs: fix Arch installation steps, and some typos * task: fix linux binary paths * docs: specify that we support the latest Visual Studio community edition
This commit is contained in:
@@ -87,7 +87,7 @@ Install packages and init repository:
|
||||
|
||||
```sh
|
||||
sudo apt install gcc make cmake build-essential g++ nasm clang-format libxrandr-dev libxinerama-dev libxcursor-dev libxi-dev python
|
||||
sudo snap install task --classic
|
||||
sudo sh -c "$(curl --location https://taskfile.dev/install.sh)" -- -d -b /usr/local/bin
|
||||
```
|
||||
|
||||
Compile:
|
||||
@@ -119,7 +119,8 @@ cmake -DCMAKE_SHARED_LINKER_FLAGS="-fuse-ld=lld" -DCMAKE_EXE_LINKER_FLAGS="-fuse
|
||||
Install packages and init repository:
|
||||
|
||||
```sh
|
||||
sudo pacman -S gcc make cmake base-devel g++ nasm taskfile-git python
|
||||
sudo pacman -S gcc make cmake base-devel g++ nasm python
|
||||
yay -S taskfile-git
|
||||
```
|
||||
|
||||
Compile:
|
||||
@@ -158,11 +159,11 @@ nix-build -A packages.x86_64-linux.jak-asan # package with Clang ASan build
|
||||
|
||||
### Required Software
|
||||
|
||||
We primarily use Visual Studio for development on Windows for C++ development. Download the community addition from [here](https://visualstudio.microsoft.com/vs/)
|
||||
We primarily use Visual Studio on Windows for C++ development. Download the latest community edition from [here](https://visualstudio.microsoft.com/vs/)
|
||||
|
||||
You will require the `Desktop development with C++` workload. This can be selected during the installation, or after via the `Visual Studio Installer` and modifying the Visual Studio Installation.
|
||||
You will require the `Desktop development with C++` workload. This can be selected during the installation, or after via the `Visual Studio Installer`, modifying the Visual Studio Installation.
|
||||
|
||||
On Windows, it's recommended to get Scoop to use as a package manager, making the following steps _much_ easier. Follow the steps on the bottom of the homepage [here](https://scoop.sh/)
|
||||
On Windows, it's recommended to use a package manager, we use Scoop. Follow the steps on the bottom of the homepage [here](https://scoop.sh/) to get it.
|
||||
|
||||
Once Scoop is installed, run the following commands:
|
||||
|
||||
@@ -180,7 +181,7 @@ Clone the repository by running the following command in your folder of choice.
|
||||
git clone https://github.com/open-goal/jak-project.git
|
||||
```
|
||||
|
||||
This will create a `jak-project` folder, we will open the project as a CMake project via Visual Studio.
|
||||
This will create a `jak-project` folder, open the project as a CMake project via Visual Studio.
|
||||
|
||||

|
||||
|
||||
@@ -200,7 +201,7 @@ Getting a running game involves 4 steps:
|
||||
|
||||
### Extract Assets
|
||||
|
||||
The first step is to extract your ISO file contents into the `iso_data/<game-name>` folder. In the case of jak this is `iso_data/jak1`.
|
||||
The first step is to extract your ISO file contents into the `iso_data/<game-name>` folder. In the case of Jak 1 this is `iso_data/jak1`.
|
||||
|
||||
Once this is done, open a terminal in the `jak-project` folder and run the following:
|
||||
|
||||
@@ -239,7 +240,7 @@ g > (mi)
|
||||
|
||||
### Run the Game
|
||||
|
||||
Finally the game can be ran. Open a second terminal from the `jak-project` directly and run the following:
|
||||
Finally the game can be ran. Open a second terminal from the `jak-project` directory and run the following:
|
||||
|
||||
```sh
|
||||
task boot-game
|
||||
@@ -257,7 +258,7 @@ To do so, in the REPL after a successful `(mi)`, run the following:
|
||||
g > (lt)
|
||||
```
|
||||
|
||||
If successfuly your prompt should change to:
|
||||
If successful, your prompt should change to:
|
||||
|
||||
```sh
|
||||
gc>
|
||||
|
||||
+11
-11
@@ -7,18 +7,18 @@ tasks:
|
||||
# GENERAL
|
||||
extract-jak1:
|
||||
cmds:
|
||||
- '{{.RELEASE_PATH}}/decompiler "./decompiler/config/jak1_ntsc_black_label.jsonc" "./iso_data" "./decompiler_out" "decompile_code=false"'
|
||||
- '{{.DECOMP_BIN_RELEASE_DIR}}/decompiler "./decompiler/config/jak1_ntsc_black_label.jsonc" "./iso_data" "./decompiler_out" "decompile_code=false"'
|
||||
boot-game:
|
||||
cmds:
|
||||
- "{{.RELEASE_PATH}}/gk -boot -fakeiso -debug -v"
|
||||
- "{{.GK_BIN_RELEASE_DIR}}/gk -boot -fakeiso -debug -v"
|
||||
run-game:
|
||||
cmds:
|
||||
- "{{.RELEASE_PATH}}/gk -fakeiso -debug -v"
|
||||
- "{{.GK_BIN_RELEASE_DIR}}/gk -fakeiso -debug -v"
|
||||
repl:
|
||||
env:
|
||||
OPENGOAL_DECOMP_DIR: "jak1/"
|
||||
cmds:
|
||||
- "{{.RELEASE_PATH}}/goalc"
|
||||
- "{{.GOALC_BIN_RELEASE_DIR}}/goalc"
|
||||
# DEVELOPMENT
|
||||
format:
|
||||
cmds:
|
||||
@@ -28,16 +28,16 @@ tasks:
|
||||
ignore_error: true
|
||||
run-game-headless:
|
||||
cmds:
|
||||
- "{{.RELEASE_PATH}}/gk -fakeiso -debug -nodisplay"
|
||||
- "{{.GK_BIN_RELEASE_DIR}}/gk -fakeiso -debug -nodisplay"
|
||||
repl-lt:
|
||||
env:
|
||||
OPENGOAL_DECOMP_DIR: "jak1/"
|
||||
cmds:
|
||||
- "{{.RELEASE_PATH}}/goalc -auto-lt"
|
||||
- "{{.GOALC_BIN_RELEASE_DIR}}/goalc -auto-lt"
|
||||
# DECOMPILING
|
||||
decomp:
|
||||
cmds:
|
||||
- '{{.RELEASE_PATH}}/decompiler "./decompiler/config/jak1_ntsc_black_label.jsonc" "./iso_data" "./decompiler_out"'
|
||||
- '{{.DECOMP_BIN_RELEASE_DIR}}/decompiler "./decompiler/config/jak1_ntsc_black_label.jsonc" "./iso_data" "./decompiler_out"'
|
||||
decomp-clean:
|
||||
cmds:
|
||||
- rm ./decompiler_out/**/*.asm
|
||||
@@ -58,7 +58,7 @@ tasks:
|
||||
# TESTS
|
||||
offline-tests:
|
||||
cmds:
|
||||
- '{{.RELEASE_PATH}}/offline-test "./iso_data/jak1"'
|
||||
- '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test "./iso_data/jak1"'
|
||||
add-reference-test:
|
||||
cmds:
|
||||
- task: decomp-file
|
||||
@@ -71,7 +71,7 @@ tasks:
|
||||
update-reference-tests:
|
||||
cmds:
|
||||
- cmd: python ./scripts/default-file-or-folder.py --path failures
|
||||
- cmd: '{{.RELEASE_PATH}}/offline-test "./iso_data/jak1" --dump-mode'
|
||||
- cmd: '{{.OFFLINETEST_BIN_RELEASE_DIR}}/offline-test "./iso_data/jak1" --dump-mode'
|
||||
ignore_error: true
|
||||
- python ./scripts/update_decomp_reference.py ./failures ./test/decompiler/reference/
|
||||
- task: offline-tests
|
||||
@@ -82,7 +82,7 @@ tasks:
|
||||
- python ./scripts/find-label-types.py --file "{{.FILES}}"
|
||||
type-test:
|
||||
cmds:
|
||||
- cmd: '{{.RELEASE_PATH}}/goalc-test --gtest_brief=0 --gtest_filter="*MANUAL_TEST_TypeConsistencyWithBuildFirst*"'
|
||||
- cmd: '{{.GOALCTEST_BIN_RELEASE_DIR}}/goalc-test --gtest_brief=0 --gtest_filter="*MANUAL_TEST_TypeConsistencyWithBuildFirst*"'
|
||||
ignore_error: true
|
||||
check-gsrc-file:
|
||||
cmds:
|
||||
@@ -90,7 +90,7 @@ tasks:
|
||||
# TOOLS
|
||||
analyze-ee-memory:
|
||||
cmds:
|
||||
- '{{.RELEASE_PATH}}/memory_dump_tool "{{.FILE}}" ./ > ee-analysis.log'
|
||||
- '{{.MEMDUMP_BIN_RELEASE_DIR}}/memory_dump_tool "{{.FILE}}" ./ > ee-analysis.log'
|
||||
watch-pcsx2:
|
||||
cmds:
|
||||
- watchmedo shell-command --drop --patterns="*.p2s" --recursive --command='task analyze-ee-memory FILE="${watch_src_path}"' "{{.SAVESTATE_DIR}}"
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
version: '3'
|
||||
|
||||
vars:
|
||||
RELEASE_PATH: './build'
|
||||
GOALC_BIN_RELEASE_DIR: './build/goalc'
|
||||
GK_BIN_RELEASE_DIR: './build/game'
|
||||
DECOMP_BIN_RELEASE_DIR: './build/decompiler'
|
||||
MEMDUMP_BIN_RELEASE_DIR: './build/tools'
|
||||
OFFLINETEST_BIN_RELEASE_DIR: './build'
|
||||
GOALCTEST_BIN_RELEASE_DIR: './build'
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
version: '3'
|
||||
|
||||
vars:
|
||||
RELEASE_PATH: './build'
|
||||
GOALC_BIN_RELEASE_DIR: './build/goalc'
|
||||
GK_BIN_RELEASE_DIR: './build/game'
|
||||
DECOMP_BIN_RELEASE_DIR: './build/decompiler'
|
||||
MEMDUMP_BIN_RELEASE_DIR: './build/tools'
|
||||
OFFLINETEST_BIN_RELEASE_DIR: './build'
|
||||
GOALCTEST_BIN_RELEASE_DIR: './build'
|
||||
|
||||
@@ -1,4 +1,9 @@
|
||||
version: '3'
|
||||
|
||||
vars:
|
||||
RELEASE_PATH: './out/build/Release/bin'
|
||||
GOALC_BIN_RELEASE_DIR: './out/build/Release/bin'
|
||||
GK_BIN_RELEASE_DIR: './out/build/Release/bin'
|
||||
DECOMP_BIN_RELEASE_DIR: './out/build/Release/bin'
|
||||
MEMDUMP_BIN_RELEASE_DIR: './out/build/Release/bin'
|
||||
OFFLINETEST_BIN_RELEASE_DIR: './out/build/Release/bin'
|
||||
GOALCTEST_BIN_RELEASE_DIR: './out/build/Release/bin'
|
||||
|
||||
Reference in New Issue
Block a user