diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml
index d42a99e00a..4584db3385 100644
--- a/.github/workflows/main.yml
+++ b/.github/workflows/main.yml
@@ -1,8 +1,9 @@
-name: PR Builds x64
+name: Builds
on:
push:
- branches: [ master ]
+ branches:
+ - master
paths-ignore:
- "**.md"
- "**.ini"
@@ -13,274 +14,211 @@ on:
- "**.ini"
jobs:
-# windows64-netplay:
-# env:
-# DXSDK_DIR: "C:\\Program Files (x86)\\Microsoft DirectX SDK (June 2010)\\"
-# name: "Windows Netplay"
-# runs-on: windows-2019
-# steps:
-# - name: "Remove Redistributable"
-# shell: cmd
-# run: |
-# MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}
-# - name: "Setup MSBuild"
-# uses: microsoft/setup-msbuild@v1
-# - name: "Install DirectX SDK"
-# shell: powershell
-# run: |
-# choco install directx-sdk
-# - name: "Checkout"
-# uses: actions/checkout@v2.3.1
-# - name: 'Fetch Git Tags'
-# if: success()
-# shell: bash
-# run: |
-# git fetch --prune --unshallow
-# echo ::set-env name=GIT_BRANCH::$(git rev-parse --abbrev-ref HEAD)
-# echo ::set-env name=GIT_HASH::$(git rev-parse --short HEAD)
-# echo ::set-env name=GIT_TAG::$(git describe --tags --abbrev=0)
-# echo ::set-env name=CURR_DATE::$(date +%Y-%m-%d)
-# - name: "Build Netplay Dolphin"
-# shell: cmd
-# run: |
-# msbuild /p:Configuration=Release /p:Platform=x64 ${{ github.workspace }}\Source\Dolphin.sln
-# - name: "Package Netplay"
-# working-directory: ${{ github.workspace }}
-# run: |
-# $env:FILE_NAME="${{ env.CURR_DATE }}-${{ env.OBS_GIT_HASH }}-${{ env.OBS_GIT_TAG }}-win64-netplay.zip"
-# mkdir artifact
-# Xcopy /Y /E /I .\Data\Sys .\Binary\x64\Sys
-# cd .\Binary\x64\
-# fsutil file createnew portable.txt 0
-# fsutil file createnew FIX-VCRUNTIME140-ERROR.txt 0
-# echo "Download and install this: https://aka.ms/vs/16/release/vc_redist.x64.exe" > .\FIX-VCRUNTIME140-ERROR.txt
-# 7z a ${env:FILE_NAME} .\*
-# move ${env:FILE_NAME} ..\..\artifact\
-# - name: "Publish"
-# if: success()
-# uses: actions/upload-artifact@v2-preview
-# with:
-# name: "windows64-netplay"
-# path: "./artifact/"
-# windows64-playback:
-# env:
-# DXSDK_DIR: "C:\\Program Files (x86)\\Microsoft DirectX SDK (June 2010)\\"
-# name: "Windows Playback"
-# runs-on: windows-2019
-# steps:
-# - name: "Remove Redistributable"
-# shell: cmd
-# run: |
-# MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}
-# - name: "Setup MSBuild"
-# uses: microsoft/setup-msbuild@v1
-# - name: "Install DirectX SDK"
-# shell: powershell
-# run: |
-# choco install directx-sdk
-# - name: "Checkout"
-# uses: actions/checkout@v2.3.1
-# - name: 'Fetch Git Tags'
-# if: success()
-# shell: bash
-# run: |
-# git fetch --prune --unshallow
-# echo ::set-env name=GIT_BRANCH::$(git rev-parse --abbrev-ref HEAD)
-# echo ::set-env name=GIT_HASH::$(git rev-parse --short HEAD)
-# echo ::set-env name=GIT_TAG::$(git describe --tags --abbrev=0)
-# echo ::set-env name=CURR_DATE::$(date +%Y-%m-%d)
-# - name: "Build Playback Dolphin"
-# shell: cmd
-# run: |
-# msbuild /p:Configuration=ReleasePlayback /p:Platform=x64 ${{ github.workspace }}\Source\Dolphin.sln
-# - name: "Package Playback"
-# if: success()
-# working-directory: ${{ github.workspace }}
-# run: |
-# $env:FILE_NAME="${{ env.CURR_DATE }}-${{ env.OBS_GIT_HASH }}-${{ env.OBS_GIT_TAG }}-win64-playback.zip"
-# mkdir artifact
-# git clone https://github.com/project-slippi/slippi-desktop-app
-# Xcopy /Y /E /I .\Data\Sys .\Binary\x64\Sys
-# Xcopy /Y /E /I .\slippi-desktop-app\app\dolphin-dev\overwrite\Sys .\Binary\x64\Sys
-# Xcopy /Y /E /I .\slippi-desktop-app\app\dolphin-dev\overwrite\User .\Binary\x64\User
-# cd .\Binary\x64\
-# fsutil file createnew portable.txt 0
-# 7z a ${env:FILE_NAME} .\*
-# move ${env:FILE_NAME} ..\..\artifact\
-# - name: "Publish"
-# if: success()
-# uses: actions/upload-artifact@v2-preview
-# with:
-# name: "windows64-playback"
-# path: "./artifact/"
- ubuntu64-netplay:
- name: "Ubuntu Netplay"
- runs-on: ubuntu-18.04
- steps:
- - name: "Checkout"
- uses: actions/checkout@v2
- - name: 'Fetch Git Tags'
- if: success()
- run: |
- git fetch --prune --unshallow
- echo "GIT_BRANCH=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
- echo "GIT_HASH=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
- echo "GIT_TAG=$(git describe --tags --abbrev=0)" >> $GITHUB_ENV
- echo "CURR_DATE=$(date +%Y-%m-%d)" >> $GITHUB_ENV
- - name: "Install prerequisites"
- if: success()
- shell: bash
- run: |
- sudo dpkg --add-architecture amd64
- sudo apt update
- sudo apt install \
- cmake \
- pkg-config \
- git \
- wget \
- libao-dev \
- libasound2-dev \
- libavcodec-dev \
- libavformat-dev \
- libbluetooth-dev \
- libenet-dev \
- libgtk2.0-dev \
- liblzo2-dev \
- libminiupnpc-dev \
- libopenal-dev \
- libpulse-dev \
- libreadline-dev \
- libsfml-dev \
- libsoil-dev \
- libsoundtouch-dev \
- libswscale-dev \
- libusb-1.0-0-dev \
- libxext-dev \
- libxrandr-dev \
- portaudio19-dev \
- zlib1g-dev \
- libudev-dev \
- libevdev-dev \
- libmbedtls-dev \
- libcurl4-openssl-dev \
- libegl1-mesa-dev \
- libpng-dev \
- qtbase5-private-dev \
- libxxf86vm-dev \
- x11proto-xinerama-dev
- - name: "Build Netplay Dolphin"
- if: success()
- working-directory: ${{ github.workspace }}
- run: |
- chmod +x ./build-linux.sh
- ./build-linux.sh
- - name: "Build Netplay AppImage"
- if: success()
- working-directory: ${{ github.workspace }}
- run: |
- chmod +x ./build-appimage.sh
- ./build-appimage.sh
- - name: "Package Netplay"
- if: success()
- working-directory: ${{ github.workspace }}
- run: |
- mkdir artifact
- FILE_NAME=${{ env.CURR_DATE }}-${{ env.GIT_HASH }}-${{ env.GIT_TAG }}-linux-appimage-netplay.zip
- zip -r "${FILE_NAME}" ./*.AppImage*
- mv "${FILE_NAME}" ./artifact/
- - name: "Publish"
- if: success()
- uses: actions/upload-artifact@v2-preview
- with:
- name: "linux-netplay"
- path: "./artifact/"
- ubuntu64-playback:
- name: "Ubuntu Playback"
- runs-on: ubuntu-18.04
- steps:
- - name: "Checkout"
- uses: actions/checkout@v2
- - name: 'Fetch Git Tags'
- if: success()
- run: |
- git fetch --prune --unshallow
- echo "GIT_BRANCH=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
- echo "GIT_HASH=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
- echo "GIT_TAG=$(git describe --tags --abbrev=0)" >> $GITHUB_ENV
- echo "CURR_DATE=$(date +%Y-%m-%d)" >> $GITHUB_ENV
- - name: "Install prerequisites"
- if: success()
- shell: bash
- run: |
- sudo dpkg --add-architecture amd64
- sudo apt update
- sudo apt install \
- cmake \
- pkg-config \
- git \
- wget \
- libao-dev \
- libasound2-dev \
- libavcodec-dev \
- libavformat-dev \
- libbluetooth-dev \
- libenet-dev \
- libgtk2.0-dev \
- liblzo2-dev \
- libminiupnpc-dev \
- libopenal-dev \
- libpulse-dev \
- libreadline-dev \
- libsfml-dev \
- libsoil-dev \
- libsoundtouch-dev \
- libswscale-dev \
- libusb-1.0-0-dev \
- libxext-dev \
- libxrandr-dev \
- portaudio19-dev \
- zlib1g-dev \
- libudev-dev \
- libevdev-dev \
- libmbedtls-dev \
- libcurl4-openssl-dev \
- libegl1-mesa-dev \
- libpng-dev \
- qtbase5-private-dev \
- libxxf86vm-dev \
- x11proto-xinerama-dev
- - name: "Build Playback Dolphin"
- if: success()
- working-directory: ${{ github.workspace }}
- run: |
- chmod +x ./build-linux.sh
- ./build-linux.sh playback
- - name: "Build Playback AppImage"
- if: success()
- working-directory: ${{ github.workspace }}
- run: |
- chmod +x ./build-appimage.sh
- ./build-appimage.sh playback
- - name: "Package Playback"
- if: success()
- working-directory: ${{ github.workspace }}
- run: |
- mkdir artifact
- FILE_NAME=${{ env.CURR_DATE }}-${{ env.GIT_HASH }}-${{ env.GIT_TAG }}-linux-appimage-playback.zip
- zip -r "${FILE_NAME}" ./*.AppImage
- mv "${FILE_NAME}" ./artifact/
- - name: "Publish"
- if: success()
- uses: actions/upload-artifact@v2-preview
- with:
- name: "linux-playback"
- path: "./artifact/"
- macOS64-netplay:
- name: "macOS Netplay"
+ # windows:
+ # strategy:
+ # fail-fast: false
+ # matrix:
+ # build_type: [Netplay, Playback]
+ # include:
+ # - build_type: Netplay
+ # artifact_name: windows64-netplay
+ # build_config: -G "Ninja" -DCMAKE_BUILD_TYPE="Release" -DQt5_DIR:STRING="D:\a\dolphin\dolphin\Externals\Qt\Qt5.15.0\msvc2019_64\lib\cmake\Qt5" -DSLIPPI_PLAYBACK=false
+ # - build_type: Playback
+ # artifact_name: windows64-playback
+ # build_config: -G "Ninja" -DCMAKE_BUILD_TYPE="Release" -DQt5_DIR:STRING="D:\a\dolphin\dolphin\Externals\Qt\Qt5.15.0\msvc2019_64\lib\cmake\Qt5"
+ # env:
+ # DXSDK_DIR: "C:\\Program Files (x86)\\Microsoft DirectX SDK (June 2010)\\"
+ # name: "Windows ${{ matrix.build_type }}"
+ # runs-on: windows-2019
+ # steps:
+ # - name: "Checkout"
+ # uses: actions/checkout@v2
+ # with:
+ # submodules: recursive
+ # # - name: "Remove Redistributable"
+ # # shell: cmd
+ # # run: |
+ # # MsiExec.exe /passive /X{F0C3E5D1-1ADE-321E-8167-68EF0DE699A5}
+ # # MsiExec.exe /passive /X{1D8E6291-B0D5-35EC-8441-6616F567A0F7}
+ # # mkdir .\Tools\DX
+ # # - name: "Setup MSBuild"
+ # # uses: microsoft/setup-msbuild@v1
+ # # - name: Cache DXSDK_Jun10.exe
+ # # uses: actions/cache@v2
+ # # with:
+ # # path: ./Tools/DX/
+ # # key: ${{ runner.os }}
+ # # - name: "Download DirectX SDK"
+ # # working-directory: ${{ github.workspace }}
+ # # shell: powershell
+ # # run: |
+ # # if (!(Test-Path ".\Tools\DX\DXSDK_Jun10.exe" -PathType Leaf)) { Invoke-WebRequest -Uri https://github.com/project-slippi/Ishiiruka/releases/download/v2.2.5/DXSDK_Jun10.exe -UseBasicParsing -OutFile ".\Tools\DX\DXSDK_Jun10.exe" }
+ # # - name: "Install DirectX SDK"
+ # # working-directory: ${{ github.workspace }}
+ # # shell: cmd
+ # # run: |
+ # # .\Tools\DX\DXSDK_Jun10.exe /U /F
+ # - name: 'Fetch Git Tags'
+ # shell: bash
+ # if: success()
+ # run: |
+ # git fetch --prune --unshallow
+ # echo "GIT_BRANCH=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
+ # echo "GIT_HASH=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
+ # echo "GIT_TAG=$(git describe --tags --abbrev=0)" >> $GITHUB_ENV
+ # echo "CURR_DATE=$(date +%Y-%m-%d)" >> $GITHUB_ENV
+ # - uses: seanmiddleditch/gha-setup-ninja@master
+ # - uses: egor-tensin/vs-shell@v2
+ # - name: "Build ${{ matrix.build_type }} Dolphin"
+ # shell: cmd
+ # working-directory: ${{ github.workspace }}
+ # run: |
+ # mkdir build
+ # cd build
+ # dir ..\Externals\Qt\Qt5.15.0\msvc2019_64\lib\cmake\Qt5
+ # cmake ${{ matrix.build_config }} ..
+ # ninja
+ # - name: "Package ${{ matrix.build_type }}"
+ # working-directory: ${{ github.workspace }}
+ # run: |
+ # Xcopy /Y /E /I .\Data\Sys .\Binary\x64\Sys
+ # cd .\Binary\x64\
+ # fsutil file createnew FIX-VCRUNTIME140-ERROR.txt 0
+ # echo "Download and install this: https://aka.ms/vs/16/release/vc_redist.x64.exe" > .\FIX-VCRUNTIME140-ERROR.txt
+ # - name: "Add Playback codes"
+ # working-directory: ${{ github.workspace }}
+ # if: matrix.build_type == 'Playback'
+ # run: |
+ # Xcopy /Y /E /I .\Data\Sys .\Binary\x64\Sys
+ # Xcopy /Y /E /I .\Data\PlaybackGeckoCodes\* .\Binary\x64\Sys\GameSettings\
+ # - name: Package Artifact
+ # working-directory: ${{ github.workspace }}
+ # run: |
+ # $FILE_NAME="${{ env.CURR_DATE }}-${{ env.GIT_HASH }}-${{ env.GIT_TAG }}-${{ matrix.artifact_name }}.zip"
+ # mkdir artifact
+ # cd .\Binary\x64\
+ # fsutil file createnew portable.txt 0
+ # 7z a $FILE_NAME .\*
+ # move $FILE_NAME ..\..\artifact\
+ # - name: "Publish"
+ # if: success()
+ # uses: actions/upload-artifact@v2-preview
+ # with:
+ # name: ${{ matrix.artifact_name }}
+ # path: "./artifact/"
+ linux:
+ strategy:
+ fail-fast: false
+ matrix:
+ build_type: [Netplay, Playback]
+ include:
+ - build_type: Netplay
+ artifact_name: linux-netplay
+ build_config: netplay
+ - build_type: Playback
+ artifact_name: linux-playback
+ build_config: playback
+ name: "Linux ${{ matrix.build_type }}"
+ runs-on: ubuntu-18.04
+ steps:
+ - name: "Checkout"
+ uses: actions/checkout@v2
+ with:
+ submodules: recursive
+ - name: 'Fetch Git Tags'
+ if: success()
+ run: |
+ git fetch --prune --unshallow
+ echo "GIT_BRANCH=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
+ echo "GIT_HASH=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
+ echo "GIT_TAG=$(git describe --tags --abbrev=0)" >> $GITHUB_ENV
+ echo "CURR_DATE=$(date +%Y-%m-%d)" >> $GITHUB_ENV
+ - name: "Install prerequisites"
+ if: success()
+ shell: bash
+ run: |
+ sudo dpkg --add-architecture amd64
+ sudo apt update
+ sudo apt install \
+ cmake \
+ pkg-config \
+ git \
+ wget \
+ libao-dev \
+ libasound2-dev \
+ libavcodec-dev \
+ libavformat-dev \
+ libbluetooth-dev \
+ libenet-dev \
+ libgtk2.0-dev \
+ liblzo2-dev \
+ libminiupnpc-dev \
+ libopenal-dev \
+ libpulse-dev \
+ libreadline-dev \
+ libsfml-dev \
+ libsoil-dev \
+ libsoundtouch-dev \
+ libswscale-dev \
+ libusb-1.0-0-dev \
+ libwebkit2gtk-4.0-dev \
+ libxext-dev \
+ libxrandr-dev \
+ portaudio19-dev \
+ zlib1g-dev \
+ libudev-dev \
+ libevdev-dev \
+ libmbedtls-dev \
+ libcurl4-openssl-dev \
+ libegl1-mesa-dev \
+ libpng-dev \
+ qtbase5-private-dev \
+ libxxf86vm-dev \
+ x11proto-xinerama-dev
+ - name: "Build ${{ matrix.build_type }} Dolphin"
+ if: success()
+ working-directory: ${{ github.workspace }}
+ run: |
+ chmod +x ./build-linux.sh && ./build-linux.sh ${{ matrix.build_config }}
+ - name: "Build ${{ matrix.build_type }} AppImage"
+ if: success()
+ working-directory: ${{ github.workspace }}
+ run: |
+ chmod +x ./build-appimage.sh && ./build-appimage.sh ${{ matrix.build_config }}
+ - name: "Package"
+ if: success()
+ working-directory: ${{ github.workspace }}
+ run: |
+ mkdir artifact
+ FILE_NAME=${{ env.CURR_DATE }}-${{ env.GIT_HASH }}-${{ env.GIT_TAG }}-${{ matrix.artifact_name }}.zip
+ chmod +x ./*.AppImage
+ zip -r "${FILE_NAME}" ./*.AppImage*
+ mv "${FILE_NAME}" ./artifact/
+ - name: "Publish"
+ if: success()
+ uses: actions/upload-artifact@v2-preview
+ with:
+ name: ${{ matrix.artifact_name }}
+ path: "./artifact/"
+ macOS:
+ strategy:
+ fail-fast: false
+ matrix:
+ build_type: [Netplay, Playback]
+ include:
+ - build_type: Netplay
+ artifact_name: macOS-netplay
+ build_config: netplay
+ - build_type: Playback
+ artifact_name: macOS-playback
+ build_config: playback
+ name: "macOS ${{ matrix.build_type }}"
runs-on: macos-10.15
steps:
- name: "Checkout"
uses: actions/checkout@v2
+ with:
+ submodules: recursive
- name: 'Fetch Git Tags'
if: success()
run: |
@@ -303,7 +241,7 @@ jobs:
shell: bash
run: |
rm '/usr/local/bin/2to3' || true
- brew update
+ echo "HOMEBREW_NO_AUTO_UPDATE=1" >> $GITHUB_ENV
brew upgrade cmake
brew install \
ffmpeg \
@@ -313,99 +251,26 @@ jobs:
libao \
sound-touch \
hidapi \
- qt
- - name: "Build Netplay"
+ qt@5
+ - name: "Build ${{ matrix.build_type }} Dolphin"
if: success()
shell: bash
working-directory: ${{ github.workspace }}
run: |
- mkdir build
- cd build
- export LIBRARY_PATH=/usr/lib/
- cmake -DSLIPPI_PLAYBACK=false -DQt5_DIR=$(brew --prefix qt)/lib/cmake/Qt5 -DENABLE_NOGUI=false ..
- make -j7
- - name: "Package Netplay"
+ chmod +x ./build-mac.sh && ./build-mac.sh ${{ matrix.build_config }}
+ - name: Package ${{ matrix.build_type }}
if: success()
shell: bash
working-directory: ${{ github.workspace }}
run: |
- FILE_NAME=${{ env.CURR_DATE }}-${{ env.GIT_HASH }}-${{ env.GIT_TAG }}-macOS-netplay.tar.gz
- cp -Rf Data/Sys build/Binaries/Dolphin.app/Contents/Resources/
+ FILE_NAME=${{ env.CURR_DATE }}-${{ env.GIT_HASH }}-${{ env.GIT_TAG }}-${{ matrix.artifact_name }}.tar.gz
mkdir artifact
cd ./build/Binaries/
- zip -r "${FILE_NAME}" Dolphin.app
+ zip -r "${FILE_NAME}" "Slippi_Dolphin.app"
mv "${FILE_NAME}" ../../artifact/
- name: "Publish"
if: success()
uses: actions/upload-artifact@v2-preview
with:
- name: "macOS-netplay"
- path: "./artifact/"
- macOS64-playback:
- name: "macOS Playback"
- runs-on: macos-10.15
- steps:
- - name: "Checkout"
- uses: actions/checkout@v2
- - name: 'Fetch Git Tags'
- if: success()
- run: |
- git fetch --prune --unshallow
- echo "GIT_BRANCH=$(git rev-parse --abbrev-ref HEAD)" >> $GITHUB_ENV
- echo "GIT_HASH=$(git rev-parse --short HEAD)" >> $GITHUB_ENV
- echo "GIT_TAG=$(git describe --tags --abbrev=0)" >> $GITHUB_ENV
- echo "CURR_DATE=$(date +%Y-%m-%d)" >> $GITHUB_ENV
- - name: "Install 10.14 SDK"
- if: success()
- shell: bash
- working-directory: ${{ github.workspace }}
- run: |
- wget https://github.com/phracker/MacOSX-SDKs/releases/download/10.15/MacOSX10.14.sdk.tar.xz
- tar -xf MacOSX10.14.sdk.tar.xz
- rm MacOSX10.14.sdk.tar.xz
- sudo mv MacOSX10.14.sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/
- - name: "Download and Install prerequisites"
- if: success()
- shell: bash
- run: |
- rm '/usr/local/bin/2to3' || true
- brew update
- brew upgrade cmake
- brew install \
- ffmpeg \
- libpng \
- libav \
- pkgconfig \
- libao \
- sound-touch \
- hidapi \
- qt
- - name: "Build Playback"
- if: success()
- shell: bash
- working-directory: ${{ github.workspace }}
- run: |
- mkdir build
- export LD_LIBRARY_PATH=/usr/lib/
- cd build
- cmake -DQt5_DIR=$(brew --prefix qt)/lib/cmake/Qt5 -DENABLE_NOGUI=false ..
- make -j7
- - name: "Package Playback"
- if: success()
- shell: bash
- working-directory: ${{ github.workspace }}
- run: |
- mkdir artifact
- git clone https://github.com/project-slippi/slippi-desktop-app
- cd ./build/Binaries/
- cp -Rf ../../Data/Sys ./Dolphin.app/Contents/Resources
- cp -Rf ../../slippi-desktop-app/app/dolphin-dev/overwrite/Sys ./Dolphin.app/Contents/Resources
- FILE_NAME=${{ env.CURR_DATE }}-${{ env.GIT_HASH }}-${{ env.GIT_TAG }}-macOS-playback.zip
- zip -r "${FILE_NAME}" Dolphin.app
- mv "${FILE_NAME}" ../../artifact/
- - name: "Publish"
- if: success()
- uses: actions/upload-artifact@v2-preview
- with:
- name: "macOS-playback"
+ name: ${{ matrix.artifact_name }}
path: "./artifact/"
diff --git a/Data/PlaybackGeckoCodes/GALE01r2.ini b/Data/PlaybackGeckoCodes/GALE01r2.ini
new file mode 100644
index 0000000000..367ac20bef
--- /dev/null
+++ b/Data/PlaybackGeckoCodes/GALE01r2.ini
@@ -0,0 +1,1262 @@
+# GALE01 - Super Smash Bros. Melee NTSC-U 1.02
+
+[Core]
+CPUThread = False
+GPUDeterminismMode = fake-completion
+PollingMethod = OnSIRead
+FastDiscSpeed = True
+
+[Gecko_Enabled]
+$Required: General Codes
+$Required: Slippi Playback
+$Optional: Show Player Names
+
+[Gecko]
+$Required: General Codes [Achilles, Dan Salvato, UnclePunch, tauKhan, Ptomerty, Cilan, Datel, Most]
+0415EE98 38600001 #Unlock All Characters and Stages [Datel]
+0415EDDC 38600001
+04164B14 38600001
+041648F4 38600001
+0415EE4C 38600001
+0415EE14 38600001
+0415D968 38600001
+0415D9D8 38600001
+0417229C 38600000
+041737B0 38600000
+04164658 38600001
+041644E8 38600001
+0430490C 38600063
+043044F0 38600001
+0415D94C 4E800020 #Disable Special Messages [Most]
+0415D984 4E800020 #Disable Trophy Messages [Achilles]
+C22FCCE8 00000013 #External/Extended Nametag Box/Extended Nametag Box.asm
+3C608003 6063556C
+7C6803A6 887F0000
+4E800021 5460063E
+28000078 41820070
+3C608045 6063D84F
+1C0001A4 7C630214
+38800000 8C030001
+2C000000 41820018
+38840001 2C000080
+41A0FFEC 8C030001
+4BFFFFE4 2C040005
+41800034 3C604080
+9061FFF0 C221FFF0
+3E404330 CA028C58
+9241FFEC 9081FFF0
+C9E1FFEC EDEF8028
+EDEF8824 807E0010
+D1E3002C 807E0010
+60000000 00000000
+C213C388 0000000A #Common/CostumeBoundCheck/PuffCostume.asm
+83DC002C 887E000C
+3D808003 618C2330
+7D8903A6 4E800421
+3D808016 618C9238
+7D8903A6 4E800421
+889E0619 7C041800
+40800008 48000014
+3D808013 618CC46C
+7D8903A6 4E800420
+809C002C 00000000
+C216DED4 00000039 #Common/CostumeBoundCheck/main.asm
+7C0802A6 90010004
+9421FF50 BE810008
+3BE00000 7FE3FB78
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 41820060
+7FE3FB78 3D808003
+618C3198 7D8903A6
+4E800421 7C7E1B78
+7FE3FB78 3D808003
+618C2330 7D8903A6
+4E800421 3D808016
+618C9238 7D8903A6
+4E800421 7C1E1800
+4180001C 7FE3FB78
+38800000 3D808003
+618C3208 7D8903A6
+4E800421 3BFF0001
+2C1F0006 4180FF80
+3BE00000 7FE3FB78
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 418200EC
+7FE3FB78 3D808003
+618C2330 7D8903A6
+4E800421 7C7E1B78
+7FE3FB78 3D808003
+618C3198 7D8903A6
+4E800421 7C7D1B78
+7FE3FB78 3D808003
+618C3284 7D8903A6
+4E800421 7C7C1B78
+3B600000 7C1FD800
+4182008C 7F63DB78
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 41820070
+7F63DB78 3D808003
+618C2330 7D8903A6
+4E800421 7C03F000
+40820054 7F63DB78
+3D808003 618C3198
+7D8903A6 4E800421
+7C03E800 40820038
+7F63DB78 3D808003
+618C3284 7D8903A6
+4E800421 7C03E000
+4082001C 38830001
+7F63DB78 3D808003
+618C32F4 7D8903A6
+4E800421 3B7B0001
+2C1B0006 4180FF68
+3BFF0001 2C1F0006
+4180FEF4 BA810008
+800100B4 382100B0
+7C0803A6 8001001C
+60000000 00000000
+
+$Required: Slippi Playback [Fizzi, UnclePunch, Achilles, tauKhan]
+*Used to play back a .slp file
+*Will play replay configured in playback.txt
+C216E9E4 00000010 #Playback/Core/CleanDynamicGeckos.asm
+3BC30000 7C0802A6
+90010004 9421FF50
+BE810008 83CDB64C
+83BE0010 807D0000
+2C030000 41820044
+389D0008 80BD0004
+3D808000 618C31F4
+7D8903A6 4E800421
+807D0000 809D0004
+3D808032 618C8F50
+7D8903A6 4E800421
+807D0004 7FBD1A14
+3BBD0008 4BFFFFB8
+BA810008 800100B4
+382100B0 7C0803A6
+60000000 00000000
+C216D298 00000016 #Playback/Core/FetchGameFrame.asm
+881F0008 2C000000
+408200A0 7C0802A6
+90010004 9421FF50
+BE810008 806DB64C
+83630000 38600076
+987B0000 806DB654
+907B0001 7F63DB78
+38800005 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7F63DB78 3880018F
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 887B0000
+2C030000 40820024
+3D808034 618CF314
+7D8903A6 4E800421
+3C60804C 38000000
+98031F7B 4BFFFF90
+BA810008 800100B4
+382100B0 7C0803A6
+881F0008 00000000
+C206B0DC 00000046 #Playback/Core/RestoreGameFrame.asm
+7C0802A6 90010004
+9421FF50 BE810008
+8BBF000C 7FA3EB78
+3D808003 618C1724
+7D8903A6 4E800421
+7C7C1B78 832DB64C
+83790000 7FE3FB78
+3D808000 618C55F8
+7D8903A6 4E800421
+7C741B78 389B0007
+88BF000C 1CA50062
+7C842A14 1CB40031
+7F442A14 3C80804D
+807A0000 90645F90
+807A0004 907F0620
+807A0008 907F0624
+807A000C 907F0638
+807A0010 907F063C
+807A0014 907F0650
+807A0018 907F065C
+8879056F 2C030000
+41820024 807A001C
+907F00B0 807A0020
+907F00B4 807A0024
+907F002C 807A0028
+907F0010 3C608046
+6063B108 3C80804C
+60841F78 88840001
+3884FFFF 2C040000
+40A00008 38840005
+1C840030 7C632214
+889F0618 1C84000C
+7E832214 887A002C
+98740002 8879056F
+2C030000 4182004C
+807A002D 2C03FFFF
+41820040 90610040
+C0210040 C05F1830
+EC211028 C0429500
+FC011040 41820024
+7FE3FB78 C0210040
+C05F1830 EC211028
+3D808006 618CCC7C
+7D8903A6 4E800421
+806DB654 2C03FF85
+408200AC 7FE3FB78
+38800000 C0228874
+3D808007 618C592C
+7D8903A6 4E800421
+807F00B0 907F06F4
+907F070C 807F00B4
+907F06F8 907F0710
+807F00B8 907F06FC
+907F0714 C03F00B4
+D03F2344 806DAE0C
+907F0728 887F000C
+889F221F 5484EFFE
+38BF00B0 3D808003
+618C2828 7D8903A6
+4E800421 7FC3F378
+3D808007 618C61C8
+7D8903A6 4E800421
+807F0890 C0230040
+D023002C C0230044
+D0230030 3D808002
+618CF3AC 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 881F2219
+60000000 00000000
+C216E74C 0000009E #Playback/Core/RestoreGameInfo.asm
+7C0802A6 90010004
+9421FF50 BE810008
+386005EC 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7C1B78
+938DB64C 388005EC
+3D808000 618CC160
+7D8903A6 4E800421
+38600221 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7E1B78
+93DC0000 38600040
+3D808037 618CF1E4
+7D8903A6 4E800421
+907C0004 38600075
+987E0000 387C001C
+907E0001 38600553
+907E0005 38600000
+907E0009 7FC3F378
+3880000D 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7FC3F378 38800221
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 887E0000
+2C030001 41820018
+3D808034 618CF314
+7D8903A6 4E800421
+4BFFFF8C 807E0001
+3C80804D 90645F90
+7FE3FB78 389E0005
+38A00138 3D808000
+618C31F4 7D8903A6
+4E800421 387F0040
+3880001C 3D808000
+618CC160 7D8903A6
+4E800421 3AE2F22C
+3A82F230 3ABE013D
+3AC00000 1C960008
+7C64A82E 7C76B9AE
+38840004 7C64A82E
+7C76A1AE 3AD60001
+2C160004 4180FFE0
+3A800000 3ABF0060
+1ED40024 7ED6AA14
+88760001 2C030000
+40820078 8876000A
+2C030078 4182006C
+7C771B78 3D808023
+618C7A04 7D8903A6
+4E800421 7EE3BB78
+3D808015 618CCC9C
+7D8903A6 4E800421
+38630198 389E015D
+1CB40010 7C842A14
+88A40000 2C050000
+40820010 38600078
+9876000A 4800001C
+38A00010 3D808000
+618C31F4 7D8903A6
+4E800421 48000004
+3A940001 2C140004
+4180FF70 887E019D
+9862F234 887E019E
+9862F238 887E019F
+9862F23C 887E01A0
+987C056F 387C0570
+389E01A1 38A0007C
+3D808000 618C31F4
+7D8903A6 4E800421
+807E021D 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7D1B78
+93BC0008 3860008A
+987D0000 7FA3EB78
+38800001 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7FA3EB78 809E021D
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 38800004
+909C000C 7FA3EB78
+48000055 7C8802A6
+3D808000 618C55FC
+7D8903A6 4E800421
+807C000C 3D808037
+618CF1E4 7D8903A6
+4E800421 907C0010
+907C0014 7FA3EB78
+48000041 7C8802A6
+3D808000 618C55FC
+7D8903A6 4E800421
+4800013C 4E800021
+2C050000 41820018
+80CDB64C 8066000C
+38630008 7C632A14
+9066000C 4E800020
+4E800021 2C050000
+41820108 7C0802A6
+90010004 9421FF50
+BE810008 7C9E2378
+7CBB2B78 80BE0000
+54A501FE 64BD8000
+834DB64C 833A0014
+2C030004 41820014
+2C030006 41820014
+2C0300C2 41820014
+3B9E0004 48000048
+3B9E0008 48000040
+389E0008 7C7D2050
+546301BA 64634800
+907A0018 3B9A0018
+807E0004 1C630008
+7C83F214 387D0004
+7C641850 546301BA
+64634800 3863FFFC
+90640004 93B90000
+93790004 38790008
+7FA4EB78 7F65DB78
+3D808000 618C31F4
+7D8903A6 4E800421
+3B390008 7F39DA14
+933A0014 7FA3EB78
+7F84E378 7F65DB78
+3D808000 618C31F4
+7D8903A6 4E800421
+7FA3EB78 7F64DB78
+3D808032 618C8F50
+7D8903A6 4E800421
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 38600000
+809C0014 90640000
+7FA3EB78 809E021D
+3D808032 618C8F50
+7D8903A6 4E800421
+38600004 38800007
+38A00000 3D808039
+618C01F0 7D8903A6
+4E800421 48000021
+7C8802A6 38A00000
+3D808038 618CFD54
+7D8903A6 4E800421
+4800004C 4E800021
+7C0802A6 90010004
+9421FF50 BE810008
+806DB64C 83A30000
+887D0002 2C030000
+41820010 807D0003
+3C80804D 90645F90
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 BA810008
+800100B4 382100B0
+7C0803A6 3C608017
+60000000 00000000
+C216D304 00000009 #Playback/Core/RestoreLRAStart.asm
+806DB64C 80630000
+88630000 2C030002
+4082002C 3860FFFF
+38800007 3D808016
+618CCF4C 7D8903A6
+4E800421 3D808016
+618CD30C 7D8903A6
+4E800420 7FE3FB78
+60000000 00000000
+C216B9C0 00000012 #Playback/Core/RestoreStockSteal.asm
+80ADB64C 80A50004
+38800089 98850000
+808DB654 90850001
+98650005 7CA32B78
+38800006 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+806DB64C 80630004
+38800001 38A00000
+3D808000 618C55F0
+7D8903A6 4E800421
+806DB64C 80630004
+88630000 2C030000
+41820014 3D808016
+618CBA1C 7D8903A6
+4E800420 3D808016
+618CBAC8 7D8903A6
+4E800420 00000000
+C21A501C 0000002A #Playback/Core/FastForward/FastForward.asm
+3C808048 88649D30
+2C03000E 40820040
+88649D33 2C030001
+40820034 38600001
+3D80801A 618C45E8
+7D8903A6 4E800421
+2C030002 41820018
+806DB64C 80630000
+88630000 2C030003
+41820024 38600001
+38800002 3D808002
+618C5064 7D8903A6
+4E800421 7C1AD800
+480000E0 806DB64C
+80630000 88630001
+2C030001 4182001C
+38600000 38800000
+3D808002 618C5064
+7D8903A6 4E800421
+4800000D 2C0300FF
+480000A8 7C0802A6
+90010004 9421FF50
+BE810008 3D808003
+618C0A50 7D8903A6
+4E800421 3D808002
+618CA4AC 7D8903A6
+4E800421 3D808003
+618C0A50 7D8903A6
+4E800421 80630028
+3D808036 618C8458
+7D8903A6 4E800421
+806DC18C 82830020
+4800002C 82B4002C
+8875221F 546006F7
+40820018 7E83A378
+3D808008 618C6A8C
+7D8903A6 4E800421
+82940008 2C140000
+4082FFD4 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C2377544 00000002 #Playback/Core/FastForward/IncrementPadIndex.asm
+40A2000C 38000001
+981E0003 00000000
+04376A88 881F0001 #Playback/Core/FastForward/PadAlwaysUseMasterIndex.asm
+C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm
+48000019 7C6802A6
+3C80803D 6084ADA8
+90640004 4800001C
+4E800021 38600003
+3C808047 60849D30
+98640003 4E800020
+3800000E 00000000
+C21A6348 000000AB #Playback/Core/Scene/SceneThink_Playback.asm
+3C608047 60639D30
+88630000 2C03000E
+4082053C 3860000D
+3880000E 38A00000
+3D808039 618C01F0
+7D8903A6 4E800421
+48000021 7C8802A6
+38A00000 3D808038
+618CFD54 7D8903A6
+4E800421 480004F0
+4E800021 7C0802A6
+90010004 9421FF50
+BE810008 48000461
+7FC802A6 38600000
+3880FFFF 3D80803A
+618C6754 7D8903A6
+4E800421 7C7C1B78
+38800001 989C0049
+38800000 989C004A
+C03E0008 D03C0008
+C03E0010 D03C0024
+D03C0028 C03E0000
+C05E0004 7F83E378
+48000435 7C8802A6
+48000445 7CA802A6
+3D80803A 618C6B98
+7D8903A6 4E800421
+7C641B78 7F83E378
+C03E000C C05E000C
+3D80803A 618C7548
+7D8903A6 4E800421
+C03E0014 C05E0018
+7F83E378 48000415
+7C8802A6 3D80803A
+618C6B98 7D8903A6
+4E800421 7C641B78
+7F83E378 C03E000C
+C05E000C 3D80803A
+618C7548 7D8903A6
+4E800421 3C602ECC
+606340FF 90610040
+7F83E378 38800001
+38A10040 3D80803A
+618C74F0 7D8903A6
+4E800421 38600221
+3D808037 618CF1E4
+7D8903A6 4E800421
+7C7D1B78 3B600000
+3D808033 618CC898
+7D8903A6 4E800421
+3D808033 618CF270
+7D8903A6 4E800421
+38600000 3D808037
+618C5538 7D8903A6
+4E800421 8062F240
+2C030000 4082001C
+38600000 7F84E378
+3D80803A 618C84BC
+7D8903A6 4E800421
+38600000 3D808037
+618C61C0 7D8903A6
+4E800421 3D808034
+618CF314 7D8903A6
+4E800421 3B7B0001
+2C1B00F0 41800008
+3B600000 3860003C
+7C7B1B96 480002F1
+7C8802A6 1C630004
+7CC32214 7F83E378
+38800000 480002C1
+7CA802A6 4CC63182
+3D80803A 618C70A0
+7D8903A6 4E800421
+38600088 987D0000
+7FA3EB78 38800001
+38A00001 3D808000
+618C55F0 7D8903A6
+4E800421 7FA3EB78
+38800001 38A00000
+3D808000 618C55F0
+7D8903A6 4E800421
+887D0000 2C030001
+4082FEF0 7F83E378
+3D80803A 618C5CC4
+7D8903A6 4E800421
+38600075 987D0000
+38600000 907D0001
+38600000 907D0005
+38600000 907D0009
+7FA3EB78 3880000D
+38A00001 3D808000
+618C55F0 7D8903A6
+4E800421 7FA3EB78
+38800221 38A00000
+3D808000 618C55F0
+7D8903A6 4E800421
+887D0000 2C030001
+41820018 3D808034
+618CF314 7D8903A6
+4E800421 4BFFFF8C
+3A9D0005 3C808043
+60842078 88740060
+90640014 88740063
+98640018 88740084
+9064001C 88740087
+98640020 887400A8
+90640024 887400AB
+98640028 887400CC
+9064002C 887400CF
+98640030 A074000E
+9064000C 3D808001
+618C8254 7D8903A6
+4E800421 386000C7
+3D808001 618C8C2C
+7D8903A6 4E800421
+38600004 3D808001
+618C7700 7D8903A6
+4E800421 3860001C
+3D808002 618C6F2C
+7D8903A6 4E800421
+3D808021 618CB2D8
+7D8903A6 4E800421
+3AA00000 1C150024
+7E96A378 7ED60214
+3D808000 618C569C
+7D8903A6 4E800421
+88960060 7C840774
+7C041800 41820028
+38600000 3D808000
+618C56A0 7D8903A6
+4E800421 3D808000
+618C56A8 7D8903A6
+4E800421 3AB50001
+2C150006 3AD60024
+4180FFB0 A074000E
+3D808022 618C519C
+7D8903A6 4E800421
+7C641B78 38600001
+3D808000 618C56A0
+7D8903A6 4E800421
+3D808000 618C56A8
+7D8903A6 4E800421
+3D808002 618C7168
+7D8903A6 4E800421
+8062F240 2C030000
+40820018 38600001
+3D808002 618C4030
+7D8903A6 4E800421
+3D808002 618C4F6C
+7D8903A6 4E800421
+3D80801A 618C4B60
+7D8903A6 4E800421
+48000068 4E800021
+C33E0000 00000000
+00000000 3F800000
+3F19999A 43B70000
+43AF0000 432A0000
+00000000 4E800021
+57616974 696E6720
+666F7220 67616D65
+25730000 4E800021
+00000000 2E000000
+2E2E0000 2E2E2E00
+4E800021 736C6970
+70692E67 67000000
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 3D80801A
+618C6368 7D8903A6
+4E800420 807F0000
+60000000 00000000
+041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm
+043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm
+C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm
+900DC0E8 3C608048
+80639D30 5463443E
+2C03010E 40820090
+7C0802A6 90010004
+9421FF50 BE810008
+83EDB64C 3BDF001C
+8B9E0000 3C608048
+80639D60 809F056B
+7C032000 41810028
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9E0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DE0001 7CC61A14
+88660000 3863FFFF
+1C630006 38A60001
+7CA51A14 807D000C
+90650002 BA810008
+800100B4 382100B0
+7C0803A6 00000000
+C21A5014 00000032 #Playback/Core/Sounds/HandleFrameSoundLog.asm
+41A20014 3D80801A
+618C5024 7D8903A6
+4E800420 3C608048
+80639D30 5463443E
+2C03010E 40820168
+7C0802A6 90010004
+9421FF50 BE810008
+3D808034 618C7364
+7D8903A6 4E800421
+7C7D1B78 83EDB64C
+3BDF001C 8B9E0000
+3F008048 83189D60
+3B18FFFF 82FF056B
+7C18B800 4181009C
+7C78B850 38630001
+8B9E0000 7F83E051
+40800008 3B9C0007
+387E0001 1C9C00C2
+7F432214 3B200000
+48000060 38DA0000
+38E00000 48000028
+1C790006 7C651A14
+A0630001 1C870006
+7C862214 A0840001
+7C032000 41820030
+38E70001 88660000
+2C070003 4180FFD4
+1C790006 7C651A14
+80630003 3D808002
+618C36B8 7D8903A6
+4E800421 3B390001
+38BA0061 88650000
+7C191800 4180FF98
+387E0001 1C9C00C2
+7F432214 387A0061
+389A0000 38A00061
+3D808000 618C31F4
+7D8903A6 4E800421
+387A0000 38800061
+3D808000 618CC160
+7D8903A6 4E800421
+7C18B800 4081001C
+931F056B 3B9C0001
+2C1C0007 41800008
+3B9CFFF9 9B9E0000
+7FA3EB78 3D808034
+618C738C 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 00000000
+C2088224 0000001D #Playback/Core/Sounds/NoDestroyVoice.asm
+3C608048 80639D30
+5463443E 2C03010E
+408200CC 7C0802A6
+90010004 9421FF50
+BE810008 83EDB64C
+3BBF001C 57DE043E
+8B9D0000 3C608048
+80639D60 809F056B
+7C032000 41810088
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9D0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DD0062 7CC61A14
+39000000 48000020
+1C680006 38A60001
+7CA51A14 A0650000
+7C1E1800 41820018
+39080001 88660000
+7C081800 4180FFDC
+48000024 BA810008
+800100B4 382100B0
+7C0803A6 3D808008
+618C8244 7D8903A6
+4E800420 BA810008
+800100B4 382100B0
+7C0803A6 387F0000
+60000000 00000000
+C20882B0 0000001D #Playback/Core/Sounds/NoDestroyVoice2.asm
+3C608048 80639D30
+5463443E 2C03010E
+408200CC 7C0802A6
+90010004 9421FF50
+BE810008 83EDB64C
+3BBF001C 57DE043E
+8B9D0000 3C608048
+80639D60 809F056B
+7C032000 41810088
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9D0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DD0062 7CC61A14
+39000000 48000020
+1C680006 38A60001
+7CA51A14 A0650000
+7C1E1800 41820018
+39080001 88660000
+7C081800 4180FFDC
+48000024 BA810008
+800100B4 382100B0
+7C0803A6 3D808008
+618C82D0 7D8903A6
+4E800420 BA810008
+800100B4 382100B0
+7C0803A6 387F0000
+60000000 00000000
+C238D0B0 00000027 #Playback/Core/Sounds/PreventDuplicateSounds.asm
+3C608048 80639D30
+5463443E 2C03010E
+40820120 7C0802A6
+90010004 9421FF50
+BE810008 83EDB64C
+3BDF001C 3BA00000
+3B400000 56FB043E
+8B9E0000 3C608048
+80639D60 809F056B
+7C032000 41810070
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9E0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DE0062 7CC61A14
+39000000 48000020
+1C680006 38A60001
+7CA51A14 A0650000
+7C1B1800 41820018
+39080001 88660000
+7C081800 4180FFDC
+4800000C 83450002
+3BA00001 1C7C00C2
+38DE0001 7CC61A14
+88660000 2C030010
+40800024 1C630006
+38A60001 7CA51A14
+B3650000 93450002
+88660000 38630001
+98660000 2C1D0000
+41820028 7F43D378
+BA810008 800100B4
+382100B0 7C0803A6
+3D808038 618CD2A0
+7D8903A6 4E800420
+BA810008 800100B4
+382100B0 7C0803A6
+2C1A0000 00000000
+C200569C 00000002 #Common/GetFighterNum.asm
+38600021 4E800020
+60000000 00000000
+C20055F8 0000000F #Common/GetIsFollower.asm
+7C0802A6 90010004
+9421FF50 BE810008
+7C7E1B78 3BE00000
+887E221F 5460EFFF
+41820038 887E000C
+3D808003 618C2330
+7D8903A6 4E800421
+3C80803B 6084CDE0
+1C030003 7C640214
+88030002 2C000000
+40820008 3BE00001
+7FE3FB78 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C20056A0 00000007 #Common/GetSSMIndex.asm
+2C030001 41820018
+3C60803B 6063B3C0
+1C840010 7C6320AE
+48000018 3C60803B
+6063B6B0 1C840003
+7C6320AE 48000004
+4E800020 00000000
+C216D294 00000006 #Common/IncrementFrameIndex.asm
+987F0008 3C608048
+80639D58 2C030000
+40820010 3860FF85
+906DB654 48000010
+806DB654 38630001
+906DB654 00000000
+C20055F4 00000007 #Common/IntToFloat.asm
+9421FF00 D0410008
+3C004330 C84298A8
+6C638000 900100F0
+906100F4 C82100F0
+EC211028 C0410008
+38210100 4E800020
+60000000 00000000
+C20056A4 00000022 #Common/LoadPremadeText.asm
+7C0802A6 90010004
+9421FF50 BE810008
+7C7F1B78 7C9E2378
+3B800004 7F83E378
+3D808037 618CF1E4
+7D8903A6 4E800421
+7C7D1B78 7F84E378
+3D808000 618CC160
+7D8903A6 4E800421
+386000E1 48000055
+839D0000 7FA3EB78
+3D808037 618CF1B0
+7D8903A6 4E800421
+7F83E378 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7D1B78
+386000E2 4800001D
+7FA3EB78 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+7C0802A6 90010004
+9421FF50 BE810008
+987D0000 9BFD0001
+9BDD0002 7FA3EB78
+38800003 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7FA3EB78 7F84E378
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C20055EC 00000008 #Common/MultiplyRWithF.asm
+7C0802A6 90010004
+9421FF50 BE810008
+3D808000 618C55F4
+7D8903A6 4E800421
+EC2100B2 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C20056A8 00000005 #Common/RequestSSMLoad.asm
+2C030037 41820018
+3D808043 618C37C4
+38800001 1C630004
+7C83612E 4E800020
+60000000 00000000
+C20056B4 00000059 #Common/SubtextFunctions.asm
+2C050002 418201F8
+7C0802A6 90010004
+9421FF50 BE810008
+7C751B78 7C962378
+7CB82B78 7CD93378
+90E10038 9101003C
+91210040 91410044
+91610048 9181004C
+FEA00890 FEC01090
+FEE01890 FF202890
+FF403090 2C180001
+418000FC 39E00004
+FC20B090 FC40B890
+2C0F0001 41820020
+2C0F0002 41820020
+2C0F0003 41820020
+2C0F0004 41820020
+48000024 EC21D028
+4800001C EC21D02A
+48000014 EC42D028
+4800000C EC42D02A
+48000004 7EA3AB78
+80810038 3D80803A
+618C6B98 7D8903A6
+4E800421 7C771B78
+7EA3AB78 7EE4BB78
+FC20A890 FC40A890
+3D80803A 618C7548
+7D8903A6 4E800421
+7F25CB78 2C0F0000
+40820008 7EC5B378
+7EA3AB78 7EE4BB78
+3D80803A 618C74F0
+7D8903A6 4E800421
+7EA3AB78 7EE4BB78
+80A10038 80C1003C
+80E10040 81010044
+81210048 8141004C
+3D80803A 618C70A0
+7D8903A6 4E800421
+2C0F0000 4182000C
+39EFFFFF 4BFFFF14
+48000094 7EA3AB78
+80810038 FC20B090
+FC40B890 3D80803A
+618C6B98 7D8903A6
+4E800421 7C771B78
+7EA3AB78 7EE4BB78
+FC20A890 FC40A890
+3D80803A 618C7548
+7D8903A6 4E800421
+7EA3AB78 7EE4BB78
+7EC5B378 3D80803A
+618C74F0 7D8903A6
+4E800421 7EA3AB78
+7EE4BB78 80A10038
+80C1003C 80E10040
+81010044 81210048
+8141004C 3D80803A
+618C70A0 7D8903A6
+4E800421 7EE3BB78
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 7C0802A6
+90010004 9421FF50
+BE810008 7C7D1B78
+7C9C2378 7CDB3378
+FEC00890 FEE01090
+FF001890 FEA02090
+4800008D 7F4802A6
+38600000 7F64DB78
+C01A0000 FC20B090
+FC40B890 FC60C090
+C09A0004 C0BA0008
+3D80803A 618C5ACC
+7D8903A6 4E800421
+7C751B78 2C1C0000
+41820010 38600001
+986DAFEC 7F86E378
+7EA3AB78 7FA4EB78
+FC00A890 D0030024
+D0030028 3D80803A
+618C6368 7D8903A6
+4E800421 7EA3AB78
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 4E800021
+41100000 44160000
+41A00000 00000000
+C21C154C 00000004 #Common/Initialize Stage Data/Init Stage Data.asm
+38800204 3D808000
+618CC160 7D8903A6
+4E800421 281A0000
+60000000 00000000
+C2068EEC 00000006 #Common/Initialize Player Data/Init Player Data.asm
+3BC30000 3C808045
+60848FD0 80840020
+3D808000 618CC160
+7D8903A6 4E800421
+7FC3F378 3C808046
+60000000 00000000
+C209E090 00000011 #Common/FastForward/DynamicsFix.asm
+807E0000 80630028
+48000009 48000074
+7C0802A6 90010004
+9421FFE8 93E10014
+7C7F1B78 807F0014
+54600211 40820020
+54600673 41820018
+7FE3FB78 3D808037
+618C3078 7D8903A6
+4E800421 807F0010
+2C030000 41820008
+4BFFFFB9 807F0008
+2C030000 41820008
+4BFFFFA9 83E10014
+8001001C 38210018
+7C0803A6 4E800020
+BB010028 00000000
+
+$Optional: Show Player Names [Fizzi, UnclePunch, Enzyme, jmlee337]
+*Show players' Slippi Online display names as HUD elements when available
+C216E9B4 0000009A #Playback/Show Player Names/InitInGame.asm
+48000088 4E800021
+3EA8F5C3 000000FF
+3F1EB852 3F466666
+C1C07AE1 3C6F34D7
+3F4CCCCD 41A51EB8
+00000000 3D75C28F
+43160000 3F0A3D71
+00000000 4E800021
+7C0802A6 90010004
+9421FF50 BE810008
+7C7F1B78 880DB6CC
+2C000001 41820018
+7FE3FB78 3D808039
+618C10D8 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+7C0802A6 90010004
+9421FF50 BE810008
+3C60804D 60636D5C
+80630000 3C80803F
+608494D0 3D808038
+618C0358 7D8903A6
+4E800421 80630004
+80630000 3D808036
+618CA590 7D8903A6
+4E800421 7C7E1B78
+38600013 38800014
+38A00000 3D808039
+618C01F0 7D8903A6
+4E800421 7C7D1B78
+7FA3EB78 888DC1AB
+7FC5F378 3D808039
+618C0A70 7D8903A6
+4E800421 7FA3EB78
+4BFFFF25 7C8802A6
+38A00008 3D808039
+618C075C 7D8903A6
+4E800421 3C600000
+60631000 907D0024
+38600002 7FA4EB78
+38A00009 38C0000D
+38E00000 3900000C
+39200050 39400008
+3D80803A 618C611C
+7D8903A6 4E800421
+7C7F1B78 4BFFFE91
+7F8802A6 834DB64C
+3A800000 3EA0804A
+62B50FF0 7E83A378
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 41820308
+387A0570 1C94001F
+7F032214 7F03C378
+3D808032 618C5B04
+7D8903A6 4E800421
+2C040000 418202E0
+7E83A378 3D80802F
+618C3424 7D8903A6
+4E800421 C0230000
+D0210070 38600002
+7FE4FB78 3D80803A
+618C6754 7D8903A6
+4E800421 7C7D1B78
+38800001 989D0048
+989D004A 989D004C
+989D0049 C03C0024
+D03D0024 D03D0028
+C0210070 C05C0018
+EC21102A D03D0000
+C03C001C D03D0004
+C03C0020 D03D0008
+C03C0028 D03D000C
+D03D0010 4CC63242
+C03C0030 C05C0030
+7FA3EB78 7F04C378
+3D80803A 618C6B98
+7D8903A6 4E800421
+7FA3EB78 38800000
+C03C002C C05C002C
+3D80803A 618C7548
+7D8903A6 4E800421
+3860000E 3880000F
+38A00000 3D808039
+618C01F0 7D8903A6
+4E800421 7C771B78
+3C60804A 60631ED0
+80630000 3D808037
+618C0E44 7D8903A6
+4E800421 7C761B78
+7EE3BB78 888DC1A9
+7EC5B378 3D808039
+618C0A70 7D8903A6
+4E800421 7EE3BB78
+3C808039 60841070
+38A0000C 38C00000
+3D808039 618C069C
+7D8903A6 4E800421
+7E83A378 3D80802F
+618C3424 7D8903A6
+4E800421 C0230000
+C05C000C EC21102A
+D0360038 C03C0010
+D036003C C03C0008
+D0360030 7EC3B378
+38810080 38A00001
+38C0FFFF 3D808001
+618C1E24 7D8903A6
+4E800421 80610080
+38800000 90830040
+80610080 80630018
+80830014 60840001
+90830014 80630004
+80830014 60840001
+90830014 80630004
+80630008 8063000C
+C03C0000 D023000C
+809C0004 90830004
+3B200000 807D005C
+38800000 3D80803A
+618C6FEC 7D8903A6
+4E800421 3943000F
+3D808040 618CCB00
+887D004F 1C630004
+3C80804D 60841124
+7C63202E 81630004
+886A0000 2C03000B
+41820064 2C030020
+4182001C 2C030040
+41820034 886A0000
+2C03000F 41820050
+48000044 886A0001
+1C630002 7C6360AE
+38800014 7C632050
+7F391A14 394A0002
+4BFFFFB8 886A0001
+1C630002 7C6358AE
+38800014 7C632050
+7F391A14 394A0002
+4BFFFF98 394A0001
+4BFFFF90 2C19003C
+40800008 3B20003C
+2C190090 40810008
+3B200090 3C004330
+C84298A8 6F238000
+90010080 90610084
+C8210080 EC211028
+C05C0014 EC2100B2
+D036002C 3A940001
+2C140006 4180FCD8
+BA810008 800100B4
+382100B0 7C0803A6
+8001001C 00000000
+
+$Optional: Game Music OFF [UnclePunch]
+*Keep checked if you want music OFF. Uncheck "Game Music ON".
+04023FFC 38800000
+
+$Optional: Widescreen 16:9 [Dan Salvato, mirrorbender, Achilles1515, UnclePunch]
+*Set Aspect Ratio to "Force 16:9" in Graphics
+043BB05C 3EB00000 #External/Widescreen/Fix Screen Flash.asm
+C236A4A8 00000007 #External/Widescreen/Overwrite CObj Values.asm
+38600001 986DAFE0
+C03F0034 4800001D
+7C6802A6 C0430000
+C0630004 EC2100B2
+EC211824 48000010
+4E800021 43A00000
+435B0000 00000000
+044DDB58 3E4CCCCD #External/Widescreen/Adjust Offscreen Scissor/Adjust Bubble Zoom.asm
+04086B24 60000000 #External/Widescreen/Adjust Offscreen Scissor/Draw High Poly Models.asm
+04030C7C 38000064 #External/Widescreen/Adjust Offscreen Scissor/Left Camera Bound.asm
+04030C88 3800021C #External/Widescreen/Adjust Offscreen Scissor/Right Camera Bound.asm
+044DDB30 3F666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 1.asm
+044DDB34 BF666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 2.asm
+044DDB2C C3660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Negative Vertical Bound.asm
+044DDB28 43660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Positive Vertical Bound.asm
+044DDB4C 3D916873 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Widen Bubble Region.asm
+C22FCFC4 00000004 #External/Widescreen/Nametag Fixes/Adjust Nametag Background X Scale.asm
+48000011 7C6802A6
+C0030000 4800000C
+4E800021 40DC7AE1
+60000000 00000000
+044DDB84 3E89FEFA #External/Widescreen/Nametag Fixes/Adjust Nametag Text X Scale.asm
+
+$Optional: Disable Screen Shake [Achilles1515]
+*Disables all screen shaking
+04030E44 4E800020 #External/Disable Screen Shake/Disable Screen Shake.asm
+
+$Optional: Hide HUD [UnclePunch]
+*Hides the timer and player percent HUD elements
+0416E9A4 60000000 #External/Hide Timer and Player HUD/Hide Timer HUD.asm
+0416BA80 48000014 #External/Hide Timer and Player HUD/Hide Percents/Skip Percent Anim During Stock Steal.asm
+0416E9B0 60000000 #External/Hide Timer and Player HUD/Hide Percents/Skip Player HUD Creation.asm
+
+$Optional: Hide Waiting For Game [Nikki, UnclePunch]
+*Hides the waiting for game text and slippi.gg text and disables the SFX played before a replay starts
+*With this enabled, there will be no indication between matches that Melee is still running
+044DEC20 00000001 #Playback/Hide Waiting For Game/Hide Waiting For Game.asm
+
+$Optional: Enable Develop Mode [UnclePunch]
+*Turns develop (debug) mode on. Allows access to frame advance, hit/hurtbox display, and alternate camera angles
+044D4A08 00000004 #External/Enable Develop Mode/Enable Develop Mode.asm
+04089250 48000008 #External/Enable Develop Mode/Enable Stale Moves.asm
+
+$Optional: Lagless FoD [Achilles, Myougi, Dan Salvato]
+*Disables particles and reflection on FoD to improve performance
+C21CBB90 00000005 #Lagless FoD
+9421FFF8 3CC0804A
+80C6ED78 3CA00002
+60A5AE44 7CA53050
+88C50000 60C60004
+98C50000 00000000
+041CC8AC FC000028
+041CBE9C 60000000
+041CBEF0 60000000
+041CBF54 60000000
+04390838 60000000
+041CD250 60000000
+041CCDCC 480000B4
diff --git a/Data/PlaybackGeckoCodes/GALJ01r2.ini b/Data/PlaybackGeckoCodes/GALJ01r2.ini
new file mode 100644
index 0000000000..2740d41047
--- /dev/null
+++ b/Data/PlaybackGeckoCodes/GALJ01r2.ini
@@ -0,0 +1,1262 @@
+# GALJ01 - Super Smash Bros. Melee NTSC-J 1.02
+
+[Core]
+CPUThread = False
+GPUDeterminismMode = fake-completion
+PollingMethod = OnSIRead
+FastDiscSpeed = True
+
+[Gecko_Enabled]
+$Required: General Codes
+$Required: Slippi Playback
+$Optional: Show Player Names
+
+[Gecko]
+$Required: General Codes [Achilles, Dan Salvato, UnclePunch, tauKhan, Ptomerty, Cilan, Datel, Most]
+0415EE98 38600001 #Unlock All Characters and Stages [Datel]
+0415EDDC 38600001
+04164B14 38600001
+041648F4 38600001
+0415EE4C 38600001
+0415EE14 38600001
+0415D968 38600001
+0415D9D8 38600001
+0417229C 38600000
+041737B0 38600000
+04164658 38600001
+041644E8 38600001
+0430490C 38600063
+043044F0 38600001
+0415D94C 4E800020 #Disable Special Messages [Most]
+0415D984 4E800020 #Disable Trophy Messages [Achilles]
+C22FCCE8 00000013 #External/Extended Nametag Box/Extended Nametag Box.asm
+3C608003 6063556C
+7C6803A6 887F0000
+4E800021 5460063E
+28000078 41820070
+3C608045 6063D84F
+1C0001A4 7C630214
+38800000 8C030001
+2C000000 41820018
+38840001 2C000080
+41A0FFEC 8C030001
+4BFFFFE4 2C040005
+41800034 3C604080
+9061FFF0 C221FFF0
+3E404330 CA028C58
+9241FFEC 9081FFF0
+C9E1FFEC EDEF8028
+EDEF8824 807E0010
+D1E3002C 807E0010
+60000000 00000000
+C213C388 0000000A #Common/CostumeBoundCheck/PuffCostume.asm
+83DC002C 887E000C
+3D808003 618C2330
+7D8903A6 4E800421
+3D808016 618C9238
+7D8903A6 4E800421
+889E0619 7C041800
+40800008 48000014
+3D808013 618CC46C
+7D8903A6 4E800420
+809C002C 00000000
+C216DED4 00000039 #Common/CostumeBoundCheck/main.asm
+7C0802A6 90010004
+9421FF50 BE810008
+3BE00000 7FE3FB78
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 41820060
+7FE3FB78 3D808003
+618C3198 7D8903A6
+4E800421 7C7E1B78
+7FE3FB78 3D808003
+618C2330 7D8903A6
+4E800421 3D808016
+618C9238 7D8903A6
+4E800421 7C1E1800
+4180001C 7FE3FB78
+38800000 3D808003
+618C3208 7D8903A6
+4E800421 3BFF0001
+2C1F0006 4180FF80
+3BE00000 7FE3FB78
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 418200EC
+7FE3FB78 3D808003
+618C2330 7D8903A6
+4E800421 7C7E1B78
+7FE3FB78 3D808003
+618C3198 7D8903A6
+4E800421 7C7D1B78
+7FE3FB78 3D808003
+618C3284 7D8903A6
+4E800421 7C7C1B78
+3B600000 7C1FD800
+4182008C 7F63DB78
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 41820070
+7F63DB78 3D808003
+618C2330 7D8903A6
+4E800421 7C03F000
+40820054 7F63DB78
+3D808003 618C3198
+7D8903A6 4E800421
+7C03E800 40820038
+7F63DB78 3D808003
+618C3284 7D8903A6
+4E800421 7C03E000
+4082001C 38830001
+7F63DB78 3D808003
+618C32F4 7D8903A6
+4E800421 3B7B0001
+2C1B0006 4180FF68
+3BFF0001 2C1F0006
+4180FEF4 BA810008
+800100B4 382100B0
+7C0803A6 8001001C
+60000000 00000000
+
+$Required: Slippi Playback [Fizzi, UnclePunch, Achilles, tauKhan]
+*Used to play back a .slp file
+*Will play replay configured in playback.txt
+C216E9E4 00000010 #Playback/Core/CleanDynamicGeckos.asm
+3BC30000 7C0802A6
+90010004 9421FF50
+BE810008 83CDB64C
+83BE0010 807D0000
+2C030000 41820044
+389D0008 80BD0004
+3D808000 618C31F4
+7D8903A6 4E800421
+807D0000 809D0004
+3D808032 618C8F50
+7D8903A6 4E800421
+807D0004 7FBD1A14
+3BBD0008 4BFFFFB8
+BA810008 800100B4
+382100B0 7C0803A6
+60000000 00000000
+C216D298 00000016 #Playback/Core/FetchGameFrame.asm
+881F0008 2C000000
+408200A0 7C0802A6
+90010004 9421FF50
+BE810008 806DB64C
+83630000 38600076
+987B0000 806DB654
+907B0001 7F63DB78
+38800005 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7F63DB78 3880018F
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 887B0000
+2C030000 40820024
+3D808034 618CF314
+7D8903A6 4E800421
+3C60804C 38000000
+98031F7B 4BFFFF90
+BA810008 800100B4
+382100B0 7C0803A6
+881F0008 00000000
+C206B0DC 00000046 #Playback/Core/RestoreGameFrame.asm
+7C0802A6 90010004
+9421FF50 BE810008
+8BBF000C 7FA3EB78
+3D808003 618C1724
+7D8903A6 4E800421
+7C7C1B78 832DB64C
+83790000 7FE3FB78
+3D808000 618C55F8
+7D8903A6 4E800421
+7C741B78 389B0007
+88BF000C 1CA50062
+7C842A14 1CB40031
+7F442A14 3C80804D
+807A0000 90645F90
+807A0004 907F0620
+807A0008 907F0624
+807A000C 907F0638
+807A0010 907F063C
+807A0014 907F0650
+807A0018 907F065C
+8879056F 2C030000
+41820024 807A001C
+907F00B0 807A0020
+907F00B4 807A0024
+907F002C 807A0028
+907F0010 3C608046
+6063B108 3C80804C
+60841F78 88840001
+3884FFFF 2C040000
+40A00008 38840005
+1C840030 7C632214
+889F0618 1C84000C
+7E832214 887A002C
+98740002 8879056F
+2C030000 4182004C
+807A002D 2C03FFFF
+41820040 90610040
+C0210040 C05F1830
+EC211028 C0429500
+FC011040 41820024
+7FE3FB78 C0210040
+C05F1830 EC211028
+3D808006 618CCC7C
+7D8903A6 4E800421
+806DB654 2C03FF85
+408200AC 7FE3FB78
+38800000 C0228874
+3D808007 618C592C
+7D8903A6 4E800421
+807F00B0 907F06F4
+907F070C 807F00B4
+907F06F8 907F0710
+807F00B8 907F06FC
+907F0714 C03F00B4
+D03F2344 806DAE0C
+907F0728 887F000C
+889F221F 5484EFFE
+38BF00B0 3D808003
+618C2828 7D8903A6
+4E800421 7FC3F378
+3D808007 618C61C8
+7D8903A6 4E800421
+807F0890 C0230040
+D023002C C0230044
+D0230030 3D808002
+618CF3AC 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 881F2219
+60000000 00000000
+C216E74C 0000009E #Playback/Core/RestoreGameInfo.asm
+7C0802A6 90010004
+9421FF50 BE810008
+386005EC 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7C1B78
+938DB64C 388005EC
+3D808000 618CC160
+7D8903A6 4E800421
+38600221 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7E1B78
+93DC0000 38600040
+3D808037 618CF1E4
+7D8903A6 4E800421
+907C0004 38600075
+987E0000 387C001C
+907E0001 38600553
+907E0005 38600000
+907E0009 7FC3F378
+3880000D 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7FC3F378 38800221
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 887E0000
+2C030001 41820018
+3D808034 618CF314
+7D8903A6 4E800421
+4BFFFF8C 807E0001
+3C80804D 90645F90
+7FE3FB78 389E0005
+38A00138 3D808000
+618C31F4 7D8903A6
+4E800421 387F0040
+3880001C 3D808000
+618CC160 7D8903A6
+4E800421 3AE2F22C
+3A82F230 3ABE013D
+3AC00000 1C960008
+7C64A82E 7C76B9AE
+38840004 7C64A82E
+7C76A1AE 3AD60001
+2C160004 4180FFE0
+3A800000 3ABF0060
+1ED40024 7ED6AA14
+88760001 2C030000
+40820078 8876000A
+2C030078 4182006C
+7C771B78 3D808023
+618C7A04 7D8903A6
+4E800421 7EE3BB78
+3D808015 618CCC9C
+7D8903A6 4E800421
+38630198 389E015D
+1CB40010 7C842A14
+88A40000 2C050000
+40820010 38600078
+9876000A 4800001C
+38A00010 3D808000
+618C31F4 7D8903A6
+4E800421 48000004
+3A940001 2C140004
+4180FF70 887E019D
+9862F234 887E019E
+9862F238 887E019F
+9862F23C 887E01A0
+987C056F 387C0570
+389E01A1 38A0007C
+3D808000 618C31F4
+7D8903A6 4E800421
+807E021D 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7D1B78
+93BC0008 3860008A
+987D0000 7FA3EB78
+38800001 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7FA3EB78 809E021D
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 38800004
+909C000C 7FA3EB78
+48000055 7C8802A6
+3D808000 618C55FC
+7D8903A6 4E800421
+807C000C 3D808037
+618CF1E4 7D8903A6
+4E800421 907C0010
+907C0014 7FA3EB78
+48000041 7C8802A6
+3D808000 618C55FC
+7D8903A6 4E800421
+4800013C 4E800021
+2C050000 41820018
+80CDB64C 8066000C
+38630008 7C632A14
+9066000C 4E800020
+4E800021 2C050000
+41820108 7C0802A6
+90010004 9421FF50
+BE810008 7C9E2378
+7CBB2B78 80BE0000
+54A501FE 64BD8000
+834DB64C 833A0014
+2C030004 41820014
+2C030006 41820014
+2C0300C2 41820014
+3B9E0004 48000048
+3B9E0008 48000040
+389E0008 7C7D2050
+546301BA 64634800
+907A0018 3B9A0018
+807E0004 1C630008
+7C83F214 387D0004
+7C641850 546301BA
+64634800 3863FFFC
+90640004 93B90000
+93790004 38790008
+7FA4EB78 7F65DB78
+3D808000 618C31F4
+7D8903A6 4E800421
+3B390008 7F39DA14
+933A0014 7FA3EB78
+7F84E378 7F65DB78
+3D808000 618C31F4
+7D8903A6 4E800421
+7FA3EB78 7F64DB78
+3D808032 618C8F50
+7D8903A6 4E800421
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 38600000
+809C0014 90640000
+7FA3EB78 809E021D
+3D808032 618C8F50
+7D8903A6 4E800421
+38600004 38800007
+38A00000 3D808039
+618C01F0 7D8903A6
+4E800421 48000021
+7C8802A6 38A00000
+3D808038 618CFD54
+7D8903A6 4E800421
+4800004C 4E800021
+7C0802A6 90010004
+9421FF50 BE810008
+806DB64C 83A30000
+887D0002 2C030000
+41820010 807D0003
+3C80804D 90645F90
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 BA810008
+800100B4 382100B0
+7C0803A6 3C608017
+60000000 00000000
+C216D304 00000009 #Playback/Core/RestoreLRAStart.asm
+806DB64C 80630000
+88630000 2C030002
+4082002C 3860FFFF
+38800007 3D808016
+618CCF4C 7D8903A6
+4E800421 3D808016
+618CD30C 7D8903A6
+4E800420 7FE3FB78
+60000000 00000000
+C216B9C0 00000012 #Playback/Core/RestoreStockSteal.asm
+80ADB64C 80A50004
+38800089 98850000
+808DB654 90850001
+98650005 7CA32B78
+38800006 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+806DB64C 80630004
+38800001 38A00000
+3D808000 618C55F0
+7D8903A6 4E800421
+806DB64C 80630004
+88630000 2C030000
+41820014 3D808016
+618CBA1C 7D8903A6
+4E800420 3D808016
+618CBAC8 7D8903A6
+4E800420 00000000
+C21A501C 0000002A #Playback/Core/FastForward/FastForward.asm
+3C808048 88649D30
+2C03000E 40820040
+88649D33 2C030001
+40820034 38600001
+3D80801A 618C45E8
+7D8903A6 4E800421
+2C030002 41820018
+806DB64C 80630000
+88630000 2C030003
+41820024 38600001
+38800002 3D808002
+618C5064 7D8903A6
+4E800421 7C1AD800
+480000E0 806DB64C
+80630000 88630001
+2C030001 4182001C
+38600000 38800000
+3D808002 618C5064
+7D8903A6 4E800421
+4800000D 2C0300FF
+480000A8 7C0802A6
+90010004 9421FF50
+BE810008 3D808003
+618C0A50 7D8903A6
+4E800421 3D808002
+618CA4AC 7D8903A6
+4E800421 3D808003
+618C0A50 7D8903A6
+4E800421 80630028
+3D808036 618C8458
+7D8903A6 4E800421
+806DC18C 82830020
+4800002C 82B4002C
+8875221F 546006F7
+40820018 7E83A378
+3D808008 618C6A8C
+7D8903A6 4E800421
+82940008 2C140000
+4082FFD4 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C2377544 00000002 #Playback/Core/FastForward/IncrementPadIndex.asm
+40A2000C 38000001
+981E0003 00000000
+04376A88 881F0001 #Playback/Core/FastForward/PadAlwaysUseMasterIndex.asm
+C21A45A0 00000007 #Playback/Core/Scene/Boot to Playback Scene.asm
+48000019 7C6802A6
+3C80803D 6084ADA8
+90640004 4800001C
+4E800021 38600003
+3C808047 60849D30
+98640003 4E800020
+3800000E 00000000
+C21A6348 000000AB #Playback/Core/Scene/SceneThink_Playback.asm
+3C608047 60639D30
+88630000 2C03000E
+4082053C 3860000D
+3880000E 38A00000
+3D808039 618C01F0
+7D8903A6 4E800421
+48000021 7C8802A6
+38A00000 3D808038
+618CFD54 7D8903A6
+4E800421 480004F0
+4E800021 7C0802A6
+90010004 9421FF50
+BE810008 48000461
+7FC802A6 38600000
+3880FFFF 3D80803A
+618C6754 7D8903A6
+4E800421 7C7C1B78
+38800001 989C0049
+38800000 989C004A
+C03E0008 D03C0008
+C03E0010 D03C0024
+D03C0028 C03E0000
+C05E0004 7F83E378
+48000435 7C8802A6
+48000445 7CA802A6
+3D80803A 618C6B98
+7D8903A6 4E800421
+7C641B78 7F83E378
+C03E000C C05E000C
+3D80803A 618C7548
+7D8903A6 4E800421
+C03E0014 C05E0018
+7F83E378 48000415
+7C8802A6 3D80803A
+618C6B98 7D8903A6
+4E800421 7C641B78
+7F83E378 C03E000C
+C05E000C 3D80803A
+618C7548 7D8903A6
+4E800421 3C602ECC
+606340FF 90610040
+7F83E378 38800001
+38A10040 3D80803A
+618C74F0 7D8903A6
+4E800421 38600221
+3D808037 618CF1E4
+7D8903A6 4E800421
+7C7D1B78 3B600000
+3D808033 618CC898
+7D8903A6 4E800421
+3D808033 618CF270
+7D8903A6 4E800421
+38600000 3D808037
+618C5538 7D8903A6
+4E800421 8062F240
+2C030000 4082001C
+38600000 7F84E378
+3D80803A 618C84BC
+7D8903A6 4E800421
+38600000 3D808037
+618C61C0 7D8903A6
+4E800421 3D808034
+618CF314 7D8903A6
+4E800421 3B7B0001
+2C1B00F0 41800008
+3B600000 3860003C
+7C7B1B96 480002F1
+7C8802A6 1C630004
+7CC32214 7F83E378
+38800000 480002C1
+7CA802A6 4CC63182
+3D80803A 618C70A0
+7D8903A6 4E800421
+38600088 987D0000
+7FA3EB78 38800001
+38A00001 3D808000
+618C55F0 7D8903A6
+4E800421 7FA3EB78
+38800001 38A00000
+3D808000 618C55F0
+7D8903A6 4E800421
+887D0000 2C030001
+4082FEF0 7F83E378
+3D80803A 618C5CC4
+7D8903A6 4E800421
+38600075 987D0000
+38600000 907D0001
+38600000 907D0005
+38600000 907D0009
+7FA3EB78 3880000D
+38A00001 3D808000
+618C55F0 7D8903A6
+4E800421 7FA3EB78
+38800221 38A00000
+3D808000 618C55F0
+7D8903A6 4E800421
+887D0000 2C030001
+41820018 3D808034
+618CF314 7D8903A6
+4E800421 4BFFFF8C
+3A9D0005 3C808043
+60842078 88740060
+90640014 88740063
+98640018 88740084
+9064001C 88740087
+98640020 887400A8
+90640024 887400AB
+98640028 887400CC
+9064002C 887400CF
+98640030 A074000E
+9064000C 3D808001
+618C8254 7D8903A6
+4E800421 386000C7
+3D808001 618C8C2C
+7D8903A6 4E800421
+38600004 3D808001
+618C7700 7D8903A6
+4E800421 3860001C
+3D808002 618C6F2C
+7D8903A6 4E800421
+3D808021 618CB2D8
+7D8903A6 4E800421
+3AA00000 1C150024
+7E96A378 7ED60214
+3D808000 618C569C
+7D8903A6 4E800421
+88960060 7C840774
+7C041800 41820028
+38600000 3D808000
+618C56A0 7D8903A6
+4E800421 3D808000
+618C56A8 7D8903A6
+4E800421 3AB50001
+2C150006 3AD60024
+4180FFB0 A074000E
+3D808022 618C519C
+7D8903A6 4E800421
+7C641B78 38600001
+3D808000 618C56A0
+7D8903A6 4E800421
+3D808000 618C56A8
+7D8903A6 4E800421
+3D808002 618C7168
+7D8903A6 4E800421
+8062F240 2C030000
+40820018 38600001
+3D808002 618C4030
+7D8903A6 4E800421
+3D808002 618C4F6C
+7D8903A6 4E800421
+3D80801A 618C4B60
+7D8903A6 4E800421
+48000068 4E800021
+C33E0000 00000000
+00000000 3F800000
+3F19999A 43B70000
+43AF0000 432A0000
+00000000 4E800021
+57616974 696E6720
+666F7220 67616D65
+25730000 4E800021
+00000000 2E000000
+2E2E0000 2E2E2E00
+4E800021 736C6970
+70692E67 67000000
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 3D80801A
+618C6368 7D8903A6
+4E800420 807F0000
+60000000 00000000
+041B16A8 801B09C0 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/ScenePrep_DebugResult = ScenePrep_DebugMenu.asm
+043DDA9C 07000000 #Playback/Core/Scene/Change Debug Result Screen MinorType to Debug Menu/Swap MinorType.asm
+C238D224 00000015 #Playback/Core/Sounds/AssignSoundInstanceId.asm
+900DC0E8 3C608048
+80639D30 5463443E
+2C03010E 40820090
+7C0802A6 90010004
+9421FF50 BE810008
+83EDB64C 3BDF001C
+8B9E0000 3C608048
+80639D60 809F056B
+7C032000 41810028
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9E0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DE0001 7CC61A14
+88660000 3863FFFF
+1C630006 38A60001
+7CA51A14 807D000C
+90650002 BA810008
+800100B4 382100B0
+7C0803A6 00000000
+C21A5014 00000032 #Playback/Core/Sounds/HandleFrameSoundLog.asm
+41A20014 3D80801A
+618C5024 7D8903A6
+4E800420 3C608048
+80639D30 5463443E
+2C03010E 40820168
+7C0802A6 90010004
+9421FF50 BE810008
+3D808034 618C7364
+7D8903A6 4E800421
+7C7D1B78 83EDB64C
+3BDF001C 8B9E0000
+3F008048 83189D60
+3B18FFFF 82FF056B
+7C18B800 4181009C
+7C78B850 38630001
+8B9E0000 7F83E051
+40800008 3B9C0007
+387E0001 1C9C00C2
+7F432214 3B200000
+48000060 38DA0000
+38E00000 48000028
+1C790006 7C651A14
+A0630001 1C870006
+7C862214 A0840001
+7C032000 41820030
+38E70001 88660000
+2C070003 4180FFD4
+1C790006 7C651A14
+80630003 3D808002
+618C36B8 7D8903A6
+4E800421 3B390001
+38BA0061 88650000
+7C191800 4180FF98
+387E0001 1C9C00C2
+7F432214 387A0061
+389A0000 38A00061
+3D808000 618C31F4
+7D8903A6 4E800421
+387A0000 38800061
+3D808000 618CC160
+7D8903A6 4E800421
+7C18B800 4081001C
+931F056B 3B9C0001
+2C1C0007 41800008
+3B9CFFF9 9B9E0000
+7FA3EB78 3D808034
+618C738C 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 00000000
+C2088224 0000001D #Playback/Core/Sounds/NoDestroyVoice.asm
+3C608048 80639D30
+5463443E 2C03010E
+408200CC 7C0802A6
+90010004 9421FF50
+BE810008 83EDB64C
+3BBF001C 57DE043E
+8B9D0000 3C608048
+80639D60 809F056B
+7C032000 41810088
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9D0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DD0062 7CC61A14
+39000000 48000020
+1C680006 38A60001
+7CA51A14 A0650000
+7C1E1800 41820018
+39080001 88660000
+7C081800 4180FFDC
+48000024 BA810008
+800100B4 382100B0
+7C0803A6 3D808008
+618C8244 7D8903A6
+4E800420 BA810008
+800100B4 382100B0
+7C0803A6 387F0000
+60000000 00000000
+C20882B0 0000001D #Playback/Core/Sounds/NoDestroyVoice2.asm
+3C608048 80639D30
+5463443E 2C03010E
+408200CC 7C0802A6
+90010004 9421FF50
+BE810008 83EDB64C
+3BBF001C 57DE043E
+8B9D0000 3C608048
+80639D60 809F056B
+7C032000 41810088
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9D0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DD0062 7CC61A14
+39000000 48000020
+1C680006 38A60001
+7CA51A14 A0650000
+7C1E1800 41820018
+39080001 88660000
+7C081800 4180FFDC
+48000024 BA810008
+800100B4 382100B0
+7C0803A6 3D808008
+618C82D0 7D8903A6
+4E800420 BA810008
+800100B4 382100B0
+7C0803A6 387F0000
+60000000 00000000
+C238D0B0 00000027 #Playback/Core/Sounds/PreventDuplicateSounds.asm
+3C608048 80639D30
+5463443E 2C03010E
+40820120 7C0802A6
+90010004 9421FF50
+BE810008 83EDB64C
+3BDF001C 3BA00000
+3B400000 56FB043E
+8B9E0000 3C608048
+80639D60 809F056B
+7C032000 41810070
+3C608048 80639D60
+809F056B 7C632050
+38630001 8B9E0000
+7F83E051 40800008
+3B9C0007 1C7C00C2
+38DE0062 7CC61A14
+39000000 48000020
+1C680006 38A60001
+7CA51A14 A0650000
+7C1B1800 41820018
+39080001 88660000
+7C081800 4180FFDC
+4800000C 83450002
+3BA00001 1C7C00C2
+38DE0001 7CC61A14
+88660000 2C030010
+40800024 1C630006
+38A60001 7CA51A14
+B3650000 93450002
+88660000 38630001
+98660000 2C1D0000
+41820028 7F43D378
+BA810008 800100B4
+382100B0 7C0803A6
+3D808038 618CD2A0
+7D8903A6 4E800420
+BA810008 800100B4
+382100B0 7C0803A6
+2C1A0000 00000000
+C200569C 00000002 #Common/GetFighterNum.asm
+38600021 4E800020
+60000000 00000000
+C20055F8 0000000F #Common/GetIsFollower.asm
+7C0802A6 90010004
+9421FF50 BE810008
+7C7E1B78 3BE00000
+887E221F 5460EFFF
+41820038 887E000C
+3D808003 618C2330
+7D8903A6 4E800421
+3C80803B 6084CDE0
+1C030003 7C640214
+88030002 2C000000
+40820008 3BE00001
+7FE3FB78 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C20056A0 00000007 #Common/GetSSMIndex.asm
+2C030001 41820018
+3C60803B 6063B3C0
+1C840010 7C6320AE
+48000018 3C60803B
+6063B6B0 1C840003
+7C6320AE 48000004
+4E800020 00000000
+C216D294 00000006 #Common/IncrementFrameIndex.asm
+987F0008 3C608048
+80639D58 2C030000
+40820010 3860FF85
+906DB654 48000010
+806DB654 38630001
+906DB654 00000000
+C20055F4 00000007 #Common/IntToFloat.asm
+9421FF00 D0410008
+3C004330 C84298A8
+6C638000 900100F0
+906100F4 C82100F0
+EC211028 C0410008
+38210100 4E800020
+60000000 00000000
+C20056A4 00000022 #Common/LoadPremadeText.asm
+7C0802A6 90010004
+9421FF50 BE810008
+7C7F1B78 7C9E2378
+3B800004 7F83E378
+3D808037 618CF1E4
+7D8903A6 4E800421
+7C7D1B78 7F84E378
+3D808000 618CC160
+7D8903A6 4E800421
+386000E1 48000055
+839D0000 7FA3EB78
+3D808037 618CF1B0
+7D8903A6 4E800421
+7F83E378 3D808037
+618CF1E4 7D8903A6
+4E800421 7C7D1B78
+386000E2 4800001D
+7FA3EB78 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+7C0802A6 90010004
+9421FF50 BE810008
+987D0000 9BFD0001
+9BDD0002 7FA3EB78
+38800003 38A00001
+3D808000 618C55F0
+7D8903A6 4E800421
+7FA3EB78 7F84E378
+38A00000 3D808000
+618C55F0 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C20055EC 00000008 #Common/MultiplyRWithF.asm
+7C0802A6 90010004
+9421FF50 BE810008
+3D808000 618C55F4
+7D8903A6 4E800421
+EC2100B2 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+60000000 00000000
+C20056A8 00000005 #Common/RequestSSMLoad.asm
+2C030037 41820018
+3D808043 618C37C4
+38800001 1C630004
+7C83612E 4E800020
+60000000 00000000
+C20056B4 00000059 #Common/SubtextFunctions.asm
+2C050002 418201F8
+7C0802A6 90010004
+9421FF50 BE810008
+7C751B78 7C962378
+7CB82B78 7CD93378
+90E10038 9101003C
+91210040 91410044
+91610048 9181004C
+FEA00890 FEC01090
+FEE01890 FF202890
+FF403090 2C180001
+418000FC 39E00004
+FC20B090 FC40B890
+2C0F0001 41820020
+2C0F0002 41820020
+2C0F0003 41820020
+2C0F0004 41820020
+48000024 EC21D028
+4800001C EC21D02A
+48000014 EC42D028
+4800000C EC42D02A
+48000004 7EA3AB78
+80810038 3D80803A
+618C6B98 7D8903A6
+4E800421 7C771B78
+7EA3AB78 7EE4BB78
+FC20A890 FC40A890
+3D80803A 618C7548
+7D8903A6 4E800421
+7F25CB78 2C0F0000
+40820008 7EC5B378
+7EA3AB78 7EE4BB78
+3D80803A 618C74F0
+7D8903A6 4E800421
+7EA3AB78 7EE4BB78
+80A10038 80C1003C
+80E10040 81010044
+81210048 8141004C
+3D80803A 618C70A0
+7D8903A6 4E800421
+2C0F0000 4182000C
+39EFFFFF 4BFFFF14
+48000094 7EA3AB78
+80810038 FC20B090
+FC40B890 3D80803A
+618C6B98 7D8903A6
+4E800421 7C771B78
+7EA3AB78 7EE4BB78
+FC20A890 FC40A890
+3D80803A 618C7548
+7D8903A6 4E800421
+7EA3AB78 7EE4BB78
+7EC5B378 3D80803A
+618C74F0 7D8903A6
+4E800421 7EA3AB78
+7EE4BB78 80A10038
+80C1003C 80E10040
+81010044 81210048
+8141004C 3D80803A
+618C70A0 7D8903A6
+4E800421 7EE3BB78
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 7C0802A6
+90010004 9421FF50
+BE810008 7C7D1B78
+7C9C2378 7CDB3378
+FEC00890 FEE01090
+FF001890 FEA02090
+4800008D 7F4802A6
+38600000 7F64DB78
+C01A0000 FC20B090
+FC40B890 FC60C090
+C09A0004 C0BA0008
+3D80803A 618C5ACC
+7D8903A6 4E800421
+7C751B78 2C1C0000
+41820010 38600001
+986DAFEC 7F86E378
+7EA3AB78 7FA4EB78
+FC00A890 D0030024
+D0030028 3D80803A
+618C6368 7D8903A6
+4E800421 7EA3AB78
+BA810008 800100B4
+382100B0 7C0803A6
+4E800020 4E800021
+41100000 44160000
+41A00000 00000000
+C21C154C 00000004 #Common/Initialize Stage Data/Init Stage Data.asm
+38800204 3D808000
+618CC160 7D8903A6
+4E800421 281A0000
+60000000 00000000
+C2068EEC 00000006 #Common/Initialize Player Data/Init Player Data.asm
+3BC30000 3C808045
+60848FD0 80840020
+3D808000 618CC160
+7D8903A6 4E800421
+7FC3F378 3C808046
+60000000 00000000
+C209E090 00000011 #Common/FastForward/DynamicsFix.asm
+807E0000 80630028
+48000009 48000074
+7C0802A6 90010004
+9421FFE8 93E10014
+7C7F1B78 807F0014
+54600211 40820020
+54600673 41820018
+7FE3FB78 3D808037
+618C3078 7D8903A6
+4E800421 807F0010
+2C030000 41820008
+4BFFFFB9 807F0008
+2C030000 41820008
+4BFFFFA9 83E10014
+8001001C 38210018
+7C0803A6 4E800020
+BB010028 00000000
+
+$Optional: Show Player Names [Fizzi, UnclePunch, Enzyme, jmlee337]
+*Show players' Slippi Online display names as HUD elements when available
+C216E9B4 0000009A #Playback/Show Player Names/InitInGame.asm
+48000088 4E800021
+3EA8F5C3 000000FF
+3F1EB852 3F466666
+C1C07AE1 3C6F34D7
+3F4CCCCD 41A51EB8
+00000000 3D75C28F
+43160000 3F0A3D71
+00000000 4E800021
+7C0802A6 90010004
+9421FF50 BE810008
+7C7F1B78 880DB6CC
+2C000001 41820018
+7FE3FB78 3D808039
+618C10D8 7D8903A6
+4E800421 BA810008
+800100B4 382100B0
+7C0803A6 4E800020
+7C0802A6 90010004
+9421FF50 BE810008
+3C60804D 60636D5C
+80630000 3C80803F
+608494D0 3D808038
+618C0358 7D8903A6
+4E800421 80630004
+80630000 3D808036
+618CA590 7D8903A6
+4E800421 7C7E1B78
+38600013 38800014
+38A00000 3D808039
+618C01F0 7D8903A6
+4E800421 7C7D1B78
+7FA3EB78 888DC1AB
+7FC5F378 3D808039
+618C0A70 7D8903A6
+4E800421 7FA3EB78
+4BFFFF25 7C8802A6
+38A00008 3D808039
+618C075C 7D8903A6
+4E800421 3C600000
+60631000 907D0024
+38600002 7FA4EB78
+38A00009 38C0000D
+38E00000 3900000C
+39200050 39400008
+3D80803A 618C611C
+7D8903A6 4E800421
+7C7F1B78 4BFFFE91
+7F8802A6 834DB64C
+3A800000 3EA0804A
+62B50FF0 7E83A378
+3D808003 618C241C
+7D8903A6 4E800421
+2C030003 41820308
+387A0570 1C94001F
+7F032214 7F03C378
+3D808032 618C5B04
+7D8903A6 4E800421
+2C040000 418202E0
+7E83A378 3D80802F
+618C3424 7D8903A6
+4E800421 C0230000
+D0210070 38600002
+7FE4FB78 3D80803A
+618C6754 7D8903A6
+4E800421 7C7D1B78
+38800001 989D0048
+989D004A 989D004C
+989D0049 C03C0024
+D03D0024 D03D0028
+C0210070 C05C0018
+EC21102A D03D0000
+C03C001C D03D0004
+C03C0020 D03D0008
+C03C0028 D03D000C
+D03D0010 4CC63242
+C03C0030 C05C0030
+7FA3EB78 7F04C378
+3D80803A 618C6B98
+7D8903A6 4E800421
+7FA3EB78 38800000
+C03C002C C05C002C
+3D80803A 618C7548
+7D8903A6 4E800421
+3860000E 3880000F
+38A00000 3D808039
+618C01F0 7D8903A6
+4E800421 7C771B78
+3C60804A 60631ED0
+80630000 3D808037
+618C0E44 7D8903A6
+4E800421 7C761B78
+7EE3BB78 888DC1A9
+7EC5B378 3D808039
+618C0A70 7D8903A6
+4E800421 7EE3BB78
+3C808039 60841070
+38A0000C 38C00000
+3D808039 618C069C
+7D8903A6 4E800421
+7E83A378 3D80802F
+618C3424 7D8903A6
+4E800421 C0230000
+C05C000C EC21102A
+D0360038 C03C0010
+D036003C C03C0008
+D0360030 7EC3B378
+38810080 38A00001
+38C0FFFF 3D808001
+618C1E24 7D8903A6
+4E800421 80610080
+38800000 90830040
+80610080 80630018
+80830014 60840001
+90830014 80630004
+80830014 60840001
+90830014 80630004
+80630008 8063000C
+C03C0000 D023000C
+809C0004 90830004
+3B200000 807D005C
+38800000 3D80803A
+618C6FEC 7D8903A6
+4E800421 3943000F
+3D808040 618CCB00
+887D004F 1C630004
+3C80804D 60841124
+7C63202E 81630004
+886A0000 2C03000B
+41820064 2C030020
+4182001C 2C030040
+41820034 886A0000
+2C03000F 41820050
+48000044 886A0001
+1C630002 7C6360AE
+38800014 7C632050
+7F391A14 394A0002
+4BFFFFB8 886A0001
+1C630002 7C6358AE
+38800014 7C632050
+7F391A14 394A0002
+4BFFFF98 394A0001
+4BFFFF90 2C19003C
+40800008 3B20003C
+2C190090 40810008
+3B200090 3C004330
+C84298A8 6F238000
+90010080 90610084
+C8210080 EC211028
+C05C0014 EC2100B2
+D036002C 3A940001
+2C140006 4180FCD8
+BA810008 800100B4
+382100B0 7C0803A6
+8001001C 00000000
+
+$Optional: Game Music OFF [UnclePunch]
+*Keep checked if you want music OFF. Uncheck "Game Music ON".
+04023FFC 38800000
+
+$Optional: Widescreen 16:9 [Dan Salvato, mirrorbender, Achilles1515, UnclePunch]
+*Set Aspect Ratio to "Force 16:9" in Graphics
+043BB05C 3EB00000 #External/Widescreen/Fix Screen Flash.asm
+C236A4A8 00000007 #External/Widescreen/Overwrite CObj Values.asm
+38600001 986DAFE0
+C03F0034 4800001D
+7C6802A6 C0430000
+C0630004 EC2100B2
+EC211824 48000010
+4E800021 43A00000
+435B0000 00000000
+044DDB58 3E4CCCCD #External/Widescreen/Adjust Offscreen Scissor/Adjust Bubble Zoom.asm
+04086B24 60000000 #External/Widescreen/Adjust Offscreen Scissor/Draw High Poly Models.asm
+04030C7C 38000064 #External/Widescreen/Adjust Offscreen Scissor/Left Camera Bound.asm
+04030C88 3800021C #External/Widescreen/Adjust Offscreen Scissor/Right Camera Bound.asm
+044DDB30 3F666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 1.asm
+044DDB34 BF666666 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Adjust Corner Value 2.asm
+044DDB2C C3660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Negative Vertical Bound.asm
+044DDB28 43660000 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Extend Positive Vertical Bound.asm
+044DDB4C 3D916873 #External/Widescreen/Adjust Offscreen Scissor/Fix Bubble Positions/Widen Bubble Region.asm
+C22FCFC4 00000004 #External/Widescreen/Nametag Fixes/Adjust Nametag Background X Scale.asm
+48000011 7C6802A6
+C0030000 4800000C
+4E800021 40DC7AE1
+60000000 00000000
+044DDB84 3E89FEFA #External/Widescreen/Nametag Fixes/Adjust Nametag Text X Scale.asm
+
+$Optional: Disable Screen Shake [Achilles1515]
+*Disables all screen shaking
+04030E44 4E800020 #External/Disable Screen Shake/Disable Screen Shake.asm
+
+$Optional: Hide HUD [UnclePunch]
+*Hides the timer and player percent HUD elements
+0416E9A4 60000000 #External/Hide Timer and Player HUD/Hide Timer HUD.asm
+0416BA80 48000014 #External/Hide Timer and Player HUD/Hide Percents/Skip Percent Anim During Stock Steal.asm
+0416E9B0 60000000 #External/Hide Timer and Player HUD/Hide Percents/Skip Player HUD Creation.asm
+
+$Optional: Hide Waiting For Game [Nikki, UnclePunch]
+*Hides the waiting for game text and slippi.gg text and disables the SFX played before a replay starts
+*With this enabled, there will be no indication between matches that Melee is still running
+044DEC20 00000001 #Playback/Hide Waiting For Game/Hide Waiting For Game.asm
+
+$Optional: Enable Develop Mode [UnclePunch]
+*Turns develop (debug) mode on. Allows access to frame advance, hit/hurtbox display, and alternate camera angles
+044D4A08 00000004 #External/Enable Develop Mode/Enable Develop Mode.asm
+04089250 48000008 #External/Enable Develop Mode/Enable Stale Moves.asm
+
+$Optional: Lagless FoD [Achilles, Myougi, Dan Salvato]
+*Disables particles and reflection on FoD to improve performance
+C21CBB90 00000005 #Lagless FoD
+9421FFF8 3CC0804A
+80C6ED78 3CA00002
+60A5AE44 7CA53050
+88C50000 60C60004
+98C50000 00000000
+041CC8AC FC000028
+041CBE9C 60000000
+041CBEF0 60000000
+041CBF54 60000000
+04390838 60000000
+041CD250 60000000
+041CCDCC 480000B4
diff --git a/Data/linux-env.sh b/Data/linux-env.sh
new file mode 100644
index 0000000000..b5aff092a2
--- /dev/null
+++ b/Data/linux-env.sh
@@ -0,0 +1,15 @@
+#!/bin/bash -e
+# linux-env.sh
+
+# Add /usr/lib/ to LD_LIBRARY_PATH cause Ubuntu is dumb
+export LD_LIBRARY_PATH="/usr/lib/:$LD_LIBRARY_PATH"
+
+if [[ $(env | grep -i wayland) ]]; then
+ # wxWidgets 3.14 is GTK3, which seemingly has an issue or two when
+ # running under Wayland. Explicitly setting this for Slippi avoids
+ # those issues.
+ export GDK_BACKEND=x11
+
+ # Disable Webkit compositing on Wayland cause it breaks stuff
+ export WEBKIT_DISABLE_COMPOSITING_MODE=1
+fi
diff --git a/Data/slippi_dmg_background.png b/Data/slippi_dmg_background.png
new file mode 100644
index 0000000000..fec520848e
Binary files /dev/null and b/Data/slippi_dmg_background.png differ
diff --git a/Data/slippi_dmg_icon.icns b/Data/slippi_dmg_icon.icns
new file mode 100644
index 0000000000..4a17b18dec
Binary files /dev/null and b/Data/slippi_dmg_icon.icns differ
diff --git a/Source/Core/DolphinQt/CMakeLists.txt b/Source/Core/DolphinQt/CMakeLists.txt
index 27b50b9922..bba23af4b8 100644
--- a/Source/Core/DolphinQt/CMakeLists.txt
+++ b/Source/Core/DolphinQt/CMakeLists.txt
@@ -438,13 +438,13 @@ endif()
if(APPLE)
include(BundleUtilities)
- set(BUNDLE_PATH ${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Dolphin.app)
+ set(BUNDLE_PATH "${CMAKE_RUNTIME_OUTPUT_DIRECTORY}/Slippi_Dolphin.app")
# Ask for an application bundle.
set_target_properties(dolphin-emu PROPERTIES
MACOSX_BUNDLE true
MACOSX_BUNDLE_INFO_PLIST ${CMAKE_CURRENT_SOURCE_DIR}/Info.plist.in
- OUTPUT_NAME Dolphin
+ OUTPUT_NAME "Slippi_Dolphin"
)
# Copy qt.conf into the bundle
diff --git a/Source/Core/DolphinQt/Info.plist.in b/Source/Core/DolphinQt/Info.plist.in
index b5f3a3f44b..d926a47cc6 100644
--- a/Source/Core/DolphinQt/Info.plist.in
+++ b/Source/Core/DolphinQt/Info.plist.in
@@ -29,11 +29,15 @@
CFBundleExecutable
- Dolphin
+ Slippi_Dolphin
+ CFBundleName
+ Slippi_Dolphin
+ CFBundleDisplayName
+ Slippi_Dolphin
CFBundleIconFile
Dolphin.icns
CFBundleIdentifier
- org.dolphin-emu.dolphin
+ com.project-slippi.dolphin
CFBundleDevelopmentRegion
English
CFBundlePackageType
diff --git a/build-appimage.sh b/build-appimage.sh
index fda23abc69..04aa7fa18f 100644
--- a/build-appimage.sh
+++ b/build-appimage.sh
@@ -1,7 +1,8 @@
#!/bin/bash -e
-# build-online-appimage.sh
+# build-appimage.sh
ZSYNC_STRING="gh-releases-zsync|project-slippi|Ishiiruka|latest|Slippi_Online-x86_64.AppImage.zsync"
+NETPLAY_APPIMAGE_STRING="Slippi_Online-x86_64.AppImage"
PLAYBACK_APPIMAGE_STRING="Slippi_Playback-x86_64.AppImage"
LINUXDEPLOY_PATH="https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous"
@@ -16,28 +17,33 @@ UPDATETOOL_PATH="https://github.com/AppImage/AppImageUpdate/releases/download/co
UPDATETOOL_FILE="appimageupdatetool-x86_64.AppImage"
UPDATETOOL_URL="${UPDATETOOL_PATH}/${UPDATETOOL_FILE}"
-DESKTOP_APP_URL="https://github.com/project-slippi/slippi-desktop-app"
-DESKTOP_APP_SYS_PATH="./slippi-desktop-app/app/dolphin-dev/overwrite/Sys"
+PLAYBACK_CODES_PATH="./Data/PlaybackGeckoCodes/"
APPDIR_BIN="./AppDir/usr/bin"
+APPDIR_HOOKS="./AppDir/apprun-hooks"
# Grab various appimage binaries from GitHub if we don't have them
if [ ! -e ./Tools/linuxdeploy ]; then
wget ${LINUXDEPLOY_URL} -O ./Tools/linuxdeploy
- chmod +x ./Tools/linuxdeploy
fi
if [ ! -e ./Tools/linuxdeploy-update-plugin ]; then
wget ${UPDATEPLUG_URL} -O ./Tools/linuxdeploy-update-plugin
- chmod +x ./Tools/linuxdeploy-update-plugin
fi
if [ ! -e ./Tools/appimageupdatetool ]; then
- wget ${UPDATEPLUG_URL} -O ./Tools/appimageupdatetool
- chmod +x ./Tools/appimageupdatetool
+ wget ${UPDATETOOL_URL} -O ./Tools/appimageupdatetool
fi
+chmod +x ./Tools/linuxdeploy
+chmod +x ./Tools/linuxdeploy-update-plugin
+chmod +x ./Tools/appimageupdatetool
+
# Delete the AppDir folder to prevent build issues
rm -rf ./AppDir/
+# Add the linux-env script to the AppDir prior to running linuxdeploy
+mkdir -p ${APPDIR_HOOKS}
+cp Data/linux-env.sh ${APPDIR_HOOKS}
+
# Build the AppDir directory for this image
mkdir -p AppDir
./Tools/linuxdeploy \
@@ -50,32 +56,29 @@ mkdir -p AppDir
cp -r Data/Sys ${APPDIR_BIN}
# Build type
-if [ -z "$1" ] # Netplay
+if [ "$1" == "playback" ] # Playback
then
- echo "Using Netplay build config"
-
+ echo "Using Playback build config"
+
+ rm -f ${PLAYBACK_APPIMAGE_STRING}
+
+ # Update Sys dir with playback codes
+ echo "Copying Playback gecko codes"
+ rm -rf "${APPDIR_BIN}/Sys/GameSettings" # Delete netplay codes
+ cp -r "${PLAYBACK_CODES_PATH}/." "${APPDIR_BIN}/Sys/GameSettings/"
+
+ OUTPUT="${PLAYBACK_APPIMAGE_STRING}" \
+ ./Tools/linuxdeploy-update-plugin --appdir=./AppDir/
+else
+ echo "Using Netplay build config"
+
+ # remove existing appimage just in case
+ rm -f ${NETPLAY_APPIMAGE_STRING}
+
# Package up the update tool within the AppImage
cp ./Tools/appimageupdatetool ./AppDir/usr/bin/
# Bake an AppImage with the update metadata
UPDATE_INFORMATION="${ZSYNC_STRING}" \
./Tools/linuxdeploy-update-plugin --appdir=./AppDir/
-elif [ "$1" == "playback" ] # Playback
- then
- echo "Using Playback build config"
- if [ -d "slippi-desktop-app" ]
- then
- pushd slippi-desktop-app
- git checkout master
- git pull --ff-only
- popd
- else
- git clone ${DESKTOP_APP_URL}
- fi
- # Update Sys dir with playback codes
- rm -rf "${APPDIR_BIN}/GameSettings" # Delete netplay codes
- cp -r ${DESKTOP_APP_SYS_PATH} ${APPDIR_BIN}
-
- OUTPUT="${PLAYBACK_APPIMAGE_STRING}" \
- ./Tools/linuxdeploy-update-plugin --appdir=./AppDir/
fi
diff --git a/build-linux.sh b/build-linux.sh
index e076f9cada..a84dd609ab 100644
--- a/build-linux.sh
+++ b/build-linux.sh
@@ -3,15 +3,19 @@
CMAKE_FLAGS='-DLINUX_LOCAL_DEV=true'
+PLAYBACK_CODES_PATH="./Data/PlaybackGeckoCodes/"
+
+DATA_SYS_PATH="./Data/Sys/"
+BINARY_PATH="./build/Binaries/"
+
# Build type
-if [ -z "$1" ]
+if [ "$1" == "playback" ]
then
+ echo "Using Playback build config"
+else
# TODO: move this around, playback should be the secondary build
CMAKE_FLAGS+=" -DSLIPPI_PLAYBACK=false"
echo "Using Netplay build config"
-elif [ "$1" == "playback" ]
- then
- echo "Using Playback build config"
fi
# Move into the build directory, run CMake, and compile the project
@@ -22,6 +26,15 @@ make -j$(nproc)
popd
# Copy the Sys folder in
-cp -r -n Data/Sys/ build/Binaries/
+cp -r -n ${DATA_SYS_PATH} ${BINARY_PATH}
touch ./build/Binaries/portable.txt
+
+# Copy playback specific codes if needed
+if [ "$1" == "playback" ]
+ then
+ # Update Sys dir with playback codes
+ echo "Copying Playback gecko codes"
+ rm -rf "${BINARY_PATH}/Sys/GameSettings" # Delete netplay codes
+ cp -r "${PLAYBACK_CODES_PATH}/." "${BINARY_PATH}/Sys/GameSettings/"
+fi
\ No newline at end of file
diff --git a/build-mac.sh b/build-mac.sh
new file mode 100644
index 0000000000..7835be7701
--- /dev/null
+++ b/build-mac.sh
@@ -0,0 +1,49 @@
+#!/bin/bash -e
+# build-mac.sh
+
+QT_BREW_PATH=$(brew --prefix qt@5)
+CMAKE_FLAGS="-DQt5_DIR=${QT_BREW_PATH}/lib/cmake/Qt5 -DENABLE_NOGUI=false"
+
+PLAYBACK_CODES_PATH="./Data/PlaybackGeckoCodes/"
+
+DATA_SYS_PATH="./Data/Sys/"
+BINARY_PATH="./build/Binaries/Slippi_Dolphin.app/Contents/Resources/"
+
+export LIBRARY_PATH=$LIBRARY_PATH:/usr/local/lib:/usr/lib/
+
+# Build type
+if [ "$1" == "playback" ]
+ then
+ echo "Using Playback build config"
+else
+ echo "Using Netplay build config"
+ CMAKE_FLAGS+=" -DSLIPPI_PLAYBACK=false"
+fi
+
+if [[ -z "${CERTIFICATE_MACOS_APPLICATION}" ]]
+ then
+ echo "Building without code signing"
+else
+ echo "Building with code signing"
+ CMAKE_FLAGS+=' -DMACOS_CODE_SIGNING="ON"'
+fi
+
+# Move into the build directory, run CMake, and compile the project
+mkdir -p build
+pushd build
+cmake ${CMAKE_FLAGS} ..
+make -j7
+popd
+
+# Copy the Sys folder in
+echo "Copying Sys files into the bundle"
+cp -Rfn "${DATA_SYS_PATH}" "${BINARY_PATH}"
+
+# Copy playback specific codes if needed
+if [ "$1" == "playback" ]
+ then
+ # Update Sys dir with playback codes
+ echo "Copying playback gecko codes into the bundle"
+ rm -rf "${BINARY_PATH}/Sys/GameSettings" # Delete netplay codes
+ cp -r "${PLAYBACK_CODES_PATH}/." "${BINARY_PATH}/Sys/GameSettings/"
+fi