diff --git a/.gitattributes b/.gitattributes index 3d5d2bc7a1..8949d71eaf 100644 --- a/.gitattributes +++ b/.gitattributes @@ -1,22 +1,27 @@ -*.sh text eol=lf -*.s text eol=lf -Makefile text eol=lf -*.mk text eol=lf *.c text eol=lf *.h text eol=lf -*.inc text eol=lf -*.sha1 text eol=lf -*.json text eol=lf *.cpp text eol=lf *.hpp text eol=lf +*.s text eol=lf +*.inc text eol=lf +*.sh text eol=lf +*.py text eol=lf +*.sha1 text eol=lf +*.json text eol=lf +meson.build text eol=lf + .gitattributes text eol=lf .gitignore text eol=lf + *.md text eol=lf *.lsf text eol=lf *.yml text eol=lf +*.ini text eol=lf + lib/msl/include/MSL_C/* text eol=lf *.bin binary *.h linguist-language=C *.inc linguist-language=Assembly +*.py linguist-language=Python diff --git a/.gitignore b/.gitignore index c64de3e170..91f4f9188a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,26 +1,13 @@ -# Object files -*.nds - -# Compilers -tools/mwccarm/** - -# SDK -tools/bin/** - -# Build folder -build/** -sub/build/** +# Meson files +/build/ +/tools/cw/build/ +/tools/cw/mwrap +/tools/cw/mwrap.exe # CLion folders .idea/ cmake-build-debug/ -# ROM -*.srl - -# Tool executables -*.exe - # Generated files *.4bpp *.lz @@ -33,17 +20,11 @@ cmake-build-debug/ # For decomp.me ctx.c -*.lcf.template -*.lcf -*.response.template -*.response - # Working files overlays/*/module_*.s overlays/*/module_*.sbin overlays/*/module_*.cfg -*.sbin *.bnr *.nbfp *.nbfc @@ -56,12 +37,8 @@ asmdiff.sh symbols.csv # NARCs -*.narc -*.arc -files/**/*.c +res/**/*.c *.o -*.naix -*.a # Utilities ntruncompbw @@ -85,9 +62,7 @@ diff.txt temp_asm/ asm_old/ -!platinum.us/rom_header_template.sbin !platinum.us/banner.bnr -!sub/*.sbin uncrustify.cfg compare.sh @@ -96,3 +71,4 @@ diff/ sdk/ !tools/asmdiff/asmdiff.sh + diff --git a/INSTALL.md b/INSTALL.md index 8a38ee1fd9..0b8e8ff6c1 100644 --- a/INSTALL.md +++ b/INSTALL.md @@ -1,3 +1,6 @@ +This doc details the steps necessary to build a copy of Pokemon Platinum (EN-US) from the sources contained in this repository. + +# 1. Setting up a dev environment ## Windows @@ -11,99 +14,121 @@ To add an environment variable: You will need to restart your computer for the changes to take effect, but if you plan to use Windows Subsystem for Linux (WSL), then you can restart later as part of the required restart when installing WSL, if you choose so. +You now have the choice between two different environments to use to build the project. -### Windows 10 (Windows Subsystem for Linux) +### MSYS2 (Recommended) -Currently WSL2 has an issue with mwldarm not being able to locate it's executable. Please use WSL1 or another build environment to mitigate this issue until a solution is found. +1. Download the MSYS2 installer from the official website: https://www.msys2.org/ and install it on your system. + +2. Once the installation is complete, a terminal should automatically pop up. To update the package registry, type the following command: + + ``` + pacman -Syu + ``` + + Press 'Y' when prompted to confirm the update. The update process may take a few minutes. Once completed, the terminal will automatically close. + +3. Reopen an MSYS terminal (pink icon) and enter the following command to install the necessary packages: + + ``` + pacman -S git meson gcc + ``` + + Press 'Y' when prompted to confirm the installation. + +4. Continue with the [building instructions](#Downloading_the_repository). Make sure to always use the plain MSYS environment, other environments will not work. + +### Windows Subsystem for Linux 1. Open [Windows Powershell **as Administrator**](https://i.imgur.com/QKmVbP9.png), and run the following command (Right Click or Shift+Insert is paste in the Powershell). ```powershell - dism.exe /online /enable-feature /featurename:Microsoft-Windows-Subsystem-Linux /all /norestart + wsl --install -d Ubuntu ``` -2. Once the process finishes, restart your machine. +2. Once the process finishes, you will be prompted to restart your machine. Accept. -3. The next step is to choose and install a Linux distribution from the Microsoft Store. The following instructions will assume Ubuntu as the Linux distribution of choice. +3. After rebooting, reopen PowerShell and run the following commmand to downgrade to WSL1 -4. Open the [Microsoft Store Linux Selection](https://aka.ms/wslstore), click Ubuntu, then click Get, which will install the Ubuntu distribution. -
- Notes... + ```powershell + wsl --set-version Ubuntu 1 + ``` - > Note 1: If a dialog pops up asking for you to sign into a Microsoft Account, then just close the dialog. - > Note 2: If the link does not work, then open the Microsoft Store manually, and search for the Ubuntu app (choose the one with no version number). -
+ This is necessary because WSL2 has very slow access to the Windows file drive, which is where we need to store the repository. -### Setting up WSL1 -Some tips before proceeding: -- In WSL, Copy and Paste is either done via - - **right-click** (selection + right click to Copy, right click with no selection to Paste) - - **Ctrl+Shift+C/Ctrl+Shift+V** (enabled by right-clicking the title bar, going to Properties, then checking the checkbox next to "Use Ctrl+Shift+C/V as Copy/Paste"). -- Some of the commands that you'll run will ask for your WSL password and/or confirmation to perform the stated action. This is to be expected, just enter your WSL password and/or the yes action when necessary. +4. Open **Ubuntu** (e.g. using Search). -1. Open **Ubuntu** (e.g. using Search). -2. WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in). +5. WSL/Ubuntu will set up its own installation when it runs for the first time. Once WSL/Ubuntu finishes installing, it will ask for a username and password (to be input in).
Note... > When typing in the password, there will be no visible response, but the terminal will still read in input.
-3. Update WSL/Ubuntu before continuing. Do this by running the following command. These commands will likely take a long time to finish: +6. Update WSL/Ubuntu before continuing. Do this by running the following command. These commands will likely take a long time to finish: ```bash sudo apt update && sudo apt upgrade ``` -4. Certain packages are required to build the repository. Install these packages by running the following command: +7. Certain packages are required to build the repository. Install these packages by running the following command: ```bash - sudo apt install git build-essential binutils-arm-none-eabi python3 libpng-devel pugixml + sudo apt install git build-essential ``` -5. Change to a directory accessible from Windows where you'll store the files, for example: + We are not done yet, the 'meson' package is also necessary, but the version provided by apt is too outdated. To get the most recent meson version, run: + + ``` + sudo apt-get install pip + pip install --user meson + ``` + +8. Change to a directory accessible from Windows where you'll store the files, for example: ```bash cd /mnt/c/Users/$USER/Desktop ``` -Continue with the [building instructions](#Building) +Continue with the [building instructions](#Downloading_the_repository) ## Linux Building the ROM requires the following packages. If you cannot find one or more of these using your package distribution, it may be under a different name. -* make * git +* meson (>= 1.2.0) * build-essentials (build-essential on Ubuntu) -* binutils-arm-none-eabi * wine (to run the mwcc executables) -* python3 (for asm preprocessor) -* libpng-devel (libpng-dev on Ubuntu) * pkg-config -* pugixml (libpugixml-dev on Ubuntu) -NOTE: If you are using Arch/Manjaro or Void you will only need base-devel instead of build-essentials or make or git. You will still need wine. +NOTE: On some distros, the meson package provided by the package manager will be out of date. To check your meson version, run: -## Installing +``` +meson --version +``` -Clone the repository: +If your mesion version is older than 1.2.0, follow the instructions at: https://mesonbuild.com/Getting-meson.html to get the most recent version of Meson + +# 2. Downloading the repository + +In your terminal of choice, navigate to the path you would like to store the repository in. If you are using WSL, make sure to clone the repo under the Windows file drive. Clone the repository with: ``` git clone https://github.com/pret/pokeplatinum cd pokeplatinum ``` -The build system requires the use of the Metrowerks C Compiler versions 2.0/sp2p2 to compile matching files. Download the zip [here](https://cdn.discordapp.com/attachments/698589325620936736/845499146982129684/mwccarm.zip) and extract it to tools/. At the end of this operation, you should have i.e. the file `tools/mwccarm/2.0/sp2p2/mwccarm.exe`. - -In the future, a GCC option will be available so MWCC is not required to build, however it is required for a matching ROM. - -Download the `NitroSDK-4_2-071210-jp.7z` [here](https://cdn.discordapp.com/attachments/855279572651868170/875195363261292604/NitroSDK-4_2-071210-jp.7z) and extract and copy the folder `tools/bin` from the Nitro SDK into the folder `tools` in your pokeplatinum clone. At the end of this operation, you should have the file `tools/bin/makelcf.exe` inside your pokeplatinum clone. Finally, copy `include/nitro/specfiles/ARM7-TS.lcf.template` into the subdirectory `sub`, and `include/nitro/specfiles/ARM9-TS.lcf.template` and `include/nitro/specfiles/mwldarm.response.template` into the project root. - -To build everything: +# 3. Building +To set up the build system, run: ``` -make -j$(nproc) +./config.sh +``` + +This is only required once. If the process is successful, you will see a new 'build' folder in the repository. + +To build the rom, run: +``` +./build.sh ``` If everything works, then the following ROM should be built: - [build/platinum.us/pokeplatinum.us.nds](https://datomatic.no-intro.org/index.php?page=show_record&s=28&n=3541) `sha1: ce81046eda7d232513069519cb2085349896dec7` - -**Note for Windows users**: Consider disabling real-time protection using [these instructions](https://support.microsoft.com/en-us/windows/turn-off-defender-antivirus-protection-in-windows-security-99e6004f-c54c-8509-773c-a4d776b77960) to speed up builds. [Adding an exception](https://support.microsoft.com/help/4028485) for the repository folder does not seem to help as much; one hypothesis is that the exceptions do not affect how various files are accessed via Windows (not WSL1) absolute paths. diff --git a/Makefile b/Makefile deleted file mode 100644 index 2a639e3d3e..0000000000 --- a/Makefile +++ /dev/null @@ -1,92 +0,0 @@ - -infoshell = $(foreach line, $(shell $1 | sed "s/ /__SPACE__/g"), $(info $(subst __SPACE__, ,$(line)))) - -ifeq (,$(filter-out all,$(MAKECMDGOALS))) -$(call infoshell, $(MAKE) -f make_tools.mk) -endif - -MWCCVER := 2.0/sp2p2 -PROC := arm946e -PROC_S := arm5te -PROC_LD := v5te -LCF_TEMPLATE := ARM9-TS.lcf.template -LIBS := -Llib -lsyscall -nostdlib -OPTFLAGS := -O4,p - -# Config -BUILD_DIR := build/platinum.us -NEFNAME := main -buildname := platinum.us -TITLE_NAME := POKEMON PL -GAME_CODE := CPUE -GAME_VERSION := PLATINUM -GAME_LANGUAGE := ENGLISH -SECURE_CRC := 0xF8B8 -GF_DEFINES := -DGAME_VERSION=$(GAME_VERSION) -DGAME_LANGUAGE=$(GAME_LANGUAGE) -GF_DEFINES += -DPM_KEEP_ASSERTS -GLB_DEFINES := -DSDK_CW_FORCE_EXPORT_SUPPORT -DSDK_TS -DSDK_4M -DSDK_ARM9 -DSDK_CW -DSDK_FINALROM -DSDK_LINK_ISD -DNNS_FINALROM -D_NITRO -DSDK_CODE_ARM -DEFINES = $(GF_DEFINES) $(GLB_DEFINES) - -ALL_BUILDDIRS := $(BUILD_DIR)/lib -include common.mk -include filesystem.mk - -ROM := $(BUILD_DIR)/poke$(buildname).nds -#BANNER := $(ROM:%.nds=%.bnr) -#BANNER_SPEC := $(buildname)/banner.bsf -#ICON_PNG := $(buildname)/icon.png -BANNER := $(buildname)/banner.bnr -HEADER_TEMPLATE := $(buildname)/rom_header_template.sbin - -.PHONY: main libsyscall sdk sdk9 sdk7 -.PRECIOUS: $(ROM) - -MAKEFLAGS += --no-print-directory - -all: $(ROM) - -tidy: - $(RM) -r $(BUILD_DIR) - $(RM) -r $(PROJECT_CLEAN_TARGETS) - $(RM) $(ROM) - -clean: tidy clean-tools - @$(MAKE) -C lib/syscall clean - -sdk9 sdk7: sdk -main filesystem: | sdk9 - -main: $(SBIN) $(ELF) - -ROMSPEC := rom.rsf -MAKEROM_FLAGS := $(DEFINES) - -$(NEF): libsyscall - -libsyscall: - $(MAKE) -C lib/syscall all install INSTALL_PREFIX=$(abspath $(WORK_DIR)/$(BUILD_DIR)) GAME_CODE=$(GAME_CODE) - -$(BUILD_DIR)/component.files: main ; - -$(HEADER_TEMPLATE): ; - -#$(ROM): $(ROMSPEC) filesystem $(BANNER) -$(ROM): $(ROMSPEC) main - $(WINE) $(MAKEROM) $(MAKEROM_FLAGS) -DBUILD_DIR=$(BUILD_DIR) -DNITROFS_FILES="$(NITROFS_FILES:files/%=%)" -DTITLE_NAME="$(TITLE_NAME)" -DBNR="$(BANNER)" -DHEADER_TEMPLATE="$(HEADER_TEMPLATE)" $< $@ - $(FIXROM) $@ --secure-crc $(SECURE_CRC) --game-code $(GAME_CODE) -ifeq ($(COMPARE),1) - $(SHA1SUM) -c $(buildname)/rom.sha1 -endif - -#$(BANNER): $(BANNER_SPEC) $(ICON_PNG:%.png=%.nbfp) $(ICON_PNG:%.png=%.nbfc) -# $(WINE) $(MAKEBNR) $< $@ - -# TODO: move to NitroSDK makefile -FX_CONST_H := $(WORK_DIR)/lib/NitroSDK/include/nitro/fx/fx_const.h -PROJECT_CLEAN_TARGETS += $(FX_CONST_H) -$(FX_CONST_H): $(TOOLSDIR)/gen_fx_consts/fx_const.csv - $(MKFXCONST) $@ -sdk: $(FX_CONST_H) -$(WORK_DIR)/include/global.h: $(FX_CONST_H) ; - -.PHONY: diff --git a/asm/main_etable.s b/asm/main_etable.s deleted file mode 100644 index c0c5577e76..0000000000 --- a/asm/main_etable.s +++ /dev/null @@ -1,68 +0,0 @@ - .include "macros/function.inc" - - .extern Unk_020E4558 - .extern Unk_020E4560 - .extern Unk_020E4568 - .extern Unk_020E4570 - .extern Unk_020E4578 - .extern Unk_020E4580 - .extern Unk_020E4588 - .extern Unk_020E4590 - .extern Unk_020E45A0 - .extern Unk_020E45B4 - .extern Unk_020E45CC - .extern Unk_020E45D4 - .extern Unk_020E45E4 - .extern Unk_020E45EC - .extern Unk_020E4600 - .extern Unk_020E4608 - .extern Unk_020E4610 - .extern Unk_020E4628 - .extern Unk_020E4644 - .extern Unk_020E465C - - .section .exception, 4 - - .global Exception_Table_Index -Exception_Table_Index: ; 0x020E4670 - .incbin "incbin/main_etable.bin", 0x118, 0x164 - .word Unk_020E4558 - .incbin "incbin/main_etable.bin",0x280,0x68 - .word Unk_020E4560 - .incbin "incbin/main_etable.bin",0x2EC,0x2C - .word Unk_020E4568 - .incbin "incbin/main_etable.bin",0x31C,0x8C - .word Unk_020E4570 - .incbin "incbin/main_etable.bin",0x3AC,0x8 - .word Unk_020E4578 - .incbin "incbin/main_etable.bin",0x3B8,0x2C - .word Unk_020E4580 - .incbin "incbin/main_etable.bin",0x3E8,0x80 - .word Unk_020E4588 - .incbin "incbin/main_etable.bin",0x46C,0x2C - .word Unk_020E4590 - .incbin "incbin/main_etable.bin",0x49C,0x2C - .word Unk_020E45A0 - .incbin "incbin/main_etable.bin",0x4CC,0x68 - .word Unk_020E45B4 - .incbin "incbin/main_etable.bin",0x538,0x2C - .word Unk_020E45CC - .incbin "incbin/main_etable.bin",0x568,0x8 - .word Unk_020E45D4 - .incbin "incbin/main_etable.bin",0x574,0x8 - .word Unk_020E45E4 - .incbin "incbin/main_etable.bin",0x580,0x14 - .word Unk_020E45EC - .incbin "incbin/main_etable.bin",0x598,0x8 - .word Unk_020E4600 - .incbin "incbin/main_etable.bin",0x5A4,0x8 - .word Unk_020E4608 - .incbin "incbin/main_etable.bin",0x5B0,0x38 - .word Unk_020E4610 - .incbin "incbin/main_etable.bin",0x5EC,0x8 - .word Unk_020E4628 - .incbin "incbin/main_etable.bin",0x5F8,0x14 - .word Unk_020E4644 - .incbin "incbin/main_etable.bin",0x610,0x8 - .word Unk_020E465C - .incbin "incbin/main_etable.bin",0x61C,0xCC \ No newline at end of file diff --git a/asm/meson.build b/asm/meson.build new file mode 100644 index 0000000000..49053a3eab --- /dev/null +++ b/asm/meson.build @@ -0,0 +1,4 @@ +pokeplatinum_asm = files( + 'overlay014/ov14_022248A4.s', + 'dtcm.s' +) diff --git a/asm/overlay097/ov97_02239420.inc b/asm/overlay097/ov97_02239420.inc deleted file mode 100644 index 5e257dec59..0000000000 --- a/asm/overlay097/ov97_02239420.inc +++ /dev/null @@ -1,71 +0,0 @@ -.public OS_AllocFromHeap -.public OS_FreeToHeap -.public MI_CpuFill8 -.public MI_CpuCopy8 -.public MATH_CalcSHA1 -.public _s32_div_f -.public _u32_div_f -.public ov97_022394DC -.public ov97_022395DC -.public ov97_02239780 -.public ov97_02239844 -.public ov97_02239918 -.public ov97_02239A74 -.public ov97_0223A278 -.public ov97_0223A60C -.public ov97_0223A74C -.public ov97_0223A7C8 -.public ov97_0223AA44 -.public ov97_0223AAF0 -.public ov97_0223AB34 -.public ov97_0223AB68 -.public ov97_0223AB90 -.public ov97_0223ABD0 -.public ov97_0223AC0C -.public ov97_0223AC40 -.public ov97_0223ADFC -.public ov97_0223AFD4 -.public ov97_0223B148 -.public ov97_0223B1DC -.public ov97_0223B31C -.public ov97_0223B408 -.public ov97_0223B564 -.public ov97_0223B5C0 -.public ov97_0223B5F4 -.public ov97_0223BB94 -.public ov97_0223BCB8 -.public ov97_0223BDB8 -.public ov97_0223BEFC -.public ov97_0223C060 -.public ov97_0223C17C -.public ov97_0223C258 -.public ov97_0223C3B8 -.public ov97_0223C4E0 -.public ov97_0223C5FC -.public ov97_0223C700 -.public ov97_0223C814 -.public ov97_0223C964 -.public ov97_0223CAB8 -.public ov97_0223CC58 -.public ov97_0223CE38 -.public ov97_0223CEA8 -.public ov97_0223CF44 -.public ov97_0223CF98 -.public ov97_0223D014 -.public ov97_0223D128 -.public ov97_0223D198 -.public ov97_0223D1D0 -.public ov97_0223D268 -.public ov97_0223D2E8 -.public ov97_0223D330 -.public ov97_0223D358 -.public ov97_0223D38C -.public ov97_0223D3D8 -.public ov97_0223D3EC -.public ov97_0223D438 -.public ov97_0223D4B8 -.public ov97_0223D510 -.public ov97_0223D534 -.public ov97_0223D568 -.public ov97_0223D5E4 -.public ov97_0223D62C diff --git a/binutils.mk b/binutils.mk deleted file mode 100644 index 2c8dea8134..0000000000 --- a/binutils.mk +++ /dev/null @@ -1,14 +0,0 @@ -# Supply a GNU ARM Embedded toolchain for objcopy, ar, etc. - -ifdef DEVKITARM -TOOLCHAIN := $(DEVKITARM) -endif - -ifdef TOOLCHAIN -export PATH := $(TOOLCHAIN)/bin:$(PATH) -endif - -PREFIX := arm-none-eabi- - -OBJCOPY := $(PREFIX)objcopy -AR := $(PREFIX)ar diff --git a/build.sh b/build.sh new file mode 100755 index 0000000000..7906ccd9bc --- /dev/null +++ b/build.sh @@ -0,0 +1,12 @@ +#!/bin/sh + +target="test" +if [ "$#" -ge 1 ]; then + target="$1" + shift +fi + +# Set up env variable to show % of completion during ninja build +export NINJA_STATUS="[%p %f/%t] " + +ninja -C build "$target" "$@" diff --git a/clean.sh b/clean.sh new file mode 100755 index 0000000000..f7fa3d96b5 --- /dev/null +++ b/clean.sh @@ -0,0 +1,3 @@ +#!/bin/sh + +ninja -C build clean diff --git a/common.mk b/common.mk deleted file mode 100644 index f761c04bd3..0000000000 --- a/common.mk +++ /dev/null @@ -1,263 +0,0 @@ -## Common defines for ARM9 and ARM7 Makefiles ## - -COMPARE ?= 1 - -default: all - -PROJECT_ROOT := $(dir $(abspath $(lastword $(MAKEFILE_LIST)))) - -# Because mwldarm expects absolute paths to be WIN32 paths, -# all paths referring up from BUILD_DIR must be relative. -WORK_DIR := $(shell realpath --relative-to $(CURDIR) $(PROJECT_ROOT)) -$(shell mkdir -p $(BUILD_DIR)) -BACK_REL := $(shell realpath --relative-to $(BUILD_DIR) $(CURDIR)) - -TOOLSDIR := $(WORK_DIR)/tools - -include $(WORK_DIR)/platform.mk -include $(WORK_DIR)/binutils.mk - -# NitroSDK tools -MWCC = $(TOOLSDIR)/mwccarm/$(MWCCVER)/mwccarm.exe -MWAS = $(TOOLSDIR)/mwccarm/$(MWCCVER)/mwasmarm.exe -MWLD = $(BACK_REL)/$(TOOLSDIR)/mwccarm/$(MWCCVER)/mwldarm.exe -MAKEROM := $(TOOLSDIR)/bin/makerom.exe -MAKELCF := $(TOOLSDIR)/bin/makelcf.exe -MAKEBNR := $(TOOLSDIR)/bin/makebanner.exe - -export LM_LICENSE_FILE := $(TOOLSDIR)/mwccarm/license.dat - -# Native tools -FIXROM := $(TOOLSDIR)/fixrom/fixrom$(EXE) -ASPATCH := $(TOOLSDIR)/mwasmarm_patcher/mwasmarm_patcher$(EXE) -MKFXCONST := $(TOOLSDIR)/gen_fx_consts/gen_fx_consts$(EXE) - -# Other tools -NTRMERGE := $(TOOLSDIR)/ntr_merge_elf/ntr_merge_elf.sh -ASM_PROCESSOR := $(TOOLSDIR)/asm_processor/compile.sh - -NATIVE_TOOLS := \ - $(FIXROM) \ - $(ASPATCH) \ - $(MKFXCONST) - -TOOLDIRS := $(foreach tool,$(NATIVE_TOOLS),$(dir $(tool))) - -PRECOMPILE_SRC := include/global/global.pch -PRECOMPILE_OBJ := $(BUILD_DIR)/precompile/global.mch -PRECOMPILE_OBJ_BASENAME := global.mch -PRECOMPILE_OBJ_DIR := $(dir $(PRECOMPILE_OBJ)) -PRECOMPILE_DEPFILE := $(BUILD_DIR)/precompile/global.d - -NITRO_PRECOMPILE_SRC := lib/NitroSDK/include/nitro.pch -NITRO_PRECOMPILE_OBJ := $(BUILD_DIR)/precompile/nitro.mch -NITRO_PRECOMPILE_OBJ_BASENAME := nitro.mch -NITRO_PRECOMPILE_OBJ_DIR := $(dir $(PRECOMPILE_OBJ)) -NITRO_PRECOMPILE_DEPFILE := $(BUILD_DIR)/precompile/nitro.d - -# Directories - -LIB_SUBDIRS := NitroSDK NitroSystem NitroDWC NitroWiFi libVCT gamespy msl - -SRC_SUBDIR := src -ASM_SUBDIR := asm -LIB_SRC_SUBDIR := lib/src $(LIB_SUBDIRS:%=lib/%/src) -LIB_ASM_SUBDIR := lib/asm $(LIB_SUBDIRS:%=lib/%/asm) -ALL_SUBDIRS := $(SRC_SUBDIR) $(ASM_SUBDIR) $(LIB_SRC_SUBDIR) $(LIB_ASM_SUBDIR) - -SRC_BUILDDIR := $(addprefix $(BUILD_DIR)/,$(SRC_SUBDIR)) -ASM_BUILDDIR := $(addprefix $(BUILD_DIR)/,$(ASM_SUBDIR)) -LIB_SRC_BUILDDIR := $(addprefix $(BUILD_DIR)/,$(LIB_SRC_SUBDIR)) -LIB_ASM_BUILDDIR := $(addprefix $(BUILD_DIR)/,$(LIB_ASM_SUBDIR)) - -C_SRCS := $(foreach dname,$(SRC_SUBDIR),$(wildcard $(dname)/*.c $(dname)/*/*.c)) -ASM_SRCS := $(foreach dname,$(ASM_SUBDIR),$(wildcard $(dname)/*.s $(dname)/*/*.s)) - -# asm processor should only be necessary for libcrypto -GLOBAL_ASM_SRCS := -LIB_C_SRCS := $(foreach dname,$(LIB_SRC_SUBDIR),$(wildcard $(dname)/*.c $(dname)/*/*.c $(dname)/*/*/*.c)) -LIB_ASM_SRCS := $(foreach dname,$(LIB_ASM_SUBDIR),$(wildcard $(dname)/*.s $(dname)/*/*.s $(dname)/*/*/*.s)) -ALL_SRCS := $(C_SRCS) $(ASM_SRCS) $(LIB_C_SRCS) $(LIB_ASM_SRCS) - -C_OBJS = $(C_SRCS:%.c=$(BUILD_DIR)/%.o) -ASM_OBJS = $(ASM_SRCS:%.s=$(BUILD_DIR)/%.o) -GLOBAL_ASM_OBJS = $(GLOBAL_ASM_SRCS:%.c=$(BUILD_DIR)/%.o) -LIB_C_OBJS = $(LIB_C_SRCS:%.c=$(BUILD_DIR)/%.o) -LIB_ASM_OBJS = $(LIB_ASM_SRCS:%.s=$(BUILD_DIR)/%.o) -ALL_GAME_OBJS = $(C_OBJS) $(ASM_OBJS) -ALL_LIB_OBJS = $(LIB_C_OBJS) $(LIB_ASM_OBJS) -ALL_OBJS = $(ALL_GAME_OBJS) $(ALL_LIB_OBJS) - -$(ALL_LIB_OBJS): DEFINES = $(GLB_DEFINES) - -ALL_BUILDDIRS := $(sort $(ALL_BUILDDIRS) $(foreach obj,$(ALL_OBJS),$(dir $(obj)))) - -NEF := $(BUILD_DIR)/$(NEFNAME).nef -ELF := $(NEF:%.nef=%.elf) -LCF := $(NEF:%.nef=%.lcf) -RESPONSE := $(NEF:%.nef=%.response) -SBIN := $(NEF:%.nef=%.sbin) -XMAP := $(NEF).xMAP - -EXCCFLAGS := -Cpp_exceptions off - -include $(WORK_DIR)/force_active.mk - -MWCFLAGS = $(DEFINES) $(OPTFLAGS) -enum int -lang c99 $(EXCCFLAGS) -gccext,on -proc $(PROC) -msgstyle gcc -gccinc -ipa file -interworking -inline on,noauto -char signed -MWASFLAGS = $(DEFINES) -proc $(PROC_S) -gccinc -i . -i ./include -i ./asm -i $(WORK_DIR)/files -I$(WORK_DIR)/lib/msl/include/MSL_C -DSDK_ASM -MWLDFLAGS := -w on -proc $(PROC) -nopic -nopid -interworking -map closure,unused -symtab sort -m _start -msgstyle gcc -force_active $(FORCE_ACTIVE_SYMBOLS) -ARFLAGS := rcS - -# The foreach iterates through all library folders defined in LIB_SUBDIRS -# and generates the relevant includes -# e.g. -I$(WORK_DIR)/lib/NitroSDK/include -I$(WORK_DIR)/lib/NitroSystem/include -LIBRARY_INCLUDE_FLAGS := -I$(WORK_DIR)/lib/msl/include/MSL_C $(foreach dname,$(LIB_SUBDIRS),-I$(WORK_DIR)/lib/$(dname)/include) - -SRC_INCLUDE_FLAGS := -i ./include -i ./include/library -i $(WORK_DIR)/files $(LIBRARY_INCLUDE_FLAGS) -SDK_INCLUDE_FLAGS := $(LIBRARY_INCLUDE_FLAGS) - -#$(C_OBJS): MWCFLAGS += -include global/thumb.h -prefix $(PRECOMPILE_OBJ) - -MW_COMPILE_SRC = $(WINE) $(MWCC) $(MWCFLAGS) $(SRC_INCLUDE_FLAGS) -i $(PRECOMPILE_OBJ_DIR) -include global/thumb.h -prefix $(PRECOMPILE_OBJ_BASENAME) -MW_COMPILE_SRC_PRECOMPILE = $(WINE) $(MWCC) $(MWCFLAGS) $(SRC_INCLUDE_FLAGS) -MW_COMPILE_LIB = $(WINE) $(MWCC) $(MWCFLAGS) $(SDK_INCLUDE_FLAGS) -i $(NITRO_PRECOMPILE_OBJ_DIR) -prefix $(NITRO_PRECOMPILE_OBJ_BASENAME) -MW_COMPILE_LIB_PRECOMPILE = $(WINE) $(MWCC) $(MWCFLAGS) $(SDK_INCLUDE_FLAGS) - -MW_ASSEMBLE = $(WINE) $(MWAS) $(MWASFLAGS) - -export MWCIncludes := lib/msl/include/MSL_C - -LSF := $(addsuffix .lsf,$(NEFNAME)) -ifneq ($(LSF),) -OVERLAYS := $(shell $(GREP) -o "^Overlay \w+" $(LSF) | cut -d' ' -f2) -else -OVERLAYS := -endif - -# Make sure build directories exist before compiling anything -DUMMY := $(shell mkdir -p $(ALL_BUILDDIRS) $(PRECOMPILE_OBJ_DIR)) - -.SECONDARY: -.SECONDEXPANSION: -.DELETE_ON_ERROR: -.PHONY: all tidy clean clean-tools -.PRECIOUS: $(SBIN) - -all: $(MWAS) - -.PHONY: $(MWAS) -$(MWAS): - $(ASPATCH) -q $@ - -ifeq ($(NODEP),) - ifneq ($(WINPATH),) - PROJECT_ROOT_NT := $(shell $(WINPATH) -w $(PROJECT_ROOT) | $(SED) 's/\\/\//g') - define fixdep - $(SED) -i 's/\r//g; s/\\/\//g; s/\/$$/\\/g; s#$(PROJECT_ROOT_NT)#$(PROJECT_ROOT)#g' $(1) - touch -r $(1:%.d=%.o) $(1) - endef - define fixdep_precompile - $(SED) -i 's/\r//g; s/\\/\//g; s/\/$$/\\/g; s#$(PROJECT_ROOT_NT)#$(PROJECT_ROOT)#g' $(1) - touch -r $(1:%.d=%.mch) $(1) - endef - else - define fixdep - $(SED) -i 's/\r//g; s/\\/\//g; s/\/$$/\\/g' $(1) - touch -r $(1:%.d=%.o) $(1) - endef - define fixdep_precompile - $(SED) -i 's/\r//g; s/\\/\//g; s/\/$$/\\/g' $(1) - touch -r $(1:%.d=%.mch) $(1) - endef - endif - DEPFLAGS := -gccdep -MD - DEPFILES := $(ALL_OBJS:%.o=%.d) - MW_COMPILE_SRC += $(DEPFLAGS) - MW_COMPILE_SRC_PRECOMPILE += $(DEPFLAGS) - MW_COMPILE_LIB += $(DEPFLAGS) - MW_COMPILE_LIB_PRECOMPILE += $(DEPFLAGS) - $(GLOBAL_ASM_OBJS): BUILD_C_SRC := $(ASM_PROCESSOR) "$(MW_COMPILE_SRC)" "$(MW_ASSEMBLE)" - BUILD_C_SRC ?= $(MW_COMPILE_SRC) -c -o - BUILD_C_LIB := $(MW_COMPILE_LIB) -c -o - -# STILL IN NODEP=FALSE -$(PRECOMPILE_DEPFILE): -$(DEPFILES): - -# TODO: figure out exact compiler versions for each SDK component -$(BUILD_DIR)/lib/NitroSDK/%.o: MWCCVER := 2.0/sp2 - -$(PRECOMPILE_OBJ): $(PRECOMPILE_SRC) - $(MW_COMPILE_SRC_PRECOMPILE) $(PRECOMPILE_SRC) -precompile $(PRECOMPILE_OBJ) - @$(call fixdep_precompile,$(PRECOMPILE_DEPFILE)) - -$(BUILD_DIR)/src/%.o: src/%.c $(PRECOMPILE_OBJ) -$(BUILD_DIR)/src/%.o: src/%.c $(BUILD_DIR)/src/%.d $(PRECOMPILE_OBJ) - $(BUILD_C_SRC) $@ $< - @$(call fixdep,$(BUILD_DIR)/src/$*.d) - -$(NITRO_PRECOMPILE_OBJ): $(NITRO_PRECOMPILE_SRC) - $(MW_COMPILE_LIB_PRECOMPILE) $(NITRO_PRECOMPILE_SRC) -precompile $(NITRO_PRECOMPILE_OBJ) - @$(call fixdep_precompile,$(NITRO_PRECOMPILE_DEPFILE)) - -$(BUILD_DIR)/lib/%.o: lib/%.c $(NITRO_PRECOMPILE_OBJ) -$(BUILD_DIR)/lib/%.o: lib/%.c $(BUILD_DIR)/lib/%.d $(NITRO_PRECOMPILE_OBJ) - $(MW_COMPILE_LIB) -I$(dir $<) -c -o $@ $< - @$(call fixdep,$(BUILD_DIR)/lib/$*.d) - -$(BUILD_DIR)/%.o: %.s -$(BUILD_DIR)/%.o: %.s $(BUILD_DIR)/%.d - $(WINE) $(MWAS) $(MWASFLAGS) -I$(dir $<) $(DEPFLAGS) -o $@ $< - @$(call fixdep,$(BUILD_DIR)/$*.d) - -include $(wildcard $(DEPFILES)) --include $(PRECOMPILE_DEPFILE) --include $(NITRO_PRECOMPILE_DEPFILE) - -# END NODEP=FALSE -else -$(error NODEP not fully implemented) -$(GLOBAL_ASM_OBJS): BUILD_C_SRC := $(ASM_PROCESSOR) "$(MW_COMPILE_SRC)" "$(MW_ASSEMBLE)" -BUILD_C_SRC ?= $(MW_COMPILE_SRC) -c -o - -$(BUILD_DIR)/%.o: %.c - $(BUILD_C_SRC) $@ $< - -$(BUILD_DIR)/%.o: %.s - $(WINE) $(MWAS) $(MWASFLAGS) -o $@ $< -endif - -clean-tools: - $(foreach tool,$(TOOLDIRS),$(MAKE) -C $(tool) clean;) - -$(LCF): $(LSF) $(LCF_TEMPLATE) - $(WINE) $(MAKELCF) $(MAKELCF_FLAGS) $^ $@ -ifeq ($(PROC),arm946e) - $(SED) -i '1i KEEP_SECTION\n{\n\t.exceptix\n}' $@ -else - $(SED) -i '/\} > check\.WORKRAM/a SDK_SUBPRIV_ARENA_LO = SDK_SUBPRIV_ARENA_LO + SDK_AUTOLOAD.EXT_WRAM.SIZE + SDK_AUTOLOAD.EXT_WRAM.BSS_SIZE;' $@ -endif - -RESPONSE_TEMPLATE := $(PROJECT_ROOT)/mwldarm.response.template -RESPONSE_TEMPLATE_NT := $(PROJECT_ROOT_NT)/mwldarm.response.template - -$(RESPONSE): $(LSF) $(RESPONSE_TEMPLATE) - $(WINE) $(MAKELCF) $(MAKELCF_FLAGS) $< $(RESPONSE_TEMPLATE_NT) $@ - -# Locate crt0.o -CRT0_OBJ := lib/NitroSDK/src/init/crt0.o - -$(NEF): $(LCF) $(RESPONSE) $(ALL_OBJS) - cd $(BUILD_DIR) && LM_LICENSE_FILE=$(BACK_REL)/$(LM_LICENSE_FILE) $(WINE) $(MWLD) $(MWLDFLAGS) $(LIBS) -o $(BACK_REL)/$(NEF) $(LCF:$(BUILD_DIR)/%=%) @$(RESPONSE:$(BUILD_DIR)/%=%) $(CRT0_OBJ) - -.INTERMEDIATE: $(BUILD_DIR)/obj.list - -$(SBIN): build/%.sbin: build/%.nef -ifeq ($(COMPARE),1) - -$(SHA1SUM) --quiet -c $*.sha1 -endif - -$(ELF): %.elf: %.nef - $(NTRMERGE) $* - -print-% : ; $(info $* is a $(flavor $*) variable set to [$($*)]) @true diff --git a/config.sh b/config.sh new file mode 100755 index 0000000000..ff9b0c6eb4 --- /dev/null +++ b/config.sh @@ -0,0 +1,72 @@ +#!/bin/sh +set -e + +build="build" +if [ "$#" -ge 1 ]; then + build="$1" + shift +fi + +wrap=tools/cw + +# Build the wrapper +if ! "$wrap/mwrap" -test 2> /dev/null; then + rm -rf "$wrap/mwrap" "$wrap/build" + "${MESON:-meson}" setup "$wrap/build" "$wrap" + "${MESON:-meson}" compile -C "$wrap/build" + install -m755 "$wrap/build/mwrap" "$wrap/mwrap" + rm -rf "$wrap/build" +fi + +is_wsl_accessing_windows() { + kernel=$(uname -r) + script_path=$(realpath "$0") + if echo "$kernel" | grep -q Microsoft && echo "$script_path" | grep -qE '^/mnt/'; then + return 0 + else + return 1 + fi +} + +mkdir -p "$build" + +root="$PWD" +if [ -n "$MSYSTEM" -a "$MSYSTEM" != MSYS ]; then + root="$(cygpath -w "$root")" +fi + +# Bootstrap machine file pointing to the repo +echo "[constants]" > "$build/root.ini" +echo "root = '$root'" >> "$build/root.ini" + +# Select toolchain +if [ "$(uname -s)" = "Linux" ]; then + if is_wsl_accessing_windows; then + native_file="native.ini" + cross_file="cross_unix.ini" + else + native_file="native_unix.ini" + cross_file="cross_unix.ini" + fi +else + native_file="native.ini" + cross_file="cross.ini" +fi + +export MWCONFIG="$(realpath "$build/.mwconfig")" + +if [ "$native_file" = "native_unix.ini" ]; then + wrap_wine="$(command -v "${WINELOADER:-wine}")" + wrap_path_unx="$PWD" + wrap_path_win="$("$wrap_wine" winepath -w "$wrap_path_unx")" + "$wrap/mwrap" -conf -wine "$wrap_wine" \ + -path_unx "$wrap_path_unx" -path_win "$wrap_path_win" +elif is_wsl_accessing_windows; then + wrap_path_unx="$PWD" + wrap_path_win="$(wslpath -w "$wrap_path_unx")" + "$wrap/mwrap" -conf \ + -path_unx "$wrap_path_unx" -path_win "$wrap_path_win" +fi + +# Launch meson +"${MESON:-meson}" setup "$build" --native-file=meson/"$native_file" --native-file="$build/root.ini" --cross-file=meson/"$cross_file" --cross-file="$build/root.ini" "$@" diff --git a/files/.gitattributes b/files/.gitattributes deleted file mode 100644 index 625449502b..0000000000 --- a/files/.gitattributes +++ /dev/null @@ -1 +0,0 @@ -* -text diff --git a/filesystem.mk b/filesystem.mk deleted file mode 100644 index 5718ba64c2..0000000000 --- a/filesystem.mk +++ /dev/null @@ -1,341 +0,0 @@ -NITROFS_FILES := \ - ./data/UTF16.dat \ - ./data/arealight.narc \ - ./data/battle_win.NSCR \ - ./data/btower_canm.resdat \ - ./data/btower_celact.cldat \ - ./data/btower_cell.resdat \ - ./data/btower_chr.resdat \ - ./data/btower_pal.resdat \ - ./data/cell0.NCGR \ - ./data/cell0.NCLR \ - ./data/clact_default.NANR \ - ./data/crystal.nsbmd \ - ./data/demo_climax.narc \ - ./data/dp_areawindow.NCGR \ - ./data/dp_areawindow.NCLR \ - ./data/dt_test_celact.txt \ - ./data/dt_test_res_cell.txt \ - ./data/dt_test_res_cellanm.txt \ - ./data/dt_test_res_char.txt \ - ./data/dt_test_res_multi.txt \ - ./data/dt_test_res_multianm.txt \ - ./data/dt_test_res_pltt.txt \ - ./data/dun_sea.nsbtx \ - ./data/eoo.dat \ - ./data/exdata.dat \ - ./data/field_cutin.narc \ - ./data/fld_anime0.bin \ - ./data/fld_anime1.bin \ - ./data/fld_anime10.bin \ - ./data/fld_anime2.bin \ - ./data/fld_anime3.bin \ - ./data/fld_anime4.bin \ - ./data/fld_anime5.bin \ - ./data/fld_anime6.bin \ - ./data/fld_anime7.bin \ - ./data/fld_anime8.bin \ - ./data/fld_anime9.bin \ - ./data/fldtanime.narc \ - ./data/fs_kanban.nsbca \ - ./data/ground0.NCGR \ - ./data/ground0.NCLR \ - ./data/ground0.NSCR \ - ./data/guru2.narc \ - ./data/kemu_itpconv.dat \ - ./data/lake_anim.nsbtx \ - ./data/miniasahamabe.nsbtx \ - ./data/miniasasea.nsbtx \ - ./data/minihamabe.nsbtx \ - ./data/minimum.nsbtx \ - ./data/minirhana.nsbtx \ - ./data/namein.narc \ - ./data/nfont.NCGR \ - ./data/nfont.NCLR \ - ./data/pc.nsbca \ - ./data/pl_wifi.ncgr \ - ./data/pl_wm.ncgr \ - ./data/pl_wm.nclr \ - ./data/plbr.dat \ - ./data/plist_canm.resdat \ - ./data/plist_cell.resdat \ - ./data/plist_chr.resdat \ - ./data/plist_h.cldat \ - ./data/plist_pal.resdat \ - ./data/porucase_canm.resdat \ - ./data/porucase_celact.cldat \ - ./data/porucase_cell.resdat \ - ./data/porucase_chr.resdat \ - ./data/porucase_pal.resdat \ - ./data/pst_canm.resdat \ - ./data/pst_cell.resdat \ - ./data/pst_chr.resdat \ - ./data/pst_h.cldat \ - ./data/pst_pal.resdat \ - ./data/shop_canm.resdat \ - ./data/shop_cell.resdat \ - ./data/shop_chr.resdat \ - ./data/shop_h.cldat \ - ./data/shop_pal.resdat \ - ./data/slot.narc \ - ./data/smptm_koori.NANR \ - ./data/smptm_koori.NCER \ - ./data/smptm_koori.NCGR \ - ./data/smptm_koori.NCLR \ - ./data/smptm_nemuri.NANR \ - ./data/smptm_nemuri.NCER \ - ./data/smptm_nemuri.NCGR \ - ./data/smptm_nemuri.NCLR \ - ./data/str2uni.bin \ - ./data/t3_fl_b.nsbtx \ - ./data/t3_fl_p.nsbtx \ - ./data/t3_fl_r.nsbtx \ - ./data/t3_fl_y.nsbtx \ - ./data/test.atr \ - ./data/tmap_block.dat \ - ./data/tmap_flags.dat \ - ./data/tmapn_canm.resdat \ - ./data/tmapn_celact.cldat \ - ./data/tmapn_celact.txt \ - ./data/tmapn_cell.resdat \ - ./data/tmapn_chr.resdat \ - ./data/tmapn_pal.resdat \ - ./data/tmapn_res_canm.txt \ - ./data/tmapn_res_cell.txt \ - ./data/tmapn_res_chr.txt \ - ./data/tmapn_res_pal.txt \ - ./data/tradelist.narc \ - ./data/trapmark.narc \ - ./data/tw_arc_etc.naix \ - ./data/tw_arc_etc.narc \ - ./data/ug_anim.narc \ - ./data/ug_base_cur.nsbmd \ - ./data/ug_boygirl.NCGR \ - ./data/ug_boygirl.NCLR \ - ./data/ug_fossil.narc \ - ./data/ug_hero.NANR \ - ./data/ug_hero.NCER \ - ./data/ug_hole.NANR \ - ./data/ug_hole.NCER \ - ./data/ug_hole.NCGR \ - ./data/ug_parts.narc \ - ./data/ug_radar.narc \ - ./data/ug_trap.narc \ - ./data/ugeffect_obj_graphic.narc \ - ./data/uground_cell.resdat \ - ./data/uground_cellanm.resdat \ - ./data/uground_char.resdat \ - ./data/uground_char2.resdat \ - ./data/uground_clact.cldat \ - ./data/uground_pltt.resdat \ - ./data/uground_pltt2.resdat \ - ./data/ugroundeffect.naix \ - ./data/ugroundeffect.narc \ - ./data/underg_radar.narc \ - ./data/utility.bin \ - ./data/weather_sys.narc \ - ./data/wifi.ncgr \ - ./data/wifip2pmatch.narc \ - ./data/wm.ncgr \ - ./data/wm.nclr \ - ./data/sound/sound_data.sdat \ - ./data/sound/pl_sound_data.sdat \ - ./msgdata/pl_msg.narc \ - ./msgdata/msg.narc \ - ./msgdata/scenario/scr_msg.narc \ - ./poketool/pokegra/dp_height.narc \ - ./poketool/pokegra/dp_height_o.narc \ - ./poketool/pokegra/height.narc \ - ./poketool/pokegra/height_o.narc \ - ./poketool/pokegra/otherpoke.narc \ - ./poketool/pokegra/pl_otherpoke.narc \ - ./poketool/pokegra/pl_pokegra.narc \ - ./poketool/pokegra/poke_shadow.narc \ - ./poketool/pokegra/poke_shadow_ofx.narc \ - ./poketool/pokegra/poke_yofs.narc \ - ./poketool/pokegra/pokegra.narc \ - ./poketool/trgra/trbgra.narc \ - ./poketool/trgra/trfgra.narc \ - ./poketool/personal/personal.narc \ - ./poketool/personal/pl_personal.narc \ - ./poketool/personal/evo.narc \ - ./poketool/personal/growtbl.narc \ - ./poketool/personal/pl_growtbl.narc \ - ./poketool/personal/pms.narc \ - ./poketool/personal/wotbl.narc \ - ./poketool/trainer/trdata.narc \ - ./poketool/trainer/trpoke.narc \ - ./poketool/trmsg/trtbl.narc \ - ./poketool/trmsg/trtblofs.narc \ - ./battle/graphic/b_bag_gra.narc \ - ./battle/graphic/b_plist_gra.narc \ - ./battle/graphic/batt_bg.narc \ - ./battle/graphic/batt_obj.narc \ - ./battle/graphic/pl_b_plist_gra.narc \ - ./battle/graphic/pl_batt_bg.narc \ - ./battle/graphic/pl_batt_obj.narc \ - ./battle/graphic/vs_demo_gra.narc \ - ./wazaeffect/we.arc \ - ./wazaeffect/we_sub.narc \ - ./battle/skill/be_seq.narc \ - ./battle/skill/sub_seq.narc \ - ./battle/skill/waza_seq.narc \ - ./wazaeffect/effectclact/wecell.narc \ - ./wazaeffect/effectclact/wecellanm.narc \ - ./wazaeffect/effectclact/wechar.narc \ - ./wazaeffect/effectclact/wepltt.narc \ - ./poketool/waza/pl_waza_tbl.narc \ - ./poketool/waza/waza_tbl.narc \ - ./fielddata/script/scr_seq.narc \ - ./graphic/bag_gra.narc \ - ./graphic/box.narc \ - ./graphic/btower.narc \ - ./graphic/bucket.narc \ - ./graphic/config_gra.narc \ - ./graphic/demo_trade.narc \ - ./graphic/dendou_demo.narc \ - ./graphic/dendou_pc.narc \ - ./graphic/ending.narc \ - ./graphic/ev_pokeselect.narc \ - ./graphic/f_note_gra.narc \ - ./graphic/field_board.narc \ - ./graphic/field_encounteffect.narc \ - ./graphic/fld_comact.narc \ - ./graphic/font.narc \ - ./graphic/fontoam.narc \ - ./graphic/footprint_board.narc \ - ./graphic/hiden_effect.narc \ - ./graphic/imageclip.narc \ - ./graphic/library_tv.narc \ - ./graphic/lobby_news.narc \ - ./graphic/mail_gra.narc \ - ./graphic/menu_gra.narc \ - ./graphic/mysign.narc \ - ./graphic/mystery.narc \ - ./graphic/ntag_gra.narc \ - ./graphic/nutmixer.narc \ - ./graphic/oekaki.narc \ - ./graphic/opening.narc \ - ./graphic/pl_bag_gra.narc \ - ./graphic/pl_font.narc \ - ./graphic/pl_plist_gra.narc \ - ./graphic/pl_pst_gra.narc \ - ./graphic/pl_wifinote.narc \ - ./graphic/pl_winframe.narc \ - ./graphic/plist_gra.narc \ - ./graphic/pmsi.narc \ - ./graphic/poketch.narc \ - ./graphic/poru_gra.narc \ - ./graphic/poruact.narc \ - ./graphic/porudemo.narc \ - ./graphic/pst_gra.narc \ - ./graphic/ranking.narc \ - ./graphic/record.narc \ - ./graphic/shop_gra.narc \ - ./graphic/tmap_gra.narc \ - ./graphic/touch_subwindow.narc \ - ./graphic/trainer_case.narc \ - ./graphic/unionobj2d_onlyfront.narc \ - ./graphic/unionroom.narc \ - ./graphic/waza_oshie_gra.narc \ - ./graphic/wifi2dchar.narc \ - ./graphic/wifi_lobby.narc \ - ./graphic/wifi_lobby_other.narc \ - ./graphic/wifi_unionobj.narc \ - ./graphic/winframe.narc \ - ./graphic/worldtimer.narc \ - ./graphic/worldtrade.narc \ - ./itemtool/itemdata/item_data.narc \ - ./itemtool/itemdata/item_icon.narc \ - ./itemtool/itemdata/nuts_data.narc \ - ./itemtool/itemdata/pl_item_data.narc \ - ./poketool/icongra/pl_poke_icon.narc \ - ./poketool/icongra/poke_icon.narc \ - ./poketool/pokefoot/pokefoot.narc \ - ./data/mmodel/mmodel.narc \ - ./data/mmodel/fldeff.narc \ - ./wazaeffect/effectdata/ball_particle.narc \ - ./wazaeffect/effectdata/waza_particle.narc \ - ./fielddata/eventdata/zone_event.narc \ - ./fielddata/encountdata/d_enc_data.narc \ - ./fielddata/encountdata/p_enc_data.narc \ - ./fielddata/encountdata/pl_enc_data.narc \ - ./fielddata/build_model/build_model.narc \ - ./fielddata/build_model/build_model_matshp.dat \ - ./fielddata/mapmatrix/map_matrix.narc \ - ./fielddata/areadata/area_data.narc \ - ./fielddata/areadata/area_build_model/area_build.narc \ - ./fielddata/areadata/area_build_model/areabm_texset.narc \ - ./fielddata/areadata/area_map_tex/map_tex_set.narc \ - ./fielddata/areadata/area_move_model/move_model_list.narc \ - ./fielddata/land_data/land_data.narc \ - ./contest/data/contest_data.narc \ - ./particledata/particledata.narc \ - ./application/zukanlist/zkn_data/zukan_data.narc \ - ./application/zukanlist/zkn_data/zukan_data_gira.narc \ - ./application/wifi_earth/wifi_earth.narc \ - ./application/wifi_earth/wifi_earth_place.narc \ - ./application/custom_ball/data/cb_data.narc \ - ./demo/egg/data/egg_data.narc \ - ./demo/egg/data/particle/egg_demo_particle.narc \ - ./fielddata/mm_list/move_model_list.narc \ - ./pokeanime/poke_anm.narc \ - ./pokeanime/pl_poke_anm.narc \ - ./battle/tr_ai/tr_ai_seq.narc \ - ./arc/area_win_gra.narc \ - ./arc/balance_ball_gra.narc \ - ./arc/bm_anime.narc \ - ./arc/bm_anime_list.narc \ - ./arc/codein_gra.narc \ - ./arc/demo_tengan_gra.narc \ - ./arc/email_gra.narc \ - ./arc/encdata_ex.narc \ - ./arc/manene.narc \ - ./arc/plgym_ghost.narc \ - ./arc/ppark.narc \ - ./arc/ship_demo.narc \ - ./arc/ship_demo_pl.narc \ - ./arc/tv.narc \ - ./fielddata/maptable/mapname.bin \ - ./poketool/pokezukan.narc \ - ./poketool/pl_pokezukan.narc \ - ./poketool/shinzukan.narc \ - ./poketool/pokeanm/pokeanm.narc \ - ./poketool/pokeanm/pl_pokeanm.narc \ - ./demo/shinka/data/particle/shinka_demo_particle.narc \ - ./demo/intro/intro.narc \ - ./demo/intro/intro_tv.narc \ - ./demo/syoujyou/syoujyou.narc \ - ./battle/b_tower/btdpm.narc \ - ./battle/b_tower/btdtr.narc \ - ./application/zukanlist/zkn_data/zukan_enc_diamond.narc \ - ./application/zukanlist/zkn_data/zukan_enc_pearl.narc \ - ./application/zukanlist/zkn_data/zukan_enc_platinum.narc \ - ./poketool/poke_edit/pl_poke_data.narc \ - ./debug/cb_edit/d_test.narc \ - ./application/custom_ball/edit/pl_cb_data.narc \ - ./frontier/script/fr_script.narc \ - ./particledata/pl_frontier/frontier_particle.narc \ - ./application/balloon/graphic/balloon_gra.narc \ - ./application/wifi_lobby/map_conv/wflby_map.narc \ - ./fielddata/tornworld/tw_arc.narc \ - ./fielddata/tornworld/tw_arc_attr.narc \ - ./particledata/pl_pokelist/pokelist_particle.narc \ - ./battle/b_pl_stage/pl_bsdpm.narc \ - ./battle/b_pl_tower/pl_btdpm.narc \ - ./battle/b_pl_tower/pl_btdtr.narc \ - ./application/bucket/ballslow_data.narc \ - ./particledata/pl_etc/pl_etc_particle.narc \ - ./contest/graphic/contest_bg.narc \ - ./contest/graphic/contest_obj.narc \ - ./demo/title/op_demo.narc \ - ./demo/title/titledemo.narc \ - ./fielddata/pokemon_trade/fld_trade.narc \ - ./resource/eng/zukan/zukan.narc \ - ./resource/eng/batt_rec/batt_rec_gra.narc \ - ./resource/eng/wifi_lobby_minigame/wlmngm_tool.narc \ - ./resource/eng/frontier_graphic/frontier_bg.narc \ - ./resource/eng/frontier_graphic/frontier_obj.narc \ - ./resource/eng/scratch/scratch.narc \ - ./resource/eng/pms_aikotoba/pms_aikotoba.narc \ - ./dwc/utility.bin \ No newline at end of file diff --git a/force_active.mk b/force_active.mk deleted file mode 100644 index e92ccfe534..0000000000 --- a/force_active.mk +++ /dev/null @@ -1,5 +0,0 @@ -FORCE_ACTIVE_SYMBOLS := \ - DGTi_hash2_arm4_small, \ - Exception_Table_Index, \ - Unk_02101B00, \ - Unk_02101CE4 diff --git a/include/functypes/funcptr_020146F4.h b/include/functypes/funcptr_020146F4.h index 824af453a9..a7c5482a3b 100644 --- a/include/functypes/funcptr_020146F4.h +++ b/include/functypes/funcptr_020146F4.h @@ -2,7 +2,7 @@ #define POKEPLATINUM_FUNCPTR_020146F4_H -#include "library/spl.h" +#include "spl.h" typedef void (* UnkFuncPtr_020146F4)(UnkSPLStruct6 *); diff --git a/include/global/thumb.h b/include/global/thumb.h deleted file mode 100644 index d1ee53e252..0000000000 --- a/include/global/thumb.h +++ /dev/null @@ -1,7 +0,0 @@ -#ifndef POKEPLATINUM_THUMB_H -#define POKEPLATINUM_THUMB_H - -// doesn't work for asm functions if included in a precompiled header for some reason -#pragma thumb on - -#endif // POKEPLATINUM_THUMB_H diff --git a/include/overlay012/ov12_0221FC20.h b/include/overlay012/ov12_0221FC20.h index d9734d2f3f..16c420706a 100644 --- a/include/overlay012/ov12_0221FC20.h +++ b/include/overlay012/ov12_0221FC20.h @@ -20,7 +20,7 @@ #include "overlay016/struct_ov16_02265BBC.h" #include "overlay104/struct_ov104_0223F9E0.h" -#include "library/spl.h" +#include "spl.h" UnkStruct_ov12_0221FCDC * ov12_0221FCDC(int param0); void ov12_0221FDC0(UnkStruct_ov12_0221FCDC * param0, BOOL param1); diff --git a/include/overlay012/ov12_022237EC.h b/include/overlay012/ov12_022237EC.h index 3f6649c57c..b071f560b6 100644 --- a/include/overlay012/ov12_022237EC.h +++ b/include/overlay012/ov12_022237EC.h @@ -4,7 +4,7 @@ #include "struct_decls/struct_02006C24_decl.h" #include "struct_decls/struct_02014014_decl.h" -#include "library/spl.h" +#include "spl.h" UnkStruct_02014014 * ov12_022237F0(int param0, int param1, int param2); UnkStruct_02014014 * ov12_02223818(int param0, int param1, int param2, int param3); diff --git a/include/overlay012/ov12_0222389C.h b/include/overlay012/ov12_0222389C.h index 2de9ab9725..e393907514 100644 --- a/include/overlay012/ov12_0222389C.h +++ b/include/overlay012/ov12_0222389C.h @@ -2,7 +2,7 @@ #define POKEPLATINUM_OV12_0222389C_H -#include "library/spl.h" +#include "spl.h" void ov12_022238DC(UnkSPLStruct6 * param0); void ov12_022238E0(UnkSPLStruct6 * param0); diff --git a/include/overlay012/ov12_0222421C.h b/include/overlay012/ov12_0222421C.h index b066a9f25f..d6f6e6c661 100644 --- a/include/overlay012/ov12_0222421C.h +++ b/include/overlay012/ov12_0222421C.h @@ -3,7 +3,7 @@ #include "overlay012/struct_ov12_02225640.h" -#include "library/spl.h" +#include "spl.h" void ov12_02224F14(UnkSPLStruct6 * param0); s8 ov12_02224FC4(UnkStruct_ov12_02225640 * param0); diff --git a/include/overlay012/ov12_02225104.h b/include/overlay012/ov12_02225104.h index 3fc50b83b3..3bb6bb22b2 100644 --- a/include/overlay012/ov12_02225104.h +++ b/include/overlay012/ov12_02225104.h @@ -3,7 +3,7 @@ #include "overlay012/struct_ov12_02225640.h" -#include "library/spl.h" +#include "spl.h" void ov12_022255D4(int param0, UnkSPLStruct6 * param1, UnkStruct_ov12_02225640 * param2); int ov12_022255EC(int param0); diff --git a/include/overlay012/ov12_02225640.h b/include/overlay012/ov12_02225640.h index 0050402752..6d54a80465 100644 --- a/include/overlay012/ov12_02225640.h +++ b/include/overlay012/ov12_02225640.h @@ -3,7 +3,7 @@ #include "overlay012/struct_ov12_02225640.h" -#include "library/spl.h" +#include "spl.h" void ov12_0222584C(int param0, UnkSPLStruct6 * param1, UnkStruct_ov12_02225640 * param2); diff --git a/include/overlay077/ov77_021D6C70.h b/include/overlay077/ov77_021D6C70.h index 7b0bfe1881..ae4e308ba3 100644 --- a/include/overlay077/ov77_021D6C70.h +++ b/include/overlay077/ov77_021D6C70.h @@ -4,7 +4,7 @@ #include "struct_decls/struct_02014014_decl.h" #include "overlay077/struct_ov77_021D6CFC_decl.h" -#include "library/spl.h" +#include "spl.h" const int ov77_021D6CB8(void); UnkStruct_02014014 * ov77_021D6CBC(UnkStruct_ov77_021D6CFC * param0); diff --git a/include/overlay119/struct_ov119_021D14DC.h b/include/overlay119/struct_ov119_021D14DC.h index 4d99ca8733..7dfa13ce25 100644 --- a/include/overlay119/struct_ov119_021D14DC.h +++ b/include/overlay119/struct_ov119_021D14DC.h @@ -4,7 +4,7 @@ #include "struct_decls/struct_02014014_decl.h" #include "overlay119/struct_ov119_021D1930.h" -#include "library/spl.h" +#include "spl.h" typedef struct { UnkStruct_ov119_021D1930 unk_00; diff --git a/include/global/global.pch b/include/pch/global_pch.h similarity index 94% rename from include/global/global.pch rename to include/pch/global_pch.h index 48bf1207f2..25be7574f2 100644 --- a/include/global/global.pch +++ b/include/pch/global_pch.h @@ -9,7 +9,6 @@ #include #include "global/config.h" // MUST COME BEFORE ANY OTHER GAMEFREAK HEADERS -//#include "constants/global.h" #include "global/pm_version.h" #include "global/assert.h" #include "constants/pokemon.h" diff --git a/include/struct_defs/struct_0207C8C4.h b/include/struct_defs/struct_0207C8C4.h index 85e4899ac0..2a71e00c74 100644 --- a/include/struct_defs/struct_0207C8C4.h +++ b/include/struct_defs/struct_0207C8C4.h @@ -4,7 +4,7 @@ #include "struct_decls/struct_02014014_decl.h" #include "struct_defs/struct_0207C894.h" -#include "library/spl.h" +#include "spl.h" typedef struct { UnkStruct_0207C894 unk_00; diff --git a/include/unk_02014000.h b/include/unk_02014000.h index 7c39a256a6..b1f13c7104 100644 --- a/include/unk_02014000.h +++ b/include/unk_02014000.h @@ -6,7 +6,7 @@ #include "functypes/funcptr_020146F4.h" #include "struct_decls/struct_020203AC_decl.h" -#include "library/spl.h" +#include "spl.h" #include #include diff --git a/lib/NitroSDK/asm/os/include/os_irqhandler.inc b/lib/NitroSDK/asm/os/include/os_irqhandler.inc deleted file mode 100644 index c3cd311048..0000000000 --- a/lib/NitroSDK/asm/os/include/os_irqhandler.inc +++ /dev/null @@ -1,3 +0,0 @@ -.public OS_SleepThread -.public OS_DisableInterrupts -.public OS_RestoreInterrupts diff --git a/lib/NitroSDK/asm/os/os_irqhandler.s b/lib/NitroSDK/asm/os/os_irqhandler.s deleted file mode 100644 index 0f305d56b5..0000000000 --- a/lib/NitroSDK/asm/os/os_irqhandler.s +++ /dev/null @@ -1,44 +0,0 @@ - .include "macros/function.inc" - .include "include/os_irqhandler.inc" - - .extern OS_IRQTable - .extern OSi_IrqThreadQueue - - .text - - - arm_func_start OS_WaitIrq -OS_WaitIrq: ; 0x020C12B4 - stmfd sp!, {r4, r5, r6, lr} - mov r5, r0 - mov r4, r1 - bl OS_DisableInterrupts - cmp r5, #0 - beq _020C12E4 - ldr r1, _020C1320 ; =0x027E0000 - mvn r2, r4 - add r1, r1, #0x3000 - ldr r3, [r1, #0xff8] - and r2, r3, r2 - str r2, [r1, #0xff8] -_020C12E4: - bl OS_RestoreInterrupts - ldr r1, _020C1320 ; =0x027E0000 - add r0, r1, #0x3000 - ldr r0, [r0, #0xff8] - tst r4, r0 - ldmneia sp!, {r4, r5, r6, pc} - add r0, r1, #0x3f8 - ldr r5, _020C1324 ; =0x027E0060 - add r6, r0, #0x3c00 -_020C1308: - mov r0, r5 - bl OS_SleepThread - ldr r0, [r6, #0] - tst r4, r0 - beq _020C1308 - ldmia sp!, {r4, r5, r6, pc} - ; .align 2, 0 -_020C1320: .word OS_IRQTable -_020C1324: .word OSi_IrqThreadQueue - arm_func_end OS_WaitIrq \ No newline at end of file diff --git a/lib/NitroDWC/include/ac/dwc_ac.h b/lib/external/NitroDWC/include/ac/dwc_ac.h similarity index 100% rename from lib/NitroDWC/include/ac/dwc_ac.h rename to lib/external/NitroDWC/include/ac/dwc_ac.h diff --git a/lib/NitroDWC/include/auth/dwc_auth.h b/lib/external/NitroDWC/include/auth/dwc_auth.h similarity index 100% rename from lib/NitroDWC/include/auth/dwc_auth.h rename to lib/external/NitroDWC/include/auth/dwc_auth.h diff --git a/lib/NitroDWC/include/auth/dwc_http.h b/lib/external/NitroDWC/include/auth/dwc_http.h similarity index 100% rename from lib/NitroDWC/include/auth/dwc_http.h rename to lib/external/NitroDWC/include/auth/dwc_http.h diff --git a/lib/NitroDWC/include/auth/dwc_netcheck.h b/lib/external/NitroDWC/include/auth/dwc_netcheck.h similarity index 100% rename from lib/NitroDWC/include/auth/dwc_netcheck.h rename to lib/external/NitroDWC/include/auth/dwc_netcheck.h diff --git a/lib/NitroDWC/include/auth/dwc_prof.h b/lib/external/NitroDWC/include/auth/dwc_prof.h similarity index 100% rename from lib/NitroDWC/include/auth/dwc_prof.h rename to lib/external/NitroDWC/include/auth/dwc_prof.h diff --git a/lib/NitroDWC/include/auth/dwc_svl.h b/lib/external/NitroDWC/include/auth/dwc_svl.h similarity index 100% rename from lib/NitroDWC/include/auth/dwc_svl.h rename to lib/external/NitroDWC/include/auth/dwc_svl.h diff --git a/lib/NitroDWC/include/auth/util_alloc.h b/lib/external/NitroDWC/include/auth/util_alloc.h similarity index 100% rename from lib/NitroDWC/include/auth/util_alloc.h rename to lib/external/NitroDWC/include/auth/util_alloc.h diff --git a/lib/NitroDWC/include/auth/util_base64.h b/lib/external/NitroDWC/include/auth/util_base64.h similarity index 100% rename from lib/NitroDWC/include/auth/util_base64.h rename to lib/external/NitroDWC/include/auth/util_base64.h diff --git a/lib/NitroDWC/include/base/dwc_account.h b/lib/external/NitroDWC/include/base/dwc_account.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_account.h rename to lib/external/NitroDWC/include/base/dwc_account.h diff --git a/lib/NitroDWC/include/base/dwc_base_gamespy.h b/lib/external/NitroDWC/include/base/dwc_base_gamespy.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_base_gamespy.h rename to lib/external/NitroDWC/include/base/dwc_base_gamespy.h diff --git a/lib/NitroDWC/include/base/dwc_common.h b/lib/external/NitroDWC/include/base/dwc_common.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_common.h rename to lib/external/NitroDWC/include/base/dwc_common.h diff --git a/lib/NitroDWC/include/base/dwc_connectinet.h b/lib/external/NitroDWC/include/base/dwc_connectinet.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_connectinet.h rename to lib/external/NitroDWC/include/base/dwc_connectinet.h diff --git a/lib/NitroDWC/include/base/dwc_core.h b/lib/external/NitroDWC/include/base/dwc_core.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_core.h rename to lib/external/NitroDWC/include/base/dwc_core.h diff --git a/lib/NitroDWC/include/base/dwc_error.h b/lib/external/NitroDWC/include/base/dwc_error.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_error.h rename to lib/external/NitroDWC/include/base/dwc_error.h diff --git a/lib/NitroDWC/include/base/dwc_friend.h b/lib/external/NitroDWC/include/base/dwc_friend.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_friend.h rename to lib/external/NitroDWC/include/base/dwc_friend.h diff --git a/lib/NitroDWC/include/base/dwc_ghttp.h b/lib/external/NitroDWC/include/base/dwc_ghttp.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_ghttp.h rename to lib/external/NitroDWC/include/base/dwc_ghttp.h diff --git a/lib/NitroDWC/include/base/dwc_init.h b/lib/external/NitroDWC/include/base/dwc_init.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_init.h rename to lib/external/NitroDWC/include/base/dwc_init.h diff --git a/lib/NitroDWC/include/base/dwc_login.h b/lib/external/NitroDWC/include/base/dwc_login.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_login.h rename to lib/external/NitroDWC/include/base/dwc_login.h diff --git a/lib/NitroDWC/include/base/dwc_main.h b/lib/external/NitroDWC/include/base/dwc_main.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_main.h rename to lib/external/NitroDWC/include/base/dwc_main.h diff --git a/lib/NitroDWC/include/base/dwc_match.h b/lib/external/NitroDWC/include/base/dwc_match.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_match.h rename to lib/external/NitroDWC/include/base/dwc_match.h diff --git a/lib/NitroDWC/include/base/dwc_memfunc.h b/lib/external/NitroDWC/include/base/dwc_memfunc.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_memfunc.h rename to lib/external/NitroDWC/include/base/dwc_memfunc.h diff --git a/lib/NitroDWC/include/base/dwc_nasfunc.h b/lib/external/NitroDWC/include/base/dwc_nasfunc.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_nasfunc.h rename to lib/external/NitroDWC/include/base/dwc_nasfunc.h diff --git a/lib/NitroDWC/include/base/dwc_nd.h b/lib/external/NitroDWC/include/base/dwc_nd.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_nd.h rename to lib/external/NitroDWC/include/base/dwc_nd.h diff --git a/lib/NitroDWC/include/base/dwc_ranking.h b/lib/external/NitroDWC/include/base/dwc_ranking.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_ranking.h rename to lib/external/NitroDWC/include/base/dwc_ranking.h diff --git a/lib/NitroDWC/include/base/dwc_report.h b/lib/external/NitroDWC/include/base/dwc_report.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_report.h rename to lib/external/NitroDWC/include/base/dwc_report.h diff --git a/lib/NitroDWC/include/base/dwc_transport.h b/lib/external/NitroDWC/include/base/dwc_transport.h similarity index 100% rename from lib/NitroDWC/include/base/dwc_transport.h rename to lib/external/NitroDWC/include/base/dwc_transport.h diff --git a/lib/NitroDWC/include/bm/dwc_bm_init.h b/lib/external/NitroDWC/include/bm/dwc_bm_init.h similarity index 100% rename from lib/NitroDWC/include/bm/dwc_bm_init.h rename to lib/external/NitroDWC/include/bm/dwc_bm_init.h diff --git a/lib/NitroDWC/include/bm/util_wifiidtool.h b/lib/external/NitroDWC/include/bm/util_wifiidtool.h similarity index 100% rename from lib/NitroDWC/include/bm/util_wifiidtool.h rename to lib/external/NitroDWC/include/bm/util_wifiidtool.h diff --git a/lib/NitroDWC/include/dwc.h b/lib/external/NitroDWC/include/dwc.h similarity index 100% rename from lib/NitroDWC/include/dwc.h rename to lib/external/NitroDWC/include/dwc.h diff --git a/lib/NitroDWC/include/dwc_version.h b/lib/external/NitroDWC/include/dwc_version.h similarity index 100% rename from lib/NitroDWC/include/dwc_version.h rename to lib/external/NitroDWC/include/dwc_version.h diff --git a/lib/NitroDWC/include/enc/dwci_encsession.h b/lib/external/NitroDWC/include/enc/dwci_encsession.h similarity index 100% rename from lib/NitroDWC/include/enc/dwci_encsession.h rename to lib/external/NitroDWC/include/enc/dwci_encsession.h diff --git a/lib/NitroDWC/include/lobby/dwc_lobby.h b/lib/external/NitroDWC/include/lobby/dwc_lobby.h similarity index 100% rename from lib/NitroDWC/include/lobby/dwc_lobby.h rename to lib/external/NitroDWC/include/lobby/dwc_lobby.h diff --git a/lib/NitroDWC/include/lobby/dwci_lobby.h b/lib/external/NitroDWC/include/lobby/dwci_lobby.h similarity index 100% rename from lib/NitroDWC/include/lobby/dwci_lobby.h rename to lib/external/NitroDWC/include/lobby/dwci_lobby.h diff --git a/lib/NitroDWC/include/nd/DWCi_Nd.h b/lib/external/NitroDWC/include/nd/DWCi_Nd.h similarity index 100% rename from lib/NitroDWC/include/nd/DWCi_Nd.h rename to lib/external/NitroDWC/include/nd/DWCi_Nd.h diff --git a/lib/NitroDWC/include/nhttp/NHTTP.h b/lib/external/NitroDWC/include/nhttp/NHTTP.h similarity index 100% rename from lib/NitroDWC/include/nhttp/NHTTP.h rename to lib/external/NitroDWC/include/nhttp/NHTTP.h diff --git a/lib/NitroDWC/include/ppwlobby/ppw_lobby.h b/lib/external/NitroDWC/include/ppwlobby/ppw_lobby.h similarity index 100% rename from lib/NitroDWC/include/ppwlobby/ppw_lobby.h rename to lib/external/NitroDWC/include/ppwlobby/ppw_lobby.h diff --git a/lib/NitroDWC/include/ranking/dwc_ranksession.h b/lib/external/NitroDWC/include/ranking/dwc_ranksession.h similarity index 100% rename from lib/NitroDWC/include/ranking/dwc_ranksession.h rename to lib/external/NitroDWC/include/ranking/dwc_ranksession.h diff --git a/lib/NitroDWC/include/util/dwc_utility.h b/lib/external/NitroDWC/include/util/dwc_utility.h similarity index 100% rename from lib/NitroDWC/include/util/dwc_utility.h rename to lib/external/NitroDWC/include/util/dwc_utility.h diff --git a/lib/NitroDWC/asm/ac/beacon.s b/lib/external/NitroDWC/libraries/ac/asm/beacon.s similarity index 100% rename from lib/NitroDWC/asm/ac/beacon.s rename to lib/external/NitroDWC/libraries/ac/asm/beacon.s diff --git a/lib/NitroDWC/asm/ac/callback.s b/lib/external/NitroDWC/libraries/ac/asm/callback.s similarity index 100% rename from lib/NitroDWC/asm/ac/callback.s rename to lib/external/NitroDWC/libraries/ac/asm/callback.s diff --git a/lib/NitroDWC/asm/ac/close.s b/lib/external/NitroDWC/libraries/ac/asm/close.s similarity index 100% rename from lib/NitroDWC/asm/ac/close.s rename to lib/external/NitroDWC/libraries/ac/asm/close.s diff --git a/lib/NitroDWC/asm/ac/connect.s b/lib/external/NitroDWC/libraries/ac/asm/connect.s similarity index 100% rename from lib/NitroDWC/asm/ac/connect.s rename to lib/external/NitroDWC/libraries/ac/asm/connect.s diff --git a/lib/NitroDWC/asm/ac/dwc_ac.s b/lib/external/NitroDWC/libraries/ac/asm/dwc_ac.s similarity index 100% rename from lib/NitroDWC/asm/ac/dwc_ac.s rename to lib/external/NitroDWC/libraries/ac/asm/dwc_ac.s diff --git a/lib/NitroDWC/asm/ac/error.s b/lib/external/NitroDWC/libraries/ac/asm/error.s similarity index 100% rename from lib/NitroDWC/asm/ac/error.s rename to lib/external/NitroDWC/libraries/ac/asm/error.s diff --git a/lib/NitroDWC/asm/ac/incbin/search_dwcac.bin b/lib/external/NitroDWC/libraries/ac/asm/incbin/search_dwcac.bin similarity index 100% rename from lib/NitroDWC/asm/ac/incbin/search_dwcac.bin rename to lib/external/NitroDWC/libraries/ac/asm/incbin/search_dwcac.bin diff --git a/lib/NitroDWC/asm/ac/incbin/shop_usb.bin b/lib/external/NitroDWC/libraries/ac/asm/incbin/shop_usb.bin similarity index 100% rename from lib/NitroDWC/asm/ac/incbin/shop_usb.bin rename to lib/external/NitroDWC/libraries/ac/asm/incbin/shop_usb.bin diff --git a/lib/NitroDWC/asm/ac/incbin/test.bin b/lib/external/NitroDWC/libraries/ac/asm/incbin/test.bin similarity index 100% rename from lib/NitroDWC/asm/ac/incbin/test.bin rename to lib/external/NitroDWC/libraries/ac/asm/incbin/test.bin diff --git a/lib/NitroDWC/asm/ac/include/beacon.inc b/lib/external/NitroDWC/libraries/ac/asm/include/beacon.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/beacon.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/beacon.inc diff --git a/lib/NitroDWC/asm/ac/include/callback.inc b/lib/external/NitroDWC/libraries/ac/asm/include/callback.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/callback.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/callback.inc diff --git a/lib/NitroDWC/asm/ac/include/close.inc b/lib/external/NitroDWC/libraries/ac/asm/include/close.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/close.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/close.inc diff --git a/lib/NitroDWC/asm/ac/include/connect.inc b/lib/external/NitroDWC/libraries/ac/asm/include/connect.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/connect.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/connect.inc diff --git a/lib/NitroDWC/asm/ac/include/dwc_ac.inc b/lib/external/NitroDWC/libraries/ac/asm/include/dwc_ac.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/dwc_ac.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/dwc_ac.inc diff --git a/lib/NitroDWC/asm/ac/include/error.inc b/lib/external/NitroDWC/libraries/ac/asm/include/error.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/error.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/error.inc diff --git a/lib/NitroDWC/asm/ac/include/makelist.inc b/lib/external/NitroDWC/libraries/ac/asm/include/makelist.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/makelist.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/makelist.inc diff --git a/lib/NitroDWC/asm/ac/include/nintendospot.inc b/lib/external/NitroDWC/libraries/ac/asm/include/nintendospot.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/nintendospot.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/nintendospot.inc diff --git a/lib/NitroDWC/asm/ac/include/retry.inc b/lib/external/NitroDWC/libraries/ac/asm/include/retry.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/retry.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/retry.inc diff --git a/lib/NitroDWC/asm/ac/include/search_dwcac.inc b/lib/external/NitroDWC/libraries/ac/asm/include/search_dwcac.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/search_dwcac.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/search_dwcac.inc diff --git a/lib/NitroDWC/asm/ac/include/shop_usb.inc b/lib/external/NitroDWC/libraries/ac/asm/include/shop_usb.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/shop_usb.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/shop_usb.inc diff --git a/lib/NitroDWC/asm/ac/include/start.inc b/lib/external/NitroDWC/libraries/ac/asm/include/start.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/start.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/start.inc diff --git a/lib/NitroDWC/asm/ac/include/test.inc b/lib/external/NitroDWC/libraries/ac/asm/include/test.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/test.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/test.inc diff --git a/lib/NitroDWC/asm/ac/include/wds.inc b/lib/external/NitroDWC/libraries/ac/asm/include/wds.inc similarity index 100% rename from lib/NitroDWC/asm/ac/include/wds.inc rename to lib/external/NitroDWC/libraries/ac/asm/include/wds.inc diff --git a/lib/external/NitroDWC/libraries/ac/asm/macros/function.inc b/lib/external/NitroDWC/libraries/ac/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/ac/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroDWC/asm/ac/makelist.s b/lib/external/NitroDWC/libraries/ac/asm/makelist.s similarity index 100% rename from lib/NitroDWC/asm/ac/makelist.s rename to lib/external/NitroDWC/libraries/ac/asm/makelist.s diff --git a/lib/NitroDWC/asm/ac/nintendospot.s b/lib/external/NitroDWC/libraries/ac/asm/nintendospot.s similarity index 100% rename from lib/NitroDWC/asm/ac/nintendospot.s rename to lib/external/NitroDWC/libraries/ac/asm/nintendospot.s diff --git a/lib/NitroDWC/asm/ac/retry.s b/lib/external/NitroDWC/libraries/ac/asm/retry.s similarity index 100% rename from lib/NitroDWC/asm/ac/retry.s rename to lib/external/NitroDWC/libraries/ac/asm/retry.s diff --git a/lib/NitroDWC/asm/ac/search_dwcac.s b/lib/external/NitroDWC/libraries/ac/asm/search_dwcac.s similarity index 100% rename from lib/NitroDWC/asm/ac/search_dwcac.s rename to lib/external/NitroDWC/libraries/ac/asm/search_dwcac.s diff --git a/lib/NitroDWC/asm/ac/shop_usb.s b/lib/external/NitroDWC/libraries/ac/asm/shop_usb.s similarity index 100% rename from lib/NitroDWC/asm/ac/shop_usb.s rename to lib/external/NitroDWC/libraries/ac/asm/shop_usb.s diff --git a/lib/NitroDWC/asm/ac/start.s b/lib/external/NitroDWC/libraries/ac/asm/start.s similarity index 100% rename from lib/NitroDWC/asm/ac/start.s rename to lib/external/NitroDWC/libraries/ac/asm/start.s diff --git a/lib/NitroDWC/asm/ac/test.s b/lib/external/NitroDWC/libraries/ac/asm/test.s similarity index 100% rename from lib/NitroDWC/asm/ac/test.s rename to lib/external/NitroDWC/libraries/ac/asm/test.s diff --git a/lib/NitroDWC/asm/ac/wds.s b/lib/external/NitroDWC/libraries/ac/asm/wds.s similarity index 100% rename from lib/NitroDWC/asm/ac/wds.s rename to lib/external/NitroDWC/libraries/ac/asm/wds.s diff --git a/lib/external/NitroDWC/libraries/ac/meson.build b/lib/external/NitroDWC/libraries/ac/meson.build new file mode 100644 index 0000000000..f824cebc1e --- /dev/null +++ b/lib/external/NitroDWC/libraries/ac/meson.build @@ -0,0 +1,25 @@ +libdwcac_srcs = files( + 'asm/dwc_ac.s', + 'asm/beacon.s', + 'asm/callback.s', + 'asm/connect.s', + 'asm/close.s', + 'asm/error.s', + 'asm/makelist.s', + 'asm/retry.s', + 'asm/search_dwcac.s', + 'asm/start.s', + 'asm/test.s', + 'asm/shop_usb.s', + 'asm/wds.s', + 'asm/nintendospot.s' +) + +libdwcac = static_library('dwcac', + sources: libdwcac_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcac diff --git a/lib/external/NitroDWC/libraries/account/meson.build b/lib/external/NitroDWC/libraries/account/meson.build new file mode 100644 index 0000000000..3c4a555cde --- /dev/null +++ b/lib/external/NitroDWC/libraries/account/meson.build @@ -0,0 +1,21 @@ +libdwcaccount_srcs = files( + 'src/dwc_init.c', + 'src/dwc_account.c' +) + +libdwcaccount = static_library('dwcaccount', + sources: [libdwcaccount_srcs], + c_args: [c_args, sdk_args], + dependencies: [ + msl_dep, + gamespy_dep, + nitrosdk_dep, + nitrosystem_dep, + nitrowifi_dep + ], + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +nitrodwc_libs += libdwcaccount diff --git a/lib/NitroDWC/src/account/dwc_account.c b/lib/external/NitroDWC/libraries/account/src/dwc_account.c similarity index 100% rename from lib/NitroDWC/src/account/dwc_account.c rename to lib/external/NitroDWC/libraries/account/src/dwc_account.c diff --git a/lib/NitroDWC/src/account/dwc_init.c b/lib/external/NitroDWC/libraries/account/src/dwc_init.c similarity index 100% rename from lib/NitroDWC/src/account/dwc_init.c rename to lib/external/NitroDWC/libraries/account/src/dwc_init.c diff --git a/lib/external/NitroDWC/libraries/account/src/meson.build b/lib/external/NitroDWC/libraries/account/src/meson.build new file mode 100644 index 0000000000..a0fa8ff017 --- /dev/null +++ b/lib/external/NitroDWC/libraries/account/src/meson.build @@ -0,0 +1,4 @@ +libdwcaccount_srcs = files( + 'dwc_init.c', + 'dwc_account.c' +) \ No newline at end of file diff --git a/lib/NitroDWC/asm/auth/dwc_auth.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_auth.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_auth.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_auth.s diff --git a/lib/NitroDWC/asm/auth/dwc_ca_cybertrust.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_ca_cybertrust.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_ca_cybertrust.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_ca_cybertrust.s diff --git a/lib/NitroDWC/asm/auth/dwc_ca_globalsign.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_ca_globalsign.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_ca_globalsign.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_ca_globalsign.s diff --git a/lib/NitroDWC/asm/auth/dwc_ca_nas_self.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_ca_nas_self.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_ca_nas_self.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_ca_nas_self.s diff --git a/lib/NitroDWC/asm/auth/dwc_ca_thawte_premiumserver.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_ca_thawte_premiumserver.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_ca_thawte_premiumserver.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_ca_thawte_premiumserver.s diff --git a/lib/NitroDWC/asm/auth/dwc_ca_thawte_server.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_ca_thawte_server.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_ca_thawte_server.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_ca_thawte_server.s diff --git a/lib/NitroDWC/asm/auth/dwc_ca_verisign.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_ca_verisign.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_ca_verisign.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_ca_verisign.s diff --git a/lib/NitroDWC/asm/auth/dwc_cal.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_cal.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_cal.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_cal.s diff --git a/lib/NitroDWC/asm/auth/dwc_http.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_http.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_http.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_http.s diff --git a/lib/NitroDWC/asm/auth/dwc_nastime.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_nastime.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_nastime.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_nastime.s diff --git a/lib/NitroDWC/asm/auth/dwc_netcheck.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_netcheck.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_netcheck.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_netcheck.s diff --git a/lib/NitroDWC/asm/auth/dwc_svl.s b/lib/external/NitroDWC/libraries/auth/asm/dwc_svl.s similarity index 100% rename from lib/NitroDWC/asm/auth/dwc_svl.s rename to lib/external/NitroDWC/libraries/auth/asm/dwc_svl.s diff --git a/lib/NitroDWC/asm/auth/incbin/dwc_ca_cybertrust.bin b/lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_cybertrust.bin similarity index 100% rename from lib/NitroDWC/asm/auth/incbin/dwc_ca_cybertrust.bin rename to lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_cybertrust.bin diff --git a/lib/NitroDWC/asm/auth/incbin/dwc_ca_globalsign.bin b/lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_globalsign.bin similarity index 100% rename from lib/NitroDWC/asm/auth/incbin/dwc_ca_globalsign.bin rename to lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_globalsign.bin diff --git a/lib/NitroDWC/asm/auth/incbin/dwc_ca_nas_self.bin b/lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_nas_self.bin similarity index 100% rename from lib/NitroDWC/asm/auth/incbin/dwc_ca_nas_self.bin rename to lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_nas_self.bin diff --git a/lib/NitroDWC/asm/auth/incbin/dwc_ca_thawte_premiumserver.bin b/lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_thawte_premiumserver.bin similarity index 100% rename from lib/NitroDWC/asm/auth/incbin/dwc_ca_thawte_premiumserver.bin rename to lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_thawte_premiumserver.bin diff --git a/lib/NitroDWC/asm/auth/incbin/dwc_ca_thawte_server.bin b/lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_thawte_server.bin similarity index 100% rename from lib/NitroDWC/asm/auth/incbin/dwc_ca_thawte_server.bin rename to lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_thawte_server.bin diff --git a/lib/NitroDWC/asm/auth/incbin/dwc_ca_verisign.bin b/lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_verisign.bin similarity index 100% rename from lib/NitroDWC/asm/auth/incbin/dwc_ca_verisign.bin rename to lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_ca_verisign.bin diff --git a/lib/NitroDWC/asm/auth/incbin/dwc_nastime.bin b/lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_nastime.bin similarity index 100% rename from lib/NitroDWC/asm/auth/incbin/dwc_nastime.bin rename to lib/external/NitroDWC/libraries/auth/asm/incbin/dwc_nastime.bin diff --git a/lib/NitroDWC/asm/auth/include/dwc_auth.inc b/lib/external/NitroDWC/libraries/auth/asm/include/dwc_auth.inc similarity index 100% rename from lib/NitroDWC/asm/auth/include/dwc_auth.inc rename to lib/external/NitroDWC/libraries/auth/asm/include/dwc_auth.inc diff --git a/lib/NitroDWC/asm/auth/include/dwc_cal.inc b/lib/external/NitroDWC/libraries/auth/asm/include/dwc_cal.inc similarity index 100% rename from lib/NitroDWC/asm/auth/include/dwc_cal.inc rename to lib/external/NitroDWC/libraries/auth/asm/include/dwc_cal.inc diff --git a/lib/NitroDWC/asm/auth/include/dwc_http.inc b/lib/external/NitroDWC/libraries/auth/asm/include/dwc_http.inc similarity index 100% rename from lib/NitroDWC/asm/auth/include/dwc_http.inc rename to lib/external/NitroDWC/libraries/auth/asm/include/dwc_http.inc diff --git a/lib/NitroDWC/asm/auth/include/dwc_nastime.inc b/lib/external/NitroDWC/libraries/auth/asm/include/dwc_nastime.inc similarity index 100% rename from lib/NitroDWC/asm/auth/include/dwc_nastime.inc rename to lib/external/NitroDWC/libraries/auth/asm/include/dwc_nastime.inc diff --git a/lib/NitroDWC/asm/auth/include/dwc_netcheck.inc b/lib/external/NitroDWC/libraries/auth/asm/include/dwc_netcheck.inc similarity index 100% rename from lib/NitroDWC/asm/auth/include/dwc_netcheck.inc rename to lib/external/NitroDWC/libraries/auth/asm/include/dwc_netcheck.inc diff --git a/lib/NitroDWC/asm/auth/include/dwc_svl.inc b/lib/external/NitroDWC/libraries/auth/asm/include/dwc_svl.inc similarity index 100% rename from lib/NitroDWC/asm/auth/include/dwc_svl.inc rename to lib/external/NitroDWC/libraries/auth/asm/include/dwc_svl.inc diff --git a/lib/NitroDWC/asm/auth/include/util_base64.inc b/lib/external/NitroDWC/libraries/auth/asm/include/util_base64.inc similarity index 100% rename from lib/NitroDWC/asm/auth/include/util_base64.inc rename to lib/external/NitroDWC/libraries/auth/asm/include/util_base64.inc diff --git a/lib/external/NitroDWC/libraries/auth/asm/macros/function.inc b/lib/external/NitroDWC/libraries/auth/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/auth/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroDWC/asm/auth/util_base64.s b/lib/external/NitroDWC/libraries/auth/asm/util_base64.s similarity index 100% rename from lib/NitroDWC/asm/auth/util_base64.s rename to lib/external/NitroDWC/libraries/auth/asm/util_base64.s diff --git a/lib/external/NitroDWC/libraries/auth/meson.build b/lib/external/NitroDWC/libraries/auth/meson.build new file mode 100644 index 0000000000..3f159395f1 --- /dev/null +++ b/lib/external/NitroDWC/libraries/auth/meson.build @@ -0,0 +1,24 @@ +libdwcauth_srcs = files( + 'asm/dwc_auth.s', + 'asm/dwc_cal.s', + 'asm/dwc_http.s', + 'asm/dwc_netcheck.s', + 'asm/dwc_nastime.s', + 'asm/dwc_svl.s', + 'asm/util_base64.s', + 'asm/dwc_ca_cybertrust.s', + 'asm/dwc_ca_nas_self.s', + 'asm/dwc_ca_thawte_premiumserver.s', + 'asm/dwc_ca_thawte_server.s', + 'asm/dwc_ca_verisign.s', + 'asm/dwc_ca_globalsign.s' +) + +libdwcauth = static_library('dwcauth', + sources: libdwcauth_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcauth diff --git a/lib/NitroDWC/asm/base/dwc_common.s b/lib/external/NitroDWC/libraries/base/asm/dwc_common.s similarity index 100% rename from lib/NitroDWC/asm/base/dwc_common.s rename to lib/external/NitroDWC/libraries/base/asm/dwc_common.s diff --git a/lib/NitroDWC/asm/base/include/dwc_common.inc b/lib/external/NitroDWC/libraries/base/asm/include/dwc_common.inc similarity index 100% rename from lib/NitroDWC/asm/base/include/dwc_common.inc rename to lib/external/NitroDWC/libraries/base/asm/include/dwc_common.inc diff --git a/lib/external/NitroDWC/libraries/base/asm/macros/function.inc b/lib/external/NitroDWC/libraries/base/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/base/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/NitroDWC/libraries/base/meson.build b/lib/external/NitroDWC/libraries/base/meson.build new file mode 100644 index 0000000000..de8c450494 --- /dev/null +++ b/lib/external/NitroDWC/libraries/base/meson.build @@ -0,0 +1,32 @@ +libdwcbase_srcs = files( + 'src/dwc_error.c', + 'src/dwc_memfunc.c', + 'src/dwc_connectinet.c', + 'src/dwc_nasfunc.c', + 'src/dwc_nd.c', + 'asm/dwc_common.s', + 'src/dwc_main.c', + 'src/dwc_login.c', + 'src/dwc_friend.c', + 'src/dwc_match.c', + 'src/dwc_transport.c', + 'src/dwc_ghttp.c' +) + +libdwcbase = static_library('dwcbase', + sources: libdwcbase_srcs, + c_args: [c_args, sdk_args], + nasm_args: asm_args, + dependencies: [ + msl_dep, + gamespy_dep, + nitrosdk_dep, + nitrosystem_dep, + nitrowifi_dep + ], + c_pch: nitro_pch, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcbase \ No newline at end of file diff --git a/lib/NitroDWC/src/base/dwc_connectinet.c b/lib/external/NitroDWC/libraries/base/src/dwc_connectinet.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_connectinet.c rename to lib/external/NitroDWC/libraries/base/src/dwc_connectinet.c diff --git a/lib/NitroDWC/src/base/dwc_error.c b/lib/external/NitroDWC/libraries/base/src/dwc_error.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_error.c rename to lib/external/NitroDWC/libraries/base/src/dwc_error.c diff --git a/lib/NitroDWC/src/base/dwc_friend.c b/lib/external/NitroDWC/libraries/base/src/dwc_friend.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_friend.c rename to lib/external/NitroDWC/libraries/base/src/dwc_friend.c diff --git a/lib/NitroDWC/src/base/dwc_ghttp.c b/lib/external/NitroDWC/libraries/base/src/dwc_ghttp.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_ghttp.c rename to lib/external/NitroDWC/libraries/base/src/dwc_ghttp.c diff --git a/lib/NitroDWC/src/base/dwc_login.c b/lib/external/NitroDWC/libraries/base/src/dwc_login.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_login.c rename to lib/external/NitroDWC/libraries/base/src/dwc_login.c diff --git a/lib/NitroDWC/src/base/dwc_main.c b/lib/external/NitroDWC/libraries/base/src/dwc_main.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_main.c rename to lib/external/NitroDWC/libraries/base/src/dwc_main.c diff --git a/lib/NitroDWC/src/base/dwc_match.c b/lib/external/NitroDWC/libraries/base/src/dwc_match.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_match.c rename to lib/external/NitroDWC/libraries/base/src/dwc_match.c diff --git a/lib/NitroDWC/src/base/dwc_memfunc.c b/lib/external/NitroDWC/libraries/base/src/dwc_memfunc.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_memfunc.c rename to lib/external/NitroDWC/libraries/base/src/dwc_memfunc.c diff --git a/lib/NitroDWC/src/base/dwc_nasfunc.c b/lib/external/NitroDWC/libraries/base/src/dwc_nasfunc.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_nasfunc.c rename to lib/external/NitroDWC/libraries/base/src/dwc_nasfunc.c diff --git a/lib/NitroDWC/src/base/dwc_nd.c b/lib/external/NitroDWC/libraries/base/src/dwc_nd.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_nd.c rename to lib/external/NitroDWC/libraries/base/src/dwc_nd.c diff --git a/lib/NitroDWC/src/base/dwc_transport.c b/lib/external/NitroDWC/libraries/base/src/dwc_transport.c similarity index 100% rename from lib/NitroDWC/src/base/dwc_transport.c rename to lib/external/NitroDWC/libraries/base/src/dwc_transport.c diff --git a/lib/NitroDWC/asm/bm/dwc_backup.s b/lib/external/NitroDWC/libraries/bm/asm/dwc_backup.s similarity index 100% rename from lib/NitroDWC/asm/bm/dwc_backup.s rename to lib/external/NitroDWC/libraries/bm/asm/dwc_backup.s diff --git a/lib/NitroDWC/asm/bm/dwc_bm_init.s b/lib/external/NitroDWC/libraries/bm/asm/dwc_bm_init.s similarity index 100% rename from lib/NitroDWC/asm/bm/dwc_bm_init.s rename to lib/external/NitroDWC/libraries/bm/asm/dwc_bm_init.s diff --git a/lib/NitroDWC/asm/bm/include/dwc_backup.inc b/lib/external/NitroDWC/libraries/bm/asm/include/dwc_backup.inc similarity index 100% rename from lib/NitroDWC/asm/bm/include/dwc_backup.inc rename to lib/external/NitroDWC/libraries/bm/asm/include/dwc_backup.inc diff --git a/lib/NitroDWC/asm/bm/include/dwc_bm_init.inc b/lib/external/NitroDWC/libraries/bm/asm/include/dwc_bm_init.inc similarity index 100% rename from lib/NitroDWC/asm/bm/include/dwc_bm_init.inc rename to lib/external/NitroDWC/libraries/bm/asm/include/dwc_bm_init.inc diff --git a/lib/NitroDWC/asm/bm/include/util_wifiidtool.inc b/lib/external/NitroDWC/libraries/bm/asm/include/util_wifiidtool.inc similarity index 100% rename from lib/NitroDWC/asm/bm/include/util_wifiidtool.inc rename to lib/external/NitroDWC/libraries/bm/asm/include/util_wifiidtool.inc diff --git a/lib/external/NitroDWC/libraries/bm/asm/macros/function.inc b/lib/external/NitroDWC/libraries/bm/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/bm/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroDWC/asm/bm/util_wifiidtool.s b/lib/external/NitroDWC/libraries/bm/asm/util_wifiidtool.s similarity index 100% rename from lib/NitroDWC/asm/bm/util_wifiidtool.s rename to lib/external/NitroDWC/libraries/bm/asm/util_wifiidtool.s diff --git a/lib/external/NitroDWC/libraries/bm/meson.build b/lib/external/NitroDWC/libraries/bm/meson.build new file mode 100644 index 0000000000..9a5872de88 --- /dev/null +++ b/lib/external/NitroDWC/libraries/bm/meson.build @@ -0,0 +1,14 @@ +libdwcbm_srcs = files( + 'asm/dwc_backup.s', + 'asm/dwc_bm_init.s', + 'asm/util_wifiidtool.s' +) + +libdwcbm = static_library('dwcbm', + sources: libdwcbm_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcbm diff --git a/lib/NitroDWC/asm/enc/dwc_encsession.s b/lib/external/NitroDWC/libraries/enc/asm/dwc_encsession.s similarity index 100% rename from lib/NitroDWC/asm/enc/dwc_encsession.s rename to lib/external/NitroDWC/libraries/enc/asm/dwc_encsession.s diff --git a/lib/NitroDWC/asm/enc/include/dwc_encsession.inc b/lib/external/NitroDWC/libraries/enc/asm/include/dwc_encsession.inc similarity index 100% rename from lib/NitroDWC/asm/enc/include/dwc_encsession.inc rename to lib/external/NitroDWC/libraries/enc/asm/include/dwc_encsession.inc diff --git a/lib/external/NitroDWC/libraries/enc/asm/macros/function.inc b/lib/external/NitroDWC/libraries/enc/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/enc/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/NitroDWC/libraries/enc/meson.build b/lib/external/NitroDWC/libraries/enc/meson.build new file mode 100644 index 0000000000..4808df9dea --- /dev/null +++ b/lib/external/NitroDWC/libraries/enc/meson.build @@ -0,0 +1,10 @@ +libdwcenc_srcs = files('asm/dwc_encsession.s') + +libdwcenc = static_library('dwcenc', + sources: libdwcenc_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcenc diff --git a/lib/NitroDWC/asm/ilobby/dwci_lobbybase.s b/lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbybase.s similarity index 100% rename from lib/NitroDWC/asm/ilobby/dwci_lobbybase.s rename to lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbybase.s diff --git a/lib/NitroDWC/asm/ilobby/dwci_lobbycallback.s b/lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbycallback.s similarity index 100% rename from lib/NitroDWC/asm/ilobby/dwci_lobbycallback.s rename to lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbycallback.s diff --git a/lib/NitroDWC/asm/ilobby/dwci_lobbydata.s b/lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbydata.s similarity index 100% rename from lib/NitroDWC/asm/ilobby/dwci_lobbydata.s rename to lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbydata.s diff --git a/lib/NitroDWC/asm/ilobby/dwci_lobbynewhandler.s b/lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbynewhandler.s similarity index 100% rename from lib/NitroDWC/asm/ilobby/dwci_lobbynewhandler.s rename to lib/external/NitroDWC/libraries/ilobby/asm/dwci_lobbynewhandler.s diff --git a/lib/NitroDWC/asm/ilobby/include/dwci_lobbybase.inc b/lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbybase.inc similarity index 100% rename from lib/NitroDWC/asm/ilobby/include/dwci_lobbybase.inc rename to lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbybase.inc diff --git a/lib/NitroDWC/asm/ilobby/include/dwci_lobbycallb.inc b/lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbycallb.inc similarity index 100% rename from lib/NitroDWC/asm/ilobby/include/dwci_lobbycallb.inc rename to lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbycallb.inc diff --git a/lib/NitroDWC/asm/ilobby/include/dwci_lobbydata.inc b/lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbydata.inc similarity index 100% rename from lib/NitroDWC/asm/ilobby/include/dwci_lobbydata.inc rename to lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbydata.inc diff --git a/lib/NitroDWC/asm/ilobby/include/dwci_lobbynewha.inc b/lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbynewha.inc similarity index 100% rename from lib/NitroDWC/asm/ilobby/include/dwci_lobbynewha.inc rename to lib/external/NitroDWC/libraries/ilobby/asm/include/dwci_lobbynewha.inc diff --git a/lib/external/NitroDWC/libraries/ilobby/asm/macros/function.inc b/lib/external/NitroDWC/libraries/ilobby/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/ilobby/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/NitroDWC/libraries/ilobby/asm/meson.build b/lib/external/NitroDWC/libraries/ilobby/asm/meson.build new file mode 100644 index 0000000000..5643d2a844 --- /dev/null +++ b/lib/external/NitroDWC/libraries/ilobby/asm/meson.build @@ -0,0 +1,8 @@ +libdwcilobby_asm = files( + 'dwci_lobbybase.s', + 'dwci_lobbynewhandler.s', + 'dwci_lobbycallback.s', + 'dwci_lobbydata.s' +) + +libdwcilobby_asm_includes = meson.current_source_dir() diff --git a/lib/external/NitroDWC/libraries/ilobby/meson.build b/lib/external/NitroDWC/libraries/ilobby/meson.build new file mode 100644 index 0000000000..ae8067a503 --- /dev/null +++ b/lib/external/NitroDWC/libraries/ilobby/meson.build @@ -0,0 +1,15 @@ +libdwcilobby_srcs = files( + 'asm/dwci_lobbybase.s', + 'asm/dwci_lobbynewhandler.s', + 'asm/dwci_lobbycallback.s', + 'asm/dwci_lobbydata.s' +) + +libdwcilobby = static_library('dwcilobby', + sources: libdwcilobby_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcilobby diff --git a/lib/external/NitroDWC/libraries/meson.build b/lib/external/NitroDWC/libraries/meson.build new file mode 100644 index 0000000000..2cfc7e4df3 --- /dev/null +++ b/lib/external/NitroDWC/libraries/meson.build @@ -0,0 +1,11 @@ +subdir('ac') +subdir('account') +subdir('auth') +subdir('base') +subdir('bm') +subdir('enc') +subdir('ilobby') +subdir('nd') +subdir('nhttp') +subdir('ppwlobby') +subdir('util') diff --git a/lib/NitroDWC/asm/nd/dwci_nd_attr.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_attr.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_attr.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_attr.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_base64.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_base64.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_base64.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_base64.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_bgnend.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_bgnend.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_bgnend.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_bgnend.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_ca_nasself.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_ca_nasself.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_ca_nasself.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_ca_nasself.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_cancel.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_cancel.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_cancel.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_cancel.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_dwc_nitro.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_dwc_nitro.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_dwc_nitro.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_dwc_nitro.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_fileapi.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_fileapi.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_fileapi.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_fileapi.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_filecount.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_filecount.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_filecount.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_filecount.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_fileget.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_fileget.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_fileget.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_fileget.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_filelist.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_filelist.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_filelist.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_filelist.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_os_nitro.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_os_nitro.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_os_nitro.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_os_nitro.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_stdlib_nitro.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_stdlib_nitro.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_stdlib_nitro.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_stdlib_nitro.s diff --git a/lib/NitroDWC/asm/nd/dwci_nd_string.s b/lib/external/NitroDWC/libraries/nd/asm/dwci_nd_string.s similarity index 100% rename from lib/NitroDWC/asm/nd/dwci_nd_string.s rename to lib/external/NitroDWC/libraries/nd/asm/dwci_nd_string.s diff --git a/lib/NitroDWC/asm/nd/incbin/dwci_nd_ca_nasself.bin b/lib/external/NitroDWC/libraries/nd/asm/incbin/dwci_nd_ca_nasself.bin similarity index 100% rename from lib/NitroDWC/asm/nd/incbin/dwci_nd_ca_nasself.bin rename to lib/external/NitroDWC/libraries/nd/asm/incbin/dwci_nd_ca_nasself.bin diff --git a/lib/NitroDWC/asm/nd/incbin/dwci_nd_string.bin b/lib/external/NitroDWC/libraries/nd/asm/incbin/dwci_nd_string.bin similarity index 100% rename from lib/NitroDWC/asm/nd/incbin/dwci_nd_string.bin rename to lib/external/NitroDWC/libraries/nd/asm/incbin/dwci_nd_string.bin diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_attr.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_attr.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_attr.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_attr.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_base64.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_base64.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_base64.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_base64.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_bgnend.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_bgnend.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_bgnend.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_bgnend.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_cancel.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_cancel.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_cancel.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_cancel.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_dwc_nit.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_dwc_nit.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_dwc_nit.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_dwc_nit.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_fileapi.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_fileapi.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_fileapi.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_fileapi.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_filecou.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_filecou.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_filecou.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_filecou.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_fileget.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_fileget.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_fileget.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_fileget.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_filelis.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_filelis.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_filelis.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_filelis.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_os_nitr.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_os_nitr.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_os_nitr.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_os_nitr.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_stdlib_.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_stdlib_.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_stdlib_.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_stdlib_.inc diff --git a/lib/NitroDWC/asm/nd/include/dwci_nd_string.inc b/lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_string.inc similarity index 100% rename from lib/NitroDWC/asm/nd/include/dwci_nd_string.inc rename to lib/external/NitroDWC/libraries/nd/asm/include/dwci_nd_string.inc diff --git a/lib/external/NitroDWC/libraries/nd/asm/macros/function.inc b/lib/external/NitroDWC/libraries/nd/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/nd/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/NitroDWC/libraries/nd/meson.build b/lib/external/NitroDWC/libraries/nd/meson.build new file mode 100644 index 0000000000..1dbad0d494 --- /dev/null +++ b/lib/external/NitroDWC/libraries/nd/meson.build @@ -0,0 +1,24 @@ +libdwcnd_srcs = files( + 'asm/dwci_nd_ca_nasself.s', + 'asm/dwci_nd_attr.s', + 'asm/dwci_nd_base64.s', + 'asm/dwci_nd_bgnend.s', + 'asm/dwci_nd_cancel.s', + 'asm/dwci_nd_dwc_nitro.s', + 'asm/dwci_nd_fileapi.s', + 'asm/dwci_nd_filecount.s', + 'asm/dwci_nd_fileget.s', + 'asm/dwci_nd_filelist.s', + 'asm/dwci_nd_os_nitro.s', + 'asm/dwci_nd_stdlib_nitro.s', + 'asm/dwci_nd_string.s' +) + +libdwcnd = static_library('dwcnd', + sources: libdwcnd_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcnd diff --git a/lib/NitroDWC/asm/nhttp/incbin/nhttp_token.bin b/lib/external/NitroDWC/libraries/nhttp/asm/incbin/nhttp_token.bin similarity index 100% rename from lib/NitroDWC/asm/nhttp/incbin/nhttp_token.bin rename to lib/external/NitroDWC/libraries/nhttp/asm/incbin/nhttp_token.bin diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_bgnend.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_bgnend.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_bgnend.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_bgnend.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_control.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_control.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_control.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_control.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_list.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_list.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_list.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_list.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_os_nitro.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_os_nitro.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_os_nitro.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_os_nitro.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_recvbuf.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_recvbuf.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_recvbuf.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_recvbuf.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_request.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_request.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_request.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_request.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_resolve_n.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_resolve_n.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_resolve_n.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_resolve_n.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_response.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_response.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_response.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_response.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_socket_ni.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_socket_ni.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_socket_ni.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_socket_ni.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_stdlib_ni.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_stdlib_ni.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_stdlib_ni.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_stdlib_ni.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_thread.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_thread.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_thread.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_thread.inc diff --git a/lib/NitroDWC/asm/nhttp/include/nhttp_token.inc b/lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_token.inc similarity index 100% rename from lib/NitroDWC/asm/nhttp/include/nhttp_token.inc rename to lib/external/NitroDWC/libraries/nhttp/asm/include/nhttp_token.inc diff --git a/lib/external/NitroDWC/libraries/nhttp/asm/macros/function.inc b/lib/external/NitroDWC/libraries/nhttp/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/nhttp/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroDWC/asm/nhttp/nhttp_bgnend.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_bgnend.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_bgnend.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_bgnend.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_control.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_control.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_control.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_control.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_list.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_list.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_list.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_list.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_os_nitro.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_os_nitro.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_os_nitro.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_os_nitro.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_recvbuf.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_recvbuf.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_recvbuf.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_recvbuf.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_request.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_request.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_request.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_request.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_resolve_nitro.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_resolve_nitro.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_resolve_nitro.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_resolve_nitro.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_response.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_response.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_response.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_response.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_socket_nitro.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_socket_nitro.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_socket_nitro.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_socket_nitro.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_stdlib_nitro.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_stdlib_nitro.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_stdlib_nitro.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_stdlib_nitro.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_thread.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_thread.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_thread.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_thread.s diff --git a/lib/NitroDWC/asm/nhttp/nhttp_token.s b/lib/external/NitroDWC/libraries/nhttp/asm/nhttp_token.s similarity index 100% rename from lib/NitroDWC/asm/nhttp/nhttp_token.s rename to lib/external/NitroDWC/libraries/nhttp/asm/nhttp_token.s diff --git a/lib/external/NitroDWC/libraries/nhttp/meson.build b/lib/external/NitroDWC/libraries/nhttp/meson.build new file mode 100644 index 0000000000..9bb020b6b5 --- /dev/null +++ b/lib/external/NitroDWC/libraries/nhttp/meson.build @@ -0,0 +1,23 @@ +libdwcnhttp_srcs = files( + 'asm/nhttp_bgnend.s', + 'asm/nhttp_control.s', + 'asm/nhttp_list.s', + 'asm/nhttp_os_nitro.s', + 'asm/nhttp_recvbuf.s', + 'asm/nhttp_request.s', + 'asm/nhttp_resolve_nitro.s', + 'asm/nhttp_response.s', + 'asm/nhttp_socket_nitro.s', + 'asm/nhttp_stdlib_nitro.s', + 'asm/nhttp_thread.s', + 'asm/nhttp_token.s' +) + +libdwcnhttp = static_library('dwcnhttp', + sources: libdwcnhttp_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcnhttp diff --git a/lib/NitroDWC/asm/ppwlobby/dwci_encsession.s b/lib/external/NitroDWC/libraries/ppwlobby/asm/dwci_encsession.s similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/dwci_encsession.s rename to lib/external/NitroDWC/libraries/ppwlobby/asm/dwci_encsession.s diff --git a/lib/NitroDWC/asm/ppwlobby/dwci_lobby.s b/lib/external/NitroDWC/libraries/ppwlobby/asm/dwci_lobby.s similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/dwci_lobby.s rename to lib/external/NitroDWC/libraries/ppwlobby/asm/dwci_lobby.s diff --git a/lib/NitroDWC/asm/ppwlobby/include/dwci_lobby.inc b/lib/external/NitroDWC/libraries/ppwlobby/asm/include/dwci_lobby.inc similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/include/dwci_lobby.inc rename to lib/external/NitroDWC/libraries/ppwlobby/asm/include/dwci_lobby.inc diff --git a/lib/NitroDWC/asm/ppwlobby/include/ppw_innerinfo.inc b/lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_innerinfo.inc similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/include/ppw_innerinfo.inc rename to lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_innerinfo.inc diff --git a/lib/NitroDWC/asm/ppwlobby/include/ppw_lobby.inc b/lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_lobby.inc similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/include/ppw_lobby.inc rename to lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_lobby.inc diff --git a/lib/NitroDWC/asm/ppwlobby/include/ppw_parser.inc b/lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_parser.inc similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/include/ppw_parser.inc rename to lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_parser.inc diff --git a/lib/NitroDWC/asm/ppwlobby/include/ppw_profile.inc b/lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_profile.inc similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/include/ppw_profile.inc rename to lib/external/NitroDWC/libraries/ppwlobby/asm/include/ppw_profile.inc diff --git a/lib/external/NitroDWC/libraries/ppwlobby/asm/macros/function.inc b/lib/external/NitroDWC/libraries/ppwlobby/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/ppwlobby/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/NitroDWC/libraries/ppwlobby/asm/meson.build b/lib/external/NitroDWC/libraries/ppwlobby/asm/meson.build new file mode 100644 index 0000000000..a488bca5fd --- /dev/null +++ b/lib/external/NitroDWC/libraries/ppwlobby/asm/meson.build @@ -0,0 +1,10 @@ +libdwcppwlobby_asm = files( + 'ppw_lobby.s', + 'ppw_innerinfo.s', + 'dwci_encsession.s', + 'ppw_parser.s', + 'ppw_profile.s', + 'dwci_lobby.s' +) + +libdwcppwlobby_asm_includes = meson.current_source_dir() diff --git a/lib/NitroDWC/asm/ppwlobby/ppw_innerinfo.s b/lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_innerinfo.s similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/ppw_innerinfo.s rename to lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_innerinfo.s diff --git a/lib/NitroDWC/asm/ppwlobby/ppw_lobby.s b/lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_lobby.s similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/ppw_lobby.s rename to lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_lobby.s diff --git a/lib/NitroDWC/asm/ppwlobby/ppw_parser.s b/lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_parser.s similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/ppw_parser.s rename to lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_parser.s diff --git a/lib/NitroDWC/asm/ppwlobby/ppw_profile.s b/lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_profile.s similarity index 100% rename from lib/NitroDWC/asm/ppwlobby/ppw_profile.s rename to lib/external/NitroDWC/libraries/ppwlobby/asm/ppw_profile.s diff --git a/lib/external/NitroDWC/libraries/ppwlobby/meson.build b/lib/external/NitroDWC/libraries/ppwlobby/meson.build new file mode 100644 index 0000000000..62b007ecf3 --- /dev/null +++ b/lib/external/NitroDWC/libraries/ppwlobby/meson.build @@ -0,0 +1,17 @@ +libdwcppwlobby_srcs = files( + 'asm/ppw_lobby.s', + 'asm/ppw_innerinfo.s', + 'asm/dwci_encsession.s', + 'asm/ppw_parser.s', + 'asm/ppw_profile.s', + 'asm/dwci_lobby.s' +) + +libdwcppwlobby = static_library('dwcppwlobby', + sources: libdwcppwlobby_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcppwlobby diff --git a/lib/NitroDWC/asm/util/anime.s b/lib/external/NitroDWC/libraries/util/asm/anime.s similarity index 100% rename from lib/NitroDWC/asm/util/anime.s rename to lib/external/NitroDWC/libraries/util/asm/anime.s diff --git a/lib/NitroDWC/asm/util/aoss.s b/lib/external/NitroDWC/libraries/util/asm/aoss.s similarity index 100% rename from lib/NitroDWC/asm/util/aoss.s rename to lib/external/NitroDWC/libraries/util/asm/aoss.s diff --git a/lib/NitroDWC/asm/util/aosslink.s b/lib/external/NitroDWC/libraries/util/asm/aosslink.s similarity index 100% rename from lib/NitroDWC/asm/util/aosslink.s rename to lib/external/NitroDWC/libraries/util/asm/aosslink.s diff --git a/lib/NitroDWC/asm/util/apc.s b/lib/external/NitroDWC/libraries/util/asm/apc.s similarity index 100% rename from lib/NitroDWC/asm/util/apc.s rename to lib/external/NitroDWC/libraries/util/asm/apc.s diff --git a/lib/NitroDWC/asm/util/archive.s b/lib/external/NitroDWC/libraries/util/asm/archive.s similarity index 100% rename from lib/NitroDWC/asm/util/archive.s rename to lib/external/NitroDWC/libraries/util/asm/archive.s diff --git a/lib/NitroDWC/asm/util/atermset.s b/lib/external/NitroDWC/libraries/util/asm/atermset.s similarity index 100% rename from lib/NitroDWC/asm/util/atermset.s rename to lib/external/NitroDWC/libraries/util/asm/atermset.s diff --git a/lib/NitroDWC/asm/util/button.s b/lib/external/NitroDWC/libraries/util/asm/button.s similarity index 100% rename from lib/NitroDWC/asm/util/button.s rename to lib/external/NitroDWC/libraries/util/asm/button.s diff --git a/lib/NitroDWC/asm/util/cell.s b/lib/external/NitroDWC/libraries/util/asm/cell.s similarity index 100% rename from lib/NitroDWC/asm/util/cell.s rename to lib/external/NitroDWC/libraries/util/asm/cell.s diff --git a/lib/NitroDWC/asm/util/cellinfo.s b/lib/external/NitroDWC/libraries/util/asm/cellinfo.s similarity index 100% rename from lib/NitroDWC/asm/util/cellinfo.s rename to lib/external/NitroDWC/libraries/util/asm/cellinfo.s diff --git a/lib/NitroDWC/asm/util/comment.s b/lib/external/NitroDWC/libraries/util/asm/comment.s similarity index 100% rename from lib/NitroDWC/asm/util/comment.s rename to lib/external/NitroDWC/libraries/util/asm/comment.s diff --git a/lib/NitroDWC/asm/util/common.s b/lib/external/NitroDWC/libraries/util/asm/common.s similarity index 100% rename from lib/NitroDWC/asm/util/common.s rename to lib/external/NitroDWC/libraries/util/asm/common.s diff --git a/lib/NitroDWC/asm/util/deque.s b/lib/external/NitroDWC/libraries/util/asm/deque.s similarity index 100% rename from lib/NitroDWC/asm/util/deque.s rename to lib/external/NitroDWC/libraries/util/asm/deque.s diff --git a/lib/NitroDWC/asm/util/dwc_mov_mbp.s b/lib/external/NitroDWC/libraries/util/asm/dwc_mov_mbp.s similarity index 100% rename from lib/NitroDWC/asm/util/dwc_mov_mbp.s rename to lib/external/NitroDWC/libraries/util/asm/dwc_mov_mbp.s diff --git a/lib/NitroDWC/asm/util/dwc_mov_wh.s b/lib/external/NitroDWC/libraries/util/asm/dwc_mov_wh.s similarity index 100% rename from lib/NitroDWC/asm/util/dwc_mov_wh.s rename to lib/external/NitroDWC/libraries/util/asm/dwc_mov_wh.s diff --git a/lib/NitroDWC/asm/util/dwc_moveid.s b/lib/external/NitroDWC/libraries/util/asm/dwc_moveid.s similarity index 100% rename from lib/NitroDWC/asm/util/dwc_moveid.s rename to lib/external/NitroDWC/libraries/util/asm/dwc_moveid.s diff --git a/lib/NitroDWC/asm/util/effect.s b/lib/external/NitroDWC/libraries/util/asm/effect.s similarity index 100% rename from lib/NitroDWC/asm/util/effect.s rename to lib/external/NitroDWC/libraries/util/asm/effect.s diff --git a/lib/NitroDWC/asm/util/focus.s b/lib/external/NitroDWC/libraries/util/asm/focus.s similarity index 100% rename from lib/NitroDWC/asm/util/focus.s rename to lib/external/NitroDWC/libraries/util/asm/focus.s diff --git a/lib/NitroDWC/asm/util/font.s b/lib/external/NitroDWC/libraries/util/asm/font.s similarity index 100% rename from lib/NitroDWC/asm/util/font.s rename to lib/external/NitroDWC/libraries/util/asm/font.s diff --git a/lib/NitroDWC/asm/util/foundation.s b/lib/external/NitroDWC/libraries/util/asm/foundation.s similarity index 100% rename from lib/NitroDWC/asm/util/foundation.s rename to lib/external/NitroDWC/libraries/util/asm/foundation.s diff --git a/lib/NitroDWC/asm/util/graphics.s b/lib/external/NitroDWC/libraries/util/asm/graphics.s similarity index 100% rename from lib/NitroDWC/asm/util/graphics.s rename to lib/external/NitroDWC/libraries/util/asm/graphics.s diff --git a/lib/NitroDWC/asm/util/headline.s b/lib/external/NitroDWC/libraries/util/asm/headline.s similarity index 100% rename from lib/NitroDWC/asm/util/headline.s rename to lib/external/NitroDWC/libraries/util/asm/headline.s diff --git a/lib/NitroDWC/asm/util/heap_dwcutil.s b/lib/external/NitroDWC/libraries/util/asm/heap_dwcutil.s similarity index 100% rename from lib/NitroDWC/asm/util/heap_dwcutil.s rename to lib/external/NitroDWC/libraries/util/asm/heap_dwcutil.s diff --git a/lib/NitroDWC/asm/util/icon.s b/lib/external/NitroDWC/libraries/util/asm/icon.s similarity index 100% rename from lib/NitroDWC/asm/util/icon.s rename to lib/external/NitroDWC/libraries/util/asm/icon.s diff --git a/lib/NitroDWC/asm/util/incbin/atermset.bin b/lib/external/NitroDWC/libraries/util/asm/incbin/atermset.bin similarity index 100% rename from lib/NitroDWC/asm/util/incbin/atermset.bin rename to lib/external/NitroDWC/libraries/util/asm/incbin/atermset.bin diff --git a/lib/NitroDWC/asm/util/incbin/button.bin b/lib/external/NitroDWC/libraries/util/asm/incbin/button.bin similarity index 100% rename from lib/NitroDWC/asm/util/incbin/button.bin rename to lib/external/NitroDWC/libraries/util/asm/incbin/button.bin diff --git a/lib/NitroDWC/asm/util/incbin/common.bin b/lib/external/NitroDWC/libraries/util/asm/incbin/common.bin similarity index 100% rename from lib/NitroDWC/asm/util/incbin/common.bin rename to lib/external/NitroDWC/libraries/util/asm/incbin/common.bin diff --git a/lib/NitroDWC/asm/util/incbin/keyboard.bin b/lib/external/NitroDWC/libraries/util/asm/incbin/keyboard.bin similarity index 100% rename from lib/NitroDWC/asm/util/incbin/keyboard.bin rename to lib/external/NitroDWC/libraries/util/asm/incbin/keyboard.bin diff --git a/lib/NitroDWC/asm/util/incbin/keyboard10.bin b/lib/external/NitroDWC/libraries/util/asm/incbin/keyboard10.bin similarity index 100% rename from lib/NitroDWC/asm/util/incbin/keyboard10.bin rename to lib/external/NitroDWC/libraries/util/asm/incbin/keyboard10.bin diff --git a/lib/NitroDWC/asm/util/include/anime.inc b/lib/external/NitroDWC/libraries/util/asm/include/anime.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/anime.inc rename to lib/external/NitroDWC/libraries/util/asm/include/anime.inc diff --git a/lib/NitroDWC/asm/util/include/aoss.inc b/lib/external/NitroDWC/libraries/util/asm/include/aoss.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/aoss.inc rename to lib/external/NitroDWC/libraries/util/asm/include/aoss.inc diff --git a/lib/NitroDWC/asm/util/include/aosslink.inc b/lib/external/NitroDWC/libraries/util/asm/include/aosslink.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/aosslink.inc rename to lib/external/NitroDWC/libraries/util/asm/include/aosslink.inc diff --git a/lib/NitroDWC/asm/util/include/apc.inc b/lib/external/NitroDWC/libraries/util/asm/include/apc.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/apc.inc rename to lib/external/NitroDWC/libraries/util/asm/include/apc.inc diff --git a/lib/NitroDWC/asm/util/include/archive.inc b/lib/external/NitroDWC/libraries/util/asm/include/archive.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/archive.inc rename to lib/external/NitroDWC/libraries/util/asm/include/archive.inc diff --git a/lib/NitroDWC/asm/util/include/atermset.inc b/lib/external/NitroDWC/libraries/util/asm/include/atermset.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/atermset.inc rename to lib/external/NitroDWC/libraries/util/asm/include/atermset.inc diff --git a/lib/NitroDWC/asm/util/include/button.inc b/lib/external/NitroDWC/libraries/util/asm/include/button.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/button.inc rename to lib/external/NitroDWC/libraries/util/asm/include/button.inc diff --git a/lib/NitroDWC/asm/util/include/cell.inc b/lib/external/NitroDWC/libraries/util/asm/include/cell.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/cell.inc rename to lib/external/NitroDWC/libraries/util/asm/include/cell.inc diff --git a/lib/NitroDWC/asm/util/include/cellinfo.inc b/lib/external/NitroDWC/libraries/util/asm/include/cellinfo.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/cellinfo.inc rename to lib/external/NitroDWC/libraries/util/asm/include/cellinfo.inc diff --git a/lib/NitroDWC/asm/util/include/comment.inc b/lib/external/NitroDWC/libraries/util/asm/include/comment.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/comment.inc rename to lib/external/NitroDWC/libraries/util/asm/include/comment.inc diff --git a/lib/NitroDWC/asm/util/include/common.inc b/lib/external/NitroDWC/libraries/util/asm/include/common.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/common.inc rename to lib/external/NitroDWC/libraries/util/asm/include/common.inc diff --git a/lib/NitroDWC/asm/util/include/deque.inc b/lib/external/NitroDWC/libraries/util/asm/include/deque.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/deque.inc rename to lib/external/NitroDWC/libraries/util/asm/include/deque.inc diff --git a/lib/NitroDWC/asm/util/include/dwc_mov_mbp.inc b/lib/external/NitroDWC/libraries/util/asm/include/dwc_mov_mbp.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/dwc_mov_mbp.inc rename to lib/external/NitroDWC/libraries/util/asm/include/dwc_mov_mbp.inc diff --git a/lib/NitroDWC/asm/util/include/dwc_mov_wh.inc b/lib/external/NitroDWC/libraries/util/asm/include/dwc_mov_wh.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/dwc_mov_wh.inc rename to lib/external/NitroDWC/libraries/util/asm/include/dwc_mov_wh.inc diff --git a/lib/NitroDWC/asm/util/include/dwc_moveid.inc b/lib/external/NitroDWC/libraries/util/asm/include/dwc_moveid.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/dwc_moveid.inc rename to lib/external/NitroDWC/libraries/util/asm/include/dwc_moveid.inc diff --git a/lib/NitroDWC/asm/util/include/effect.inc b/lib/external/NitroDWC/libraries/util/asm/include/effect.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/effect.inc rename to lib/external/NitroDWC/libraries/util/asm/include/effect.inc diff --git a/lib/NitroDWC/asm/util/include/focus.inc b/lib/external/NitroDWC/libraries/util/asm/include/focus.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/focus.inc rename to lib/external/NitroDWC/libraries/util/asm/include/focus.inc diff --git a/lib/NitroDWC/asm/util/include/font.inc b/lib/external/NitroDWC/libraries/util/asm/include/font.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/font.inc rename to lib/external/NitroDWC/libraries/util/asm/include/font.inc diff --git a/lib/NitroDWC/asm/util/include/headline.inc b/lib/external/NitroDWC/libraries/util/asm/include/headline.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/headline.inc rename to lib/external/NitroDWC/libraries/util/asm/include/headline.inc diff --git a/lib/NitroDWC/asm/util/include/heap_dwcutil.inc b/lib/external/NitroDWC/libraries/util/asm/include/heap_dwcutil.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/heap_dwcutil.inc rename to lib/external/NitroDWC/libraries/util/asm/include/heap_dwcutil.inc diff --git a/lib/NitroDWC/asm/util/include/icon.inc b/lib/external/NitroDWC/libraries/util/asm/include/icon.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/icon.inc rename to lib/external/NitroDWC/libraries/util/asm/include/icon.inc diff --git a/lib/NitroDWC/asm/util/include/input.inc b/lib/external/NitroDWC/libraries/util/asm/include/input.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/input.inc rename to lib/external/NitroDWC/libraries/util/asm/include/input.inc diff --git a/lib/NitroDWC/asm/util/include/interrupt.inc b/lib/external/NitroDWC/libraries/util/asm/include/interrupt.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/interrupt.inc rename to lib/external/NitroDWC/libraries/util/asm/include/interrupt.inc diff --git a/lib/NitroDWC/asm/util/include/keyboard.inc b/lib/external/NitroDWC/libraries/util/asm/include/keyboard.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/keyboard.inc rename to lib/external/NitroDWC/libraries/util/asm/include/keyboard.inc diff --git a/lib/NitroDWC/asm/util/include/keyboard10.inc b/lib/external/NitroDWC/libraries/util/asm/include/keyboard10.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/keyboard10.inc rename to lib/external/NitroDWC/libraries/util/asm/include/keyboard10.inc diff --git a/lib/NitroDWC/asm/util/include/libaoss.inc b/lib/external/NitroDWC/libraries/util/asm/include/libaoss.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/libaoss.inc rename to lib/external/NitroDWC/libraries/util/asm/include/libaoss.inc diff --git a/lib/NitroDWC/asm/util/include/list_dwcutil.inc b/lib/external/NitroDWC/libraries/util/asm/include/list_dwcutil.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/list_dwcutil.inc rename to lib/external/NitroDWC/libraries/util/asm/include/list_dwcutil.inc diff --git a/lib/NitroDWC/asm/util/include/main_dwcutil.inc b/lib/external/NitroDWC/libraries/util/asm/include/main_dwcutil.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/main_dwcutil.inc rename to lib/external/NitroDWC/libraries/util/asm/include/main_dwcutil.inc diff --git a/lib/NitroDWC/asm/util/include/message.inc b/lib/external/NitroDWC/libraries/util/asm/include/message.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/message.inc rename to lib/external/NitroDWC/libraries/util/asm/include/message.inc diff --git a/lib/NitroDWC/asm/util/include/move.inc b/lib/external/NitroDWC/libraries/util/asm/include/move.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/move.inc rename to lib/external/NitroDWC/libraries/util/asm/include/move.inc diff --git a/lib/NitroDWC/asm/util/include/obj.inc b/lib/external/NitroDWC/libraries/util/asm/include/obj.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/obj.inc rename to lib/external/NitroDWC/libraries/util/asm/include/obj.inc diff --git a/lib/NitroDWC/asm/util/include/objvram.inc b/lib/external/NitroDWC/libraries/util/asm/include/objvram.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/objvram.inc rename to lib/external/NitroDWC/libraries/util/asm/include/objvram.inc diff --git a/lib/NitroDWC/asm/util/include/rakuraku.inc b/lib/external/NitroDWC/libraries/util/asm/include/rakuraku.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/rakuraku.inc rename to lib/external/NitroDWC/libraries/util/asm/include/rakuraku.inc diff --git a/lib/NitroDWC/asm/util/include/sceneend.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneend.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneend.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneend.inc diff --git a/lib/NitroDWC/asm/util/include/sceneinit.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneinit.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneinit.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneinit.inc diff --git a/lib/NitroDWC/asm/util/include/scenemenu.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenemenu.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenemenu.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenemenu.inc diff --git a/lib/NitroDWC/asm/util/include/sceneopterase.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneopterase.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneopterase.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneopterase.inc diff --git a/lib/NitroDWC/asm/util/include/sceneopterase1.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneopterase1.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneopterase1.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneopterase1.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptinfo.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptinfo.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptinfo.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptinfo.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmenu.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmenu.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmenu.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmenu.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmovcomm.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovcomm.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmovcomm.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovcomm.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmovcomplete.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovcomplete.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmovcomplete.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovcomplete.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmovconfirm.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovconfirm.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmovconfirm.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovconfirm.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmovdisconnect.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovdisconnect.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmovdisconnect.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovdisconnect.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmovfailure.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovfailure.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmovfailure.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovfailure.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmovuser.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovuser.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmovuser.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovuser.inc diff --git a/lib/NitroDWC/asm/util/include/sceneoptmovwait.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovwait.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneoptmovwait.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneoptmovwait.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetaossbutton.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetaossbutton.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetaossbutton.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetaossbutton.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetaosscomplete.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetaosscomplete.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetaosscomplete.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetaosscomplete.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetaplist.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetaplist.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetaplist.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetaplist.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetedit32.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetedit32.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetedit32.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetedit32.inc diff --git a/lib/NitroDWC/asm/util/include/sceneseteditaddress.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneseteditaddress.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneseteditaddress.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneseteditaddress.inc diff --git a/lib/NitroDWC/asm/util/include/sceneseterror.inc b/lib/external/NitroDWC/libraries/util/asm/include/sceneseterror.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sceneseterror.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sceneseterror.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetlist.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetlist.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetlist.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetlist.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetlistsave.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetlistsave.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetlistsave.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetlistsave.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetrakubutton.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetrakubutton.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetrakubutton.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetrakubutton.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetrakucomplete.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetrakucomplete.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetrakucomplete.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetrakucomplete.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetrakuready.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetrakuready.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetrakuready.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetrakuready.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetsearch.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetsearch.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetsearch.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetsearch.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetselectap.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetselectap.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetselectap.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetselectap.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetselectway.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetselectway.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetselectway.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetselectway.inc diff --git a/lib/NitroDWC/asm/util/include/scenesettest.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesettest.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesettest.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesettest.inc diff --git a/lib/NitroDWC/asm/util/include/scenesettestcomplete.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesettestcomplete.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesettestcomplete.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesettestcomplete.inc diff --git a/lib/NitroDWC/asm/util/include/scenesettestconfirm.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesettestconfirm.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesettestconfirm.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesettestconfirm.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetusbcomplete.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetusbcomplete.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetusbcomplete.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetusbcomplete.inc diff --git a/lib/NitroDWC/asm/util/include/scenesetusbready.inc b/lib/external/NitroDWC/libraries/util/asm/include/scenesetusbready.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scenesetusbready.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scenesetusbready.inc diff --git a/lib/NitroDWC/asm/util/include/screen.inc b/lib/external/NitroDWC/libraries/util/asm/include/screen.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/screen.inc rename to lib/external/NitroDWC/libraries/util/asm/include/screen.inc diff --git a/lib/NitroDWC/asm/util/include/scrollbar.inc b/lib/external/NitroDWC/libraries/util/asm/include/scrollbar.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/scrollbar.inc rename to lib/external/NitroDWC/libraries/util/asm/include/scrollbar.inc diff --git a/lib/NitroDWC/asm/util/include/search_dwcutil.inc b/lib/external/NitroDWC/libraries/util/asm/include/search_dwcutil.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/search_dwcutil.inc rename to lib/external/NitroDWC/libraries/util/asm/include/search_dwcutil.inc diff --git a/lib/NitroDWC/asm/util/include/setting.inc b/lib/external/NitroDWC/libraries/util/asm/include/setting.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/setting.inc rename to lib/external/NitroDWC/libraries/util/asm/include/setting.inc diff --git a/lib/NitroDWC/asm/util/include/sound.inc b/lib/external/NitroDWC/libraries/util/asm/include/sound.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sound.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sound.inc diff --git a/lib/NitroDWC/asm/util/include/step.inc b/lib/external/NitroDWC/libraries/util/asm/include/step.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/step.inc rename to lib/external/NitroDWC/libraries/util/asm/include/step.inc diff --git a/lib/NitroDWC/asm/util/include/sub.inc b/lib/external/NitroDWC/libraries/util/asm/include/sub.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/sub.inc rename to lib/external/NitroDWC/libraries/util/asm/include/sub.inc diff --git a/lib/NitroDWC/asm/util/include/task.inc b/lib/external/NitroDWC/libraries/util/asm/include/task.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/task.inc rename to lib/external/NitroDWC/libraries/util/asm/include/task.inc diff --git a/lib/NitroDWC/asm/util/include/usbap.inc b/lib/external/NitroDWC/libraries/util/asm/include/usbap.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/usbap.inc rename to lib/external/NitroDWC/libraries/util/asm/include/usbap.inc diff --git a/lib/NitroDWC/asm/util/include/window.inc b/lib/external/NitroDWC/libraries/util/asm/include/window.inc similarity index 100% rename from lib/NitroDWC/asm/util/include/window.inc rename to lib/external/NitroDWC/libraries/util/asm/include/window.inc diff --git a/lib/NitroDWC/asm/util/input.s b/lib/external/NitroDWC/libraries/util/asm/input.s similarity index 100% rename from lib/NitroDWC/asm/util/input.s rename to lib/external/NitroDWC/libraries/util/asm/input.s diff --git a/lib/NitroDWC/asm/util/interrupt.s b/lib/external/NitroDWC/libraries/util/asm/interrupt.s similarity index 100% rename from lib/NitroDWC/asm/util/interrupt.s rename to lib/external/NitroDWC/libraries/util/asm/interrupt.s diff --git a/lib/NitroDWC/asm/util/keyboard.s b/lib/external/NitroDWC/libraries/util/asm/keyboard.s similarity index 100% rename from lib/NitroDWC/asm/util/keyboard.s rename to lib/external/NitroDWC/libraries/util/asm/keyboard.s diff --git a/lib/NitroDWC/asm/util/keyboard10.s b/lib/external/NitroDWC/libraries/util/asm/keyboard10.s similarity index 100% rename from lib/NitroDWC/asm/util/keyboard10.s rename to lib/external/NitroDWC/libraries/util/asm/keyboard10.s diff --git a/lib/NitroDWC/asm/util/libaoss.s b/lib/external/NitroDWC/libraries/util/asm/libaoss.s similarity index 100% rename from lib/NitroDWC/asm/util/libaoss.s rename to lib/external/NitroDWC/libraries/util/asm/libaoss.s diff --git a/lib/NitroDWC/asm/util/list_dwcutil.s b/lib/external/NitroDWC/libraries/util/asm/list_dwcutil.s similarity index 100% rename from lib/NitroDWC/asm/util/list_dwcutil.s rename to lib/external/NitroDWC/libraries/util/asm/list_dwcutil.s diff --git a/lib/external/NitroDWC/libraries/util/asm/macros/function.inc b/lib/external/NitroDWC/libraries/util/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroDWC/libraries/util/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroDWC/asm/util/main_dwcutil.s b/lib/external/NitroDWC/libraries/util/asm/main_dwcutil.s similarity index 100% rename from lib/NitroDWC/asm/util/main_dwcutil.s rename to lib/external/NitroDWC/libraries/util/asm/main_dwcutil.s diff --git a/lib/NitroDWC/asm/util/message.s b/lib/external/NitroDWC/libraries/util/asm/message.s similarity index 100% rename from lib/NitroDWC/asm/util/message.s rename to lib/external/NitroDWC/libraries/util/asm/message.s diff --git a/lib/NitroDWC/asm/util/move.s b/lib/external/NitroDWC/libraries/util/asm/move.s similarity index 100% rename from lib/NitroDWC/asm/util/move.s rename to lib/external/NitroDWC/libraries/util/asm/move.s diff --git a/lib/NitroDWC/asm/util/obj.s b/lib/external/NitroDWC/libraries/util/asm/obj.s similarity index 100% rename from lib/NitroDWC/asm/util/obj.s rename to lib/external/NitroDWC/libraries/util/asm/obj.s diff --git a/lib/NitroDWC/asm/util/objvram.s b/lib/external/NitroDWC/libraries/util/asm/objvram.s similarity index 100% rename from lib/NitroDWC/asm/util/objvram.s rename to lib/external/NitroDWC/libraries/util/asm/objvram.s diff --git a/lib/NitroDWC/asm/util/rakuraku.s b/lib/external/NitroDWC/libraries/util/asm/rakuraku.s similarity index 100% rename from lib/NitroDWC/asm/util/rakuraku.s rename to lib/external/NitroDWC/libraries/util/asm/rakuraku.s diff --git a/lib/NitroDWC/asm/util/sceneend.s b/lib/external/NitroDWC/libraries/util/asm/sceneend.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneend.s rename to lib/external/NitroDWC/libraries/util/asm/sceneend.s diff --git a/lib/NitroDWC/asm/util/sceneinit.s b/lib/external/NitroDWC/libraries/util/asm/sceneinit.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneinit.s rename to lib/external/NitroDWC/libraries/util/asm/sceneinit.s diff --git a/lib/NitroDWC/asm/util/scenemenu.s b/lib/external/NitroDWC/libraries/util/asm/scenemenu.s similarity index 100% rename from lib/NitroDWC/asm/util/scenemenu.s rename to lib/external/NitroDWC/libraries/util/asm/scenemenu.s diff --git a/lib/NitroDWC/asm/util/sceneopterase.s b/lib/external/NitroDWC/libraries/util/asm/sceneopterase.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneopterase.s rename to lib/external/NitroDWC/libraries/util/asm/sceneopterase.s diff --git a/lib/NitroDWC/asm/util/sceneopterase1.s b/lib/external/NitroDWC/libraries/util/asm/sceneopterase1.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneopterase1.s rename to lib/external/NitroDWC/libraries/util/asm/sceneopterase1.s diff --git a/lib/NitroDWC/asm/util/sceneoptinfo.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptinfo.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptinfo.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptinfo.s diff --git a/lib/NitroDWC/asm/util/sceneoptmenu.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmenu.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmenu.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmenu.s diff --git a/lib/NitroDWC/asm/util/sceneoptmovcomm.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmovcomm.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmovcomm.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmovcomm.s diff --git a/lib/NitroDWC/asm/util/sceneoptmovcomplete.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmovcomplete.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmovcomplete.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmovcomplete.s diff --git a/lib/NitroDWC/asm/util/sceneoptmovconfirm.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmovconfirm.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmovconfirm.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmovconfirm.s diff --git a/lib/NitroDWC/asm/util/sceneoptmovdisconnect.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmovdisconnect.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmovdisconnect.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmovdisconnect.s diff --git a/lib/NitroDWC/asm/util/sceneoptmovfailure.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmovfailure.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmovfailure.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmovfailure.s diff --git a/lib/NitroDWC/asm/util/sceneoptmovuser.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmovuser.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmovuser.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmovuser.s diff --git a/lib/NitroDWC/asm/util/sceneoptmovwait.s b/lib/external/NitroDWC/libraries/util/asm/sceneoptmovwait.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneoptmovwait.s rename to lib/external/NitroDWC/libraries/util/asm/sceneoptmovwait.s diff --git a/lib/NitroDWC/asm/util/scenesetaossbutton.s b/lib/external/NitroDWC/libraries/util/asm/scenesetaossbutton.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetaossbutton.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetaossbutton.s diff --git a/lib/NitroDWC/asm/util/scenesetaosscomplete.s b/lib/external/NitroDWC/libraries/util/asm/scenesetaosscomplete.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetaosscomplete.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetaosscomplete.s diff --git a/lib/NitroDWC/asm/util/scenesetaplist.s b/lib/external/NitroDWC/libraries/util/asm/scenesetaplist.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetaplist.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetaplist.s diff --git a/lib/NitroDWC/asm/util/scenesetedit32.s b/lib/external/NitroDWC/libraries/util/asm/scenesetedit32.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetedit32.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetedit32.s diff --git a/lib/NitroDWC/asm/util/sceneseteditaddress.s b/lib/external/NitroDWC/libraries/util/asm/sceneseteditaddress.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneseteditaddress.s rename to lib/external/NitroDWC/libraries/util/asm/sceneseteditaddress.s diff --git a/lib/NitroDWC/asm/util/sceneseterror.s b/lib/external/NitroDWC/libraries/util/asm/sceneseterror.s similarity index 100% rename from lib/NitroDWC/asm/util/sceneseterror.s rename to lib/external/NitroDWC/libraries/util/asm/sceneseterror.s diff --git a/lib/NitroDWC/asm/util/scenesetlist.s b/lib/external/NitroDWC/libraries/util/asm/scenesetlist.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetlist.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetlist.s diff --git a/lib/NitroDWC/asm/util/scenesetlistsave.s b/lib/external/NitroDWC/libraries/util/asm/scenesetlistsave.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetlistsave.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetlistsave.s diff --git a/lib/NitroDWC/asm/util/scenesetrakubutton.s b/lib/external/NitroDWC/libraries/util/asm/scenesetrakubutton.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetrakubutton.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetrakubutton.s diff --git a/lib/NitroDWC/asm/util/scenesetrakucomplete.s b/lib/external/NitroDWC/libraries/util/asm/scenesetrakucomplete.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetrakucomplete.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetrakucomplete.s diff --git a/lib/NitroDWC/asm/util/scenesetrakuready.s b/lib/external/NitroDWC/libraries/util/asm/scenesetrakuready.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetrakuready.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetrakuready.s diff --git a/lib/NitroDWC/asm/util/scenesetsearch.s b/lib/external/NitroDWC/libraries/util/asm/scenesetsearch.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetsearch.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetsearch.s diff --git a/lib/NitroDWC/asm/util/scenesetselectap.s b/lib/external/NitroDWC/libraries/util/asm/scenesetselectap.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetselectap.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetselectap.s diff --git a/lib/NitroDWC/asm/util/scenesetselectway.s b/lib/external/NitroDWC/libraries/util/asm/scenesetselectway.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetselectway.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetselectway.s diff --git a/lib/NitroDWC/asm/util/scenesettest.s b/lib/external/NitroDWC/libraries/util/asm/scenesettest.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesettest.s rename to lib/external/NitroDWC/libraries/util/asm/scenesettest.s diff --git a/lib/NitroDWC/asm/util/scenesettestcomplete.s b/lib/external/NitroDWC/libraries/util/asm/scenesettestcomplete.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesettestcomplete.s rename to lib/external/NitroDWC/libraries/util/asm/scenesettestcomplete.s diff --git a/lib/NitroDWC/asm/util/scenesettestconfirm.s b/lib/external/NitroDWC/libraries/util/asm/scenesettestconfirm.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesettestconfirm.s rename to lib/external/NitroDWC/libraries/util/asm/scenesettestconfirm.s diff --git a/lib/NitroDWC/asm/util/scenesetusbcomplete.s b/lib/external/NitroDWC/libraries/util/asm/scenesetusbcomplete.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetusbcomplete.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetusbcomplete.s diff --git a/lib/NitroDWC/asm/util/scenesetusbready.s b/lib/external/NitroDWC/libraries/util/asm/scenesetusbready.s similarity index 100% rename from lib/NitroDWC/asm/util/scenesetusbready.s rename to lib/external/NitroDWC/libraries/util/asm/scenesetusbready.s diff --git a/lib/NitroDWC/asm/util/screen.s b/lib/external/NitroDWC/libraries/util/asm/screen.s similarity index 100% rename from lib/NitroDWC/asm/util/screen.s rename to lib/external/NitroDWC/libraries/util/asm/screen.s diff --git a/lib/NitroDWC/asm/util/scrollbar.s b/lib/external/NitroDWC/libraries/util/asm/scrollbar.s similarity index 100% rename from lib/NitroDWC/asm/util/scrollbar.s rename to lib/external/NitroDWC/libraries/util/asm/scrollbar.s diff --git a/lib/NitroDWC/asm/util/search_dwcutil.s b/lib/external/NitroDWC/libraries/util/asm/search_dwcutil.s similarity index 100% rename from lib/NitroDWC/asm/util/search_dwcutil.s rename to lib/external/NitroDWC/libraries/util/asm/search_dwcutil.s diff --git a/lib/NitroDWC/asm/util/setting.s b/lib/external/NitroDWC/libraries/util/asm/setting.s similarity index 100% rename from lib/NitroDWC/asm/util/setting.s rename to lib/external/NitroDWC/libraries/util/asm/setting.s diff --git a/lib/NitroDWC/asm/util/sound.s b/lib/external/NitroDWC/libraries/util/asm/sound.s similarity index 100% rename from lib/NitroDWC/asm/util/sound.s rename to lib/external/NitroDWC/libraries/util/asm/sound.s diff --git a/lib/NitroDWC/asm/util/step.s b/lib/external/NitroDWC/libraries/util/asm/step.s similarity index 100% rename from lib/NitroDWC/asm/util/step.s rename to lib/external/NitroDWC/libraries/util/asm/step.s diff --git a/lib/NitroDWC/asm/util/str.s b/lib/external/NitroDWC/libraries/util/asm/str.s similarity index 100% rename from lib/NitroDWC/asm/util/str.s rename to lib/external/NitroDWC/libraries/util/asm/str.s diff --git a/lib/NitroDWC/asm/util/sub.s b/lib/external/NitroDWC/libraries/util/asm/sub.s similarity index 100% rename from lib/NitroDWC/asm/util/sub.s rename to lib/external/NitroDWC/libraries/util/asm/sub.s diff --git a/lib/NitroDWC/asm/util/task.s b/lib/external/NitroDWC/libraries/util/asm/task.s similarity index 100% rename from lib/NitroDWC/asm/util/task.s rename to lib/external/NitroDWC/libraries/util/asm/task.s diff --git a/lib/NitroDWC/asm/util/usbap.s b/lib/external/NitroDWC/libraries/util/asm/usbap.s similarity index 100% rename from lib/NitroDWC/asm/util/usbap.s rename to lib/external/NitroDWC/libraries/util/asm/usbap.s diff --git a/lib/NitroDWC/asm/util/window.s b/lib/external/NitroDWC/libraries/util/asm/window.s similarity index 100% rename from lib/NitroDWC/asm/util/window.s rename to lib/external/NitroDWC/libraries/util/asm/window.s diff --git a/lib/external/NitroDWC/libraries/util/meson.build b/lib/external/NitroDWC/libraries/util/meson.build new file mode 100644 index 0000000000..e9d4ba41b6 --- /dev/null +++ b/lib/external/NitroDWC/libraries/util/meson.build @@ -0,0 +1,90 @@ +libdwcutil_srcs = files( + 'asm/aoss.s', + 'asm/aosslink.s', + 'asm/apc.s', + 'asm/atermset.s', + 'asm/anime.s', + 'asm/button.s', + 'asm/comment.s', + 'asm/common.s', + 'asm/focus.s', + 'asm/headline.s', + 'asm/icon.s', + 'asm/keyboard.s', + 'asm/keyboard10.s', + 'asm/libaoss.s', + 'asm/main_dwcutil.s', + 'asm/message.s', + 'asm/move.s', + 'asm/rakuraku.s', + 'asm/sceneend.s', + 'asm/sceneinit.s', + 'asm/scenemenu.s', + 'asm/sceneopterase.s', + 'asm/sceneopterase1.s', + 'asm/sceneoptinfo.s', + 'asm/sceneoptmenu.s', + 'asm/sceneoptmovcomm.s', + 'asm/sceneoptmovcomplete.s', + 'asm/sceneoptmovconfirm.s', + 'asm/sceneoptmovdisconnect.s', + 'asm/sceneoptmovfailure.s', + 'asm/sceneoptmovuser.s', + 'asm/sceneoptmovwait.s', + 'asm/scenesetaossbutton.s', + 'asm/scenesetaosscomplete.s', + 'asm/scenesetaplist.s', + 'asm/scenesetedit32.s', + 'asm/sceneseteditaddress.s', + 'asm/sceneseterror.s', + 'asm/scenesetlist.s', + 'asm/scenesetlistsave.s', + 'asm/scenesetrakubutton.s', + 'asm/scenesetrakucomplete.s', + 'asm/scenesetrakuready.s', + 'asm/scenesetsearch.s', + 'asm/scenesetselectap.s', + 'asm/scenesetselectway.s', + 'asm/scenesettest.s', + 'asm/scenesettestcomplete.s', + 'asm/scenesettestconfirm.s', + 'asm/scenesetusbcomplete.s', + 'asm/scenesetusbready.s', + 'asm/screen.s', + 'asm/scrollbar.s', + 'asm/search_dwcutil.s', + 'asm/setting.s', + 'asm/sound.s', + 'asm/step.s', + 'asm/usbap.s', + 'asm/window.s', + 'asm/dwc_mov_mbp.s', + 'asm/dwc_mov_wh.s', + 'asm/dwc_moveid.s', + 'asm/archive.s', + 'asm/cell.s', + 'asm/cellinfo.s', + 'asm/deque.s', + 'asm/effect.s', + 'asm/font.s', + 'asm/foundation.s', + 'asm/graphics.s', + 'asm/heap_dwcutil.s', + 'asm/input.s', + 'asm/interrupt.s', + 'asm/list_dwcutil.s', + 'asm/obj.s', + 'asm/objvram.s', + 'asm/str.s', + 'asm/sub.s', + 'asm/task.s' +) + +libdwcutil = static_library('dwcutil', + sources: libdwcutil_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrodwc_libs += libdwcutil diff --git a/lib/external/NitroDWC/meson.build b/lib/external/NitroDWC/meson.build new file mode 100644 index 0000000000..8a0bdda499 --- /dev/null +++ b/lib/external/NitroDWC/meson.build @@ -0,0 +1,63 @@ +project('NitroDWC', ['c', 'nasm']) + +# Compiler flags +c_args = [ + '-O4,p', + '-proc', 'arm946e', + '-enum', 'int', + '-lang', 'c99', + '-Cpp_exceptions', 'off', + '-gccext,on', + '-msgstyle', 'gcc', + '-ipa', 'file', + '-interworking', + '-inline', 'on,noauto', + '-char', 'signed', + '-nosyspath', + '-nostdinc' +] + +asm_args = [ + '-proc', 'arm5TE', + '-gccinc' +] + +sdk_args = [ + '-DSDK_CW_FORCE_EXPORT_SUPPORT', + '-DSDK_TS', + '-DSDK_4M', + '-DSDK_ARM9', + '-DSDK_CW', + '-DSDK_FINALROM', + '-DSDK_CODE_ARM', + '-DNNS_FINALROM' +] + +# Dependencies +msl_dep = dependency('msl', fallback: ['msl', 'msl_dep']) +gamespy_dep = dependency('gamespy', fallback : ['gamespy', 'gamespy_dep']) +nitrosdk_dep = dependency('NitroSDK', fallback : ['NitroSDK', 'nitrosdk_dep']) +nitrosystem_dep = dependency('NitroSystem', fallback : ['NitroSystem', 'nitrosystem_dep']) +nitrowifi_dep = dependency('NitroWiFi', fallback : ['NitroWiFi', 'nitrowifi_dep']) + +# Public includes +public_includes = include_directories('include') +nitro_pch = subproject('NitroSDK').get_variable('nitro_pch') + +# Libraries +nitrodwc_libs = [] +subdir('libraries') + +# Own dependency for consumers +nitrodwc_dep = declare_dependency( + compile_args: sdk_args, + dependencies: [ + msl_dep, + gamespy_dep, + nitrosdk_dep, + nitrosystem_dep, + nitrowifi_dep + ], + include_directories: public_includes, + link_with: nitrodwc_libs +) \ No newline at end of file diff --git a/lib/external/NitroSDK/autogen/meson.build b/lib/external/NitroSDK/autogen/meson.build new file mode 100644 index 0000000000..104afbdf60 --- /dev/null +++ b/lib/external/NitroSDK/autogen/meson.build @@ -0,0 +1 @@ +subdir('nitro/fx') diff --git a/tools/gen_fx_consts/fx_const.csv b/lib/external/NitroSDK/autogen/nitro/fx/fx_const.csv similarity index 100% rename from tools/gen_fx_consts/fx_const.csv rename to lib/external/NitroSDK/autogen/nitro/fx/fx_const.csv diff --git a/lib/external/NitroSDK/autogen/nitro/fx/gen_fx_const.py b/lib/external/NitroSDK/autogen/nitro/fx/gen_fx_const.py new file mode 100644 index 0000000000..832ce99e41 --- /dev/null +++ b/lib/external/NitroSDK/autogen/nitro/fx/gen_fx_const.py @@ -0,0 +1,138 @@ +#!/usr/bin/env python3 + +import argparse +import csv +import math + + +class FxSpec: + intpart_dict = { + 'fx32': 19, + 'fx64': 51, + 'fx64c': 31, + 'fx16': 3 + } + + fracpart_dict = { + 'fx32': 12, + 'fx64': 12, + 'fx64c': 32, + 'fx16': 12 + } + + l_suffix_dict = { + 'fx32': 'L', + 'fx64': 'LL', + 'fx64c': 'LL', + 'fx16': '' + } + + def __init__(self, name: str) -> 'FxSpec': + self.name = name + + @property + def intpart(self): + return self._intpart + + @intpart.getter + def intpart(self): + return self.intpart_dict[self.name] + + @property + def fracpart(self): + return self._fracpart + + @fracpart.getter + def fracpart(self): + return self.fracpart_dict[self.name] + + @property + def l_suffix(self): + return self._l_suffix + + @l_suffix.getter + def l_suffix(self): + return self.l_suffix_dict[self.name] + + +class FxConst: + def __init__(self, name: str, fxtype: FxSpec, value: float) -> 'FxConst': + self.fxtype = fxtype + self.name = name + self.value = value + + @property + def name(self): + return self._name + + @name.setter + def name(self, value: str): + self._name = f'{self.fxtype.name.upper()}_{value}' + + def encode(self) -> int: + if self.value == 0: + return 0 + + ret_di = 0.0 + ret_df = 0.0 + value_abs = 0.0 + ret_ii = 0 + ret_if = 0 + ret_val = 0 + + value_abs = abs(self.value) + ret_di = math.floor(value_abs) + ret_df = value_abs - ret_di + ret_ii = int(value_abs * (1 << self.fxtype.fracpart)) + ret_if = int(ret_df * (1 << self.fxtype.fracpart) + 0.5) + ret_ii &= ~((1 << self.fxtype.fracpart) - 1) + ret_if &= (1 << self.fxtype.fracpart) - 1 + ret_val = ret_ii + ret_if + + if self.value < 0: + ret_val = -ret_val + + return ret_val + + +def generate_define(c: FxConst) -> str: + hex_value = f'(({c.fxtype.name}) 0x{hex(c.encode())[2:].zfill(16)}{c.fxtype.l_suffix})' + comment = f'// {c.value:.12f}' + + return f'#define {c.name: <20} {hex_value: ^20} {comment: >25}' + + +def generate_header(constants: list[FxConst]) -> str: + guard_top = '\n'.join(['#ifndef FX_CONST_H', '#define FX_CONST_H', str()]) + body = '\n'.join(generate_define(c) for c in constants) + guard_bottom = '\n'.join(['', '#endif // FX_CONST_H', '']) + + return '\n'.join([guard_top, body, guard_bottom]) + + +def main(): + args = parse_args() + constants = parse_csv(args.input) + header = generate_header(constants) + with open(args.output, 'w') as out: + out.write(header) + + +def parse_args(): + parser = argparse.ArgumentParser(description='fx_const.h header generator') + parser.add_argument('input', type=str) + parser.add_argument('output', type=str) + return parser.parse_args() + + +def parse_csv(path: str) -> list[FxConst]: + with open(path, newline='') as file: + reader = csv.reader(file) + return list( + FxConst( + row[0], FxSpec(row[1]), float(row[2])) + for row in reader if not row[0].startswith('#')) + + +if __name__ == '__main__': + main() diff --git a/lib/external/NitroSDK/autogen/nitro/fx/meson.build b/lib/external/NitroSDK/autogen/nitro/fx/meson.build new file mode 100644 index 0000000000..1e102d6411 --- /dev/null +++ b/lib/external/NitroSDK/autogen/nitro/fx/meson.build @@ -0,0 +1,9 @@ +fx_const_csv = files('fx_const.csv') +gen_fx_const_py = find_program('gen_fx_const.py', native: true) + +fx_const_h = custom_target('fx_const.h', + input: fx_const_csv, + output: 'fx_const.h', + command: [gen_fx_const_py, '@INPUT@', '@OUTPUT@'], + build_by_default: true +) \ No newline at end of file diff --git a/sub/ichneumon_sub.sbin b/lib/external/NitroSDK/components/ichneumon_sub.sbin similarity index 100% rename from sub/ichneumon_sub.sbin rename to lib/external/NitroSDK/components/ichneumon_sub.sbin diff --git a/sub/ichneumon_sub_defs.sbin b/lib/external/NitroSDK/components/ichneumon_sub_defs.sbin similarity index 100% rename from sub/ichneumon_sub_defs.sbin rename to lib/external/NitroSDK/components/ichneumon_sub_defs.sbin diff --git a/lib/external/NitroSDK/components/meson.build b/lib/external/NitroSDK/components/meson.build new file mode 100644 index 0000000000..de3e23a815 --- /dev/null +++ b/lib/external/NitroSDK/components/meson.build @@ -0,0 +1,2 @@ +ichneumon_sub = files('ichneumon_sub.sbin') +ichneumon_sub_defs = files('ichneumon_sub_defs.sbin') \ No newline at end of file diff --git a/lib/NitroSDK/include/nitro.h b/lib/external/NitroSDK/include/nitro.h similarity index 100% rename from lib/NitroSDK/include/nitro.h rename to lib/external/NitroSDK/include/nitro.h diff --git a/lib/NitroSDK/include/nitro/card.h b/lib/external/NitroSDK/include/nitro/card.h similarity index 100% rename from lib/NitroSDK/include/nitro/card.h rename to lib/external/NitroSDK/include/nitro/card.h diff --git a/lib/NitroSDK/include/nitro/card/backup.h b/lib/external/NitroSDK/include/nitro/card/backup.h similarity index 100% rename from lib/NitroSDK/include/nitro/card/backup.h rename to lib/external/NitroSDK/include/nitro/card/backup.h diff --git a/lib/NitroSDK/include/nitro/card/common.h b/lib/external/NitroSDK/include/nitro/card/common.h similarity index 100% rename from lib/NitroSDK/include/nitro/card/common.h rename to lib/external/NitroSDK/include/nitro/card/common.h diff --git a/lib/NitroSDK/include/nitro/card/eeprom.h b/lib/external/NitroSDK/include/nitro/card/eeprom.h similarity index 100% rename from lib/NitroSDK/include/nitro/card/eeprom.h rename to lib/external/NitroSDK/include/nitro/card/eeprom.h diff --git a/lib/NitroSDK/include/nitro/card/flash.h b/lib/external/NitroSDK/include/nitro/card/flash.h similarity index 100% rename from lib/NitroSDK/include/nitro/card/flash.h rename to lib/external/NitroSDK/include/nitro/card/flash.h diff --git a/lib/NitroSDK/include/nitro/card/fram.h b/lib/external/NitroSDK/include/nitro/card/fram.h similarity index 100% rename from lib/NitroSDK/include/nitro/card/fram.h rename to lib/external/NitroSDK/include/nitro/card/fram.h diff --git a/lib/NitroSDK/include/nitro/card/pullOut.h b/lib/external/NitroSDK/include/nitro/card/pullOut.h similarity index 100% rename from lib/NitroSDK/include/nitro/card/pullOut.h rename to lib/external/NitroSDK/include/nitro/card/pullOut.h diff --git a/lib/NitroSDK/include/nitro/card/rom.h b/lib/external/NitroSDK/include/nitro/card/rom.h similarity index 100% rename from lib/NitroSDK/include/nitro/card/rom.h rename to lib/external/NitroSDK/include/nitro/card/rom.h diff --git a/lib/NitroSDK/include/nitro/cht.h b/lib/external/NitroSDK/include/nitro/cht.h similarity index 100% rename from lib/NitroSDK/include/nitro/cht.h rename to lib/external/NitroSDK/include/nitro/cht.h diff --git a/lib/NitroSDK/include/nitro/cht/ARM9/pictocatch.h b/lib/external/NitroSDK/include/nitro/cht/ARM9/pictocatch.h similarity index 100% rename from lib/NitroSDK/include/nitro/cht/ARM9/pictocatch.h rename to lib/external/NitroSDK/include/nitro/cht/ARM9/pictocatch.h diff --git a/lib/NitroSDK/include/nitro/code16.h b/lib/external/NitroSDK/include/nitro/code16.h similarity index 100% rename from lib/NitroSDK/include/nitro/code16.h rename to lib/external/NitroSDK/include/nitro/code16.h diff --git a/lib/NitroSDK/include/nitro/code32.h b/lib/external/NitroSDK/include/nitro/code32.h similarity index 100% rename from lib/NitroSDK/include/nitro/code32.h rename to lib/external/NitroSDK/include/nitro/code32.h diff --git a/lib/NitroSDK/include/nitro/codereset.h b/lib/external/NitroSDK/include/nitro/codereset.h similarity index 100% rename from lib/NitroSDK/include/nitro/codereset.h rename to lib/external/NitroSDK/include/nitro/codereset.h diff --git a/lib/NitroSDK/include/nitro/cp.h b/lib/external/NitroSDK/include/nitro/cp.h similarity index 100% rename from lib/NitroSDK/include/nitro/cp.h rename to lib/external/NitroSDK/include/nitro/cp.h diff --git a/lib/NitroSDK/include/nitro/cp/context.h b/lib/external/NitroSDK/include/nitro/cp/context.h similarity index 100% rename from lib/NitroSDK/include/nitro/cp/context.h rename to lib/external/NitroSDK/include/nitro/cp/context.h diff --git a/lib/NitroSDK/include/nitro/cp/divider.h b/lib/external/NitroSDK/include/nitro/cp/divider.h similarity index 100% rename from lib/NitroSDK/include/nitro/cp/divider.h rename to lib/external/NitroSDK/include/nitro/cp/divider.h diff --git a/lib/NitroSDK/include/nitro/cp/sqrt.h b/lib/external/NitroSDK/include/nitro/cp/sqrt.h similarity index 100% rename from lib/NitroSDK/include/nitro/cp/sqrt.h rename to lib/external/NitroSDK/include/nitro/cp/sqrt.h diff --git a/lib/NitroSDK/include/nitro/ctrdg.h b/lib/external/NitroSDK/include/nitro/ctrdg.h similarity index 100% rename from lib/NitroSDK/include/nitro/ctrdg.h rename to lib/external/NitroSDK/include/nitro/ctrdg.h diff --git a/lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_backup.h b/lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_backup.h similarity index 100% rename from lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_backup.h rename to lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_backup.h diff --git a/lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_flash.h b/lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_flash.h similarity index 100% rename from lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_flash.h rename to lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_flash.h diff --git a/lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_sram.h b/lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_sram.h similarity index 100% rename from lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_sram.h rename to lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_sram.h diff --git a/lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_task.h b/lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_task.h similarity index 100% rename from lib/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_task.h rename to lib/external/NitroSDK/include/nitro/ctrdg/ARM9/ctrdg_task.h diff --git a/lib/NitroSDK/include/nitro/ctrdg/common/ctrdg_common.h b/lib/external/NitroSDK/include/nitro/ctrdg/common/ctrdg_common.h similarity index 100% rename from lib/NitroSDK/include/nitro/ctrdg/common/ctrdg_common.h rename to lib/external/NitroSDK/include/nitro/ctrdg/common/ctrdg_common.h diff --git a/lib/NitroSDK/include/nitro/dgt/common.h b/lib/external/NitroSDK/include/nitro/dgt/common.h similarity index 100% rename from lib/NitroSDK/include/nitro/dgt/common.h rename to lib/external/NitroSDK/include/nitro/dgt/common.h diff --git a/lib/NitroSDK/include/nitro/dgt/dgt.h b/lib/external/NitroSDK/include/nitro/dgt/dgt.h similarity index 100% rename from lib/NitroSDK/include/nitro/dgt/dgt.h rename to lib/external/NitroSDK/include/nitro/dgt/dgt.h diff --git a/lib/NitroSDK/include/nitro/dtcm_begin.h b/lib/external/NitroSDK/include/nitro/dtcm_begin.h similarity index 100% rename from lib/NitroSDK/include/nitro/dtcm_begin.h rename to lib/external/NitroSDK/include/nitro/dtcm_begin.h diff --git a/lib/NitroSDK/include/nitro/dtcm_end.h b/lib/external/NitroSDK/include/nitro/dtcm_end.h similarity index 100% rename from lib/NitroSDK/include/nitro/dtcm_end.h rename to lib/external/NitroSDK/include/nitro/dtcm_end.h diff --git a/lib/NitroSDK/include/nitro/env.h b/lib/external/NitroSDK/include/nitro/env.h similarity index 100% rename from lib/NitroSDK/include/nitro/env.h rename to lib/external/NitroSDK/include/nitro/env.h diff --git a/lib/NitroSDK/include/nitro/env/env_system.h b/lib/external/NitroSDK/include/nitro/env/env_system.h similarity index 100% rename from lib/NitroSDK/include/nitro/env/env_system.h rename to lib/external/NitroSDK/include/nitro/env/env_system.h diff --git a/lib/NitroSDK/include/nitro/exi.h b/lib/external/NitroSDK/include/nitro/exi.h similarity index 100% rename from lib/NitroSDK/include/nitro/exi.h rename to lib/external/NitroSDK/include/nitro/exi.h diff --git a/lib/NitroSDK/include/nitro/exi/ARM7/genPort.h b/lib/external/NitroSDK/include/nitro/exi/ARM7/genPort.h similarity index 100% rename from lib/NitroSDK/include/nitro/exi/ARM7/genPort.h rename to lib/external/NitroSDK/include/nitro/exi/ARM7/genPort.h diff --git a/lib/NitroSDK/include/nitro/ext.h b/lib/external/NitroSDK/include/nitro/ext.h similarity index 100% rename from lib/NitroSDK/include/nitro/ext.h rename to lib/external/NitroSDK/include/nitro/ext.h diff --git a/lib/NitroSDK/include/nitro/ext/ext_keycontrol.h b/lib/external/NitroSDK/include/nitro/ext/ext_keycontrol.h similarity index 100% rename from lib/NitroSDK/include/nitro/ext/ext_keycontrol.h rename to lib/external/NitroSDK/include/nitro/ext/ext_keycontrol.h diff --git a/lib/NitroSDK/include/nitro/ext/ext_scrntest.h b/lib/external/NitroSDK/include/nitro/ext/ext_scrntest.h similarity index 100% rename from lib/NitroSDK/include/nitro/ext/ext_scrntest.h rename to lib/external/NitroSDK/include/nitro/ext/ext_scrntest.h diff --git a/lib/NitroSDK/include/nitro/fs.h b/lib/external/NitroSDK/include/nitro/fs.h similarity index 100% rename from lib/NitroSDK/include/nitro/fs.h rename to lib/external/NitroSDK/include/nitro/fs.h diff --git a/lib/NitroSDK/include/nitro/fs/archive.h b/lib/external/NitroSDK/include/nitro/fs/archive.h similarity index 100% rename from lib/NitroSDK/include/nitro/fs/archive.h rename to lib/external/NitroSDK/include/nitro/fs/archive.h diff --git a/lib/NitroSDK/include/nitro/fs/file.h b/lib/external/NitroSDK/include/nitro/fs/file.h similarity index 100% rename from lib/NitroSDK/include/nitro/fs/file.h rename to lib/external/NitroSDK/include/nitro/fs/file.h diff --git a/lib/NitroSDK/include/nitro/fs/overlay.h b/lib/external/NitroSDK/include/nitro/fs/overlay.h similarity index 100% rename from lib/NitroSDK/include/nitro/fs/overlay.h rename to lib/external/NitroSDK/include/nitro/fs/overlay.h diff --git a/lib/NitroSDK/include/nitro/fx/.gitignore b/lib/external/NitroSDK/include/nitro/fx/.gitignore similarity index 100% rename from lib/NitroSDK/include/nitro/fx/.gitignore rename to lib/external/NitroSDK/include/nitro/fx/.gitignore diff --git a/lib/NitroSDK/include/nitro/fx/fx.h b/lib/external/NitroSDK/include/nitro/fx/fx.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx.h rename to lib/external/NitroSDK/include/nitro/fx/fx.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_cp.h b/lib/external/NitroSDK/include/nitro/fx/fx_cp.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_cp.h rename to lib/external/NitroSDK/include/nitro/fx/fx_cp.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_mtx.h b/lib/external/NitroSDK/include/nitro/fx/fx_mtx.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_mtx.h rename to lib/external/NitroSDK/include/nitro/fx/fx_mtx.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_mtx22.h b/lib/external/NitroSDK/include/nitro/fx/fx_mtx22.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_mtx22.h rename to lib/external/NitroSDK/include/nitro/fx/fx_mtx22.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_mtx33.h b/lib/external/NitroSDK/include/nitro/fx/fx_mtx33.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_mtx33.h rename to lib/external/NitroSDK/include/nitro/fx/fx_mtx33.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_mtx43.h b/lib/external/NitroSDK/include/nitro/fx/fx_mtx43.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_mtx43.h rename to lib/external/NitroSDK/include/nitro/fx/fx_mtx43.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_mtx44.h b/lib/external/NitroSDK/include/nitro/fx/fx_mtx44.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_mtx44.h rename to lib/external/NitroSDK/include/nitro/fx/fx_mtx44.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_trig.h b/lib/external/NitroSDK/include/nitro/fx/fx_trig.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_trig.h rename to lib/external/NitroSDK/include/nitro/fx/fx_trig.h diff --git a/lib/NitroSDK/include/nitro/fx/fx_vec.h b/lib/external/NitroSDK/include/nitro/fx/fx_vec.h similarity index 100% rename from lib/NitroSDK/include/nitro/fx/fx_vec.h rename to lib/external/NitroSDK/include/nitro/fx/fx_vec.h diff --git a/lib/NitroSDK/include/nitro/gx.h b/lib/external/NitroSDK/include/nitro/gx.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx.h rename to lib/external/NitroSDK/include/nitro/gx.h diff --git a/lib/NitroSDK/include/nitro/gx/g2.h b/lib/external/NitroSDK/include/nitro/gx/g2.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g2.h rename to lib/external/NitroSDK/include/nitro/gx/g2.h diff --git a/lib/NitroSDK/include/nitro/gx/g2_oam.h b/lib/external/NitroSDK/include/nitro/gx/g2_oam.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g2_oam.h rename to lib/external/NitroSDK/include/nitro/gx/g2_oam.h diff --git a/lib/NitroSDK/include/nitro/gx/g3.h b/lib/external/NitroSDK/include/nitro/gx/g3.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g3.h rename to lib/external/NitroSDK/include/nitro/gx/g3.h diff --git a/lib/NitroSDK/include/nitro/gx/g3_util.h b/lib/external/NitroSDK/include/nitro/gx/g3_util.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g3_util.h rename to lib/external/NitroSDK/include/nitro/gx/g3_util.h diff --git a/lib/NitroSDK/include/nitro/gx/g3b.h b/lib/external/NitroSDK/include/nitro/gx/g3b.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g3b.h rename to lib/external/NitroSDK/include/nitro/gx/g3b.h diff --git a/lib/NitroSDK/include/nitro/gx/g3c.h b/lib/external/NitroSDK/include/nitro/gx/g3c.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g3c.h rename to lib/external/NitroSDK/include/nitro/gx/g3c.h diff --git a/lib/NitroSDK/include/nitro/gx/g3imm.h b/lib/external/NitroSDK/include/nitro/gx/g3imm.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g3imm.h rename to lib/external/NitroSDK/include/nitro/gx/g3imm.h diff --git a/lib/NitroSDK/include/nitro/gx/g3x.h b/lib/external/NitroSDK/include/nitro/gx/g3x.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/g3x.h rename to lib/external/NitroSDK/include/nitro/gx/g3x.h diff --git a/lib/NitroSDK/include/nitro/gx/gx.h b/lib/external/NitroSDK/include/nitro/gx/gx.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/gx.h rename to lib/external/NitroSDK/include/nitro/gx/gx.h diff --git a/lib/NitroSDK/include/nitro/gx/gx_bgcnt.h b/lib/external/NitroSDK/include/nitro/gx/gx_bgcnt.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/gx_bgcnt.h rename to lib/external/NitroSDK/include/nitro/gx/gx_bgcnt.h diff --git a/lib/NitroSDK/include/nitro/gx/gx_capture.h b/lib/external/NitroSDK/include/nitro/gx/gx_capture.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/gx_capture.h rename to lib/external/NitroSDK/include/nitro/gx/gx_capture.h diff --git a/lib/NitroSDK/include/nitro/gx/gx_load.h b/lib/external/NitroSDK/include/nitro/gx/gx_load.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/gx_load.h rename to lib/external/NitroSDK/include/nitro/gx/gx_load.h diff --git a/lib/NitroSDK/include/nitro/gx/gx_sp.h b/lib/external/NitroSDK/include/nitro/gx/gx_sp.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/gx_sp.h rename to lib/external/NitroSDK/include/nitro/gx/gx_sp.h diff --git a/lib/NitroSDK/include/nitro/gx/gx_vramcnt.h b/lib/external/NitroSDK/include/nitro/gx/gx_vramcnt.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/gx_vramcnt.h rename to lib/external/NitroSDK/include/nitro/gx/gx_vramcnt.h diff --git a/lib/NitroSDK/include/nitro/gx/gxcommon.h b/lib/external/NitroSDK/include/nitro/gx/gxcommon.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/gxcommon.h rename to lib/external/NitroSDK/include/nitro/gx/gxcommon.h diff --git a/lib/NitroSDK/include/nitro/gx/struct_2d.h b/lib/external/NitroSDK/include/nitro/gx/struct_2d.h similarity index 100% rename from lib/NitroSDK/include/nitro/gx/struct_2d.h rename to lib/external/NitroSDK/include/nitro/gx/struct_2d.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_EXI.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_EXI.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_EXI.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_EXI.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_GX.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_GX.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_GX.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_GX.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_MI.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_MI.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_MI.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_MI.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_OS.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_OS.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_OS.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_OS.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_PAD.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_PAD.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_PAD.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_PAD.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_PXI.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_PXI.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_PXI.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_PXI.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_SND.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_SND.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_SND.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_SND.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/ioreg_SPI.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_SPI.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/ioreg_SPI.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/ioreg_SPI.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/mmap_global.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/mmap_global.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/mmap_global.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/mmap_global.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/mmap_main.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/mmap_main.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/mmap_main.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/mmap_main.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM7/mmap_wram.h b/lib/external/NitroSDK/include/nitro/hw/ARM7/mmap_wram.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM7/mmap_wram.h rename to lib/external/NitroSDK/include/nitro/hw/ARM7/mmap_wram.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_CP.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_CP.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_CP.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_CP.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_EXI.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_EXI.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_EXI.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_EXI.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G2.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G2.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G2.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G2.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G2S.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G2S.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G2S.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G2S.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G3.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G3.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G3.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G3.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G3X.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G3X.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_G3X.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_G3X.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_GX.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_GX.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_GX.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_GX.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_GXS.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_GXS.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_GXS.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_GXS.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_MI.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_MI.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_MI.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_MI.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_OS.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_OS.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_OS.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_OS.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_PAD.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_PAD.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_PAD.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_PAD.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/ioreg_PXI.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_PXI.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/ioreg_PXI.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/ioreg_PXI.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/mmap_global.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_global.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/mmap_global.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_global.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/mmap_main.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_main.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/mmap_main.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_main.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/mmap_tcm.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_tcm.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/mmap_tcm.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_tcm.h diff --git a/lib/NitroSDK/include/nitro/hw/ARM9/mmap_vram.h b/lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_vram.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/ARM9/mmap_vram.h rename to lib/external/NitroSDK/include/nitro/hw/ARM9/mmap_vram.h diff --git a/lib/NitroSDK/include/nitro/hw/common/armArch.h b/lib/external/NitroSDK/include/nitro/hw/common/armArch.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/common/armArch.h rename to lib/external/NitroSDK/include/nitro/hw/common/armArch.h diff --git a/lib/NitroSDK/include/nitro/hw/common/lcd.h b/lib/external/NitroSDK/include/nitro/hw/common/lcd.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/common/lcd.h rename to lib/external/NitroSDK/include/nitro/hw/common/lcd.h diff --git a/lib/NitroSDK/include/nitro/hw/common/mmap_shared.h b/lib/external/NitroSDK/include/nitro/hw/common/mmap_shared.h similarity index 100% rename from lib/NitroSDK/include/nitro/hw/common/mmap_shared.h rename to lib/external/NitroSDK/include/nitro/hw/common/mmap_shared.h diff --git a/lib/NitroSDK/include/nitro/init/crt0.h b/lib/external/NitroSDK/include/nitro/init/crt0.h similarity index 100% rename from lib/NitroSDK/include/nitro/init/crt0.h rename to lib/external/NitroSDK/include/nitro/init/crt0.h diff --git a/lib/NitroSDK/include/nitro/ioreg.h b/lib/external/NitroSDK/include/nitro/ioreg.h similarity index 100% rename from lib/NitroSDK/include/nitro/ioreg.h rename to lib/external/NitroSDK/include/nitro/ioreg.h diff --git a/lib/NitroSDK/include/nitro/itcm_begin.h b/lib/external/NitroSDK/include/nitro/itcm_begin.h similarity index 100% rename from lib/NitroSDK/include/nitro/itcm_begin.h rename to lib/external/NitroSDK/include/nitro/itcm_begin.h diff --git a/lib/NitroSDK/include/nitro/itcm_end.h b/lib/external/NitroSDK/include/nitro/itcm_end.h similarity index 100% rename from lib/NitroSDK/include/nitro/itcm_end.h rename to lib/external/NitroSDK/include/nitro/itcm_end.h diff --git a/lib/NitroSDK/include/nitro/math.h b/lib/external/NitroSDK/include/nitro/math.h similarity index 100% rename from lib/NitroSDK/include/nitro/math.h rename to lib/external/NitroSDK/include/nitro/math.h diff --git a/lib/NitroSDK/include/nitro/math/checksum.h b/lib/external/NitroSDK/include/nitro/math/checksum.h similarity index 100% rename from lib/NitroSDK/include/nitro/math/checksum.h rename to lib/external/NitroSDK/include/nitro/math/checksum.h diff --git a/lib/NitroSDK/include/nitro/math/crc.h b/lib/external/NitroSDK/include/nitro/math/crc.h similarity index 100% rename from lib/NitroSDK/include/nitro/math/crc.h rename to lib/external/NitroSDK/include/nitro/math/crc.h diff --git a/lib/NitroSDK/include/nitro/math/dgt.h b/lib/external/NitroSDK/include/nitro/math/dgt.h similarity index 100% rename from lib/NitroSDK/include/nitro/math/dgt.h rename to lib/external/NitroSDK/include/nitro/math/dgt.h diff --git a/lib/NitroSDK/include/nitro/math/fft.h b/lib/external/NitroSDK/include/nitro/math/fft.h similarity index 100% rename from lib/NitroSDK/include/nitro/math/fft.h rename to lib/external/NitroSDK/include/nitro/math/fft.h diff --git a/lib/NitroSDK/include/nitro/math/math.h b/lib/external/NitroSDK/include/nitro/math/math.h similarity index 100% rename from lib/NitroSDK/include/nitro/math/math.h rename to lib/external/NitroSDK/include/nitro/math/math.h diff --git a/lib/NitroSDK/include/nitro/math/qsort.h b/lib/external/NitroSDK/include/nitro/math/qsort.h similarity index 100% rename from lib/NitroSDK/include/nitro/math/qsort.h rename to lib/external/NitroSDK/include/nitro/math/qsort.h diff --git a/lib/NitroSDK/include/nitro/math/rand.h b/lib/external/NitroSDK/include/nitro/math/rand.h similarity index 100% rename from lib/NitroSDK/include/nitro/math/rand.h rename to lib/external/NitroSDK/include/nitro/math/rand.h diff --git a/lib/NitroSDK/include/nitro/mb.h b/lib/external/NitroSDK/include/nitro/mb.h similarity index 100% rename from lib/NitroSDK/include/nitro/mb.h rename to lib/external/NitroSDK/include/nitro/mb.h diff --git a/lib/NitroSDK/include/nitro/mb/mb.h b/lib/external/NitroSDK/include/nitro/mb/mb.h similarity index 100% rename from lib/NitroSDK/include/nitro/mb/mb.h rename to lib/external/NitroSDK/include/nitro/mb/mb.h diff --git a/lib/NitroSDK/include/nitro/mb/mb_child.h b/lib/external/NitroSDK/include/nitro/mb/mb_child.h similarity index 100% rename from lib/NitroSDK/include/nitro/mb/mb_child.h rename to lib/external/NitroSDK/include/nitro/mb/mb_child.h diff --git a/lib/NitroSDK/include/nitro/mb/mb_fake_child.h b/lib/external/NitroSDK/include/nitro/mb/mb_fake_child.h similarity index 100% rename from lib/NitroSDK/include/nitro/mb/mb_fake_child.h rename to lib/external/NitroSDK/include/nitro/mb/mb_fake_child.h diff --git a/lib/NitroSDK/include/nitro/mb/mb_gameinfo.h b/lib/external/NitroSDK/include/nitro/mb/mb_gameinfo.h similarity index 100% rename from lib/NitroSDK/include/nitro/mb/mb_gameinfo.h rename to lib/external/NitroSDK/include/nitro/mb/mb_gameinfo.h diff --git a/lib/NitroSDK/include/nitro/memorymap.h b/lib/external/NitroSDK/include/nitro/memorymap.h similarity index 100% rename from lib/NitroSDK/include/nitro/memorymap.h rename to lib/external/NitroSDK/include/nitro/memorymap.h diff --git a/lib/NitroSDK/include/nitro/memorymap_sp.h b/lib/external/NitroSDK/include/nitro/memorymap_sp.h similarity index 100% rename from lib/NitroSDK/include/nitro/memorymap_sp.h rename to lib/external/NitroSDK/include/nitro/memorymap_sp.h diff --git a/lib/NitroSDK/include/nitro/mi.h b/lib/external/NitroSDK/include/nitro/mi.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi.h rename to lib/external/NitroSDK/include/nitro/mi.h diff --git a/lib/NitroSDK/include/nitro/mi/allocator.h b/lib/external/NitroSDK/include/nitro/mi/allocator.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/allocator.h rename to lib/external/NitroSDK/include/nitro/mi/allocator.h diff --git a/lib/NitroSDK/include/nitro/mi/byteAccess.h b/lib/external/NitroSDK/include/nitro/mi/byteAccess.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/byteAccess.h rename to lib/external/NitroSDK/include/nitro/mi/byteAccess.h diff --git a/lib/NitroSDK/include/nitro/mi/cache.h b/lib/external/NitroSDK/include/nitro/mi/cache.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/cache.h rename to lib/external/NitroSDK/include/nitro/mi/cache.h diff --git a/lib/NitroSDK/include/nitro/mi/card.h b/lib/external/NitroSDK/include/nitro/mi/card.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/card.h rename to lib/external/NitroSDK/include/nitro/mi/card.h diff --git a/lib/NitroSDK/include/nitro/mi/compress.h b/lib/external/NitroSDK/include/nitro/mi/compress.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/compress.h rename to lib/external/NitroSDK/include/nitro/mi/compress.h diff --git a/lib/NitroSDK/include/nitro/mi/device.h b/lib/external/NitroSDK/include/nitro/mi/device.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/device.h rename to lib/external/NitroSDK/include/nitro/mi/device.h diff --git a/lib/NitroSDK/include/nitro/mi/dma.h b/lib/external/NitroSDK/include/nitro/mi/dma.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/dma.h rename to lib/external/NitroSDK/include/nitro/mi/dma.h diff --git a/lib/NitroSDK/include/nitro/mi/endian.h b/lib/external/NitroSDK/include/nitro/mi/endian.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/endian.h rename to lib/external/NitroSDK/include/nitro/mi/endian.h diff --git a/lib/NitroSDK/include/nitro/mi/exMemory.h b/lib/external/NitroSDK/include/nitro/mi/exMemory.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/exMemory.h rename to lib/external/NitroSDK/include/nitro/mi/exMemory.h diff --git a/lib/NitroSDK/include/nitro/mi/init.h b/lib/external/NitroSDK/include/nitro/mi/init.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/init.h rename to lib/external/NitroSDK/include/nitro/mi/init.h diff --git a/lib/NitroSDK/include/nitro/mi/memory.h b/lib/external/NitroSDK/include/nitro/mi/memory.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/memory.h rename to lib/external/NitroSDK/include/nitro/mi/memory.h diff --git a/lib/NitroSDK/include/nitro/mi/stream.h b/lib/external/NitroSDK/include/nitro/mi/stream.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/stream.h rename to lib/external/NitroSDK/include/nitro/mi/stream.h diff --git a/lib/NitroSDK/include/nitro/mi/swap.h b/lib/external/NitroSDK/include/nitro/mi/swap.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/swap.h rename to lib/external/NitroSDK/include/nitro/mi/swap.h diff --git a/lib/NitroSDK/include/nitro/mi/uncomp_stream.h b/lib/external/NitroSDK/include/nitro/mi/uncomp_stream.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/uncomp_stream.h rename to lib/external/NitroSDK/include/nitro/mi/uncomp_stream.h diff --git a/lib/NitroSDK/include/nitro/mi/uncompress.h b/lib/external/NitroSDK/include/nitro/mi/uncompress.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/uncompress.h rename to lib/external/NitroSDK/include/nitro/mi/uncompress.h diff --git a/lib/NitroSDK/include/nitro/mi/wram.h b/lib/external/NitroSDK/include/nitro/mi/wram.h similarity index 100% rename from lib/NitroSDK/include/nitro/mi/wram.h rename to lib/external/NitroSDK/include/nitro/mi/wram.h diff --git a/lib/NitroSDK/include/nitro/misc.h b/lib/external/NitroSDK/include/nitro/misc.h similarity index 100% rename from lib/NitroSDK/include/nitro/misc.h rename to lib/external/NitroSDK/include/nitro/misc.h diff --git a/lib/NitroSDK/include/nitro/os.h b/lib/external/NitroSDK/include/nitro/os.h similarity index 100% rename from lib/NitroSDK/include/nitro/os.h rename to lib/external/NitroSDK/include/nitro/os.h diff --git a/lib/NitroSDK/include/nitro/os/ARM9/argument.h b/lib/external/NitroSDK/include/nitro/os/ARM9/argument.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/ARM9/argument.h rename to lib/external/NitroSDK/include/nitro/os/ARM9/argument.h diff --git a/lib/NitroSDK/include/nitro/os/ARM9/cache.h b/lib/external/NitroSDK/include/nitro/os/ARM9/cache.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/ARM9/cache.h rename to lib/external/NitroSDK/include/nitro/os/ARM9/cache.h diff --git a/lib/NitroSDK/include/nitro/os/ARM9/china.h b/lib/external/NitroSDK/include/nitro/os/ARM9/china.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/ARM9/china.h rename to lib/external/NitroSDK/include/nitro/os/ARM9/china.h diff --git a/lib/NitroSDK/include/nitro/os/ARM9/protectionRegion.h b/lib/external/NitroSDK/include/nitro/os/ARM9/protectionRegion.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/ARM9/protectionRegion.h rename to lib/external/NitroSDK/include/nitro/os/ARM9/protectionRegion.h diff --git a/lib/NitroSDK/include/nitro/os/ARM9/protectionUnit.h b/lib/external/NitroSDK/include/nitro/os/ARM9/protectionUnit.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/ARM9/protectionUnit.h rename to lib/external/NitroSDK/include/nitro/os/ARM9/protectionUnit.h diff --git a/lib/NitroSDK/include/nitro/os/ARM9/tcm.h b/lib/external/NitroSDK/include/nitro/os/ARM9/tcm.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/ARM9/tcm.h rename to lib/external/NitroSDK/include/nitro/os/ARM9/tcm.h diff --git a/lib/NitroSDK/include/nitro/os/ARM9/vramExclusive.h b/lib/external/NitroSDK/include/nitro/os/ARM9/vramExclusive.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/ARM9/vramExclusive.h rename to lib/external/NitroSDK/include/nitro/os/ARM9/vramExclusive.h diff --git a/lib/NitroSDK/include/nitro/os/common/alarm.h b/lib/external/NitroSDK/include/nitro/os/common/alarm.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/alarm.h rename to lib/external/NitroSDK/include/nitro/os/common/alarm.h diff --git a/lib/NitroSDK/include/nitro/os/common/alloc.h b/lib/external/NitroSDK/include/nitro/os/common/alloc.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/alloc.h rename to lib/external/NitroSDK/include/nitro/os/common/alloc.h diff --git a/lib/NitroSDK/include/nitro/os/common/arena.h b/lib/external/NitroSDK/include/nitro/os/common/arena.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/arena.h rename to lib/external/NitroSDK/include/nitro/os/common/arena.h diff --git a/lib/NitroSDK/include/nitro/os/common/callTrace.h b/lib/external/NitroSDK/include/nitro/os/common/callTrace.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/callTrace.h rename to lib/external/NitroSDK/include/nitro/os/common/callTrace.h diff --git a/lib/NitroSDK/include/nitro/os/common/context.h b/lib/external/NitroSDK/include/nitro/os/common/context.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/context.h rename to lib/external/NitroSDK/include/nitro/os/common/context.h diff --git a/lib/NitroSDK/include/nitro/os/common/emulator.h b/lib/external/NitroSDK/include/nitro/os/common/emulator.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/emulator.h rename to lib/external/NitroSDK/include/nitro/os/common/emulator.h diff --git a/lib/NitroSDK/include/nitro/os/common/entropy.h b/lib/external/NitroSDK/include/nitro/os/common/entropy.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/entropy.h rename to lib/external/NitroSDK/include/nitro/os/common/entropy.h diff --git a/lib/NitroSDK/include/nitro/os/common/exception.h b/lib/external/NitroSDK/include/nitro/os/common/exception.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/exception.h rename to lib/external/NitroSDK/include/nitro/os/common/exception.h diff --git a/lib/NitroSDK/include/nitro/os/common/functionCost.h b/lib/external/NitroSDK/include/nitro/os/common/functionCost.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/functionCost.h rename to lib/external/NitroSDK/include/nitro/os/common/functionCost.h diff --git a/lib/NitroSDK/include/nitro/os/common/init.h b/lib/external/NitroSDK/include/nitro/os/common/init.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/init.h rename to lib/external/NitroSDK/include/nitro/os/common/init.h diff --git a/lib/NitroSDK/include/nitro/os/common/interrupt.h b/lib/external/NitroSDK/include/nitro/os/common/interrupt.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/interrupt.h rename to lib/external/NitroSDK/include/nitro/os/common/interrupt.h diff --git a/lib/NitroSDK/include/nitro/os/common/message.h b/lib/external/NitroSDK/include/nitro/os/common/message.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/message.h rename to lib/external/NitroSDK/include/nitro/os/common/message.h diff --git a/lib/NitroSDK/include/nitro/os/common/mutex.h b/lib/external/NitroSDK/include/nitro/os/common/mutex.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/mutex.h rename to lib/external/NitroSDK/include/nitro/os/common/mutex.h diff --git a/lib/NitroSDK/include/nitro/os/common/ownerInfo.h b/lib/external/NitroSDK/include/nitro/os/common/ownerInfo.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/ownerInfo.h rename to lib/external/NitroSDK/include/nitro/os/common/ownerInfo.h diff --git a/lib/NitroSDK/include/nitro/os/common/printf.h b/lib/external/NitroSDK/include/nitro/os/common/printf.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/printf.h rename to lib/external/NitroSDK/include/nitro/os/common/printf.h diff --git a/lib/NitroSDK/include/nitro/os/common/profile.h b/lib/external/NitroSDK/include/nitro/os/common/profile.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/profile.h rename to lib/external/NitroSDK/include/nitro/os/common/profile.h diff --git a/lib/NitroSDK/include/nitro/os/common/reset.h b/lib/external/NitroSDK/include/nitro/os/common/reset.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/reset.h rename to lib/external/NitroSDK/include/nitro/os/common/reset.h diff --git a/lib/NitroSDK/include/nitro/os/common/spinLock.h b/lib/external/NitroSDK/include/nitro/os/common/spinLock.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/spinLock.h rename to lib/external/NitroSDK/include/nitro/os/common/spinLock.h diff --git a/lib/NitroSDK/include/nitro/os/common/system.h b/lib/external/NitroSDK/include/nitro/os/common/system.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/system.h rename to lib/external/NitroSDK/include/nitro/os/common/system.h diff --git a/lib/NitroSDK/include/nitro/os/common/systemCall.h b/lib/external/NitroSDK/include/nitro/os/common/systemCall.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/systemCall.h rename to lib/external/NitroSDK/include/nitro/os/common/systemCall.h diff --git a/lib/NitroSDK/include/nitro/os/common/systemWork.h b/lib/external/NitroSDK/include/nitro/os/common/systemWork.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/systemWork.h rename to lib/external/NitroSDK/include/nitro/os/common/systemWork.h diff --git a/lib/NitroSDK/include/nitro/os/common/thread.h b/lib/external/NitroSDK/include/nitro/os/common/thread.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/thread.h rename to lib/external/NitroSDK/include/nitro/os/common/thread.h diff --git a/lib/NitroSDK/include/nitro/os/common/tick.h b/lib/external/NitroSDK/include/nitro/os/common/tick.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/tick.h rename to lib/external/NitroSDK/include/nitro/os/common/tick.h diff --git a/lib/NitroSDK/include/nitro/os/common/timer.h b/lib/external/NitroSDK/include/nitro/os/common/timer.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/timer.h rename to lib/external/NitroSDK/include/nitro/os/common/timer.h diff --git a/lib/NitroSDK/include/nitro/os/common/valarm.h b/lib/external/NitroSDK/include/nitro/os/common/valarm.h similarity index 100% rename from lib/NitroSDK/include/nitro/os/common/valarm.h rename to lib/external/NitroSDK/include/nitro/os/common/valarm.h diff --git a/lib/NitroSDK/include/nitro/os_sp.h b/lib/external/NitroSDK/include/nitro/os_sp.h similarity index 100% rename from lib/NitroSDK/include/nitro/os_sp.h rename to lib/external/NitroSDK/include/nitro/os_sp.h diff --git a/lib/NitroSDK/include/nitro/pad.h b/lib/external/NitroSDK/include/nitro/pad.h similarity index 100% rename from lib/NitroSDK/include/nitro/pad.h rename to lib/external/NitroSDK/include/nitro/pad.h diff --git a/lib/NitroSDK/include/nitro/pad/ARM7/xyButton.h b/lib/external/NitroSDK/include/nitro/pad/ARM7/xyButton.h similarity index 100% rename from lib/NitroSDK/include/nitro/pad/ARM7/xyButton.h rename to lib/external/NitroSDK/include/nitro/pad/ARM7/xyButton.h diff --git a/lib/NitroSDK/include/nitro/pad/common/pad.h b/lib/external/NitroSDK/include/nitro/pad/common/pad.h similarity index 100% rename from lib/NitroSDK/include/nitro/pad/common/pad.h rename to lib/external/NitroSDK/include/nitro/pad/common/pad.h diff --git a/lib/NitroSDK/include/nitro/parent_begin.h b/lib/external/NitroSDK/include/nitro/parent_begin.h similarity index 100% rename from lib/NitroSDK/include/nitro/parent_begin.h rename to lib/external/NitroSDK/include/nitro/parent_begin.h diff --git a/lib/NitroSDK/include/nitro/parent_end.h b/lib/external/NitroSDK/include/nitro/parent_end.h similarity index 100% rename from lib/NitroSDK/include/nitro/parent_end.h rename to lib/external/NitroSDK/include/nitro/parent_end.h diff --git a/lib/NitroSDK/include/nitro/platform.h b/lib/external/NitroSDK/include/nitro/platform.h similarity index 100% rename from lib/NitroSDK/include/nitro/platform.h rename to lib/external/NitroSDK/include/nitro/platform.h diff --git a/lib/NitroSDK/include/nitro/prc.h b/lib/external/NitroSDK/include/nitro/prc.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc.h rename to lib/external/NitroSDK/include/nitro/prc.h diff --git a/lib/NitroSDK/include/nitro/prc/algo_common.h b/lib/external/NitroSDK/include/nitro/prc/algo_common.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/algo_common.h rename to lib/external/NitroSDK/include/nitro/prc/algo_common.h diff --git a/lib/NitroSDK/include/nitro/prc/algo_fine.h b/lib/external/NitroSDK/include/nitro/prc/algo_fine.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/algo_fine.h rename to lib/external/NitroSDK/include/nitro/prc/algo_fine.h diff --git a/lib/NitroSDK/include/nitro/prc/algo_light.h b/lib/external/NitroSDK/include/nitro/prc/algo_light.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/algo_light.h rename to lib/external/NitroSDK/include/nitro/prc/algo_light.h diff --git a/lib/NitroSDK/include/nitro/prc/algo_standard.h b/lib/external/NitroSDK/include/nitro/prc/algo_standard.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/algo_standard.h rename to lib/external/NitroSDK/include/nitro/prc/algo_standard.h diff --git a/lib/NitroSDK/include/nitro/prc/algo_superfine.h b/lib/external/NitroSDK/include/nitro/prc/algo_superfine.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/algo_superfine.h rename to lib/external/NitroSDK/include/nitro/prc/algo_superfine.h diff --git a/lib/NitroSDK/include/nitro/prc/common.h b/lib/external/NitroSDK/include/nitro/prc/common.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/common.h rename to lib/external/NitroSDK/include/nitro/prc/common.h diff --git a/lib/NitroSDK/include/nitro/prc/resample.h b/lib/external/NitroSDK/include/nitro/prc/resample.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/resample.h rename to lib/external/NitroSDK/include/nitro/prc/resample.h diff --git a/lib/NitroSDK/include/nitro/prc/types.h b/lib/external/NitroSDK/include/nitro/prc/types.h similarity index 100% rename from lib/NitroSDK/include/nitro/prc/types.h rename to lib/external/NitroSDK/include/nitro/prc/types.h diff --git a/lib/NitroSDK/include/nitro/pxi.h b/lib/external/NitroSDK/include/nitro/pxi.h similarity index 100% rename from lib/NitroSDK/include/nitro/pxi.h rename to lib/external/NitroSDK/include/nitro/pxi.h diff --git a/lib/NitroSDK/include/nitro/pxi/common/compparam.h b/lib/external/NitroSDK/include/nitro/pxi/common/compparam.h similarity index 100% rename from lib/NitroSDK/include/nitro/pxi/common/compparam.h rename to lib/external/NitroSDK/include/nitro/pxi/common/compparam.h diff --git a/lib/NitroSDK/include/nitro/pxi/common/fifo.h b/lib/external/NitroSDK/include/nitro/pxi/common/fifo.h similarity index 100% rename from lib/NitroSDK/include/nitro/pxi/common/fifo.h rename to lib/external/NitroSDK/include/nitro/pxi/common/fifo.h diff --git a/lib/NitroSDK/include/nitro/pxi/common/init.h b/lib/external/NitroSDK/include/nitro/pxi/common/init.h similarity index 100% rename from lib/NitroSDK/include/nitro/pxi/common/init.h rename to lib/external/NitroSDK/include/nitro/pxi/common/init.h diff --git a/lib/NitroSDK/include/nitro/pxi/common/regname.h b/lib/external/NitroSDK/include/nitro/pxi/common/regname.h similarity index 100% rename from lib/NitroSDK/include/nitro/pxi/common/regname.h rename to lib/external/NitroSDK/include/nitro/pxi/common/regname.h diff --git a/lib/NitroSDK/include/nitro/rtc.h b/lib/external/NitroSDK/include/nitro/rtc.h similarity index 100% rename from lib/NitroSDK/include/nitro/rtc.h rename to lib/external/NitroSDK/include/nitro/rtc.h diff --git a/lib/NitroSDK/include/nitro/rtc/ARM9/api.h b/lib/external/NitroSDK/include/nitro/rtc/ARM9/api.h similarity index 100% rename from lib/NitroSDK/include/nitro/rtc/ARM9/api.h rename to lib/external/NitroSDK/include/nitro/rtc/ARM9/api.h diff --git a/lib/NitroSDK/include/nitro/rtc/ARM9/convert.h b/lib/external/NitroSDK/include/nitro/rtc/ARM9/convert.h similarity index 100% rename from lib/NitroSDK/include/nitro/rtc/ARM9/convert.h rename to lib/external/NitroSDK/include/nitro/rtc/ARM9/convert.h diff --git a/lib/NitroSDK/include/nitro/rtc/common/fifo.h b/lib/external/NitroSDK/include/nitro/rtc/common/fifo.h similarity index 100% rename from lib/NitroSDK/include/nitro/rtc/common/fifo.h rename to lib/external/NitroSDK/include/nitro/rtc/common/fifo.h diff --git a/lib/NitroSDK/include/nitro/rtc/common/type.h b/lib/external/NitroSDK/include/nitro/rtc/common/type.h similarity index 100% rename from lib/NitroSDK/include/nitro/rtc/common/type.h rename to lib/external/NitroSDK/include/nitro/rtc/common/type.h diff --git a/lib/NitroSDK/include/nitro/section.h b/lib/external/NitroSDK/include/nitro/section.h similarity index 100% rename from lib/NitroSDK/include/nitro/section.h rename to lib/external/NitroSDK/include/nitro/section.h diff --git a/lib/NitroSDK/include/nitro/sinit.h b/lib/external/NitroSDK/include/nitro/sinit.h similarity index 100% rename from lib/NitroSDK/include/nitro/sinit.h rename to lib/external/NitroSDK/include/nitro/sinit.h diff --git a/lib/NitroSDK/include/nitro/snd.h b/lib/external/NitroSDK/include/nitro/snd.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd.h rename to lib/external/NitroSDK/include/nitro/snd.h diff --git a/lib/NitroSDK/include/nitro/snd/ARM9/interface.h b/lib/external/NitroSDK/include/nitro/snd/ARM9/interface.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/ARM9/interface.h rename to lib/external/NitroSDK/include/nitro/snd/ARM9/interface.h diff --git a/lib/NitroSDK/include/nitro/snd/common/alarm.h b/lib/external/NitroSDK/include/nitro/snd/common/alarm.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/alarm.h rename to lib/external/NitroSDK/include/nitro/snd/common/alarm.h diff --git a/lib/NitroSDK/include/nitro/snd/common/bank.h b/lib/external/NitroSDK/include/nitro/snd/common/bank.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/bank.h rename to lib/external/NitroSDK/include/nitro/snd/common/bank.h diff --git a/lib/NitroSDK/include/nitro/snd/common/capture.h b/lib/external/NitroSDK/include/nitro/snd/common/capture.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/capture.h rename to lib/external/NitroSDK/include/nitro/snd/common/capture.h diff --git a/lib/NitroSDK/include/nitro/snd/common/channel.h b/lib/external/NitroSDK/include/nitro/snd/common/channel.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/channel.h rename to lib/external/NitroSDK/include/nitro/snd/common/channel.h diff --git a/lib/NitroSDK/include/nitro/snd/common/command.h b/lib/external/NitroSDK/include/nitro/snd/common/command.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/command.h rename to lib/external/NitroSDK/include/nitro/snd/common/command.h diff --git a/lib/NitroSDK/include/nitro/snd/common/data.h b/lib/external/NitroSDK/include/nitro/snd/common/data.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/data.h rename to lib/external/NitroSDK/include/nitro/snd/common/data.h diff --git a/lib/NitroSDK/include/nitro/snd/common/exchannel.h b/lib/external/NitroSDK/include/nitro/snd/common/exchannel.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/exchannel.h rename to lib/external/NitroSDK/include/nitro/snd/common/exchannel.h diff --git a/lib/NitroSDK/include/nitro/snd/common/global.h b/lib/external/NitroSDK/include/nitro/snd/common/global.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/global.h rename to lib/external/NitroSDK/include/nitro/snd/common/global.h diff --git a/lib/NitroSDK/include/nitro/snd/common/main.h b/lib/external/NitroSDK/include/nitro/snd/common/main.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/main.h rename to lib/external/NitroSDK/include/nitro/snd/common/main.h diff --git a/lib/NitroSDK/include/nitro/snd/common/midiplayer.h b/lib/external/NitroSDK/include/nitro/snd/common/midiplayer.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/midiplayer.h rename to lib/external/NitroSDK/include/nitro/snd/common/midiplayer.h diff --git a/lib/NitroSDK/include/nitro/snd/common/mml.h b/lib/external/NitroSDK/include/nitro/snd/common/mml.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/mml.h rename to lib/external/NitroSDK/include/nitro/snd/common/mml.h diff --git a/lib/NitroSDK/include/nitro/snd/common/seq.h b/lib/external/NitroSDK/include/nitro/snd/common/seq.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/seq.h rename to lib/external/NitroSDK/include/nitro/snd/common/seq.h diff --git a/lib/NitroSDK/include/nitro/snd/common/util.h b/lib/external/NitroSDK/include/nitro/snd/common/util.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/util.h rename to lib/external/NitroSDK/include/nitro/snd/common/util.h diff --git a/lib/NitroSDK/include/nitro/snd/common/work.h b/lib/external/NitroSDK/include/nitro/snd/common/work.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd/common/work.h rename to lib/external/NitroSDK/include/nitro/snd/common/work.h diff --git a/lib/NitroSDK/include/nitro/snd_sp.h b/lib/external/NitroSDK/include/nitro/snd_sp.h similarity index 100% rename from lib/NitroSDK/include/nitro/snd_sp.h rename to lib/external/NitroSDK/include/nitro/snd_sp.h diff --git a/lib/NitroSDK/include/nitro/spec.h b/lib/external/NitroSDK/include/nitro/spec.h similarity index 100% rename from lib/NitroSDK/include/nitro/spec.h rename to lib/external/NitroSDK/include/nitro/spec.h diff --git a/lib/NitroSDK/include/nitro/spi.h b/lib/external/NitroSDK/include/nitro/spi.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi.h rename to lib/external/NitroSDK/include/nitro/spi.h diff --git a/lib/NitroSDK/include/nitro/spi/ARM7/pm.h b/lib/external/NitroSDK/include/nitro/spi/ARM7/pm.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/ARM7/pm.h rename to lib/external/NitroSDK/include/nitro/spi/ARM7/pm.h diff --git a/lib/NitroSDK/include/nitro/spi/ARM7/spi.h b/lib/external/NitroSDK/include/nitro/spi/ARM7/spi.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/ARM7/spi.h rename to lib/external/NitroSDK/include/nitro/spi/ARM7/spi.h diff --git a/lib/NitroSDK/include/nitro/spi/ARM9/mic.h b/lib/external/NitroSDK/include/nitro/spi/ARM9/mic.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/ARM9/mic.h rename to lib/external/NitroSDK/include/nitro/spi/ARM9/mic.h diff --git a/lib/NitroSDK/include/nitro/spi/ARM9/pm.h b/lib/external/NitroSDK/include/nitro/spi/ARM9/pm.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/ARM9/pm.h rename to lib/external/NitroSDK/include/nitro/spi/ARM9/pm.h diff --git a/lib/NitroSDK/include/nitro/spi/ARM9/tp.h b/lib/external/NitroSDK/include/nitro/spi/ARM9/tp.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/ARM9/tp.h rename to lib/external/NitroSDK/include/nitro/spi/ARM9/tp.h diff --git a/lib/NitroSDK/include/nitro/spi/common/config.h b/lib/external/NitroSDK/include/nitro/spi/common/config.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/common/config.h rename to lib/external/NitroSDK/include/nitro/spi/common/config.h diff --git a/lib/NitroSDK/include/nitro/spi/common/pm_common.h b/lib/external/NitroSDK/include/nitro/spi/common/pm_common.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/common/pm_common.h rename to lib/external/NitroSDK/include/nitro/spi/common/pm_common.h diff --git a/lib/NitroSDK/include/nitro/spi/common/type.h b/lib/external/NitroSDK/include/nitro/spi/common/type.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/common/type.h rename to lib/external/NitroSDK/include/nitro/spi/common/type.h diff --git a/lib/NitroSDK/include/nitro/spi/common/userInfo_teg.h b/lib/external/NitroSDK/include/nitro/spi/common/userInfo_teg.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/common/userInfo_teg.h rename to lib/external/NitroSDK/include/nitro/spi/common/userInfo_teg.h diff --git a/lib/NitroSDK/include/nitro/spi/common/userInfo_ts_0.h b/lib/external/NitroSDK/include/nitro/spi/common/userInfo_ts_0.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/common/userInfo_ts_0.h rename to lib/external/NitroSDK/include/nitro/spi/common/userInfo_ts_0.h diff --git a/lib/NitroSDK/include/nitro/spi/common/userInfo_ts_200.h b/lib/external/NitroSDK/include/nitro/spi/common/userInfo_ts_200.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/common/userInfo_ts_200.h rename to lib/external/NitroSDK/include/nitro/spi/common/userInfo_ts_200.h diff --git a/lib/NitroSDK/include/nitro/spi/common/userInfo_ts_300.h b/lib/external/NitroSDK/include/nitro/spi/common/userInfo_ts_300.h similarity index 100% rename from lib/NitroSDK/include/nitro/spi/common/userInfo_ts_300.h rename to lib/external/NitroSDK/include/nitro/spi/common/userInfo_ts_300.h diff --git a/lib/NitroSDK/include/nitro/std.h b/lib/external/NitroSDK/include/nitro/std.h similarity index 100% rename from lib/NitroSDK/include/nitro/std.h rename to lib/external/NitroSDK/include/nitro/std.h diff --git a/lib/NitroSDK/include/nitro/std/string.h b/lib/external/NitroSDK/include/nitro/std/string.h similarity index 100% rename from lib/NitroSDK/include/nitro/std/string.h rename to lib/external/NitroSDK/include/nitro/std/string.h diff --git a/lib/NitroSDK/include/nitro/std/unicode.h b/lib/external/NitroSDK/include/nitro/std/unicode.h similarity index 100% rename from lib/NitroSDK/include/nitro/std/unicode.h rename to lib/external/NitroSDK/include/nitro/std/unicode.h diff --git a/lib/NitroSDK/include/nitro/types.h b/lib/external/NitroSDK/include/nitro/types.h similarity index 100% rename from lib/NitroSDK/include/nitro/types.h rename to lib/external/NitroSDK/include/nitro/types.h diff --git a/lib/NitroSDK/include/nitro/utest.h b/lib/external/NitroSDK/include/nitro/utest.h similarity index 100% rename from lib/NitroSDK/include/nitro/utest.h rename to lib/external/NitroSDK/include/nitro/utest.h diff --git a/lib/NitroSDK/include/nitro/version.h b/lib/external/NitroSDK/include/nitro/version.h similarity index 100% rename from lib/NitroSDK/include/nitro/version.h rename to lib/external/NitroSDK/include/nitro/version.h diff --git a/lib/NitroSDK/include/nitro/version_begin.h b/lib/external/NitroSDK/include/nitro/version_begin.h similarity index 100% rename from lib/NitroSDK/include/nitro/version_begin.h rename to lib/external/NitroSDK/include/nitro/version_begin.h diff --git a/lib/NitroSDK/include/nitro/version_end.h b/lib/external/NitroSDK/include/nitro/version_end.h similarity index 100% rename from lib/NitroSDK/include/nitro/version_end.h rename to lib/external/NitroSDK/include/nitro/version_end.h diff --git a/lib/NitroSDK/include/nitro/vib.h b/lib/external/NitroSDK/include/nitro/vib.h similarity index 100% rename from lib/NitroSDK/include/nitro/vib.h rename to lib/external/NitroSDK/include/nitro/vib.h diff --git a/lib/NitroSDK/include/nitro/vib/vib_system.h b/lib/external/NitroSDK/include/nitro/vib/vib_system.h similarity index 100% rename from lib/NitroSDK/include/nitro/vib/vib_system.h rename to lib/external/NitroSDK/include/nitro/vib/vib_system.h diff --git a/lib/NitroSDK/include/nitro/wbt.h b/lib/external/NitroSDK/include/nitro/wbt.h similarity index 100% rename from lib/NitroSDK/include/nitro/wbt.h rename to lib/external/NitroSDK/include/nitro/wbt.h diff --git a/lib/NitroSDK/include/nitro/wbt/context.h b/lib/external/NitroSDK/include/nitro/wbt/context.h similarity index 100% rename from lib/NitroSDK/include/nitro/wbt/context.h rename to lib/external/NitroSDK/include/nitro/wbt/context.h diff --git a/lib/NitroSDK/include/nitro/wfs.h b/lib/external/NitroSDK/include/nitro/wfs.h similarity index 100% rename from lib/NitroSDK/include/nitro/wfs.h rename to lib/external/NitroSDK/include/nitro/wfs.h diff --git a/lib/NitroSDK/include/nitro/wfs/client.h b/lib/external/NitroSDK/include/nitro/wfs/client.h similarity index 100% rename from lib/NitroSDK/include/nitro/wfs/client.h rename to lib/external/NitroSDK/include/nitro/wfs/client.h diff --git a/lib/NitroSDK/include/nitro/wfs/format.h b/lib/external/NitroSDK/include/nitro/wfs/format.h similarity index 100% rename from lib/NitroSDK/include/nitro/wfs/format.h rename to lib/external/NitroSDK/include/nitro/wfs/format.h diff --git a/lib/NitroSDK/include/nitro/wfs/server.h b/lib/external/NitroSDK/include/nitro/wfs/server.h similarity index 100% rename from lib/NitroSDK/include/nitro/wfs/server.h rename to lib/external/NitroSDK/include/nitro/wfs/server.h diff --git a/lib/NitroSDK/include/nitro/wm.h b/lib/external/NitroSDK/include/nitro/wm.h similarity index 100% rename from lib/NitroSDK/include/nitro/wm.h rename to lib/external/NitroSDK/include/nitro/wm.h diff --git a/lib/NitroSDK/include/nitro/wm/ARM9/wm_api.h b/lib/external/NitroSDK/include/nitro/wm/ARM9/wm_api.h similarity index 100% rename from lib/NitroSDK/include/nitro/wm/ARM9/wm_api.h rename to lib/external/NitroSDK/include/nitro/wm/ARM9/wm_api.h diff --git a/lib/NitroSDK/include/nitro/wm/common/wm.h b/lib/external/NitroSDK/include/nitro/wm/common/wm.h similarity index 100% rename from lib/NitroSDK/include/nitro/wm/common/wm.h rename to lib/external/NitroSDK/include/nitro/wm/common/wm.h diff --git a/lib/NitroSDK/include/nitro/wram_begin.h b/lib/external/NitroSDK/include/nitro/wram_begin.h similarity index 100% rename from lib/NitroSDK/include/nitro/wram_begin.h rename to lib/external/NitroSDK/include/nitro/wram_begin.h diff --git a/lib/NitroSDK/include/nitro/wram_end.h b/lib/external/NitroSDK/include/nitro/wram_end.h similarity index 100% rename from lib/NitroSDK/include/nitro/wram_end.h rename to lib/external/NitroSDK/include/nitro/wram_end.h diff --git a/lib/NitroSDK/include/nitro/wvr.h b/lib/external/NitroSDK/include/nitro/wvr.h similarity index 100% rename from lib/NitroSDK/include/nitro/wvr.h rename to lib/external/NitroSDK/include/nitro/wvr.h diff --git a/lib/NitroSDK/include/nitro/wvr/ARM9/wvr.h b/lib/external/NitroSDK/include/nitro/wvr/ARM9/wvr.h similarity index 100% rename from lib/NitroSDK/include/nitro/wvr/ARM9/wvr.h rename to lib/external/NitroSDK/include/nitro/wvr/ARM9/wvr.h diff --git a/lib/NitroSDK/include/nitro/wvr/common/wvr_common.h b/lib/external/NitroSDK/include/nitro/wvr/common/wvr_common.h similarity index 100% rename from lib/NitroSDK/include/nitro/wvr/common/wvr_common.h rename to lib/external/NitroSDK/include/nitro/wvr/common/wvr_common.h diff --git a/lib/NitroSDK/include/nitro_sp.h b/lib/external/NitroSDK/include/nitro_sp.h similarity index 100% rename from lib/NitroSDK/include/nitro_sp.h rename to lib/external/NitroSDK/include/nitro_sp.h diff --git a/lib/NitroSDK/include/nitro_win32.h b/lib/external/NitroSDK/include/nitro_win32.h similarity index 100% rename from lib/NitroSDK/include/nitro_win32.h rename to lib/external/NitroSDK/include/nitro_win32.h diff --git a/lib/NitroSDK/include/nitro_wl/common/version_wl.h b/lib/external/NitroSDK/include/nitro_wl/common/version_wl.h similarity index 100% rename from lib/NitroSDK/include/nitro_wl/common/version_wl.h rename to lib/external/NitroSDK/include/nitro_wl/common/version_wl.h diff --git a/lib/NitroSDK/include/nitro.pch b/lib/external/NitroSDK/include/pch/nitro_pch.h similarity index 100% rename from lib/NitroSDK/include/nitro.pch rename to lib/external/NitroSDK/include/pch/nitro_pch.h diff --git a/lib/NitroSDK/asm/card/card_pullout.s b/lib/external/NitroSDK/libraries/card/asm/card_pullout.s similarity index 100% rename from lib/NitroSDK/asm/card/card_pullout.s rename to lib/external/NitroSDK/libraries/card/asm/card_pullout.s diff --git a/lib/NitroSDK/asm/card/include/card_pullout.inc b/lib/external/NitroSDK/libraries/card/asm/include/card_pullout.inc similarity index 100% rename from lib/NitroSDK/asm/card/include/card_pullout.inc rename to lib/external/NitroSDK/libraries/card/asm/include/card_pullout.inc diff --git a/lib/external/NitroSDK/libraries/card/asm/macros/function.inc b/lib/external/NitroSDK/libraries/card/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroSDK/libraries/card/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/NitroSDK/libraries/card/meson.build b/lib/external/NitroSDK/libraries/card/meson.build new file mode 100644 index 0000000000..9d21f5be38 --- /dev/null +++ b/lib/external/NitroSDK/libraries/card/meson.build @@ -0,0 +1,22 @@ +libcard_srcs = files( + 'src/card_common.c', + 'src/card_spi.c', + 'src/card_backup.c', + 'src/card_rom.c', + 'src/card_request.c', + 'asm/card_pullout.s', +) + +libcard_internal_includes = include_directories('src/include') + +libcard = static_library('card', + sources: [libcard_srcs, fx_const_h], + c_args: [c_args, sdk_args], + include_directories: [public_includes, libcard_internal_includes], + nasm_args: asm_args, + dependencies: msl_dep, + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libcard diff --git a/lib/NitroSDK/src/card/card_backup.c b/lib/external/NitroSDK/libraries/card/src/card_backup.c similarity index 100% rename from lib/NitroSDK/src/card/card_backup.c rename to lib/external/NitroSDK/libraries/card/src/card_backup.c diff --git a/lib/NitroSDK/src/card/card_common.c b/lib/external/NitroSDK/libraries/card/src/card_common.c similarity index 100% rename from lib/NitroSDK/src/card/card_common.c rename to lib/external/NitroSDK/libraries/card/src/card_common.c diff --git a/lib/NitroSDK/src/card/card_request.c b/lib/external/NitroSDK/libraries/card/src/card_request.c similarity index 100% rename from lib/NitroSDK/src/card/card_request.c rename to lib/external/NitroSDK/libraries/card/src/card_request.c diff --git a/lib/NitroSDK/src/card/card_rom.c b/lib/external/NitroSDK/libraries/card/src/card_rom.c similarity index 100% rename from lib/NitroSDK/src/card/card_rom.c rename to lib/external/NitroSDK/libraries/card/src/card_rom.c diff --git a/lib/NitroSDK/src/card/card_spi.c b/lib/external/NitroSDK/libraries/card/src/card_spi.c similarity index 100% rename from lib/NitroSDK/src/card/card_spi.c rename to lib/external/NitroSDK/libraries/card/src/card_spi.c diff --git a/lib/NitroSDK/src/card/include/card_common.h b/lib/external/NitroSDK/libraries/card/src/include/card_common.h similarity index 100% rename from lib/NitroSDK/src/card/include/card_common.h rename to lib/external/NitroSDK/libraries/card/src/include/card_common.h diff --git a/lib/NitroSDK/src/card/include/card_rom.h b/lib/external/NitroSDK/libraries/card/src/include/card_rom.h similarity index 100% rename from lib/NitroSDK/src/card/include/card_rom.h rename to lib/external/NitroSDK/libraries/card/src/include/card_rom.h diff --git a/lib/NitroSDK/src/card/include/card_spi.h b/lib/external/NitroSDK/libraries/card/src/include/card_spi.h similarity index 100% rename from lib/NitroSDK/src/card/include/card_spi.h rename to lib/external/NitroSDK/libraries/card/src/include/card_spi.h diff --git a/lib/external/NitroSDK/libraries/cp/meson.build b/lib/external/NitroSDK/libraries/cp/meson.build new file mode 100644 index 0000000000..df680e53a8 --- /dev/null +++ b/lib/external/NitroSDK/libraries/cp/meson.build @@ -0,0 +1,12 @@ +libcp_srcs = files('src/cp_context.c') + +libcp = static_library('cp', + sources: [libcp_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: public_includes, + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libcp diff --git a/lib/NitroSDK/src/cp/cp_context.c b/lib/external/NitroSDK/libraries/cp/src/cp_context.c similarity index 100% rename from lib/NitroSDK/src/cp/cp_context.c rename to lib/external/NitroSDK/libraries/cp/src/cp_context.c diff --git a/lib/external/NitroSDK/libraries/ctrdg/meson.build b/lib/external/NitroSDK/libraries/ctrdg/meson.build new file mode 100644 index 0000000000..9a169ebd53 --- /dev/null +++ b/lib/external/NitroSDK/libraries/ctrdg/meson.build @@ -0,0 +1,26 @@ +libctrdg_srcs = files( + 'src/ctrdg.c', + 'src/ctrdg_proc.c', + 'src/ctrdg_backup.c', + 'src/ctrdg_flash_common.c', + 'src/ctrdg_flash_AT29LV512.c', + 'src/ctrdg_flash_LE26FV10N1TS-10.c', + 'src/ctrdg_flash_LE39FW512.c', + 'src/ctrdg_flash_MX29L010.c', + 'src/ctrdg_flash_MX29L512.c', + 'src/ctrdg_sram.c', + 'src/ctrdg_task.c' +) + +libctrdg_internal_includes = include_directories('src/include') + +libctrdg = static_library('ctrdg', + sources: [libctrdg_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes, libctrdg_internal_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libctrdg diff --git a/lib/NitroSDK/src/ctrdg/ctrdg.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_backup.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_backup.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_backup.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_backup.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_flash_AT29LV512.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_AT29LV512.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_flash_AT29LV512.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_AT29LV512.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_flash_LE26FV10N1TS-10.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_LE26FV10N1TS-10.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_flash_LE26FV10N1TS-10.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_LE26FV10N1TS-10.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_flash_LE39FW512.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_LE39FW512.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_flash_LE39FW512.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_LE39FW512.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_flash_MX29L010.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_MX29L010.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_flash_MX29L010.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_MX29L010.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_flash_MX29L512.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_MX29L512.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_flash_MX29L512.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_MX29L512.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_flash_common.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_common.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_flash_common.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_flash_common.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_proc.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_proc.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_proc.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_proc.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_sram.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_sram.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_sram.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_sram.c diff --git a/lib/NitroSDK/src/ctrdg/ctrdg_task.c b/lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_task.c similarity index 100% rename from lib/NitroSDK/src/ctrdg/ctrdg_task.c rename to lib/external/NitroSDK/libraries/ctrdg/src/ctrdg_task.c diff --git a/lib/NitroSDK/src/ctrdg/include/ctrdg_work.h b/lib/external/NitroSDK/libraries/ctrdg/src/include/ctrdg_work.h similarity index 100% rename from lib/NitroSDK/src/ctrdg/include/ctrdg_work.h rename to lib/external/NitroSDK/libraries/ctrdg/src/include/ctrdg_work.h diff --git a/lib/NitroSDK/asm/dgt/hash1.s b/lib/external/NitroSDK/libraries/dgt/asm/hash1.s similarity index 100% rename from lib/NitroSDK/asm/dgt/hash1.s rename to lib/external/NitroSDK/libraries/dgt/asm/hash1.s diff --git a/lib/NitroSDK/asm/dgt/hash2.s b/lib/external/NitroSDK/libraries/dgt/asm/hash2.s similarity index 100% rename from lib/NitroSDK/asm/dgt/hash2.s rename to lib/external/NitroSDK/libraries/dgt/asm/hash2.s diff --git a/lib/NitroSDK/asm/dgt/hmac.s b/lib/external/NitroSDK/libraries/dgt/asm/hmac.s similarity index 100% rename from lib/NitroSDK/asm/dgt/hmac.s rename to lib/external/NitroSDK/libraries/dgt/asm/hmac.s diff --git a/lib/NitroSDK/asm/dgt/incbin/hash1.bin b/lib/external/NitroSDK/libraries/dgt/asm/incbin/hash1.bin similarity index 100% rename from lib/NitroSDK/asm/dgt/incbin/hash1.bin rename to lib/external/NitroSDK/libraries/dgt/asm/incbin/hash1.bin diff --git a/lib/NitroSDK/asm/dgt/incbin/hash2.bin b/lib/external/NitroSDK/libraries/dgt/asm/incbin/hash2.bin similarity index 100% rename from lib/NitroSDK/asm/dgt/incbin/hash2.bin rename to lib/external/NitroSDK/libraries/dgt/asm/incbin/hash2.bin diff --git a/lib/NitroSDK/asm/dgt/include/hash1.inc b/lib/external/NitroSDK/libraries/dgt/asm/include/hash1.inc similarity index 100% rename from lib/NitroSDK/asm/dgt/include/hash1.inc rename to lib/external/NitroSDK/libraries/dgt/asm/include/hash1.inc diff --git a/lib/NitroSDK/asm/dgt/include/hash2.inc b/lib/external/NitroSDK/libraries/dgt/asm/include/hash2.inc similarity index 100% rename from lib/NitroSDK/asm/dgt/include/hash2.inc rename to lib/external/NitroSDK/libraries/dgt/asm/include/hash2.inc diff --git a/lib/external/NitroSDK/libraries/dgt/asm/macros/function.inc b/lib/external/NitroSDK/libraries/dgt/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroSDK/libraries/dgt/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroSDK/asm/dgt/sha1s-arm4cw.s b/lib/external/NitroSDK/libraries/dgt/asm/sha1s-arm4cw.s similarity index 100% rename from lib/NitroSDK/asm/dgt/sha1s-arm4cw.s rename to lib/external/NitroSDK/libraries/dgt/asm/sha1s-arm4cw.s diff --git a/lib/external/NitroSDK/libraries/dgt/meson.build b/lib/external/NitroSDK/libraries/dgt/meson.build new file mode 100644 index 0000000000..f1df5904f0 --- /dev/null +++ b/lib/external/NitroSDK/libraries/dgt/meson.build @@ -0,0 +1,16 @@ +libdgt_srcs = files( + 'asm/hash1.s', + 'asm/hash2.s', + 'asm/hmac.s', + 'asm/sha1s-arm4cw.s' +) + +libdgt = static_library('dgt', + sources: libdgt_srcs, + c_args: [c_args, sdk_args], + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrosdk_libs += libdgt diff --git a/lib/external/NitroSDK/libraries/fs/meson.build b/lib/external/NitroSDK/libraries/fs/meson.build new file mode 100644 index 0000000000..0691dcadd2 --- /dev/null +++ b/lib/external/NitroSDK/libraries/fs/meson.build @@ -0,0 +1,21 @@ +libfs_srcs = files( + 'src/fs_command.c', + 'src/fs_command_default.c', + 'src/fs_archive.c', + 'src/fs_file.c', + 'src/fs_rom.c', + 'src/fs_overlay.c' +) + +libfs_internal_includes = include_directories('src/include') + +libfs = static_library('fs', + sources: [libfs_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes, libfs_internal_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libfs diff --git a/lib/NitroSDK/src/fs/fs_archive.c b/lib/external/NitroSDK/libraries/fs/src/fs_archive.c similarity index 100% rename from lib/NitroSDK/src/fs/fs_archive.c rename to lib/external/NitroSDK/libraries/fs/src/fs_archive.c diff --git a/lib/NitroSDK/src/fs/fs_command.c b/lib/external/NitroSDK/libraries/fs/src/fs_command.c similarity index 100% rename from lib/NitroSDK/src/fs/fs_command.c rename to lib/external/NitroSDK/libraries/fs/src/fs_command.c diff --git a/lib/NitroSDK/src/fs/fs_command_default.c b/lib/external/NitroSDK/libraries/fs/src/fs_command_default.c similarity index 100% rename from lib/NitroSDK/src/fs/fs_command_default.c rename to lib/external/NitroSDK/libraries/fs/src/fs_command_default.c diff --git a/lib/NitroSDK/src/fs/fs_file.c b/lib/external/NitroSDK/libraries/fs/src/fs_file.c similarity index 100% rename from lib/NitroSDK/src/fs/fs_file.c rename to lib/external/NitroSDK/libraries/fs/src/fs_file.c diff --git a/lib/NitroSDK/src/fs/fs_overlay.c b/lib/external/NitroSDK/libraries/fs/src/fs_overlay.c similarity index 100% rename from lib/NitroSDK/src/fs/fs_overlay.c rename to lib/external/NitroSDK/libraries/fs/src/fs_overlay.c diff --git a/lib/NitroSDK/src/fs/fs_rom.c b/lib/external/NitroSDK/libraries/fs/src/fs_rom.c similarity index 100% rename from lib/NitroSDK/src/fs/fs_rom.c rename to lib/external/NitroSDK/libraries/fs/src/fs_rom.c diff --git a/lib/NitroSDK/src/fs/include/command.h b/lib/external/NitroSDK/libraries/fs/src/include/command.h similarity index 100% rename from lib/NitroSDK/src/fs/include/command.h rename to lib/external/NitroSDK/libraries/fs/src/include/command.h diff --git a/lib/NitroSDK/src/fs/include/mw_dtor.h b/lib/external/NitroSDK/libraries/fs/src/include/mw_dtor.h similarity index 100% rename from lib/NitroSDK/src/fs/include/mw_dtor.h rename to lib/external/NitroSDK/libraries/fs/src/include/mw_dtor.h diff --git a/lib/NitroSDK/src/fs/include/rom.h b/lib/external/NitroSDK/libraries/fs/src/include/rom.h similarity index 100% rename from lib/NitroSDK/src/fs/include/rom.h rename to lib/external/NitroSDK/libraries/fs/src/include/rom.h diff --git a/lib/NitroSDK/src/fs/include/util.h b/lib/external/NitroSDK/libraries/fs/src/include/util.h similarity index 100% rename from lib/NitroSDK/src/fs/include/util.h rename to lib/external/NitroSDK/libraries/fs/src/include/util.h diff --git a/lib/external/NitroSDK/libraries/fx/meson.build b/lib/external/NitroSDK/libraries/fx/meson.build new file mode 100644 index 0000000000..9adece69e7 --- /dev/null +++ b/lib/external/NitroSDK/libraries/fx/meson.build @@ -0,0 +1,23 @@ +libfx_srcs = files( + 'src/fx_sincos.c', + 'src/fx_mtx22.c', + 'src/fx_mtx33.c', + 'src/fx_mtx43.c', + 'src/fx_mtx44.c', + 'src/fx_cp.c', + 'src/fx_vec.c', + 'src/fx_trig.c', + 'src/fx_atanidx.c', + 'src/fx.c' +) + +libfx = static_library('fx', + sources: [libfx_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libfx diff --git a/lib/NitroSDK/src/fx/fx.c b/lib/external/NitroSDK/libraries/fx/src/fx.c similarity index 100% rename from lib/NitroSDK/src/fx/fx.c rename to lib/external/NitroSDK/libraries/fx/src/fx.c diff --git a/lib/NitroSDK/src/fx/fx_atanidx.c b/lib/external/NitroSDK/libraries/fx/src/fx_atanidx.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_atanidx.c rename to lib/external/NitroSDK/libraries/fx/src/fx_atanidx.c diff --git a/lib/NitroSDK/src/fx/fx_cp.c b/lib/external/NitroSDK/libraries/fx/src/fx_cp.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_cp.c rename to lib/external/NitroSDK/libraries/fx/src/fx_cp.c diff --git a/lib/NitroSDK/src/fx/fx_mtx22.c b/lib/external/NitroSDK/libraries/fx/src/fx_mtx22.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_mtx22.c rename to lib/external/NitroSDK/libraries/fx/src/fx_mtx22.c diff --git a/lib/NitroSDK/src/fx/fx_mtx33.c b/lib/external/NitroSDK/libraries/fx/src/fx_mtx33.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_mtx33.c rename to lib/external/NitroSDK/libraries/fx/src/fx_mtx33.c diff --git a/lib/NitroSDK/src/fx/fx_mtx43.c b/lib/external/NitroSDK/libraries/fx/src/fx_mtx43.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_mtx43.c rename to lib/external/NitroSDK/libraries/fx/src/fx_mtx43.c diff --git a/lib/NitroSDK/src/fx/fx_mtx44.c b/lib/external/NitroSDK/libraries/fx/src/fx_mtx44.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_mtx44.c rename to lib/external/NitroSDK/libraries/fx/src/fx_mtx44.c diff --git a/lib/NitroSDK/src/fx/fx_sincos.c b/lib/external/NitroSDK/libraries/fx/src/fx_sincos.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_sincos.c rename to lib/external/NitroSDK/libraries/fx/src/fx_sincos.c diff --git a/lib/NitroSDK/src/fx/fx_trig.c b/lib/external/NitroSDK/libraries/fx/src/fx_trig.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_trig.c rename to lib/external/NitroSDK/libraries/fx/src/fx_trig.c diff --git a/lib/NitroSDK/src/fx/fx_vec.c b/lib/external/NitroSDK/libraries/fx/src/fx_vec.c similarity index 100% rename from lib/NitroSDK/src/fx/fx_vec.c rename to lib/external/NitroSDK/libraries/fx/src/fx_vec.c diff --git a/lib/external/NitroSDK/libraries/gx/meson.build b/lib/external/NitroSDK/libraries/gx/meson.build new file mode 100644 index 0000000000..3e3c1b5124 --- /dev/null +++ b/lib/external/NitroSDK/libraries/gx/meson.build @@ -0,0 +1,28 @@ +libgx_srcs = files( + 'src/gx.c', + 'src/gxstate.c', + 'src/gx_vramcnt.c', + 'src/gx_bgcnt.c', + 'src/g2.c', + 'src/g3b.c', + 'src/g3imm.c', + 'src/g3x.c', + 'src/g3_util.c', + 'src/gx_load2d.c', + 'src/gx_load3d.c', + 'src/g3.c', + 'src/gxasm.c' +) + +libgx_internal_includes = include_directories('src/include') + +libgx = static_library('gx', + sources: [libgx_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes, libgx_internal_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libgx diff --git a/lib/NitroSDK/src/gx/g2.c b/lib/external/NitroSDK/libraries/gx/src/g2.c similarity index 100% rename from lib/NitroSDK/src/gx/g2.c rename to lib/external/NitroSDK/libraries/gx/src/g2.c diff --git a/lib/NitroSDK/src/gx/g3.c b/lib/external/NitroSDK/libraries/gx/src/g3.c similarity index 100% rename from lib/NitroSDK/src/gx/g3.c rename to lib/external/NitroSDK/libraries/gx/src/g3.c diff --git a/lib/NitroSDK/src/gx/g3_util.c b/lib/external/NitroSDK/libraries/gx/src/g3_util.c similarity index 100% rename from lib/NitroSDK/src/gx/g3_util.c rename to lib/external/NitroSDK/libraries/gx/src/g3_util.c diff --git a/lib/NitroSDK/src/gx/g3b.c b/lib/external/NitroSDK/libraries/gx/src/g3b.c similarity index 100% rename from lib/NitroSDK/src/gx/g3b.c rename to lib/external/NitroSDK/libraries/gx/src/g3b.c diff --git a/lib/NitroSDK/src/gx/g3imm.c b/lib/external/NitroSDK/libraries/gx/src/g3imm.c similarity index 100% rename from lib/NitroSDK/src/gx/g3imm.c rename to lib/external/NitroSDK/libraries/gx/src/g3imm.c diff --git a/lib/NitroSDK/src/gx/g3x.c b/lib/external/NitroSDK/libraries/gx/src/g3x.c similarity index 100% rename from lib/NitroSDK/src/gx/g3x.c rename to lib/external/NitroSDK/libraries/gx/src/g3x.c diff --git a/lib/NitroSDK/src/gx/gx.c b/lib/external/NitroSDK/libraries/gx/src/gx.c similarity index 100% rename from lib/NitroSDK/src/gx/gx.c rename to lib/external/NitroSDK/libraries/gx/src/gx.c diff --git a/lib/NitroSDK/src/gx/gx_bgcnt.c b/lib/external/NitroSDK/libraries/gx/src/gx_bgcnt.c similarity index 100% rename from lib/NitroSDK/src/gx/gx_bgcnt.c rename to lib/external/NitroSDK/libraries/gx/src/gx_bgcnt.c diff --git a/lib/NitroSDK/src/gx/gx_load2d.c b/lib/external/NitroSDK/libraries/gx/src/gx_load2d.c similarity index 100% rename from lib/NitroSDK/src/gx/gx_load2d.c rename to lib/external/NitroSDK/libraries/gx/src/gx_load2d.c diff --git a/lib/NitroSDK/src/gx/gx_load3d.c b/lib/external/NitroSDK/libraries/gx/src/gx_load3d.c similarity index 100% rename from lib/NitroSDK/src/gx/gx_load3d.c rename to lib/external/NitroSDK/libraries/gx/src/gx_load3d.c diff --git a/lib/NitroSDK/src/gx/gx_vramcnt.c b/lib/external/NitroSDK/libraries/gx/src/gx_vramcnt.c similarity index 100% rename from lib/NitroSDK/src/gx/gx_vramcnt.c rename to lib/external/NitroSDK/libraries/gx/src/gx_vramcnt.c diff --git a/lib/NitroSDK/src/gx/gxasm.c b/lib/external/NitroSDK/libraries/gx/src/gxasm.c similarity index 100% rename from lib/NitroSDK/src/gx/gxasm.c rename to lib/external/NitroSDK/libraries/gx/src/gxasm.c diff --git a/lib/NitroSDK/src/gx/gxstate.c b/lib/external/NitroSDK/libraries/gx/src/gxstate.c similarity index 100% rename from lib/NitroSDK/src/gx/gxstate.c rename to lib/external/NitroSDK/libraries/gx/src/gxstate.c diff --git a/lib/NitroSDK/src/gx/include/gxasm.h b/lib/external/NitroSDK/libraries/gx/src/include/gxasm.h similarity index 100% rename from lib/NitroSDK/src/gx/include/gxasm.h rename to lib/external/NitroSDK/libraries/gx/src/include/gxasm.h diff --git a/lib/NitroSDK/src/gx/include/gxdma.h b/lib/external/NitroSDK/libraries/gx/src/include/gxdma.h similarity index 100% rename from lib/NitroSDK/src/gx/include/gxdma.h rename to lib/external/NitroSDK/libraries/gx/src/include/gxdma.h diff --git a/lib/NitroSDK/src/gx/include/gxstate.h b/lib/external/NitroSDK/libraries/gx/src/include/gxstate.h similarity index 100% rename from lib/NitroSDK/src/gx/include/gxstate.h rename to lib/external/NitroSDK/libraries/gx/src/include/gxstate.h diff --git a/lib/external/NitroSDK/libraries/init/meson.build b/lib/external/NitroSDK/libraries/init/meson.build new file mode 100644 index 0000000000..ae94ef2ac9 --- /dev/null +++ b/lib/external/NitroSDK/libraries/init/meson.build @@ -0,0 +1,14 @@ +crt0_src = files('src/crt0.c') + +# Build dummy lib so that we can compile crt0.c +dummy_crt0 = static_library('dummycrt0', + sources: [crt0_src, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +# Extract crt0.o +crt0_obj = dummy_crt0.extract_all_objects(recursive: true) \ No newline at end of file diff --git a/lib/NitroSDK/src/init/crt0.c b/lib/external/NitroSDK/libraries/init/src/crt0.c similarity index 99% rename from lib/NitroSDK/src/init/crt0.c rename to lib/external/NitroSDK/libraries/init/src/crt0.c index 0f9c2a59dc..7c5fb73295 100644 --- a/lib/NitroSDK/src/init/crt0.c +++ b/lib/external/NitroSDK/libraries/init/src/crt0.c @@ -175,7 +175,7 @@ asm void MIi_UncompressBackward (register void * bottom) { bne @blockcopy @bytecopy: ldrb data, [inp, #- 1] ! -#ifdef SDK_TEG +#ifdef SDK_TEG sub outp, outp, #1 swpb data, data, [outp] #else @@ -191,7 +191,7 @@ asm void MIi_UncompressBackward (register void * bottom) { add len, len, #0x0020 @patterncopy: ldrb data, [outp, index] -#ifdef SDK_TEG +#ifdef SDK_TEG sub outp, outp, #1 swpb data, data, [outp] #else diff --git a/lib/external/NitroSDK/libraries/math/meson.build b/lib/external/NitroSDK/libraries/math/meson.build new file mode 100644 index 0000000000..6d1d8ec958 --- /dev/null +++ b/lib/external/NitroSDK/libraries/math/meson.build @@ -0,0 +1,16 @@ +libmath_srcs = files( + 'src/math.c', + 'src/dgt.c', + 'src/crc.c' +) + +libmath = static_library('math', + sources: [libmath_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libmath diff --git a/lib/NitroSDK/src/math/crc.c b/lib/external/NitroSDK/libraries/math/src/crc.c similarity index 100% rename from lib/NitroSDK/src/math/crc.c rename to lib/external/NitroSDK/libraries/math/src/crc.c diff --git a/lib/NitroSDK/src/math/dgt.c b/lib/external/NitroSDK/libraries/math/src/dgt.c similarity index 100% rename from lib/NitroSDK/src/math/dgt.c rename to lib/external/NitroSDK/libraries/math/src/dgt.c diff --git a/lib/NitroSDK/src/math/math.c b/lib/external/NitroSDK/libraries/math/src/math.c similarity index 100% rename from lib/NitroSDK/src/math/math.c rename to lib/external/NitroSDK/libraries/math/src/math.c diff --git a/lib/external/NitroSDK/libraries/mb/meson.build b/lib/external/NitroSDK/libraries/mb/meson.build new file mode 100644 index 0000000000..e1bbab5952 --- /dev/null +++ b/lib/external/NitroSDK/libraries/mb/meson.build @@ -0,0 +1,23 @@ +libmb_srcs = files( + 'src/mb_parent.c', + 'src/mb_fileinfo.c', + 'src/mb_common.c', + 'src/mb_gameinfo.c', + 'src/mb_wm_base.c', + 'src/mb_cache.c', + 'src/mb_task.c', + 'src/mb_block.c' +) + +libmb_internal_includes = include_directories('src/include') + +libmb = static_library('mb', + sources: [libmb_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes, libmb_internal_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libmb diff --git a/lib/NitroSDK/src/mb/include/mb_block.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_block.h similarity index 97% rename from lib/NitroSDK/src/mb/include/mb_block.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_block.h index 9407edb918..7d068e89f7 100644 --- a/lib/NitroSDK/src/mb/include/mb_block.h +++ b/lib/external/NitroSDK/libraries/mb/src/include/mb_block.h @@ -9,7 +9,7 @@ extern "C" { #include #include -#include "include/mb_common.h" +#include "mb_common.h" typedef struct { u8 type; diff --git a/lib/NitroSDK/src/mb/include/mb_cache.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_cache.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_cache.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_cache.h diff --git a/lib/NitroSDK/src/mb/include/mb_child.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_child.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_child.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_child.h diff --git a/lib/NitroSDK/src/mb/include/mb_common.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_common.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_common.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_common.h diff --git a/lib/NitroSDK/src/mb/include/mb_fileinfo.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_fileinfo.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_fileinfo.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_fileinfo.h diff --git a/lib/NitroSDK/src/mb/include/mb_gameinfo.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_gameinfo.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_gameinfo.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_gameinfo.h diff --git a/lib/NitroSDK/src/mb/include/mb_private.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_private.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_private.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_private.h diff --git a/lib/NitroSDK/src/mb/include/mb_rom_header.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_rom_header.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_rom_header.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_rom_header.h diff --git a/lib/NitroSDK/src/mb/include/mb_task.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_task.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_task.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_task.h diff --git a/lib/NitroSDK/src/mb/include/mb_wm_base.h b/lib/external/NitroSDK/libraries/mb/src/include/mb_wm_base.h similarity index 100% rename from lib/NitroSDK/src/mb/include/mb_wm_base.h rename to lib/external/NitroSDK/libraries/mb/src/include/mb_wm_base.h diff --git a/lib/NitroSDK/src/mb/mb_block.c b/lib/external/NitroSDK/libraries/mb/src/mb_block.c similarity index 98% rename from lib/NitroSDK/src/mb/mb_block.c rename to lib/external/NitroSDK/libraries/mb/src/mb_block.c index a6a198dfc3..c6fef555e2 100644 --- a/lib/NitroSDK/src/mb/mb_block.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_block.c @@ -1,9 +1,9 @@ #include -#include "include/mb_common.h" -#include "include/mb_block.h" -#include "include/mb_private.h" +#include "mb_common.h" +#include "mb_block.h" +#include "mb_private.h" static u8 * MBi_ReceiveRequestDataPiece(const MBCommChildBlockHeader * hdr, u16 child); static BOOL IsGetAllRequestData(u16 child); diff --git a/lib/NitroSDK/src/mb/mb_cache.c b/lib/external/NitroSDK/libraries/mb/src/mb_cache.c similarity index 98% rename from lib/NitroSDK/src/mb/mb_cache.c rename to lib/external/NitroSDK/libraries/mb/src/mb_cache.c index 33a6c6ea9b..9b96a76236 100644 --- a/lib/NitroSDK/src/mb/mb_cache.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_cache.c @@ -1,6 +1,6 @@ #include -#include "include/mb_cache.h" +#include "mb_cache.h" void MBi_InitCache (MBiCacheList * pl) { MI_CpuClear8(pl, sizeof(*pl)); diff --git a/lib/NitroSDK/src/mb/mb_common.c b/lib/external/NitroSDK/libraries/mb/src/mb_common.c similarity index 99% rename from lib/NitroSDK/src/mb/mb_common.c rename to lib/external/NitroSDK/libraries/mb/src/mb_common.c index e8d2b680f6..e251413f0a 100644 --- a/lib/NitroSDK/src/mb/mb_common.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_common.c @@ -1,4 +1,4 @@ -#include "include/mb_private.h" +#include "mb_private.h" #define MY_ROUND(n, a) (((u32)(n) + (a) - 1) & ~((a) - 1)) diff --git a/lib/NitroSDK/src/mb/mb_fileinfo.c b/lib/external/NitroSDK/libraries/mb/src/mb_fileinfo.c similarity index 99% rename from lib/NitroSDK/src/mb/mb_fileinfo.c rename to lib/external/NitroSDK/libraries/mb/src/mb_fileinfo.c index ccf97e236f..43fc6fb02f 100644 --- a/lib/NitroSDK/src/mb/mb_fileinfo.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_fileinfo.c @@ -1,4 +1,4 @@ -#include "include/mb_private.h" +#include "mb_private.h" #define MB_CACHE_PAGE_SIZE (17 * 1024) diff --git a/lib/NitroSDK/src/mb/mb_gameinfo.c b/lib/external/NitroSDK/libraries/mb/src/mb_gameinfo.c similarity index 99% rename from lib/NitroSDK/src/mb/mb_gameinfo.c rename to lib/external/NitroSDK/libraries/mb/src/mb_gameinfo.c index 8de6da2e07..51901c0616 100644 --- a/lib/NitroSDK/src/mb/mb_gameinfo.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_gameinfo.c @@ -1,8 +1,8 @@ #include -#include "include/mb_gameinfo.h" -#include "include/mb_common.h" -#include "include/mb_private.h" +#include "mb_gameinfo.h" +#include "mb_common.h" +#include "mb_private.h" #define MB_GAME_INFO_LIFETIME_SEC 60 #define MB_SCAN_LOCK_SEC 8 diff --git a/lib/NitroSDK/src/mb/mb_parent.c b/lib/external/NitroSDK/libraries/mb/src/mb_parent.c similarity index 99% rename from lib/NitroSDK/src/mb/mb_parent.c rename to lib/external/NitroSDK/libraries/mb/src/mb_parent.c index 5c8b8d0770..ad37ea9009 100644 --- a/lib/NitroSDK/src/mb/mb_parent.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_parent.c @@ -1,4 +1,4 @@ -#include "include/mb_private.h" +#include "mb_private.h" #define MB_SEND_THRESHOLD 2 diff --git a/lib/NitroSDK/src/mb/mb_task.c b/lib/external/NitroSDK/libraries/mb/src/mb_task.c similarity index 99% rename from lib/NitroSDK/src/mb/mb_task.c rename to lib/external/NitroSDK/libraries/mb/src/mb_task.c index 1674ce35ed..ed8767329f 100644 --- a/lib/NitroSDK/src/mb/mb_task.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_task.c @@ -1,6 +1,6 @@ #include -#include "include/mb_task.h" +#include "mb_task.h" typedef struct { OSThread th[1]; diff --git a/lib/NitroSDK/src/mb/mb_wm_base.c b/lib/external/NitroSDK/libraries/mb/src/mb_wm_base.c similarity index 99% rename from lib/NitroSDK/src/mb/mb_wm_base.c rename to lib/external/NitroSDK/libraries/mb/src/mb_wm_base.c index 13ff0fe9be..23ed136044 100644 --- a/lib/NitroSDK/src/mb/mb_wm_base.c +++ b/lib/external/NitroSDK/libraries/mb/src/mb_wm_base.c @@ -1,4 +1,4 @@ -#include "include/mb_private.h" +#include "mb_private.h" SDK_COMPILER_ASSERT( 32 + sizeof(MBiParam) + 32 + sizeof(MB_CommPWork) + 32 + WM_SYSTEM_BUF_SIZE <= diff --git a/lib/external/NitroSDK/libraries/mb/src/meson.build b/lib/external/NitroSDK/libraries/mb/src/meson.build new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/lib/external/NitroSDK/libraries/mb/src/meson.build @@ -0,0 +1 @@ + diff --git a/lib/external/NitroSDK/libraries/meson.build b/lib/external/NitroSDK/libraries/meson.build new file mode 100644 index 0000000000..ae032b3ba0 --- /dev/null +++ b/lib/external/NitroSDK/libraries/meson.build @@ -0,0 +1,19 @@ +subdir('card') +subdir('cp') +subdir('ctrdg') +subdir('dgt') +subdir('fs') +subdir('fx') +subdir('gx') +subdir('init') +subdir('math') +subdir('mb') +subdir('mi') +subdir('os') +subdir('pxi') +subdir('rtc') +subdir('snd') +subdir('spi') +subdir('std') +subdir('wm') +subdir('wvr') diff --git a/lib/external/NitroSDK/libraries/mi/meson.build b/lib/external/NitroSDK/libraries/mi/meson.build new file mode 100644 index 0000000000..e0b1dd69fc --- /dev/null +++ b/lib/external/NitroSDK/libraries/mi/meson.build @@ -0,0 +1,24 @@ +libmi_srcs = files( + 'src/mi_wram.c', + 'src/mi_dma.c', + 'src/mi_dma_hblank.c', + 'src/mi_dma_gxcommand.c', + 'src/mi_memory.c', + 'src/mi_swap.c', + 'src/mi_uncompress.c', + 'src/mi_dma_card.c', + 'src/mi_init.c' +) + +libmi_internal_includes = include_directories('src/include') + +libmi = static_library('mi', + sources: [libmi_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes, libmi_internal_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libmi diff --git a/lib/NitroSDK/src/mi/include/mi_dma.h b/lib/external/NitroSDK/libraries/mi/src/include/mi_dma.h similarity index 100% rename from lib/NitroSDK/src/mi/include/mi_dma.h rename to lib/external/NitroSDK/libraries/mi/src/include/mi_dma.h diff --git a/lib/NitroSDK/src/mi/mi_dma.c b/lib/external/NitroSDK/libraries/mi/src/mi_dma.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_dma.c rename to lib/external/NitroSDK/libraries/mi/src/mi_dma.c diff --git a/lib/NitroSDK/src/mi/mi_dma_card.c b/lib/external/NitroSDK/libraries/mi/src/mi_dma_card.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_dma_card.c rename to lib/external/NitroSDK/libraries/mi/src/mi_dma_card.c diff --git a/lib/NitroSDK/src/mi/mi_dma_gxcommand.c b/lib/external/NitroSDK/libraries/mi/src/mi_dma_gxcommand.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_dma_gxcommand.c rename to lib/external/NitroSDK/libraries/mi/src/mi_dma_gxcommand.c diff --git a/lib/NitroSDK/src/mi/mi_dma_hblank.c b/lib/external/NitroSDK/libraries/mi/src/mi_dma_hblank.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_dma_hblank.c rename to lib/external/NitroSDK/libraries/mi/src/mi_dma_hblank.c diff --git a/lib/NitroSDK/src/mi/mi_init.c b/lib/external/NitroSDK/libraries/mi/src/mi_init.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_init.c rename to lib/external/NitroSDK/libraries/mi/src/mi_init.c diff --git a/lib/NitroSDK/src/mi/mi_memory.c b/lib/external/NitroSDK/libraries/mi/src/mi_memory.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_memory.c rename to lib/external/NitroSDK/libraries/mi/src/mi_memory.c diff --git a/lib/NitroSDK/src/mi/mi_swap.c b/lib/external/NitroSDK/libraries/mi/src/mi_swap.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_swap.c rename to lib/external/NitroSDK/libraries/mi/src/mi_swap.c diff --git a/lib/NitroSDK/src/mi/mi_uncompress.c b/lib/external/NitroSDK/libraries/mi/src/mi_uncompress.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_uncompress.c rename to lib/external/NitroSDK/libraries/mi/src/mi_uncompress.c diff --git a/lib/NitroSDK/src/mi/mi_wram.c b/lib/external/NitroSDK/libraries/mi/src/mi_wram.c similarity index 100% rename from lib/NitroSDK/src/mi/mi_wram.c rename to lib/external/NitroSDK/libraries/mi/src/mi_wram.c diff --git a/lib/NitroSDK/asm/os/include/os_alarm.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_alarm.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_alarm.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_alarm.inc diff --git a/lib/NitroSDK/asm/os/include/os_alloc.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_alloc.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_alloc.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_alloc.inc diff --git a/lib/NitroSDK/asm/os/include/os_arena.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_arena.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_arena.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_arena.inc diff --git a/lib/NitroSDK/asm/os/include/os_context.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_context.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_context.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_context.inc diff --git a/lib/NitroSDK/asm/os/include/os_entropy.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_entropy.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_entropy.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_entropy.inc diff --git a/lib/NitroSDK/asm/os/include/os_exception.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_exception.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_exception.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_exception.inc diff --git a/lib/NitroSDK/asm/os/include/os_init.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_init.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_init.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_init.inc diff --git a/lib/NitroSDK/asm/os/include/os_interrupt.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_interrupt.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_interrupt.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_interrupt.inc diff --git a/lib/external/NitroSDK/libraries/os/asm/include/os_irqhandler.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_irqhandler.inc new file mode 100644 index 0000000000..cffdfbc430 --- /dev/null +++ b/lib/external/NitroSDK/libraries/os/asm/include/os_irqhandler.inc @@ -0,0 +1,14 @@ +.public OS_IrqHandler_ThreadSwitch +.public OSi_DoBoot +.public OSi_CpuClear32 +.public OSi_ReloadRomData +.public OSi_ReadCardRom32 +.public MIi_DmaSetParams +.public DC_InvalidateAll +.public DC_StoreAll +.public DC_WaitWriteBufferEmpty +.public IC_InvalidateAll +.public OS_DisableInterrupts +.public OS_RestoreInterrupts +.public OS_SleepThread +.public MIi_CheckDma0SourceAddress diff --git a/lib/NitroSDK/asm/os/include/os_irqtable.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_irqtable.inc similarity index 51% rename from lib/NitroSDK/asm/os/include/os_irqtable.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_irqtable.inc index 02cda5196d..0ae6cd1469 100644 --- a/lib/NitroSDK/asm/os/include/os_irqtable.inc +++ b/lib/external/NitroSDK/libraries/os/asm/include/os_irqtable.inc @@ -1,2 +1,4 @@ .public OSi_IrqCallback .public OS_DisableIrqMask +.public OS_IRQTable +.public OSi_IrqThreadQueue diff --git a/lib/NitroSDK/asm/os/include/os_message.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_message.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_message.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_message.inc diff --git a/lib/NitroSDK/asm/os/include/os_mutex.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_mutex.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_mutex.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_mutex.inc diff --git a/lib/NitroSDK/asm/os/include/os_ownerinfo.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_ownerinfo.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_ownerinfo.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_ownerinfo.inc diff --git a/lib/NitroSDK/asm/os/include/os_printf.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_printf.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_printf.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_printf.inc diff --git a/lib/NitroSDK/asm/os/include/os_reset.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_reset.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_reset.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_reset.inc diff --git a/lib/NitroSDK/asm/os/include/os_spinlock.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_spinlock.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_spinlock.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_spinlock.inc diff --git a/lib/NitroSDK/asm/os/include/os_system.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_system.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_system.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_system.inc diff --git a/lib/NitroSDK/asm/os/include/os_terminate_proc.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_terminate_proc.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_terminate_proc.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_terminate_proc.inc diff --git a/lib/NitroSDK/asm/os/include/os_thread.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_thread.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_thread.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_thread.inc diff --git a/lib/NitroSDK/asm/os/include/os_tick.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_tick.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_tick.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_tick.inc diff --git a/lib/NitroSDK/asm/os/include/os_valarm.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_valarm.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_valarm.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_valarm.inc diff --git a/lib/NitroSDK/asm/os/include/os_vramexclusive.inc b/lib/external/NitroSDK/libraries/os/asm/include/os_vramexclusive.inc similarity index 100% rename from lib/NitroSDK/asm/os/include/os_vramexclusive.inc rename to lib/external/NitroSDK/libraries/os/asm/include/os_vramexclusive.inc diff --git a/lib/external/NitroSDK/libraries/os/asm/macros/function.inc b/lib/external/NitroSDK/libraries/os/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroSDK/libraries/os/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroSDK/asm/os/os_alarm.s b/lib/external/NitroSDK/libraries/os/asm/os_alarm.s similarity index 100% rename from lib/NitroSDK/asm/os/os_alarm.s rename to lib/external/NitroSDK/libraries/os/asm/os_alarm.s diff --git a/lib/NitroSDK/asm/os/os_alloc.s b/lib/external/NitroSDK/libraries/os/asm/os_alloc.s similarity index 100% rename from lib/NitroSDK/asm/os/os_alloc.s rename to lib/external/NitroSDK/libraries/os/asm/os_alloc.s diff --git a/lib/NitroSDK/asm/os/os_arena.s b/lib/external/NitroSDK/libraries/os/asm/os_arena.s similarity index 100% rename from lib/NitroSDK/asm/os/os_arena.s rename to lib/external/NitroSDK/libraries/os/asm/os_arena.s diff --git a/lib/NitroSDK/asm/os/os_cache.s b/lib/external/NitroSDK/libraries/os/asm/os_cache.s similarity index 100% rename from lib/NitroSDK/asm/os/os_cache.s rename to lib/external/NitroSDK/libraries/os/asm/os_cache.s diff --git a/lib/NitroSDK/asm/os/os_context.s b/lib/external/NitroSDK/libraries/os/asm/os_context.s similarity index 100% rename from lib/NitroSDK/asm/os/os_context.s rename to lib/external/NitroSDK/libraries/os/asm/os_context.s diff --git a/lib/NitroSDK/asm/os/os_emulator.s b/lib/external/NitroSDK/libraries/os/asm/os_emulator.s similarity index 100% rename from lib/NitroSDK/asm/os/os_emulator.s rename to lib/external/NitroSDK/libraries/os/asm/os_emulator.s diff --git a/lib/NitroSDK/asm/os/os_entropy.s b/lib/external/NitroSDK/libraries/os/asm/os_entropy.s similarity index 100% rename from lib/NitroSDK/asm/os/os_entropy.s rename to lib/external/NitroSDK/libraries/os/asm/os_entropy.s diff --git a/lib/NitroSDK/asm/os/os_exception.s b/lib/external/NitroSDK/libraries/os/asm/os_exception.s similarity index 100% rename from lib/NitroSDK/asm/os/os_exception.s rename to lib/external/NitroSDK/libraries/os/asm/os_exception.s diff --git a/lib/NitroSDK/asm/os/os_init.s b/lib/external/NitroSDK/libraries/os/asm/os_init.s similarity index 100% rename from lib/NitroSDK/asm/os/os_init.s rename to lib/external/NitroSDK/libraries/os/asm/os_init.s diff --git a/lib/NitroSDK/asm/os/os_interrupt.s b/lib/external/NitroSDK/libraries/os/asm/os_interrupt.s similarity index 100% rename from lib/NitroSDK/asm/os/os_interrupt.s rename to lib/external/NitroSDK/libraries/os/asm/os_interrupt.s diff --git a/asm/itcm.s b/lib/external/NitroSDK/libraries/os/asm/os_irqhandler.s similarity index 90% rename from asm/itcm.s rename to lib/external/NitroSDK/libraries/os/asm/os_irqhandler.s index ddb2ba9241..9998143487 100644 --- a/asm/itcm.s +++ b/lib/external/NitroSDK/libraries/os/asm/os_irqhandler.s @@ -1,11 +1,50 @@ .include "macros/function.inc" - .include "include/itcm.inc" + .include "include/os_irqhandler.inc" .extern OSi_ThreadInfo .extern Unk_021CCFE4 .extern OS_IRQTable .extern OSi_IrqThreadQueue + .text + + arm_func_start OS_WaitIrq +OS_WaitIrq: ; 0x020C12B4 + stmfd sp!, {r4, r5, r6, lr} + mov r5, r0 + mov r4, r1 + bl OS_DisableInterrupts + cmp r5, #0 + beq _020C12E4 + ldr r1, _020C1320 ; =0x027E0000 + mvn r2, r4 + add r1, r1, #0x3000 + ldr r3, [r1, #0xff8] + and r2, r3, r2 + str r2, [r1, #0xff8] +_020C12E4: + bl OS_RestoreInterrupts + ldr r1, _020C1320 ; =0x027E0000 + add r0, r1, #0x3000 + ldr r0, [r0, #0xff8] + tst r4, r0 + ldmneia sp!, {r4, r5, r6, pc} + add r0, r1, #0x3f8 + ldr r5, _020C1324 ; =0x027E0060 + add r6, r0, #0x3c00 +_020C1308: + mov r0, r5 + bl OS_SleepThread + ldr r0, [r6, #0] + tst r4, r0 + beq _020C1308 + ldmia sp!, {r4, r5, r6, pc} + ; .align 2, 0 +_020C1320: .word OS_IRQTable +_020C1324: .word OSi_IrqThreadQueue + arm_func_end OS_WaitIrq + + .section .itcm,4,1,4 arm_func_start OS_IrqHandler diff --git a/lib/NitroSDK/asm/os/os_irqtable.s b/lib/external/NitroSDK/libraries/os/asm/os_irqtable.s similarity index 99% rename from lib/NitroSDK/asm/os/os_irqtable.s rename to lib/external/NitroSDK/libraries/os/asm/os_irqtable.s index 22b8bf77e8..a5f7ae2b32 100644 --- a/lib/NitroSDK/asm/os/os_irqtable.s +++ b/lib/external/NitroSDK/libraries/os/asm/os_irqtable.s @@ -1,8 +1,6 @@ .include "macros/function.inc" .include "include/os_irqtable.inc" - .extern OS_IRQTable - .text @@ -124,6 +122,7 @@ OSi_IrqTimer3: ; 0x020C1424 _020C1430: .word OSi_IrqCallback arm_func_end OSi_IrqTimer3 + .data @@ -132,7 +131,6 @@ Unk_0210114C: ; 0x0210114C .short 0x8, 0x9, 0xA, 0xB, 0x3, 0x4, 0x5, 0x6 - .bss diff --git a/lib/NitroSDK/asm/os/os_message.s b/lib/external/NitroSDK/libraries/os/asm/os_message.s similarity index 100% rename from lib/NitroSDK/asm/os/os_message.s rename to lib/external/NitroSDK/libraries/os/asm/os_message.s diff --git a/lib/NitroSDK/asm/os/os_mutex.s b/lib/external/NitroSDK/libraries/os/asm/os_mutex.s similarity index 100% rename from lib/NitroSDK/asm/os/os_mutex.s rename to lib/external/NitroSDK/libraries/os/asm/os_mutex.s diff --git a/lib/NitroSDK/asm/os/os_ownerinfo.s b/lib/external/NitroSDK/libraries/os/asm/os_ownerinfo.s similarity index 100% rename from lib/NitroSDK/asm/os/os_ownerinfo.s rename to lib/external/NitroSDK/libraries/os/asm/os_ownerinfo.s diff --git a/lib/NitroSDK/asm/os/os_printf.s b/lib/external/NitroSDK/libraries/os/asm/os_printf.s similarity index 100% rename from lib/NitroSDK/asm/os/os_printf.s rename to lib/external/NitroSDK/libraries/os/asm/os_printf.s diff --git a/lib/NitroSDK/asm/os/os_protectionregion.s b/lib/external/NitroSDK/libraries/os/asm/os_protectionregion.s similarity index 100% rename from lib/NitroSDK/asm/os/os_protectionregion.s rename to lib/external/NitroSDK/libraries/os/asm/os_protectionregion.s diff --git a/lib/NitroSDK/asm/os/os_protectionunit.s b/lib/external/NitroSDK/libraries/os/asm/os_protectionunit.s similarity index 100% rename from lib/NitroSDK/asm/os/os_protectionunit.s rename to lib/external/NitroSDK/libraries/os/asm/os_protectionunit.s diff --git a/lib/NitroSDK/asm/os/os_reset.s b/lib/external/NitroSDK/libraries/os/asm/os_reset.s similarity index 100% rename from lib/NitroSDK/asm/os/os_reset.s rename to lib/external/NitroSDK/libraries/os/asm/os_reset.s diff --git a/lib/NitroSDK/asm/os/os_spinlock.s b/lib/external/NitroSDK/libraries/os/asm/os_spinlock.s similarity index 100% rename from lib/NitroSDK/asm/os/os_spinlock.s rename to lib/external/NitroSDK/libraries/os/asm/os_spinlock.s diff --git a/lib/NitroSDK/asm/os/os_system.s b/lib/external/NitroSDK/libraries/os/asm/os_system.s similarity index 100% rename from lib/NitroSDK/asm/os/os_system.s rename to lib/external/NitroSDK/libraries/os/asm/os_system.s diff --git a/lib/NitroSDK/asm/os/os_tcm.s b/lib/external/NitroSDK/libraries/os/asm/os_tcm.s similarity index 100% rename from lib/NitroSDK/asm/os/os_tcm.s rename to lib/external/NitroSDK/libraries/os/asm/os_tcm.s diff --git a/lib/NitroSDK/asm/os/os_terminate_proc.s b/lib/external/NitroSDK/libraries/os/asm/os_terminate_proc.s similarity index 100% rename from lib/NitroSDK/asm/os/os_terminate_proc.s rename to lib/external/NitroSDK/libraries/os/asm/os_terminate_proc.s diff --git a/lib/NitroSDK/asm/os/os_thread.s b/lib/external/NitroSDK/libraries/os/asm/os_thread.s similarity index 100% rename from lib/NitroSDK/asm/os/os_thread.s rename to lib/external/NitroSDK/libraries/os/asm/os_thread.s diff --git a/lib/NitroSDK/asm/os/os_tick.s b/lib/external/NitroSDK/libraries/os/asm/os_tick.s similarity index 100% rename from lib/NitroSDK/asm/os/os_tick.s rename to lib/external/NitroSDK/libraries/os/asm/os_tick.s diff --git a/lib/NitroSDK/asm/os/os_timer.s b/lib/external/NitroSDK/libraries/os/asm/os_timer.s similarity index 100% rename from lib/NitroSDK/asm/os/os_timer.s rename to lib/external/NitroSDK/libraries/os/asm/os_timer.s diff --git a/lib/NitroSDK/asm/os/os_valarm.s b/lib/external/NitroSDK/libraries/os/asm/os_valarm.s similarity index 100% rename from lib/NitroSDK/asm/os/os_valarm.s rename to lib/external/NitroSDK/libraries/os/asm/os_valarm.s diff --git a/lib/NitroSDK/asm/os/os_vramexclusive.s b/lib/external/NitroSDK/libraries/os/asm/os_vramexclusive.s similarity index 100% rename from lib/NitroSDK/asm/os/os_vramexclusive.s rename to lib/external/NitroSDK/libraries/os/asm/os_vramexclusive.s diff --git a/lib/external/NitroSDK/libraries/os/meson.build b/lib/external/NitroSDK/libraries/os/meson.build new file mode 100644 index 0000000000..74b8e523b1 --- /dev/null +++ b/lib/external/NitroSDK/libraries/os/meson.build @@ -0,0 +1,40 @@ +libos_srcs = files( + 'asm/os_irqhandler.s', + 'asm/os_irqtable.s', + 'asm/os_interrupt.s', + 'asm/os_spinlock.s', + 'asm/os_printf.s', + 'asm/os_thread.s', + 'asm/os_context.s', + 'asm/os_emulator.s', + 'asm/os_message.s', + 'asm/os_mutex.s', + 'asm/os_cache.s', + 'asm/os_init.s', + 'asm/os_arena.s', + 'asm/os_alloc.s', + 'asm/os_tcm.s', + 'asm/os_protectionunit.s', + 'asm/os_protectionregion.s', + 'asm/os_exception.s', + 'asm/os_timer.s', + 'asm/os_tick.s', + 'asm/os_alarm.s', + 'asm/os_valarm.s', + 'asm/os_system.s', + 'asm/os_reset.s', + 'asm/os_ownerinfo.s', + 'asm/os_vramexclusive.s', + 'asm/os_entropy.s', + 'asm/os_terminate_proc.s' +) + +libos = static_library('os', + sources: libos_srcs, + c_args: [c_args, sdk_args], + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrosdk_libs += libos diff --git a/lib/external/NitroSDK/libraries/pxi/meson.build b/lib/external/NitroSDK/libraries/pxi/meson.build new file mode 100644 index 0000000000..6a8c7cb458 --- /dev/null +++ b/lib/external/NitroSDK/libraries/pxi/meson.build @@ -0,0 +1,15 @@ +libpxi_srcs = files( + 'src/pxi_init.c', + 'src/pxi_fifo.c' +) + +libpxi = static_library('pxi', + sources: [libpxi_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libpxi diff --git a/lib/NitroSDK/src/pxi/pxi_fifo.c b/lib/external/NitroSDK/libraries/pxi/src/pxi_fifo.c similarity index 100% rename from lib/NitroSDK/src/pxi/pxi_fifo.c rename to lib/external/NitroSDK/libraries/pxi/src/pxi_fifo.c diff --git a/lib/NitroSDK/src/pxi/pxi_init.c b/lib/external/NitroSDK/libraries/pxi/src/pxi_init.c similarity index 100% rename from lib/NitroSDK/src/pxi/pxi_init.c rename to lib/external/NitroSDK/libraries/pxi/src/pxi_init.c diff --git a/lib/external/NitroSDK/libraries/rtc/meson.build b/lib/external/NitroSDK/libraries/rtc/meson.build new file mode 100644 index 0000000000..535fee0f1a --- /dev/null +++ b/lib/external/NitroSDK/libraries/rtc/meson.build @@ -0,0 +1,16 @@ +librtc_srcs = files( + 'src/external.c', + 'src/internal.c', + 'src/convert.c', +) + +librtc = static_library('rtc', + sources: [librtc_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += librtc diff --git a/lib/NitroSDK/src/rtc/convert.c b/lib/external/NitroSDK/libraries/rtc/src/convert.c similarity index 100% rename from lib/NitroSDK/src/rtc/convert.c rename to lib/external/NitroSDK/libraries/rtc/src/convert.c diff --git a/lib/NitroSDK/src/rtc/external.c b/lib/external/NitroSDK/libraries/rtc/src/external.c similarity index 100% rename from lib/NitroSDK/src/rtc/external.c rename to lib/external/NitroSDK/libraries/rtc/src/external.c diff --git a/lib/NitroSDK/src/rtc/internal.c b/lib/external/NitroSDK/libraries/rtc/src/internal.c similarity index 100% rename from lib/NitroSDK/src/rtc/internal.c rename to lib/external/NitroSDK/libraries/rtc/src/internal.c diff --git a/lib/external/NitroSDK/libraries/snd/meson.build b/lib/external/NitroSDK/libraries/snd/meson.build new file mode 100644 index 0000000000..eeb1d68074 --- /dev/null +++ b/lib/external/NitroSDK/libraries/snd/meson.build @@ -0,0 +1,20 @@ +libsnd_srcs = files( + 'src/snd_interface.c', + 'src/snd_main.c', + 'src/snd_command.c', + 'src/snd_alarm.c', + 'src/snd_work.c', + 'src/snd_util.c', + 'src/snd_bank.c' +) + +libsnd = static_library('snd', + sources: [libsnd_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libsnd diff --git a/lib/NitroSDK/src/snd/snd_alarm.c b/lib/external/NitroSDK/libraries/snd/src/snd_alarm.c similarity index 100% rename from lib/NitroSDK/src/snd/snd_alarm.c rename to lib/external/NitroSDK/libraries/snd/src/snd_alarm.c diff --git a/lib/NitroSDK/src/snd/snd_bank.c b/lib/external/NitroSDK/libraries/snd/src/snd_bank.c similarity index 100% rename from lib/NitroSDK/src/snd/snd_bank.c rename to lib/external/NitroSDK/libraries/snd/src/snd_bank.c diff --git a/lib/NitroSDK/src/snd/snd_command.c b/lib/external/NitroSDK/libraries/snd/src/snd_command.c similarity index 100% rename from lib/NitroSDK/src/snd/snd_command.c rename to lib/external/NitroSDK/libraries/snd/src/snd_command.c diff --git a/lib/NitroSDK/src/snd/snd_interface.c b/lib/external/NitroSDK/libraries/snd/src/snd_interface.c similarity index 100% rename from lib/NitroSDK/src/snd/snd_interface.c rename to lib/external/NitroSDK/libraries/snd/src/snd_interface.c diff --git a/lib/NitroSDK/src/snd/snd_main.c b/lib/external/NitroSDK/libraries/snd/src/snd_main.c similarity index 100% rename from lib/NitroSDK/src/snd/snd_main.c rename to lib/external/NitroSDK/libraries/snd/src/snd_main.c diff --git a/lib/NitroSDK/src/snd/snd_util.c b/lib/external/NitroSDK/libraries/snd/src/snd_util.c similarity index 100% rename from lib/NitroSDK/src/snd/snd_util.c rename to lib/external/NitroSDK/libraries/snd/src/snd_util.c diff --git a/lib/NitroSDK/src/snd/snd_work.c b/lib/external/NitroSDK/libraries/snd/src/snd_work.c similarity index 100% rename from lib/NitroSDK/src/snd/snd_work.c rename to lib/external/NitroSDK/libraries/snd/src/snd_work.c diff --git a/lib/external/NitroSDK/libraries/spi/meson.build b/lib/external/NitroSDK/libraries/spi/meson.build new file mode 100644 index 0000000000..a319160b66 --- /dev/null +++ b/lib/external/NitroSDK/libraries/spi/meson.build @@ -0,0 +1,18 @@ +libspi_srcs = files( + 'src/tp.c', + 'src/mic.c', + 'src/pm.c' +) + +libspi_internal_includes = include_directories('src/include') + +libspi = static_library('spi', + sources: [libspi_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes, libspi_internal_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libspi diff --git a/lib/NitroSDK/src/spi/include/spi.h b/lib/external/NitroSDK/libraries/spi/src/include/spi.h similarity index 100% rename from lib/NitroSDK/src/spi/include/spi.h rename to lib/external/NitroSDK/libraries/spi/src/include/spi.h diff --git a/lib/NitroSDK/src/spi/mic.c b/lib/external/NitroSDK/libraries/spi/src/mic.c similarity index 100% rename from lib/NitroSDK/src/spi/mic.c rename to lib/external/NitroSDK/libraries/spi/src/mic.c diff --git a/lib/NitroSDK/src/spi/pm.c b/lib/external/NitroSDK/libraries/spi/src/pm.c similarity index 100% rename from lib/NitroSDK/src/spi/pm.c rename to lib/external/NitroSDK/libraries/spi/src/pm.c diff --git a/lib/NitroSDK/src/spi/tp.c b/lib/external/NitroSDK/libraries/spi/src/tp.c similarity index 100% rename from lib/NitroSDK/src/spi/tp.c rename to lib/external/NitroSDK/libraries/spi/src/tp.c diff --git a/lib/NitroSDK/asm/std/include/std_sprintf.inc b/lib/external/NitroSDK/libraries/std/asm/include/std_sprintf.inc similarity index 100% rename from lib/NitroSDK/asm/std/include/std_sprintf.inc rename to lib/external/NitroSDK/libraries/std/asm/include/std_sprintf.inc diff --git a/lib/NitroSDK/asm/std/include/std_string.inc b/lib/external/NitroSDK/libraries/std/asm/include/std_string.inc similarity index 100% rename from lib/NitroSDK/asm/std/include/std_string.inc rename to lib/external/NitroSDK/libraries/std/asm/include/std_string.inc diff --git a/lib/external/NitroSDK/libraries/std/asm/macros/function.inc b/lib/external/NitroSDK/libraries/std/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroSDK/libraries/std/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroSDK/asm/std/std_sprintf.s b/lib/external/NitroSDK/libraries/std/asm/std_sprintf.s similarity index 100% rename from lib/NitroSDK/asm/std/std_sprintf.s rename to lib/external/NitroSDK/libraries/std/asm/std_sprintf.s diff --git a/lib/NitroSDK/asm/std/std_string.s b/lib/external/NitroSDK/libraries/std/asm/std_string.s similarity index 100% rename from lib/NitroSDK/asm/std/std_string.s rename to lib/external/NitroSDK/libraries/std/asm/std_string.s diff --git a/lib/external/NitroSDK/libraries/std/meson.build b/lib/external/NitroSDK/libraries/std/meson.build new file mode 100644 index 0000000000..0929c35329 --- /dev/null +++ b/lib/external/NitroSDK/libraries/std/meson.build @@ -0,0 +1,13 @@ +libstd_srcs = files( + 'asm/std_string.s', + 'asm/std_sprintf.s' +) + +libstd = static_library('std', + sources: libstd_srcs, + c_args: [c_args, sdk_args], + include_directories: public_includes, + pic: false +) + +nitrosdk_libs += libstd diff --git a/lib/NitroSDK/asm/wm/include/wm_system.inc b/lib/external/NitroSDK/libraries/wm/asm/include/wm_system.inc similarity index 100% rename from lib/NitroSDK/asm/wm/include/wm_system.inc rename to lib/external/NitroSDK/libraries/wm/asm/include/wm_system.inc diff --git a/lib/external/NitroSDK/libraries/wm/asm/macros/function.inc b/lib/external/NitroSDK/libraries/wm/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroSDK/libraries/wm/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroSDK/asm/wm/wm_system.s b/lib/external/NitroSDK/libraries/wm/asm/wm_system.s similarity index 100% rename from lib/NitroSDK/asm/wm/wm_system.s rename to lib/external/NitroSDK/libraries/wm/asm/wm_system.s diff --git a/lib/external/NitroSDK/libraries/wm/meson.build b/lib/external/NitroSDK/libraries/wm/meson.build new file mode 100644 index 0000000000..d52c70b037 --- /dev/null +++ b/lib/external/NitroSDK/libraries/wm/meson.build @@ -0,0 +1,24 @@ +libwm_srcs = files( + 'asm/wm_system.s', + 'src/wm_sync.c', + 'src/wm_standard.c', + 'src/wm_mp.c', + 'src/wm_dcf.c', + 'src/wm_ds.c', + 'src/wm_ks.c', + 'src/wm_etc.c' +) + +libwm_internal_includes = include_directories('src/include') + +libwm = static_library('wm', + sources: [libwm_srcs, fx_const_h], + c_args: [c_args, sdk_args], + nasm_args: asm_args, + dependencies: msl_dep, + include_directories: [public_includes, libwm_internal_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libwm diff --git a/lib/NitroSDK/src/wm/include/wm_arm9_private.h b/lib/external/NitroSDK/libraries/wm/src/include/wm_arm9_private.h similarity index 98% rename from lib/NitroSDK/src/wm/include/wm_arm9_private.h rename to lib/external/NitroSDK/libraries/wm/src/include/wm_arm9_private.h index bab695efa4..ee41301af3 100644 --- a/lib/NitroSDK/src/wm/include/wm_arm9_private.h +++ b/lib/external/NitroSDK/libraries/wm/src/include/wm_arm9_private.h @@ -5,7 +5,7 @@ extern "C" { #endif -#include "include/wm_private.h" +#include "wm_private.h" #define WM_GET_ALLOWED_CHANNEL_BEFORE_INIT 0x8000 diff --git a/lib/NitroSDK/src/wm/include/wm_private.h b/lib/external/NitroSDK/libraries/wm/src/include/wm_private.h similarity index 100% rename from lib/NitroSDK/src/wm/include/wm_private.h rename to lib/external/NitroSDK/libraries/wm/src/include/wm_private.h diff --git a/lib/NitroSDK/src/wm/wm_dcf.c b/lib/external/NitroSDK/libraries/wm/src/wm_dcf.c similarity index 98% rename from lib/NitroSDK/src/wm/wm_dcf.c rename to lib/external/NitroSDK/libraries/wm/src/wm_dcf.c index 8477ffdcaf..2e1f4444f4 100644 --- a/lib/NitroSDK/src/wm/wm_dcf.c +++ b/lib/external/NitroSDK/libraries/wm/src/wm_dcf.c @@ -1,6 +1,6 @@ #include -#include "include/wm_arm9_private.h" +#include "wm_arm9_private.h" WMErrCode WM_StartDCF (WMCallbackFunc callback, WMDcfRecvBuf * recvBuf, u16 recvBufSize) { WMErrCode result; diff --git a/lib/NitroSDK/src/wm/wm_ds.c b/lib/external/NitroSDK/libraries/wm/src/wm_ds.c similarity index 99% rename from lib/NitroSDK/src/wm/wm_ds.c rename to lib/external/NitroSDK/libraries/wm/src/wm_ds.c index 51e6cb5274..e596208938 100644 --- a/lib/NitroSDK/src/wm/wm_ds.c +++ b/lib/external/NitroSDK/libraries/wm/src/wm_ds.c @@ -1,6 +1,6 @@ #include -#include "include/wm_arm9_private.h" +#include "wm_arm9_private.h" static void WmDataSharingSetDataCallback(void * callback); static void WmDataSharingReceiveCallback_Parent(void * callback); diff --git a/lib/NitroSDK/src/wm/wm_etc.c b/lib/external/NitroSDK/libraries/wm/src/wm_etc.c similarity index 99% rename from lib/NitroSDK/src/wm/wm_etc.c rename to lib/external/NitroSDK/libraries/wm/src/wm_etc.c index a3037411d6..272274ffda 100644 --- a/lib/NitroSDK/src/wm/wm_etc.c +++ b/lib/external/NitroSDK/libraries/wm/src/wm_etc.c @@ -1,6 +1,6 @@ #include -#include "include/wm_arm9_private.h" +#include "wm_arm9_private.h" #define WM_SIZE_TEMP_USR_GAME_INFO_BUF 128 diff --git a/lib/NitroSDK/src/wm/wm_ks.c b/lib/external/NitroSDK/libraries/wm/src/wm_ks.c similarity index 96% rename from lib/NitroSDK/src/wm/wm_ks.c rename to lib/external/NitroSDK/libraries/wm/src/wm_ks.c index bc29f1e66e..65eaff092d 100644 --- a/lib/NitroSDK/src/wm/wm_ks.c +++ b/lib/external/NitroSDK/libraries/wm/src/wm_ks.c @@ -1,6 +1,6 @@ #include -#include "include/wm_arm9_private.h" +#include "wm_arm9_private.h" WMErrCode WM_StartKeySharing (WMKeySetBuf * buf, u16 port) { return WM_StartDataSharing(buf, port, 0xffff, WM_KEYDATA_SIZE, TRUE); diff --git a/lib/NitroSDK/src/wm/wm_mp.c b/lib/external/NitroSDK/libraries/wm/src/wm_mp.c similarity index 99% rename from lib/NitroSDK/src/wm/wm_mp.c rename to lib/external/NitroSDK/libraries/wm/src/wm_mp.c index 22763fb54f..b5203a9f31 100644 --- a/lib/NitroSDK/src/wm/wm_mp.c +++ b/lib/external/NitroSDK/libraries/wm/src/wm_mp.c @@ -1,6 +1,6 @@ #include -#include "include/wm_arm9_private.h" +#include "wm_arm9_private.h" WMErrCode WMi_StartMP (WMCallbackFunc callback, u16 * recvBuf, u16 recvBufSize, u16 * sendBuf, u16 sendBufSize, WMMPTmpParam * tmpParam) { WMErrCode result; diff --git a/lib/NitroSDK/src/wm/wm_standard.c b/lib/external/NitroSDK/libraries/wm/src/wm_standard.c similarity index 99% rename from lib/NitroSDK/src/wm/wm_standard.c rename to lib/external/NitroSDK/libraries/wm/src/wm_standard.c index ced88dae77..2dbc2c5396 100644 --- a/lib/NitroSDK/src/wm/wm_standard.c +++ b/lib/external/NitroSDK/libraries/wm/src/wm_standard.c @@ -1,6 +1,6 @@ #include -#include "include/wm_arm9_private.h" +#include "wm_arm9_private.h" static BOOL WmCheckParentParameter(const WMParentParam * param); diff --git a/lib/NitroSDK/src/wm/wm_sync.c b/lib/external/NitroSDK/libraries/wm/src/wm_sync.c similarity index 99% rename from lib/NitroSDK/src/wm/wm_sync.c rename to lib/external/NitroSDK/libraries/wm/src/wm_sync.c index 46ae68da5f..f27942f422 100644 --- a/lib/NitroSDK/src/wm/wm_sync.c +++ b/lib/external/NitroSDK/libraries/wm/src/wm_sync.c @@ -1,6 +1,6 @@ #include -#include "include/wm_arm9_private.h" +#include "wm_arm9_private.h" WMErrCode WM_SetIndCallback (WMCallbackFunc callback) { WMErrCode result; diff --git a/lib/external/NitroSDK/libraries/wvr/meson.build b/lib/external/NitroSDK/libraries/wvr/meson.build new file mode 100644 index 0000000000..bbe11d0d12 --- /dev/null +++ b/lib/external/NitroSDK/libraries/wvr/meson.build @@ -0,0 +1,12 @@ +libwvr_srcs = files('src/wvr.c') + +libwvr = static_library('wvr', + sources: [libwvr_srcs, fx_const_h], + c_args: [c_args, sdk_args], + dependencies: msl_dep, + include_directories: [public_includes], + c_pch: nitro_pch, + pic: false +) + +nitrosdk_libs += libwvr diff --git a/lib/NitroSDK/src/wvr/wvr.c b/lib/external/NitroSDK/libraries/wvr/src/wvr.c similarity index 100% rename from lib/NitroSDK/src/wvr/wvr.c rename to lib/external/NitroSDK/libraries/wvr/src/wvr.c diff --git a/lib/external/NitroSDK/meson.build b/lib/external/NitroSDK/meson.build new file mode 100644 index 0000000000..990a8b1188 --- /dev/null +++ b/lib/external/NitroSDK/meson.build @@ -0,0 +1,65 @@ +project('NitroSDK', ['c', 'nasm']) + +# Compiler flags +c_args = [ + '-wrap:ver', '2.0/sp2', + '-O4,p', + '-proc', 'arm946e', + '-enum', 'int', + '-lang', 'c99', + '-Cpp_exceptions', 'off', + '-gccext,on', + '-msgstyle', 'gcc', + '-ipa', 'file', + '-interworking', + '-inline', 'on,noauto', + '-char', 'signed', + '-nosyspath', + '-nostdinc' +] + +asm_args = [ + '-proc', 'arm5TE', + '-gccinc' +] + +sdk_args = [ + '-DSDK_CW_FORCE_EXPORT_SUPPORT', + '-DSDK_TS', + '-DSDK_4M', + '-DSDK_ARM9', + '-DSDK_CW', + '-DSDK_FINALROM', + '-DSDK_CODE_ARM', + '-DNNS_FINALROM' +] + +# Public includes +public_includes = [include_directories('include')] +nitro_pch = meson.current_source_dir() / 'include/pch/nitro_pch.h' + +# Dependencies +msl_dep = dependency('msl', fallback: ['msl', 'msl_dep']) + +# arm7 components +subdir('components') + +# spec files +subdir('specfiles') + +# Generated headers +subdir('autogen') +public_includes += include_directories('autogen') + +# Libraries +nitrosdk_libs = [] +subdir('libraries') + +# Own dependency for consumers +nitrosdk_dep = declare_dependency( + compile_args: sdk_args, + include_directories: public_includes, + link_with: nitrosdk_libs, + objects: crt0_obj, + sources: fx_const_h +) \ No newline at end of file diff --git a/lib/external/NitroSDK/specfiles/ARM9-TS.lcf.template b/lib/external/NitroSDK/specfiles/ARM9-TS.lcf.template new file mode 100644 index 0000000000..37d6336f79 --- /dev/null +++ b/lib/external/NitroSDK/specfiles/ARM9-TS.lcf.template @@ -0,0 +1,596 @@ +MEMORY +{ + (RWX) : ORIGIN = , LENGTH = 0x0 > + + (RWX) : ORIGIN = , LENGTH = 0x0 >> + + binary.AUTOLOAD_INFO (RWX) : ORIGIN = 0, LENGTH = 0x0 >> + binary.STATIC_FOOTER (RWX) : ORIGIN = 0, LENGTH = 0x0 >> + + (RW) : ORIGIN = AFTER(), LENGTH = 0x0 > + (RW) : ORIGIN = AFTER(), LENGTH = 0x0 > + + (RWXO): ORIGIN = , LENGTH = 0x0 > + + dummy.MAIN_EX (RW) : ORIGIN = 0x023e0000, LENGTH = 0x0 + arena.MAIN (RW) : ORIGIN = AFTER(,), LENGTH = 0x0 + arena.MAIN_EX (RW) : ORIGIN = AFTER(dummy.MAIN_EX,), LENGTH = 0x0 + arena.ITCM (RW) : ORIGIN = AFTER(ITCM,), LENGTH = 0x0 + arena.DTCM (RW) : ORIGIN = AFTER(DTCM,), LENGTH = 0x0 + binary.MODULE_FILES (RW) : ORIGIN = 0x0, LENGTH = 0x0 > component.files + check.ITCM (RWX) : ORIGIN = 0x0, LENGTH = 0x08000 > itcm.check + check.DTCM (RW) : ORIGIN = 0x0, LENGTH = 0x04000 > dtcm.check +} + +FORCE_ACTIVE +{ + SVC_SoftReset +} + +KEEP_SECTION +{ + .sinit +} + +KEEP_SECTION +{ + .exception +} + +SECTIONS +{ + ############################ STATIC ################################# + .: + { + ALIGNALL(4); . = ALIGN(32); # Fit to cache line + + + + # + # TEXT BLOCK: READ ONLY + # + SDK_STATIC_START =.; + SDK_STATIC_TEXT_START =.; + #:::::::::: text/rodata + libsyscall.a (.text) + src_crt0.c.o (.text) + src_crt0.c.o (.rodata) + + + + + OBJECT(NitroMain,*) + + + + + + + . = ALIGN(4); + * (.exception) + . = ALIGN(4); + SDK_STATIC_ETABLE_START =.; + EXCEPTION + SDK_STATIC_ETABLE_END =.; + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + SDK_STATIC_SINIT_START =.; + #:::::::::: ctor + + + + + + + + + + + + + + + + + + + + + + + + + + + WRITEW 0; + #:::::::::: ctor + SDK_STATIC_SINIT_END =.; + + #:::::::::: text/rodata + . = ALIGN(32); + SDK_STATIC_TEXT_END =.; + + # + # DATA BLOCK: READ WRITE + # + SDK_STATIC_DATA_START =.; + #:::::::::: data + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + SDK_OVERLAY_DIGEST =.; + # NO DIGEST + SDK_OVERLAY_DIGEST_END =.; + #:::::::::: data + . = ALIGN(32); + SDK_STATIC_DATA_END =.; + SDK_STATIC_END =.; + + SDK_STATIC_TEXT_SIZE = SDK_STATIC_TEXT_END - SDK_STATIC_TEXT_START; + SDK_STATIC_DATA_SIZE = SDK_STATIC_DATA_END - SDK_STATIC_DATA_START; + SDK_STATIC_SIZE = SDK_STATIC_END - SDK_STATIC_START; + __sinit__ = SDK_STATIC_SINIT_START; # for static initializer + __exception_table_start__ = SDK_STATIC_ETABLE_START; # for exception table + __exception_table_end__ = SDK_STATIC_ETABLE_END; # for exception table + } > + + ..bss: + { + ALIGNALL(4); . = ALIGN(32); + + + + # + # BSS BLOCK + # + SDK_STATIC_BSS_START =.; + #:::::::::: bss + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + #:::::::::: bss + . = ALIGN(32); + SDK_STATIC_BSS_END = .; + SDK_STATIC_BSS_SIZE = SDK_STATIC_BSS_END - SDK_STATIC_BSS_START; + + } >> + + + ############################ AUTOLOADS ############################## + SDK_AUTOLOAD.ITCM.START = 0x01ff8000; + SDK_AUTOLOAD.ITCM.END = SDK_AUTOLOAD.ITCM.START; + SDK_AUTOLOAD.ITCM.BSS_END = SDK_AUTOLOAD.ITCM.START; + SDK_AUTOLOAD.ITCM.SIZE = 0; + SDK_AUTOLOAD.ITCM.BSS_SIZE = 0; + SDK_AUTOLOAD.DTCM.START = 0x027e0000; + SDK_AUTOLOAD.DTCM.END = SDK_AUTOLOAD.DTCM.START; + SDK_AUTOLOAD.DTCM.BSS_END = SDK_AUTOLOAD.DTCM.START; + SDK_AUTOLOAD.DTCM.SIZE = 0; + SDK_AUTOLOAD.DTCM.BSS_SIZE = 0; + SDK_AUTOLOAD_START = SDK_STATIC_END; + SDK_AUTOLOAD_SIZE = 0; + SDK_AUTOLOAD_NUMBER = ; + + + .: + { + ALIGNALL(4); . = ALIGN(32); + + + + # + # TEXT BLOCK: READ ONLY + # + SDK_AUTOLOAD__ID =; + SDK_AUTOLOAD..ID =; + SDK_AUTOLOAD..START =.; + SDK_AUTOLOAD..TEXT_START =.; + #:::::::::: text/rodata + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + #:::::::::: text/rodata + SDK_AUTOLOAD..TEXT_END =.; + + # + # DATA BLOCK: READ WRITE BLOCK + # + SDK_AUTOLOAD..DATA_START =.; + #:::::::::: data + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + #:::::::::: data + . = ALIGN(32); + SDK_AUTOLOAD..DATA_END =.; + SDK_AUTOLOAD..END =.; + + SDK_AUTOLOAD..TEXT_SIZE = SDK_AUTOLOAD..TEXT_END - SDK_AUTOLOAD..TEXT_START; + SDK_AUTOLOAD..DATA_SIZE = SDK_AUTOLOAD..DATA_END - SDK_AUTOLOAD..DATA_START; + SDK_AUTOLOAD..SIZE = SDK_AUTOLOAD..END - SDK_AUTOLOAD..START; + SDK_AUTOLOAD_SIZE = SDK_AUTOLOAD_SIZE + SDK_AUTOLOAD..SIZE; + + } > + + ..bss: + { + ALIGNALL(4); . = ALIGN(32); + + + + # + # BSS BLOCK + # + SDK_AUTOLOAD..BSS_START = .; + #:::::::::: bss + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + #:::::::::: bss + . = ALIGN(32); + SDK_AUTOLOAD..BSS_END = .; + + SDK_AUTOLOAD..BSS_SIZE = SDK_AUTOLOAD..BSS_END - SDK_AUTOLOAD..BSS_START; + + } >> + + + + SDK_AUTOLOAD_ITCM_START = SDK_AUTOLOAD.ITCM.START; + SDK_AUTOLOAD_ITCM_END = SDK_AUTOLOAD.ITCM.END; + SDK_AUTOLOAD_ITCM_BSS_END = SDK_AUTOLOAD.ITCM.BSS_END; + SDK_AUTOLOAD_ITCM_SIZE = SDK_AUTOLOAD.ITCM.SIZE; + SDK_AUTOLOAD_ITCM_BSS_SIZE = SDK_AUTOLOAD.ITCM.BSS_SIZE; + SDK_AUTOLOAD_DTCM_START = SDK_AUTOLOAD.DTCM.START; + SDK_AUTOLOAD_DTCM_END = SDK_AUTOLOAD.DTCM.END; + SDK_AUTOLOAD_DTCM_BSS_END = SDK_AUTOLOAD.DTCM.BSS_END; + SDK_AUTOLOAD_DTCM_SIZE = SDK_AUTOLOAD.DTCM.SIZE; + SDK_AUTOLOAD_DTCM_BSS_SIZE = SDK_AUTOLOAD.DTCM.BSS_SIZE; + + ############################ AUTOLOAD_INFO ########################## + .binary.AUTOLOAD_INFO: + { + + WRITEW ADDR(.); + WRITEW SDK_AUTOLOAD..SIZE; + WRITEW SDK_AUTOLOAD..BSS_SIZE; + + } > binary.AUTOLOAD_INFO + + SDK_AUTOLOAD_LIST = SDK_AUTOLOAD_START + SDK_AUTOLOAD_SIZE; + SDK_AUTOLOAD_LIST_END = SDK_AUTOLOAD_START + SDK_AUTOLOAD_SIZE + SIZEOF(.binary.AUTOLOAD_INFO); + SDK_AUTOLOAD_SIZE = SDK_AUTOLOAD_SIZE + SIZEOF(.binary.AUTOLOAD_INFO); + + ############################ STATIC_FOOTER ########################## + .binary.STATIC_FOOTER: + { + WRITEW 0xdec00621; # LE(0x2106C0DE) = NITRO CODE + WRITEW _start_ModuleParams - ADDR(.); + WRITEW 0; # NO DIGEST + } > binary.STATIC_FOOTER + + ############################ OVERLAYS ############################### + SDK_OVERLAY_NUMBER = ; + + + .: + { + ALIGNALL(4); . = ALIGN(32); + + + + # + # TEXT BLOCK: READ ONLY + # + SDK_OVERLAY__ID =; ### SEGMENT OVERLAY ID + SDK_OVERLAY..ID =; + SDK_OVERLAY..START =.; + SDK_OVERLAY..TEXT_START =.; + #:::::::::: text/rodata + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + SDK_OVERLAY..SINIT_START =.; + #:::::::::: ctor + + + + + + + + + + + + + WRITEW 0; + #:::::::::: ctor + SDK_OVERLAY..SINIT_END =.; + + #:::::::::: text/rodata + . = ALIGN(32); + SDK_OVERLAY..TEXT_END =.; + + # + # DATA BLOCK: READ WRITE + # + SDK_OVERLAY..DATA_START =.; + #:::::::::: data + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + #:::::::::: data + . = ALIGN(32); + SDK_OVERLAY..DATA_END =.; + SDK_OVERLAY..END =.; + + SDK_OVERLAY..TEXT_SIZE = SDK_OVERLAY..TEXT_END - SDK_OVERLAY..TEXT_START; + SDK_OVERLAY..DATA_SIZE = SDK_OVERLAY..DATA_END - SDK_OVERLAY..DATA_START; + SDK_OVERLAY..SIZE = SDK_OVERLAY..END - SDK_OVERLAY..START; + + } > + + ..bss: + { + ALIGNALL(4); . = ALIGN(32); + + + + # + # BSS BLOCK + # + SDK_OVERLAY..BSS_START = .; + #:::::::::: bss + + + + + + + . = ALIGN(4); + + + + + + + . = ALIGN(4); + #:::::::::: bss + . = ALIGN(32); + SDK_OVERLAY..BSS_END = .; + + SDK_OVERLAY..BSS_SIZE = SDK_OVERLAY..BSS_END - SDK_OVERLAY..BSS_START; + + } >> + + + + ############################ MAIN EX ################################## + # MAIN EX Area + .dummy.MAIN_EX: + { + . = ALIGN(32); + } > dummy.MAIN_EX + + ############################ ARENA ################################## + .arena.MAIN: + { + . = ALIGN(32); + SDK_SECTION_ARENA_START =.; + } > arena.MAIN + + .arena.MAIN_EX: + { + . = ALIGN(32); + SDK_SECTION_ARENA_EX_START =.; + } > arena.MAIN_EX + + .arena.ITCM: + { + . = ALIGN(32); + SDK_SECTION_ARENA_ITCM_START =.; + } > arena.ITCM + + .arena.DTCM: + { + . = ALIGN(32); + SDK_SECTION_ARENA_DTCM_START =.; + } > arena.DTCM + + ############################ OVERLAYDEFS ############################ + .: + { + ### module information + WRITEW ADDR(.); # load address + WRITEW _start; # entry address + WRITEW SDK_STATIC_SIZE + SDK_AUTOLOAD_SIZE; # size of module + WRITEW _start_AutoloadDoneCallback; # callback autoload done + + ### overlay filename + + WRITES (""); # Overlay + + + } > + + + ############################ OVERLAYTABLE ########################### + .: + { + + # Overlay + WRITEW ; # overlay ID + WRITEW ADDR(.); # load address + WRITEW SDK_OVERLAY..SIZE; # size of module + WRITEW SDK_OVERLAY..BSS_SIZE; # size of bss + WRITEW SDK_OVERLAY..SINIT_START; # start address of static init + WRITEW SDK_OVERLAY..SINIT_END; # end address of static init + WRITEW ; # ROM file ID + WRITEW 0; # Reserved + + + + } > + + + ############################ OTHERS ################################# + SDK_MAIN_ARENA_LO = SDK_SECTION_ARENA_START; + SDK_IRQ_STACKSIZE = ; # allocated in DTCM + SDK_SYS_STACKSIZE = ; # when 0 means all remains of DTCM + + # Module filelist + .binary.MODULE_FILES: + { + WRITES (""); + WRITES (""); + WRITES (""); + } > binary.MODULE_FILES + + # ITCM/DTCM size checker => check AUTOLOAD_ITCM/DTCM + .check.ITCM: + { + . = . + SDK_AUTOLOAD_ITCM_SIZE + SDK_AUTOLOAD_ITCM_BSS_SIZE; + } > check.ITCM + + SDK_SYS_STACKSIZE_SIGN = (SDK_SYS_STACKSIZE < 0x80000000) * 2 - 1; + .check.DTCM: + { + . = . + SDK_AUTOLOAD_DTCM_SIZE + SDK_AUTOLOAD_DTCM_BSS_SIZE; + . = . + SDK_IRQ_STACKSIZE + SDK_SYS_STACKSIZE * SDK_SYS_STACKSIZE_SIGN; + } > check.DTCM + +} diff --git a/lib/external/NitroSDK/specfiles/meson.build b/lib/external/NitroSDK/specfiles/meson.build new file mode 100644 index 0000000000..efd6d159aa --- /dev/null +++ b/lib/external/NitroSDK/specfiles/meson.build @@ -0,0 +1 @@ +main_lcf_template = files('ARM9-TS.lcf.template') diff --git a/lib/NitroSystem/include/nnsys.h b/lib/external/NitroSystem/include/nnsys.h similarity index 100% rename from lib/NitroSystem/include/nnsys.h rename to lib/external/NitroSystem/include/nnsys.h diff --git a/lib/NitroSystem/include/nnsys/fnd.h b/lib/external/NitroSystem/include/nnsys/fnd.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd.h rename to lib/external/NitroSystem/include/nnsys/fnd.h diff --git a/lib/NitroSystem/include/nnsys/fnd/allocator.h b/lib/external/NitroSystem/include/nnsys/fnd/allocator.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/allocator.h rename to lib/external/NitroSystem/include/nnsys/fnd/allocator.h diff --git a/lib/NitroSystem/include/nnsys/fnd/archive.h b/lib/external/NitroSystem/include/nnsys/fnd/archive.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/archive.h rename to lib/external/NitroSystem/include/nnsys/fnd/archive.h diff --git a/lib/NitroSystem/include/nnsys/fnd/config.h b/lib/external/NitroSystem/include/nnsys/fnd/config.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/config.h rename to lib/external/NitroSystem/include/nnsys/fnd/config.h diff --git a/lib/NitroSystem/include/nnsys/fnd/expheap.h b/lib/external/NitroSystem/include/nnsys/fnd/expheap.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/expheap.h rename to lib/external/NitroSystem/include/nnsys/fnd/expheap.h diff --git a/lib/NitroSystem/include/nnsys/fnd/frameheap.h b/lib/external/NitroSystem/include/nnsys/fnd/frameheap.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/frameheap.h rename to lib/external/NitroSystem/include/nnsys/fnd/frameheap.h diff --git a/lib/NitroSystem/include/nnsys/fnd/heapcommon.h b/lib/external/NitroSystem/include/nnsys/fnd/heapcommon.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/heapcommon.h rename to lib/external/NitroSystem/include/nnsys/fnd/heapcommon.h diff --git a/lib/NitroSystem/include/nnsys/fnd/list.h b/lib/external/NitroSystem/include/nnsys/fnd/list.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/list.h rename to lib/external/NitroSystem/include/nnsys/fnd/list.h diff --git a/lib/NitroSystem/include/nnsys/fnd/unitheap.h b/lib/external/NitroSystem/include/nnsys/fnd/unitheap.h similarity index 100% rename from lib/NitroSystem/include/nnsys/fnd/unitheap.h rename to lib/external/NitroSystem/include/nnsys/fnd/unitheap.h diff --git a/lib/NitroSystem/include/nnsys/g2d.h b/lib/external/NitroSystem/include/nnsys/g2d.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d.h rename to lib/external/NitroSystem/include/nnsys/g2d.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Anim_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Anim_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Anim_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Anim_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Cell_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Cell_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Cell_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Cell_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Character_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Character_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Character_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Character_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Common_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Common_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Common_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Common_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Entity_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Entity_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Entity_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Entity_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Font_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Font_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Font_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Font_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_MultiCell_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_MultiCell_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_MultiCell_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_MultiCell_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Oam_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Oam_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Oam_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Oam_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_SRTControl_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_SRTControl_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_SRTControl_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_SRTControl_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Screen_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Screen_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Screen_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Screen_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Vec_data.h b/lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Vec_data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/fmt/g2d_Vec_data.h rename to lib/external/NitroSystem/include/nnsys/g2d/fmt/g2d_Vec_data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Animation.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Animation.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Animation.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Animation.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Animation_inline.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Animation_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Animation_inline.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Animation_inline.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_CellAnimation.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_CellAnimation.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_CellAnimation.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_CellAnimation.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_CellTransferManager.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_CellTransferManager.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_CellTransferManager.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_CellTransferManager.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_CharCanvas.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_CharCanvas.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_CharCanvas.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_CharCanvas.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_CullingUtility.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_CullingUtility.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_CullingUtility.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_CullingUtility.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Data.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Data.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Data.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Data.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Entity.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Entity.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Entity.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Entity.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Font.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Font.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Font.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Font.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Image.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Image.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Image.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Image.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Load.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Load.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_MultiCellAnimation.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_MultiCellAnimation.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_MultiCellAnimation.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_MultiCellAnimation.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Node.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Node.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Node.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Node.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_OAM.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_OAM.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_OAM.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_OAM.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_OAMEx.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_OAMEx.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_OAMEx.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_OAMEx.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_OAM_Types.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_OAM_Types.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_OAM_Types.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_OAM_Types.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_OamSoftwareSpriteDraw.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_OamSoftwareSpriteDraw.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_OamSoftwareSpriteDraw.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_OamSoftwareSpriteDraw.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_PaletteTable.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_PaletteTable.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_PaletteTable.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_PaletteTable.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Renderer.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Renderer.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Renderer.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Renderer.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_RendererCore.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_RendererCore.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_RendererCore.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_RendererCore.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_SRTControl.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_SRTControl.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_SRTControl.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_SRTControl.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Screen.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Screen.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Screen.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Screen.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_Softsprite.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_Softsprite.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_Softsprite.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_Softsprite.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_TextCanvas.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_TextCanvas.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_TextCanvas.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_TextCanvas.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2d_config.h b/lib/external/NitroSystem/include/nnsys/g2d/g2d_config.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2d_config.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2d_config.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2di_AssertUtil.h b/lib/external/NitroSystem/include/nnsys/g2d/g2di_AssertUtil.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2di_AssertUtil.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2di_AssertUtil.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2di_Char.h b/lib/external/NitroSystem/include/nnsys/g2d/g2di_Char.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2di_Char.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2di_Char.h diff --git a/lib/NitroSystem/include/nnsys/g2d/g2di_SplitChar.h b/lib/external/NitroSystem/include/nnsys/g2d/g2di_SplitChar.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/g2di_SplitChar.h rename to lib/external/NitroSystem/include/nnsys/g2d/g2di_SplitChar.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NAN_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NAN_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NAN_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NAN_load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NCE_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NCE_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NCE_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NCE_load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NCG_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NCG_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NCG_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NCG_load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NCL_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NCL_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NCL_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NCL_load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NEN_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NEN_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NEN_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NEN_load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NFT_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NFT_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NFT_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NFT_load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NMC_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NMC_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NMC_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NMC_load.h diff --git a/lib/NitroSystem/include/nnsys/g2d/load/g2d_NSC_load.h b/lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NSC_load.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g2d/load/g2d_NSC_load.h rename to lib/external/NitroSystem/include/nnsys/g2d/load/g2d_NSC_load.h diff --git a/lib/NitroSystem/include/nnsys/g3d.h b/lib/external/NitroSystem/include/nnsys/g3d.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d.h rename to lib/external/NitroSystem/include/nnsys/g3d.h diff --git a/lib/NitroSystem/include/nnsys/g3d/1mat1shp.h b/lib/external/NitroSystem/include/nnsys/g3d/1mat1shp.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/1mat1shp.h rename to lib/external/NitroSystem/include/nnsys/g3d/1mat1shp.h diff --git a/lib/NitroSystem/include/nnsys/g3d/anm.h b/lib/external/NitroSystem/include/nnsys/g3d/anm.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/anm.h rename to lib/external/NitroSystem/include/nnsys/g3d/anm.h diff --git a/lib/NitroSystem/include/nnsys/g3d/anm/nsbca.h b/lib/external/NitroSystem/include/nnsys/g3d/anm/nsbca.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/anm/nsbca.h rename to lib/external/NitroSystem/include/nnsys/g3d/anm/nsbca.h diff --git a/lib/NitroSystem/include/nnsys/g3d/anm/nsbma.h b/lib/external/NitroSystem/include/nnsys/g3d/anm/nsbma.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/anm/nsbma.h rename to lib/external/NitroSystem/include/nnsys/g3d/anm/nsbma.h diff --git a/lib/NitroSystem/include/nnsys/g3d/anm/nsbta.h b/lib/external/NitroSystem/include/nnsys/g3d/anm/nsbta.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/anm/nsbta.h rename to lib/external/NitroSystem/include/nnsys/g3d/anm/nsbta.h diff --git a/lib/NitroSystem/include/nnsys/g3d/anm/nsbtp.h b/lib/external/NitroSystem/include/nnsys/g3d/anm/nsbtp.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/anm/nsbtp.h rename to lib/external/NitroSystem/include/nnsys/g3d/anm/nsbtp.h diff --git a/lib/NitroSystem/include/nnsys/g3d/anm/nsbva.h b/lib/external/NitroSystem/include/nnsys/g3d/anm/nsbva.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/anm/nsbva.h rename to lib/external/NitroSystem/include/nnsys/g3d/anm/nsbva.h diff --git a/lib/NitroSystem/include/nnsys/g3d/binres/res_print.h b/lib/external/NitroSystem/include/nnsys/g3d/binres/res_print.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/binres/res_print.h rename to lib/external/NitroSystem/include/nnsys/g3d/binres/res_print.h diff --git a/lib/NitroSystem/include/nnsys/g3d/binres/res_struct.h b/lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/binres/res_struct.h rename to lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct.h diff --git a/lib/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor.h b/lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor.h rename to lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor.h diff --git a/lib/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_anm.h b/lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_anm.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_anm.h rename to lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_anm.h diff --git a/lib/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_inline.h b/lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_inline.h rename to lib/external/NitroSystem/include/nnsys/g3d/binres/res_struct_accessor_inline.h diff --git a/lib/NitroSystem/include/nnsys/g3d/cgtool.h b/lib/external/NitroSystem/include/nnsys/g3d/cgtool.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/cgtool.h rename to lib/external/NitroSystem/include/nnsys/g3d/cgtool.h diff --git a/lib/NitroSystem/include/nnsys/g3d/cgtool/3dsmax.h b/lib/external/NitroSystem/include/nnsys/g3d/cgtool/3dsmax.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/cgtool/3dsmax.h rename to lib/external/NitroSystem/include/nnsys/g3d/cgtool/3dsmax.h diff --git a/lib/NitroSystem/include/nnsys/g3d/cgtool/basic.h b/lib/external/NitroSystem/include/nnsys/g3d/cgtool/basic.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/cgtool/basic.h rename to lib/external/NitroSystem/include/nnsys/g3d/cgtool/basic.h diff --git a/lib/NitroSystem/include/nnsys/g3d/cgtool/maya.h b/lib/external/NitroSystem/include/nnsys/g3d/cgtool/maya.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/cgtool/maya.h rename to lib/external/NitroSystem/include/nnsys/g3d/cgtool/maya.h diff --git a/lib/NitroSystem/include/nnsys/g3d/cgtool/si3d.h b/lib/external/NitroSystem/include/nnsys/g3d/cgtool/si3d.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/cgtool/si3d.h rename to lib/external/NitroSystem/include/nnsys/g3d/cgtool/si3d.h diff --git a/lib/NitroSystem/include/nnsys/g3d/cgtool/xsi.h b/lib/external/NitroSystem/include/nnsys/g3d/cgtool/xsi.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/cgtool/xsi.h rename to lib/external/NitroSystem/include/nnsys/g3d/cgtool/xsi.h diff --git a/lib/NitroSystem/include/nnsys/g3d/config.h b/lib/external/NitroSystem/include/nnsys/g3d/config.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/config.h rename to lib/external/NitroSystem/include/nnsys/g3d/config.h diff --git a/lib/NitroSystem/include/nnsys/g3d/gecom.h b/lib/external/NitroSystem/include/nnsys/g3d/gecom.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/gecom.h rename to lib/external/NitroSystem/include/nnsys/g3d/gecom.h diff --git a/lib/NitroSystem/include/nnsys/g3d/gecom_inline.h b/lib/external/NitroSystem/include/nnsys/g3d/gecom_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/gecom_inline.h rename to lib/external/NitroSystem/include/nnsys/g3d/gecom_inline.h diff --git a/lib/NitroSystem/include/nnsys/g3d/glbstate.h b/lib/external/NitroSystem/include/nnsys/g3d/glbstate.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/glbstate.h rename to lib/external/NitroSystem/include/nnsys/g3d/glbstate.h diff --git a/lib/NitroSystem/include/nnsys/g3d/glbstate_inline.h b/lib/external/NitroSystem/include/nnsys/g3d/glbstate_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/glbstate_inline.h rename to lib/external/NitroSystem/include/nnsys/g3d/glbstate_inline.h diff --git a/lib/NitroSystem/include/nnsys/g3d/kernel.h b/lib/external/NitroSystem/include/nnsys/g3d/kernel.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/kernel.h rename to lib/external/NitroSystem/include/nnsys/g3d/kernel.h diff --git a/lib/NitroSystem/include/nnsys/g3d/kernel_inline.h b/lib/external/NitroSystem/include/nnsys/g3d/kernel_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/kernel_inline.h rename to lib/external/NitroSystem/include/nnsys/g3d/kernel_inline.h diff --git a/lib/NitroSystem/include/nnsys/g3d/mem.h b/lib/external/NitroSystem/include/nnsys/g3d/mem.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/mem.h rename to lib/external/NitroSystem/include/nnsys/g3d/mem.h diff --git a/lib/NitroSystem/include/nnsys/g3d/model.h b/lib/external/NitroSystem/include/nnsys/g3d/model.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/model.h rename to lib/external/NitroSystem/include/nnsys/g3d/model.h diff --git a/lib/NitroSystem/include/nnsys/g3d/model_inline.h b/lib/external/NitroSystem/include/nnsys/g3d/model_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/model_inline.h rename to lib/external/NitroSystem/include/nnsys/g3d/model_inline.h diff --git a/lib/NitroSystem/include/nnsys/g3d/sbc.h b/lib/external/NitroSystem/include/nnsys/g3d/sbc.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/sbc.h rename to lib/external/NitroSystem/include/nnsys/g3d/sbc.h diff --git a/lib/NitroSystem/include/nnsys/g3d/sbc_inline.h b/lib/external/NitroSystem/include/nnsys/g3d/sbc_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/sbc_inline.h rename to lib/external/NitroSystem/include/nnsys/g3d/sbc_inline.h diff --git a/lib/NitroSystem/include/nnsys/g3d/util.h b/lib/external/NitroSystem/include/nnsys/g3d/util.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/util.h rename to lib/external/NitroSystem/include/nnsys/g3d/util.h diff --git a/lib/NitroSystem/include/nnsys/g3d/util_inline.h b/lib/external/NitroSystem/include/nnsys/g3d/util_inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/g3d/util_inline.h rename to lib/external/NitroSystem/include/nnsys/g3d/util_inline.h diff --git a/lib/NitroSystem/include/nnsys/gfd.h b/lib/external/NitroSystem/include/nnsys/gfd.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd.h rename to lib/external/NitroSystem/include/nnsys/gfd.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayPlttVramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayPlttVramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayPlttVramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayPlttVramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayTexVramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayTexVramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayTexVramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_BitArrayTexVramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_FramePlttVramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_FramePlttVramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_FramePlttVramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_FramePlttVramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_FrameTexVramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_FrameTexVramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_FrameTexVramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_FrameTexVramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListPlttVramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListPlttVramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListPlttVramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListPlttVramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListTexVramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListTexVramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListTexVramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListTexVramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListVramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListVramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListVramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_LinkedListVramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_PlttVramMan_Types.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_PlttVramMan_Types.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_PlttVramMan_Types.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_PlttVramMan_Types.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_TexVramMan_Types.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_TexVramMan_Types.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_TexVramMan_Types.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_TexVramMan_Types.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_VramMan.h b/lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_VramMan.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramManager/gfd_VramMan.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramManager/gfd_VramMan.h diff --git a/lib/NitroSystem/include/nnsys/gfd/VramTransferMan/gfd_VramTransferManager.h b/lib/external/NitroSystem/include/nnsys/gfd/VramTransferMan/gfd_VramTransferManager.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/VramTransferMan/gfd_VramTransferManager.h rename to lib/external/NitroSystem/include/nnsys/gfd/VramTransferMan/gfd_VramTransferManager.h diff --git a/lib/NitroSystem/include/nnsys/gfd/gfd_common.h b/lib/external/NitroSystem/include/nnsys/gfd/gfd_common.h similarity index 100% rename from lib/NitroSystem/include/nnsys/gfd/gfd_common.h rename to lib/external/NitroSystem/include/nnsys/gfd/gfd_common.h diff --git a/lib/NitroSystem/include/nnsys/inline.h b/lib/external/NitroSystem/include/nnsys/inline.h similarity index 100% rename from lib/NitroSystem/include/nnsys/inline.h rename to lib/external/NitroSystem/include/nnsys/inline.h diff --git a/lib/NitroSystem/include/nnsys/mcs.h b/lib/external/NitroSystem/include/nnsys/mcs.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs.h rename to lib/external/NitroSystem/include/nnsys/mcs.h diff --git a/lib/NitroSystem/include/nnsys/mcs/base.h b/lib/external/NitroSystem/include/nnsys/mcs/base.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/base.h rename to lib/external/NitroSystem/include/nnsys/mcs/base.h diff --git a/lib/NitroSystem/include/nnsys/mcs/baseCommon.h b/lib/external/NitroSystem/include/nnsys/mcs/baseCommon.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/baseCommon.h rename to lib/external/NitroSystem/include/nnsys/mcs/baseCommon.h diff --git a/lib/NitroSystem/include/nnsys/mcs/base_win32.h b/lib/external/NitroSystem/include/nnsys/mcs/base_win32.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/base_win32.h rename to lib/external/NitroSystem/include/nnsys/mcs/base_win32.h diff --git a/lib/NitroSystem/include/nnsys/mcs/config.h b/lib/external/NitroSystem/include/nnsys/mcs/config.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/config.h rename to lib/external/NitroSystem/include/nnsys/mcs/config.h diff --git a/lib/NitroSystem/include/nnsys/mcs/fileIObase.h b/lib/external/NitroSystem/include/nnsys/mcs/fileIObase.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/fileIObase.h rename to lib/external/NitroSystem/include/nnsys/mcs/fileIObase.h diff --git a/lib/NitroSystem/include/nnsys/mcs/fileIOcommon.h b/lib/external/NitroSystem/include/nnsys/mcs/fileIOcommon.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/fileIOcommon.h rename to lib/external/NitroSystem/include/nnsys/mcs/fileIOcommon.h diff --git a/lib/NitroSystem/include/nnsys/mcs/print.h b/lib/external/NitroSystem/include/nnsys/mcs/print.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/print.h rename to lib/external/NitroSystem/include/nnsys/mcs/print.h diff --git a/lib/NitroSystem/include/nnsys/mcs/ringBuffer.h b/lib/external/NitroSystem/include/nnsys/mcs/ringBuffer.h similarity index 100% rename from lib/NitroSystem/include/nnsys/mcs/ringBuffer.h rename to lib/external/NitroSystem/include/nnsys/mcs/ringBuffer.h diff --git a/lib/NitroSystem/include/nnsys/misc.h b/lib/external/NitroSystem/include/nnsys/misc.h similarity index 100% rename from lib/NitroSystem/include/nnsys/misc.h rename to lib/external/NitroSystem/include/nnsys/misc.h diff --git a/lib/NitroSystem/include/nnsys/snd.h b/lib/external/NitroSystem/include/nnsys/snd.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd.h rename to lib/external/NitroSystem/include/nnsys/snd.h diff --git a/lib/NitroSystem/include/nnsys/snd/capture.h b/lib/external/NitroSystem/include/nnsys/snd/capture.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/capture.h rename to lib/external/NitroSystem/include/nnsys/snd/capture.h diff --git a/lib/NitroSystem/include/nnsys/snd/config.h b/lib/external/NitroSystem/include/nnsys/snd/config.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/config.h rename to lib/external/NitroSystem/include/nnsys/snd/config.h diff --git a/lib/NitroSystem/include/nnsys/snd/fader.h b/lib/external/NitroSystem/include/nnsys/snd/fader.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/fader.h rename to lib/external/NitroSystem/include/nnsys/snd/fader.h diff --git a/lib/NitroSystem/include/nnsys/snd/heap.h b/lib/external/NitroSystem/include/nnsys/snd/heap.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/heap.h rename to lib/external/NitroSystem/include/nnsys/snd/heap.h diff --git a/lib/NitroSystem/include/nnsys/snd/main.h b/lib/external/NitroSystem/include/nnsys/snd/main.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/main.h rename to lib/external/NitroSystem/include/nnsys/snd/main.h diff --git a/lib/NitroSystem/include/nnsys/snd/output_effect.h b/lib/external/NitroSystem/include/nnsys/snd/output_effect.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/output_effect.h rename to lib/external/NitroSystem/include/nnsys/snd/output_effect.h diff --git a/lib/NitroSystem/include/nnsys/snd/player.h b/lib/external/NitroSystem/include/nnsys/snd/player.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/player.h rename to lib/external/NitroSystem/include/nnsys/snd/player.h diff --git a/lib/NitroSystem/include/nnsys/snd/resource_mgr.h b/lib/external/NitroSystem/include/nnsys/snd/resource_mgr.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/resource_mgr.h rename to lib/external/NitroSystem/include/nnsys/snd/resource_mgr.h diff --git a/lib/NitroSystem/include/nnsys/snd/seqdata.h b/lib/external/NitroSystem/include/nnsys/snd/seqdata.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/seqdata.h rename to lib/external/NitroSystem/include/nnsys/snd/seqdata.h diff --git a/lib/NitroSystem/include/nnsys/snd/sndarc.h b/lib/external/NitroSystem/include/nnsys/snd/sndarc.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/sndarc.h rename to lib/external/NitroSystem/include/nnsys/snd/sndarc.h diff --git a/lib/NitroSystem/include/nnsys/snd/sndarc_loader.h b/lib/external/NitroSystem/include/nnsys/snd/sndarc_loader.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/sndarc_loader.h rename to lib/external/NitroSystem/include/nnsys/snd/sndarc_loader.h diff --git a/lib/NitroSystem/include/nnsys/snd/sndarc_player.h b/lib/external/NitroSystem/include/nnsys/snd/sndarc_player.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/sndarc_player.h rename to lib/external/NitroSystem/include/nnsys/snd/sndarc_player.h diff --git a/lib/NitroSystem/include/nnsys/snd/sndarc_stream.h b/lib/external/NitroSystem/include/nnsys/snd/sndarc_stream.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/sndarc_stream.h rename to lib/external/NitroSystem/include/nnsys/snd/sndarc_stream.h diff --git a/lib/NitroSystem/include/nnsys/snd/stream.h b/lib/external/NitroSystem/include/nnsys/snd/stream.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/stream.h rename to lib/external/NitroSystem/include/nnsys/snd/stream.h diff --git a/lib/NitroSystem/include/nnsys/snd/waveout.h b/lib/external/NitroSystem/include/nnsys/snd/waveout.h similarity index 100% rename from lib/NitroSystem/include/nnsys/snd/waveout.h rename to lib/external/NitroSystem/include/nnsys/snd/waveout.h diff --git a/lib/NitroSystem/include/nnsys/version.h b/lib/external/NitroSystem/include/nnsys/version.h similarity index 100% rename from lib/NitroSystem/include/nnsys/version.h rename to lib/external/NitroSystem/include/nnsys/version.h diff --git a/lib/NitroSystem/include/nnsys_prefix.h b/lib/external/NitroSystem/include/nnsys_prefix.h similarity index 100% rename from lib/NitroSystem/include/nnsys_prefix.h rename to lib/external/NitroSystem/include/nnsys_prefix.h diff --git a/lib/NitroSystem/include/nnsys_win32.h b/lib/external/NitroSystem/include/nnsys_win32.h similarity index 100% rename from lib/NitroSystem/include/nnsys_win32.h rename to lib/external/NitroSystem/include/nnsys_win32.h diff --git a/lib/external/NitroSystem/libraries/fnd/meson.build b/lib/external/NitroSystem/libraries/fnd/meson.build new file mode 100644 index 0000000000..f1c286e474 --- /dev/null +++ b/lib/external/NitroSystem/libraries/fnd/meson.build @@ -0,0 +1,21 @@ +libnnsfnd_srcs = files( + 'src/list_nnsfnd.c', + 'src/heapcommon.c', + 'src/expheap.c', + 'src/frameheap.c', + 'src/unitheap.c', + 'src/allocator.c' +) + +libnnsfnd_internal_includes = include_directories('src/include') + +libnnsfnd = static_library('nnsfnd', + sources: [libnnsfnd_srcs], + c_args: [c_args, sdk_args], + include_directories: [public_includes, libnnsfnd_internal_includes], + c_pch: nitro_pch, + dependencies: [msl_dep, nitrosdk_dep], + pic: false +) + +nitrosystem_libs += libnnsfnd diff --git a/lib/NitroSystem/src/fnd/allocator.c b/lib/external/NitroSystem/libraries/fnd/src/allocator.c similarity index 100% rename from lib/NitroSystem/src/fnd/allocator.c rename to lib/external/NitroSystem/libraries/fnd/src/allocator.c diff --git a/lib/NitroSystem/src/fnd/expheap.c b/lib/external/NitroSystem/libraries/fnd/src/expheap.c similarity index 100% rename from lib/NitroSystem/src/fnd/expheap.c rename to lib/external/NitroSystem/libraries/fnd/src/expheap.c diff --git a/lib/NitroSystem/src/fnd/frameheap.c b/lib/external/NitroSystem/libraries/fnd/src/frameheap.c similarity index 100% rename from lib/NitroSystem/src/fnd/frameheap.c rename to lib/external/NitroSystem/libraries/fnd/src/frameheap.c diff --git a/lib/NitroSystem/src/fnd/heapcommon.c b/lib/external/NitroSystem/libraries/fnd/src/heapcommon.c similarity index 100% rename from lib/NitroSystem/src/fnd/heapcommon.c rename to lib/external/NitroSystem/libraries/fnd/src/heapcommon.c diff --git a/lib/NitroSystem/src/fnd/include/heapcommoni.h b/lib/external/NitroSystem/libraries/fnd/src/include/heapcommoni.h similarity index 100% rename from lib/NitroSystem/src/fnd/include/heapcommoni.h rename to lib/external/NitroSystem/libraries/fnd/src/include/heapcommoni.h diff --git a/lib/NitroSystem/src/fnd/list_nnsfnd.c b/lib/external/NitroSystem/libraries/fnd/src/list_nnsfnd.c similarity index 100% rename from lib/NitroSystem/src/fnd/list_nnsfnd.c rename to lib/external/NitroSystem/libraries/fnd/src/list_nnsfnd.c diff --git a/lib/NitroSystem/src/fnd/unitheap.c b/lib/external/NitroSystem/libraries/fnd/src/unitheap.c similarity index 100% rename from lib/NitroSystem/src/fnd/unitheap.c rename to lib/external/NitroSystem/libraries/fnd/src/unitheap.c diff --git a/lib/external/NitroSystem/libraries/g2d/meson.build b/lib/external/NitroSystem/libraries/g2d/meson.build new file mode 100644 index 0000000000..784d604baa --- /dev/null +++ b/lib/external/NitroSystem/libraries/g2d/meson.build @@ -0,0 +1,42 @@ +libnnsg2d_srcs = files( + 'src/load/g2d_NAN_load.c', + 'src/load/g2d_NOB_load.c', + 'src/load/g2d_NMC_load.c', + 'src/load/g2d_NCG_load.c', + 'src/load/g2d_NCL_load.c', + 'src/load/g2d_NSC_load.c', + 'src/load/g2d_Load.c', + 'src/g2d_Softsprite.c', + 'src/g2d_Animation.c', + 'src/g2d_OAM.c', + 'src/g2d_PaletteTable.c', + 'src/g2d_Image.c', + 'src/g2d_SRTControl.c', + 'src/g2d_Node.c', + 'src/g2d_CellAnimation.c', + 'src/g2d_MultiCellAnimation.c', + 'src/g2d_Renderer.c', + 'src/internal/g2di_Mtx32.c', + 'src/g2d_CellTransferManager.c', + 'src/g2d_OamSoftwareSpriteDraw.c', + 'src/g2d_RendererCore.c', + 'src/g2d_Font.c', + 'src/g2d_CharCanvas.c', + 'src/g2d_TextCanvas.c', + 'src/load/g2d_NFT_load.c', + 'src/internal/g2di_BitReader.c', + 'src/internal/g2di_SplitChar.c' +) + +libnnsg2d_internal_includes = include_directories('src/include') + +libnnsg2d = static_library('nnsg2d', + sources: [libnnsg2d_srcs], + c_args: [c_args, sdk_args], + include_directories: [public_includes, libnnsg2d_internal_includes], + c_pch: nitro_pch, + dependencies: [msl_dep, nitrosdk_dep], + pic: false +) + +nitrosystem_libs += libnnsg2d diff --git a/lib/NitroSystem/src/g2d/g2d_Animation.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_Animation.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_Animation.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_Animation.c diff --git a/lib/NitroSystem/src/g2d/g2d_CellAnimation.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_CellAnimation.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_CellAnimation.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_CellAnimation.c diff --git a/lib/NitroSystem/src/g2d/g2d_CellTransferManager.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_CellTransferManager.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_CellTransferManager.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_CellTransferManager.c diff --git a/lib/NitroSystem/src/g2d/g2d_CharCanvas.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_CharCanvas.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_CharCanvas.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_CharCanvas.c diff --git a/lib/NitroSystem/src/g2d/g2d_Font.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_Font.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_Font.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_Font.c diff --git a/lib/NitroSystem/src/g2d/g2d_Image.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_Image.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_Image.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_Image.c diff --git a/lib/NitroSystem/src/g2d/g2d_MultiCellAnimation.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_MultiCellAnimation.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_MultiCellAnimation.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_MultiCellAnimation.c diff --git a/lib/NitroSystem/src/g2d/g2d_Node.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_Node.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_Node.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_Node.c diff --git a/lib/NitroSystem/src/g2d/g2d_OAM.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_OAM.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_OAM.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_OAM.c diff --git a/lib/NitroSystem/src/g2d/g2d_OamSoftwareSpriteDraw.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_OamSoftwareSpriteDraw.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_OamSoftwareSpriteDraw.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_OamSoftwareSpriteDraw.c diff --git a/lib/NitroSystem/src/g2d/g2d_PaletteTable.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_PaletteTable.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_PaletteTable.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_PaletteTable.c diff --git a/lib/NitroSystem/src/g2d/g2d_Renderer.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_Renderer.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_Renderer.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_Renderer.c diff --git a/lib/NitroSystem/src/g2d/g2d_RendererCore.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_RendererCore.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_RendererCore.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_RendererCore.c diff --git a/lib/NitroSystem/src/g2d/g2d_SRTControl.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_SRTControl.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_SRTControl.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_SRTControl.c diff --git a/lib/NitroSystem/src/g2d/g2d_Softsprite.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_Softsprite.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_Softsprite.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_Softsprite.c diff --git a/lib/NitroSystem/src/g2d/g2d_TextCanvas.c b/lib/external/NitroSystem/libraries/g2d/src/g2d_TextCanvas.c similarity index 100% rename from lib/NitroSystem/src/g2d/g2d_TextCanvas.c rename to lib/external/NitroSystem/libraries/g2d/src/g2d_TextCanvas.c diff --git a/lib/NitroSystem/src/g2d/include/g2d_Internal.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2d_Internal.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2d_Internal.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2d_Internal.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_BitReader.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_BitReader.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_BitReader.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_BitReader.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_CellUtil.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_CellUtil.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_CellUtil.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_CellUtil.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_Debug.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_Debug.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_Debug.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_Debug.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_Dma.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_Dma.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_Dma.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_Dma.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_Mtx32.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_Mtx32.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_Mtx32.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_Mtx32.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_OamUtil.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_OamUtil.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_OamUtil.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_OamUtil.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_RendererMtxCache.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_RendererMtxCache.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_RendererMtxCache.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_RendererMtxCache.h diff --git a/lib/NitroSystem/src/g2d/include/g2di_RendererMtxStack.hpp b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_RendererMtxStack.hpp similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_RendererMtxStack.hpp rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_RendererMtxStack.hpp diff --git a/lib/NitroSystem/src/g2d/include/g2di_RendererMtxState.h b/lib/external/NitroSystem/libraries/g2d/src/include/g2di_RendererMtxState.h similarity index 100% rename from lib/NitroSystem/src/g2d/include/g2di_RendererMtxState.h rename to lib/external/NitroSystem/libraries/g2d/src/include/g2di_RendererMtxState.h diff --git a/lib/NitroSystem/src/g2d/internal/g2di_BitReader.c b/lib/external/NitroSystem/libraries/g2d/src/internal/g2di_BitReader.c similarity index 100% rename from lib/NitroSystem/src/g2d/internal/g2di_BitReader.c rename to lib/external/NitroSystem/libraries/g2d/src/internal/g2di_BitReader.c diff --git a/lib/NitroSystem/src/g2d/internal/g2di_Mtx32.c b/lib/external/NitroSystem/libraries/g2d/src/internal/g2di_Mtx32.c similarity index 100% rename from lib/NitroSystem/src/g2d/internal/g2di_Mtx32.c rename to lib/external/NitroSystem/libraries/g2d/src/internal/g2di_Mtx32.c diff --git a/lib/NitroSystem/src/g2d/internal/g2di_SplitChar.c b/lib/external/NitroSystem/libraries/g2d/src/internal/g2di_SplitChar.c similarity index 100% rename from lib/NitroSystem/src/g2d/internal/g2di_SplitChar.c rename to lib/external/NitroSystem/libraries/g2d/src/internal/g2di_SplitChar.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_Load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_Load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_Load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_Load.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_NAN_load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_NAN_load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_NAN_load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_NAN_load.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_NCG_load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_NCG_load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_NCG_load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_NCG_load.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_NCL_load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_NCL_load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_NCL_load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_NCL_load.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_NFT_load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_NFT_load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_NFT_load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_NFT_load.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_NMC_load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_NMC_load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_NMC_load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_NMC_load.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_NOB_load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_NOB_load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_NOB_load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_NOB_load.c diff --git a/lib/NitroSystem/src/g2d/load/g2d_NSC_load.c b/lib/external/NitroSystem/libraries/g2d/src/load/g2d_NSC_load.c similarity index 100% rename from lib/NitroSystem/src/g2d/load/g2d_NSC_load.c rename to lib/external/NitroSystem/libraries/g2d/src/load/g2d_NSC_load.c diff --git a/lib/NitroSystem/asm/g3d/incbin/nsbca.bin b/lib/external/NitroSystem/libraries/g3d/asm/incbin/nsbca.bin similarity index 100% rename from lib/NitroSystem/asm/g3d/incbin/nsbca.bin rename to lib/external/NitroSystem/libraries/g3d/asm/incbin/nsbca.bin diff --git a/lib/NitroSystem/asm/g3d/include/nsbca.inc b/lib/external/NitroSystem/libraries/g3d/asm/include/nsbca.inc similarity index 100% rename from lib/NitroSystem/asm/g3d/include/nsbca.inc rename to lib/external/NitroSystem/libraries/g3d/asm/include/nsbca.inc diff --git a/lib/external/NitroSystem/libraries/g3d/asm/macros/function.inc b/lib/external/NitroSystem/libraries/g3d/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroSystem/libraries/g3d/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroSystem/asm/g3d/nsbca.s b/lib/external/NitroSystem/libraries/g3d/asm/nsbca.s similarity index 100% rename from lib/NitroSystem/asm/g3d/nsbca.s rename to lib/external/NitroSystem/libraries/g3d/asm/nsbca.s diff --git a/lib/external/NitroSystem/libraries/g3d/meson.build b/lib/external/NitroSystem/libraries/g3d/meson.build new file mode 100644 index 0000000000..f6532c8338 --- /dev/null +++ b/lib/external/NitroSystem/libraries/g3d/meson.build @@ -0,0 +1,38 @@ +libnnsg3d_srcs = [ + 'src/kernel.c', + 'src/glbstate.c', + 'src/anm.c', + 'src/cgtool.c', + 'src/sbc.c', + 'src/1mat1shp.c', + 'src/gecom.c', + 'src/util_nnsg3d.c', + 'src/mem_nnsg3d.c', + 'src/model.c', + 'src/binres/res_struct_accessor.c', + 'src/binres/res_struct_accessor_anm.c', + 'asm/nsbca.s', + 'src/anm/nsbma.c', + 'src/anm/nsbta.c', + 'src/anm/nsbtp.c', + 'src/anm/nsbva.c', + 'src/cgtool/basic.c', + 'src/cgtool/maya.c', + 'src/cgtool/si3d.c', + 'src/cgtool/3dsmax.c', + 'src/cgtool/xsi.c' +] + +libnnsg3d_internal_includes = include_directories('src/binres') + +libnnsg3d = static_library('nnsg3d', + sources: libnnsg3d_srcs, + c_args: [c_args, sdk_args], + nasm_args: asm_args, + include_directories: [public_includes, libnnsg3d_internal_includes], + c_pch: nitro_pch, + dependencies: [msl_dep, nitrosdk_dep], + pic: false +) + +nitrosystem_libs += libnnsg3d diff --git a/lib/NitroSystem/src/g3d/1mat1shp.c b/lib/external/NitroSystem/libraries/g3d/src/1mat1shp.c similarity index 100% rename from lib/NitroSystem/src/g3d/1mat1shp.c rename to lib/external/NitroSystem/libraries/g3d/src/1mat1shp.c diff --git a/lib/NitroSystem/src/g3d/anm.c b/lib/external/NitroSystem/libraries/g3d/src/anm.c similarity index 100% rename from lib/NitroSystem/src/g3d/anm.c rename to lib/external/NitroSystem/libraries/g3d/src/anm.c diff --git a/lib/NitroSystem/src/g3d/anm/nsbma.c b/lib/external/NitroSystem/libraries/g3d/src/anm/nsbma.c similarity index 100% rename from lib/NitroSystem/src/g3d/anm/nsbma.c rename to lib/external/NitroSystem/libraries/g3d/src/anm/nsbma.c diff --git a/lib/NitroSystem/src/g3d/anm/nsbta.c b/lib/external/NitroSystem/libraries/g3d/src/anm/nsbta.c similarity index 100% rename from lib/NitroSystem/src/g3d/anm/nsbta.c rename to lib/external/NitroSystem/libraries/g3d/src/anm/nsbta.c diff --git a/lib/NitroSystem/src/g3d/anm/nsbtp.c b/lib/external/NitroSystem/libraries/g3d/src/anm/nsbtp.c similarity index 100% rename from lib/NitroSystem/src/g3d/anm/nsbtp.c rename to lib/external/NitroSystem/libraries/g3d/src/anm/nsbtp.c diff --git a/lib/NitroSystem/src/g3d/anm/nsbva.c b/lib/external/NitroSystem/libraries/g3d/src/anm/nsbva.c similarity index 100% rename from lib/NitroSystem/src/g3d/anm/nsbva.c rename to lib/external/NitroSystem/libraries/g3d/src/anm/nsbva.c diff --git a/lib/NitroSystem/src/g3d/binres/res_print_internal.h b/lib/external/NitroSystem/libraries/g3d/src/binres/res_print_internal.h similarity index 100% rename from lib/NitroSystem/src/g3d/binres/res_print_internal.h rename to lib/external/NitroSystem/libraries/g3d/src/binres/res_print_internal.h diff --git a/lib/NitroSystem/src/g3d/binres/res_struct_accessor.c b/lib/external/NitroSystem/libraries/g3d/src/binres/res_struct_accessor.c similarity index 100% rename from lib/NitroSystem/src/g3d/binres/res_struct_accessor.c rename to lib/external/NitroSystem/libraries/g3d/src/binres/res_struct_accessor.c diff --git a/lib/NitroSystem/src/g3d/binres/res_struct_accessor_anm.c b/lib/external/NitroSystem/libraries/g3d/src/binres/res_struct_accessor_anm.c similarity index 100% rename from lib/NitroSystem/src/g3d/binres/res_struct_accessor_anm.c rename to lib/external/NitroSystem/libraries/g3d/src/binres/res_struct_accessor_anm.c diff --git a/lib/NitroSystem/src/g3d/cgtool.c b/lib/external/NitroSystem/libraries/g3d/src/cgtool.c similarity index 100% rename from lib/NitroSystem/src/g3d/cgtool.c rename to lib/external/NitroSystem/libraries/g3d/src/cgtool.c diff --git a/lib/NitroSystem/src/g3d/cgtool/3dsmax.c b/lib/external/NitroSystem/libraries/g3d/src/cgtool/3dsmax.c similarity index 100% rename from lib/NitroSystem/src/g3d/cgtool/3dsmax.c rename to lib/external/NitroSystem/libraries/g3d/src/cgtool/3dsmax.c diff --git a/lib/NitroSystem/src/g3d/cgtool/basic.c b/lib/external/NitroSystem/libraries/g3d/src/cgtool/basic.c similarity index 100% rename from lib/NitroSystem/src/g3d/cgtool/basic.c rename to lib/external/NitroSystem/libraries/g3d/src/cgtool/basic.c diff --git a/lib/NitroSystem/src/g3d/cgtool/maya.c b/lib/external/NitroSystem/libraries/g3d/src/cgtool/maya.c similarity index 100% rename from lib/NitroSystem/src/g3d/cgtool/maya.c rename to lib/external/NitroSystem/libraries/g3d/src/cgtool/maya.c diff --git a/lib/NitroSystem/src/g3d/cgtool/si3d.c b/lib/external/NitroSystem/libraries/g3d/src/cgtool/si3d.c similarity index 100% rename from lib/NitroSystem/src/g3d/cgtool/si3d.c rename to lib/external/NitroSystem/libraries/g3d/src/cgtool/si3d.c diff --git a/lib/NitroSystem/src/g3d/cgtool/xsi.c b/lib/external/NitroSystem/libraries/g3d/src/cgtool/xsi.c similarity index 100% rename from lib/NitroSystem/src/g3d/cgtool/xsi.c rename to lib/external/NitroSystem/libraries/g3d/src/cgtool/xsi.c diff --git a/lib/NitroSystem/src/g3d/gecom.c b/lib/external/NitroSystem/libraries/g3d/src/gecom.c similarity index 100% rename from lib/NitroSystem/src/g3d/gecom.c rename to lib/external/NitroSystem/libraries/g3d/src/gecom.c diff --git a/lib/NitroSystem/src/g3d/glbstate.c b/lib/external/NitroSystem/libraries/g3d/src/glbstate.c similarity index 100% rename from lib/NitroSystem/src/g3d/glbstate.c rename to lib/external/NitroSystem/libraries/g3d/src/glbstate.c diff --git a/lib/NitroSystem/src/g3d/kernel.c b/lib/external/NitroSystem/libraries/g3d/src/kernel.c similarity index 100% rename from lib/NitroSystem/src/g3d/kernel.c rename to lib/external/NitroSystem/libraries/g3d/src/kernel.c diff --git a/lib/NitroSystem/src/g3d/mem_nnsg3d.c b/lib/external/NitroSystem/libraries/g3d/src/mem_nnsg3d.c similarity index 100% rename from lib/NitroSystem/src/g3d/mem_nnsg3d.c rename to lib/external/NitroSystem/libraries/g3d/src/mem_nnsg3d.c diff --git a/lib/NitroSystem/src/g3d/model.c b/lib/external/NitroSystem/libraries/g3d/src/model.c similarity index 100% rename from lib/NitroSystem/src/g3d/model.c rename to lib/external/NitroSystem/libraries/g3d/src/model.c diff --git a/lib/NitroSystem/src/g3d/sbc.c b/lib/external/NitroSystem/libraries/g3d/src/sbc.c similarity index 100% rename from lib/NitroSystem/src/g3d/sbc.c rename to lib/external/NitroSystem/libraries/g3d/src/sbc.c diff --git a/lib/NitroSystem/src/g3d/util_nnsg3d.c b/lib/external/NitroSystem/libraries/g3d/src/util_nnsg3d.c similarity index 100% rename from lib/NitroSystem/src/g3d/util_nnsg3d.c rename to lib/external/NitroSystem/libraries/g3d/src/util_nnsg3d.c diff --git a/lib/external/NitroSystem/libraries/gfd/meson.build b/lib/external/NitroSystem/libraries/gfd/meson.build new file mode 100644 index 0000000000..b11e74130e --- /dev/null +++ b/lib/external/NitroSystem/libraries/gfd/meson.build @@ -0,0 +1,23 @@ +libnnsgfd_srcs = files( + 'src/gfd_TexVramMan.c', + 'src/gfd_PlttVramMan.c', + 'src/gfd_FrameTexVramMan.c', + 'src/gfd_FramePlttVramMan.c', + 'src/gfd_VramTransferManager.c', + 'src/gfdi_LinkedListVramMan_Common.c', + 'src/gfd_LinkedListTexVramMan.c', + 'src/gfd_LinkedListPlttVramMan.c' +) + +libnnsgfd_internal_includes = include_directories('src/include') + +libnnsgfd = static_library('nnsgfd', + sources: [libnnsgfd_srcs], + c_args: [c_args, sdk_args], + include_directories: [public_includes, libnnsgfd_internal_includes], + c_pch: nitro_pch, + dependencies: [msl_dep, nitrosdk_dep], + pic: false +) + +nitrosystem_libs += libnnsgfd diff --git a/lib/NitroSystem/src/gfd/gfd_FramePlttVramMan.c b/lib/external/NitroSystem/libraries/gfd/src/gfd_FramePlttVramMan.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfd_FramePlttVramMan.c rename to lib/external/NitroSystem/libraries/gfd/src/gfd_FramePlttVramMan.c diff --git a/lib/NitroSystem/src/gfd/gfd_FrameTexVramMan.c b/lib/external/NitroSystem/libraries/gfd/src/gfd_FrameTexVramMan.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfd_FrameTexVramMan.c rename to lib/external/NitroSystem/libraries/gfd/src/gfd_FrameTexVramMan.c diff --git a/lib/NitroSystem/src/gfd/gfd_LinkedListPlttVramMan.c b/lib/external/NitroSystem/libraries/gfd/src/gfd_LinkedListPlttVramMan.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfd_LinkedListPlttVramMan.c rename to lib/external/NitroSystem/libraries/gfd/src/gfd_LinkedListPlttVramMan.c diff --git a/lib/NitroSystem/src/gfd/gfd_LinkedListTexVramMan.c b/lib/external/NitroSystem/libraries/gfd/src/gfd_LinkedListTexVramMan.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfd_LinkedListTexVramMan.c rename to lib/external/NitroSystem/libraries/gfd/src/gfd_LinkedListTexVramMan.c diff --git a/lib/NitroSystem/src/gfd/gfd_PlttVramMan.c b/lib/external/NitroSystem/libraries/gfd/src/gfd_PlttVramMan.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfd_PlttVramMan.c rename to lib/external/NitroSystem/libraries/gfd/src/gfd_PlttVramMan.c diff --git a/lib/NitroSystem/src/gfd/gfd_TexVramMan.c b/lib/external/NitroSystem/libraries/gfd/src/gfd_TexVramMan.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfd_TexVramMan.c rename to lib/external/NitroSystem/libraries/gfd/src/gfd_TexVramMan.c diff --git a/lib/NitroSystem/src/gfd/gfd_VramTransferManager.c b/lib/external/NitroSystem/libraries/gfd/src/gfd_VramTransferManager.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfd_VramTransferManager.c rename to lib/external/NitroSystem/libraries/gfd/src/gfd_VramTransferManager.c diff --git a/lib/NitroSystem/src/gfd/gfdi_LinkedListVramMan_Common.c b/lib/external/NitroSystem/libraries/gfd/src/gfdi_LinkedListVramMan_Common.c similarity index 100% rename from lib/NitroSystem/src/gfd/gfdi_LinkedListVramMan_Common.c rename to lib/external/NitroSystem/libraries/gfd/src/gfdi_LinkedListVramMan_Common.c diff --git a/lib/NitroSystem/src/gfd/include/gfdi_LinkedListVramMan_Common.h b/lib/external/NitroSystem/libraries/gfd/src/include/gfdi_LinkedListVramMan_Common.h similarity index 100% rename from lib/NitroSystem/src/gfd/include/gfdi_LinkedListVramMan_Common.h rename to lib/external/NitroSystem/libraries/gfd/src/include/gfdi_LinkedListVramMan_Common.h diff --git a/lib/external/NitroSystem/libraries/gfd/src/meson.build b/lib/external/NitroSystem/libraries/gfd/src/meson.build new file mode 100644 index 0000000000..8b13789179 --- /dev/null +++ b/lib/external/NitroSystem/libraries/gfd/src/meson.build @@ -0,0 +1 @@ + diff --git a/lib/external/NitroSystem/libraries/meson.build b/lib/external/NitroSystem/libraries/meson.build new file mode 100644 index 0000000000..358eca8844 --- /dev/null +++ b/lib/external/NitroSystem/libraries/meson.build @@ -0,0 +1,5 @@ +subdir('fnd') +subdir('g2d') +subdir('g3d') +subdir('gfd') +subdir('snd') diff --git a/lib/external/NitroSystem/libraries/snd/meson.build b/lib/external/NitroSystem/libraries/snd/meson.build new file mode 100644 index 0000000000..2fc4e54fc8 --- /dev/null +++ b/lib/external/NitroSystem/libraries/snd/meson.build @@ -0,0 +1,26 @@ +libnnssnd_srcs = files( + 'src/main_nnssnd.c', + 'src/resource_mgr.c', + 'src/waveout.c', + 'src/player.c', + 'src/stream_nnssnd.c', + 'src/capture.c', + 'src/sndarc.c', + 'src/heap_nnssnd.c', + 'src/sndarc_loader.c', + 'src/sndarc_player.c', + 'src/sndarc_stream.c', + 'src/seqdata.c', + 'src/fader.c' +) + +libnnssnd = static_library('nnssnd', + sources: [libnnssnd_srcs], + c_args: [c_args, sdk_args], + include_directories: [public_includes], + c_pch: nitro_pch, + dependencies: [msl_dep, nitrosdk_dep], + pic: false +) + +nitrosystem_libs += libnnssnd diff --git a/lib/NitroSystem/src/snd/capture.c b/lib/external/NitroSystem/libraries/snd/src/capture.c similarity index 100% rename from lib/NitroSystem/src/snd/capture.c rename to lib/external/NitroSystem/libraries/snd/src/capture.c diff --git a/lib/NitroSystem/src/snd/fader.c b/lib/external/NitroSystem/libraries/snd/src/fader.c similarity index 100% rename from lib/NitroSystem/src/snd/fader.c rename to lib/external/NitroSystem/libraries/snd/src/fader.c diff --git a/lib/NitroSystem/src/snd/heap_nnssnd.c b/lib/external/NitroSystem/libraries/snd/src/heap_nnssnd.c similarity index 100% rename from lib/NitroSystem/src/snd/heap_nnssnd.c rename to lib/external/NitroSystem/libraries/snd/src/heap_nnssnd.c diff --git a/lib/NitroSystem/src/snd/main_nnssnd.c b/lib/external/NitroSystem/libraries/snd/src/main_nnssnd.c similarity index 100% rename from lib/NitroSystem/src/snd/main_nnssnd.c rename to lib/external/NitroSystem/libraries/snd/src/main_nnssnd.c diff --git a/lib/NitroSystem/src/snd/player.c b/lib/external/NitroSystem/libraries/snd/src/player.c similarity index 100% rename from lib/NitroSystem/src/snd/player.c rename to lib/external/NitroSystem/libraries/snd/src/player.c diff --git a/lib/NitroSystem/src/snd/resource_mgr.c b/lib/external/NitroSystem/libraries/snd/src/resource_mgr.c similarity index 100% rename from lib/NitroSystem/src/snd/resource_mgr.c rename to lib/external/NitroSystem/libraries/snd/src/resource_mgr.c diff --git a/lib/NitroSystem/src/snd/seqdata.c b/lib/external/NitroSystem/libraries/snd/src/seqdata.c similarity index 100% rename from lib/NitroSystem/src/snd/seqdata.c rename to lib/external/NitroSystem/libraries/snd/src/seqdata.c diff --git a/lib/NitroSystem/src/snd/sndarc.c b/lib/external/NitroSystem/libraries/snd/src/sndarc.c similarity index 100% rename from lib/NitroSystem/src/snd/sndarc.c rename to lib/external/NitroSystem/libraries/snd/src/sndarc.c diff --git a/lib/NitroSystem/src/snd/sndarc_loader.c b/lib/external/NitroSystem/libraries/snd/src/sndarc_loader.c similarity index 100% rename from lib/NitroSystem/src/snd/sndarc_loader.c rename to lib/external/NitroSystem/libraries/snd/src/sndarc_loader.c diff --git a/lib/NitroSystem/src/snd/sndarc_player.c b/lib/external/NitroSystem/libraries/snd/src/sndarc_player.c similarity index 100% rename from lib/NitroSystem/src/snd/sndarc_player.c rename to lib/external/NitroSystem/libraries/snd/src/sndarc_player.c diff --git a/lib/NitroSystem/src/snd/sndarc_stream.c b/lib/external/NitroSystem/libraries/snd/src/sndarc_stream.c similarity index 100% rename from lib/NitroSystem/src/snd/sndarc_stream.c rename to lib/external/NitroSystem/libraries/snd/src/sndarc_stream.c diff --git a/lib/NitroSystem/src/snd/stream_nnssnd.c b/lib/external/NitroSystem/libraries/snd/src/stream_nnssnd.c similarity index 100% rename from lib/NitroSystem/src/snd/stream_nnssnd.c rename to lib/external/NitroSystem/libraries/snd/src/stream_nnssnd.c diff --git a/lib/NitroSystem/src/snd/waveout.c b/lib/external/NitroSystem/libraries/snd/src/waveout.c similarity index 100% rename from lib/NitroSystem/src/snd/waveout.c rename to lib/external/NitroSystem/libraries/snd/src/waveout.c diff --git a/lib/external/NitroSystem/meson.build b/lib/external/NitroSystem/meson.build new file mode 100644 index 0000000000..4ac67be4a7 --- /dev/null +++ b/lib/external/NitroSystem/meson.build @@ -0,0 +1,54 @@ +project('NitroSystem', ['c', 'nasm']) + +# Compiler flags +c_args = [ + '-O4,p', + '-proc', 'arm946e', + '-enum', 'int', + '-lang', 'c99', + '-Cpp_exceptions', 'off', + '-gccext,on', + '-msgstyle', 'gcc', + '-ipa', 'file', + '-interworking', + '-inline', 'on,noauto', + '-char', 'signed', + '-nosyspath', + '-nostdinc' +] + +asm_args = [ + '-proc', 'arm5TE', + '-gccinc' +] + +sdk_args = [ + '-DSDK_CW_FORCE_EXPORT_SUPPORT', + '-DSDK_TS', + '-DSDK_4M', + '-DSDK_ARM9', + '-DSDK_CW', + '-DSDK_FINALROM', + '-DSDK_CODE_ARM', + '-DNNS_FINALROM' +] + +# Dependencies +msl_dep = dependency('msl', fallback: ['msl', 'msl_dep']) +nitrosdk_dep = dependency('NitroSDK', fallback : ['NitroSDK', 'nitrosdk_dep']) + +# Public includes +public_includes = include_directories('include') +nitro_pch = subproject('NitroSDK').get_variable('nitro_pch') + +# Libraries +nitrosystem_libs = [] +subdir('libraries') + +# Own dependency for consumers +nitrosystem_dep = declare_dependency( + compile_args: sdk_args, + dependencies: nitrosdk_dep, + include_directories: public_includes, + link_with: nitrosystem_libs +) \ No newline at end of file diff --git a/lib/NitroWiFi/include/ninet.h b/lib/external/NitroWiFi/include/ninet.h similarity index 100% rename from lib/NitroWiFi/include/ninet.h rename to lib/external/NitroWiFi/include/ninet.h diff --git a/lib/NitroWiFi/include/ninet/ip.h b/lib/external/NitroWiFi/include/ninet/ip.h similarity index 100% rename from lib/NitroWiFi/include/ninet/ip.h rename to lib/external/NitroWiFi/include/ninet/ip.h diff --git a/lib/NitroWiFi/include/ninet/iw/iw_wm.h b/lib/external/NitroWiFi/include/ninet/iw/iw_wm.h similarity index 100% rename from lib/NitroWiFi/include/ninet/iw/iw_wm.h rename to lib/external/NitroWiFi/include/ninet/iw/iw_wm.h diff --git a/lib/NitroWiFi/include/ninet/nwbase/md5.h b/lib/external/NitroWiFi/include/ninet/nwbase/md5.h similarity index 100% rename from lib/NitroWiFi/include/ninet/nwbase/md5.h rename to lib/external/NitroWiFi/include/ninet/nwbase/md5.h diff --git a/lib/NitroWiFi/include/nitroWiFi.h b/lib/external/NitroWiFi/include/nitroWiFi.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi.h rename to lib/external/NitroWiFi/include/nitroWiFi.h diff --git a/lib/NitroWiFi/include/nitroWiFi/cps.h b/lib/external/NitroWiFi/include/nitroWiFi/cps.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/cps.h rename to lib/external/NitroWiFi/include/nitroWiFi/cps.h diff --git a/lib/NitroWiFi/include/nitroWiFi/iw2wcm.h b/lib/external/NitroWiFi/include/nitroWiFi/iw2wcm.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/iw2wcm.h rename to lib/external/NitroWiFi/include/nitroWiFi/iw2wcm.h diff --git a/lib/NitroWiFi/include/nitroWiFi/so2soc.h b/lib/external/NitroWiFi/include/nitroWiFi/so2soc.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/so2soc.h rename to lib/external/NitroWiFi/include/nitroWiFi/so2soc.h diff --git a/lib/NitroWiFi/include/nitroWiFi/soc.h b/lib/external/NitroWiFi/include/nitroWiFi/soc.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/soc.h rename to lib/external/NitroWiFi/include/nitroWiFi/soc.h diff --git a/lib/NitroWiFi/include/nitroWiFi/soc_errcode.h b/lib/external/NitroWiFi/include/nitroWiFi/soc_errcode.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/soc_errcode.h rename to lib/external/NitroWiFi/include/nitroWiFi/soc_errcode.h diff --git a/lib/NitroWiFi/include/nitroWiFi/soc_stub.h b/lib/external/NitroWiFi/include/nitroWiFi/soc_stub.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/soc_stub.h rename to lib/external/NitroWiFi/include/nitroWiFi/soc_stub.h diff --git a/lib/NitroWiFi/include/nitroWiFi/socket.h b/lib/external/NitroWiFi/include/nitroWiFi/socket.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/socket.h rename to lib/external/NitroWiFi/include/nitroWiFi/socket.h diff --git a/lib/NitroWiFi/include/nitroWiFi/socl.h b/lib/external/NitroWiFi/include/nitroWiFi/socl.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/socl.h rename to lib/external/NitroWiFi/include/nitroWiFi/socl.h diff --git a/lib/NitroWiFi/include/nitroWiFi/ssl.h b/lib/external/NitroWiFi/include/nitroWiFi/ssl.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/ssl.h rename to lib/external/NitroWiFi/include/nitroWiFi/ssl.h diff --git a/lib/NitroWiFi/include/nitroWiFi/version.h b/lib/external/NitroWiFi/include/nitroWiFi/version.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/version.h rename to lib/external/NitroWiFi/include/nitroWiFi/version.h diff --git a/lib/NitroWiFi/include/nitroWiFi/wcm.h b/lib/external/NitroWiFi/include/nitroWiFi/wcm.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi/wcm.h rename to lib/external/NitroWiFi/include/nitroWiFi/wcm.h diff --git a/lib/NitroWiFi/include/nitroWiFi_noso.h b/lib/external/NitroWiFi/include/nitroWiFi_noso.h similarity index 100% rename from lib/NitroWiFi/include/nitroWiFi_noso.h rename to lib/external/NitroWiFi/include/nitroWiFi_noso.h diff --git a/lib/NitroWiFi/asm/cps/incbin/network.bin b/lib/external/NitroWiFi/libraries/cps/asm/incbin/network.bin similarity index 100% rename from lib/NitroWiFi/asm/cps/incbin/network.bin rename to lib/external/NitroWiFi/libraries/cps/asm/incbin/network.bin diff --git a/lib/NitroWiFi/asm/cps/include/network.inc b/lib/external/NitroWiFi/libraries/cps/asm/include/network.inc similarity index 100% rename from lib/NitroWiFi/asm/cps/include/network.inc rename to lib/external/NitroWiFi/libraries/cps/asm/include/network.inc diff --git a/lib/external/NitroWiFi/libraries/cps/asm/macros/function.inc b/lib/external/NitroWiFi/libraries/cps/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroWiFi/libraries/cps/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroWiFi/asm/cps/network.s b/lib/external/NitroWiFi/libraries/cps/asm/network.s similarity index 100% rename from lib/NitroWiFi/asm/cps/network.s rename to lib/external/NitroWiFi/libraries/cps/asm/network.s diff --git a/lib/external/NitroWiFi/libraries/cps/meson.build b/lib/external/NitroWiFi/libraries/cps/meson.build new file mode 100644 index 0000000000..4f3da69cec --- /dev/null +++ b/lib/external/NitroWiFi/libraries/cps/meson.build @@ -0,0 +1,11 @@ +libcps_srcs = files('asm/network.s') + +libcps = static_library('cps', + sources: libcps_srcs, + c_args: [c_args, sdk_args], + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrowifi_libs += libcps \ No newline at end of file diff --git a/lib/external/NitroWiFi/libraries/meson.build b/lib/external/NitroWiFi/libraries/meson.build new file mode 100644 index 0000000000..a1245da9c3 --- /dev/null +++ b/lib/external/NitroWiFi/libraries/meson.build @@ -0,0 +1,5 @@ +subdir('cps') +subdir('soc') +subdir('ssl') +subdir('stubs') +subdir('wcm') diff --git a/lib/external/NitroWiFi/libraries/soc/meson.build b/lib/external/NitroWiFi/libraries/soc/meson.build new file mode 100644 index 0000000000..c4d5f272b5 --- /dev/null +++ b/lib/external/NitroWiFi/libraries/soc/meson.build @@ -0,0 +1,32 @@ +libsoc_srcs = files( + 'src/socl_startup.c', + 'src/socl_command.c', + 'src/socl_create.c', + 'src/socl_listen_accept.c', + 'src/socl_bind.c', + 'src/socl_read.c', + 'src/socl_write.c', + 'src/socl_shutdown.c', + 'src/socl_close.c', + 'src/socl_cleanup.c', + 'src/socl_resolve.c', + 'src/socl_poll.c', + 'src/socl_const.c', + 'src/socl_misc.c', + 'src/socl_list.c', + 'src/soc.c', + 'src/socl_ssl.c' +) + +libsoc_internal_includes = [include_directories('src/include'), include_directories('../wcm/src/include')] + +libsoc = static_library('soc', + sources: [libsoc_srcs], + c_args: [c_args, sdk_args], + include_directories: [public_includes, libsoc_internal_includes], + dependencies: [msl_dep, nitrosdk_dep], + c_pch: nitro_pch, + pic: false +) + +nitrowifi_libs += libsoc diff --git a/lib/NitroWiFi/src/soc/include/errtable.h b/lib/external/NitroWiFi/libraries/soc/src/include/errtable.h similarity index 100% rename from lib/NitroWiFi/src/soc/include/errtable.h rename to lib/external/NitroWiFi/libraries/soc/src/include/errtable.h diff --git a/lib/external/NitroWiFi/libraries/soc/src/meson.build b/lib/external/NitroWiFi/libraries/soc/src/meson.build new file mode 100644 index 0000000000..dac6c70a99 --- /dev/null +++ b/lib/external/NitroWiFi/libraries/soc/src/meson.build @@ -0,0 +1,21 @@ +libsoc_srcs = files( + 'socl_startup.c', + 'socl_command.c', + 'socl_create.c', + 'socl_listen_accept.c', + 'socl_bind.c', + 'socl_read.c', + 'socl_write.c', + 'socl_shutdown.c', + 'socl_close.c', + 'socl_cleanup.c', + 'socl_resolve.c', + 'socl_poll.c', + 'socl_const.c', + 'socl_misc.c', + 'socl_list.c', + 'soc.c', + 'socl_ssl.c' +) + +libsoc_internal_includes = [include_directories('include'), include_directories('../../wcm/src/include')] diff --git a/lib/NitroWiFi/src/soc/soc.c b/lib/external/NitroWiFi/libraries/soc/src/soc.c similarity index 100% rename from lib/NitroWiFi/src/soc/soc.c rename to lib/external/NitroWiFi/libraries/soc/src/soc.c diff --git a/lib/NitroWiFi/src/soc/socl_bind.c b/lib/external/NitroWiFi/libraries/soc/src/socl_bind.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_bind.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_bind.c diff --git a/lib/NitroWiFi/src/soc/socl_cleanup.c b/lib/external/NitroWiFi/libraries/soc/src/socl_cleanup.c similarity index 98% rename from lib/NitroWiFi/src/soc/socl_cleanup.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_cleanup.c index 6c75295893..df74aacb83 100644 --- a/lib/NitroWiFi/src/soc/socl_cleanup.c +++ b/lib/external/NitroWiFi/libraries/soc/src/socl_cleanup.c @@ -1,5 +1,5 @@ #include -#include "../wcm/include/wcm_cpsif.h" +#include "wcm_cpsif.h" int SOCL_Cleanup (void) { int result; diff --git a/lib/NitroWiFi/src/soc/socl_close.c b/lib/external/NitroWiFi/libraries/soc/src/socl_close.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_close.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_close.c diff --git a/lib/NitroWiFi/src/soc/socl_command.c b/lib/external/NitroWiFi/libraries/soc/src/socl_command.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_command.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_command.c diff --git a/lib/NitroWiFi/src/soc/socl_const.c b/lib/external/NitroWiFi/libraries/soc/src/socl_const.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_const.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_const.c diff --git a/lib/NitroWiFi/src/soc/socl_create.c b/lib/external/NitroWiFi/libraries/soc/src/socl_create.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_create.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_create.c diff --git a/lib/NitroWiFi/src/soc/socl_list.c b/lib/external/NitroWiFi/libraries/soc/src/socl_list.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_list.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_list.c diff --git a/lib/NitroWiFi/src/soc/socl_listen_accept.c b/lib/external/NitroWiFi/libraries/soc/src/socl_listen_accept.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_listen_accept.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_listen_accept.c diff --git a/lib/NitroWiFi/src/soc/socl_misc.c b/lib/external/NitroWiFi/libraries/soc/src/socl_misc.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_misc.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_misc.c diff --git a/lib/NitroWiFi/src/soc/socl_poll.c b/lib/external/NitroWiFi/libraries/soc/src/socl_poll.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_poll.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_poll.c diff --git a/lib/NitroWiFi/src/soc/socl_read.c b/lib/external/NitroWiFi/libraries/soc/src/socl_read.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_read.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_read.c diff --git a/lib/NitroWiFi/src/soc/socl_resolve.c b/lib/external/NitroWiFi/libraries/soc/src/socl_resolve.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_resolve.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_resolve.c diff --git a/lib/NitroWiFi/src/soc/socl_shutdown.c b/lib/external/NitroWiFi/libraries/soc/src/socl_shutdown.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_shutdown.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_shutdown.c diff --git a/lib/NitroWiFi/src/soc/socl_ssl.c b/lib/external/NitroWiFi/libraries/soc/src/socl_ssl.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_ssl.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_ssl.c diff --git a/lib/NitroWiFi/src/soc/socl_startup.c b/lib/external/NitroWiFi/libraries/soc/src/socl_startup.c similarity index 99% rename from lib/NitroWiFi/src/soc/socl_startup.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_startup.c index 46ba89629b..d6248d83d0 100644 --- a/lib/NitroWiFi/src/soc/socl_startup.c +++ b/lib/external/NitroWiFi/libraries/soc/src/socl_startup.c @@ -1,5 +1,5 @@ #include -#include "../wcm/include/wcm_cpsif.h" +#include "wcm_cpsif.h" CPSConfig SOCLiCPSConfig; const SOCLConfig * SOCLiConfigPtr = NULL; diff --git a/lib/NitroWiFi/src/soc/socl_write.c b/lib/external/NitroWiFi/libraries/soc/src/socl_write.c similarity index 100% rename from lib/NitroWiFi/src/soc/socl_write.c rename to lib/external/NitroWiFi/libraries/soc/src/socl_write.c diff --git a/lib/NitroWiFi/asm/ssl/arc4.s b/lib/external/NitroWiFi/libraries/ssl/asm/arc4.s similarity index 100% rename from lib/NitroWiFi/asm/ssl/arc4.s rename to lib/external/NitroWiFi/libraries/ssl/asm/arc4.s diff --git a/lib/NitroWiFi/asm/ssl/biginteger.s b/lib/external/NitroWiFi/libraries/ssl/asm/biginteger.s similarity index 100% rename from lib/NitroWiFi/asm/ssl/biginteger.s rename to lib/external/NitroWiFi/libraries/ssl/asm/biginteger.s diff --git a/lib/NitroWiFi/asm/ssl/incbin/md5.bin b/lib/external/NitroWiFi/libraries/ssl/asm/incbin/md5.bin similarity index 100% rename from lib/NitroWiFi/asm/ssl/incbin/md5.bin rename to lib/external/NitroWiFi/libraries/ssl/asm/incbin/md5.bin diff --git a/lib/NitroWiFi/asm/ssl/incbin/sha1.bin b/lib/external/NitroWiFi/libraries/ssl/asm/incbin/sha1.bin similarity index 100% rename from lib/NitroWiFi/asm/ssl/incbin/sha1.bin rename to lib/external/NitroWiFi/libraries/ssl/asm/incbin/sha1.bin diff --git a/lib/NitroWiFi/asm/ssl/incbin/ssl.bin b/lib/external/NitroWiFi/libraries/ssl/asm/incbin/ssl.bin similarity index 100% rename from lib/NitroWiFi/asm/ssl/incbin/ssl.bin rename to lib/external/NitroWiFi/libraries/ssl/asm/incbin/ssl.bin diff --git a/lib/NitroWiFi/asm/ssl/include/biginteger.inc b/lib/external/NitroWiFi/libraries/ssl/asm/include/biginteger.inc similarity index 100% rename from lib/NitroWiFi/asm/ssl/include/biginteger.inc rename to lib/external/NitroWiFi/libraries/ssl/asm/include/biginteger.inc diff --git a/lib/NitroWiFi/asm/ssl/include/md5.inc b/lib/external/NitroWiFi/libraries/ssl/asm/include/md5.inc similarity index 100% rename from lib/NitroWiFi/asm/ssl/include/md5.inc rename to lib/external/NitroWiFi/libraries/ssl/asm/include/md5.inc diff --git a/lib/NitroWiFi/asm/ssl/include/sha1.inc b/lib/external/NitroWiFi/libraries/ssl/asm/include/sha1.inc similarity index 100% rename from lib/NitroWiFi/asm/ssl/include/sha1.inc rename to lib/external/NitroWiFi/libraries/ssl/asm/include/sha1.inc diff --git a/lib/NitroWiFi/asm/ssl/include/ssl.inc b/lib/external/NitroWiFi/libraries/ssl/asm/include/ssl.inc similarity index 100% rename from lib/NitroWiFi/asm/ssl/include/ssl.inc rename to lib/external/NitroWiFi/libraries/ssl/asm/include/ssl.inc diff --git a/lib/external/NitroWiFi/libraries/ssl/asm/macros/function.inc b/lib/external/NitroWiFi/libraries/ssl/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/NitroWiFi/libraries/ssl/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/NitroWiFi/asm/ssl/md5.s b/lib/external/NitroWiFi/libraries/ssl/asm/md5.s similarity index 100% rename from lib/NitroWiFi/asm/ssl/md5.s rename to lib/external/NitroWiFi/libraries/ssl/asm/md5.s diff --git a/lib/NitroWiFi/asm/ssl/sha1.s b/lib/external/NitroWiFi/libraries/ssl/asm/sha1.s similarity index 100% rename from lib/NitroWiFi/asm/ssl/sha1.s rename to lib/external/NitroWiFi/libraries/ssl/asm/sha1.s diff --git a/lib/NitroWiFi/asm/ssl/ssl.s b/lib/external/NitroWiFi/libraries/ssl/asm/ssl.s similarity index 100% rename from lib/NitroWiFi/asm/ssl/ssl.s rename to lib/external/NitroWiFi/libraries/ssl/asm/ssl.s diff --git a/lib/external/NitroWiFi/libraries/ssl/meson.build b/lib/external/NitroWiFi/libraries/ssl/meson.build new file mode 100644 index 0000000000..47e04e30c7 --- /dev/null +++ b/lib/external/NitroWiFi/libraries/ssl/meson.build @@ -0,0 +1,17 @@ +libssl_srcs = files( + 'asm/ssl.s', + 'asm/md5.s', + 'asm/sha1.s', + 'asm/arc4.s', + 'asm/biginteger.s' +) + +libssl = static_library('ssl', + sources: libssl_srcs, + c_args: [c_args, sdk_args], + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +nitrowifi_libs += libssl diff --git a/lib/external/NitroWiFi/libraries/stubs/md5/meson.build b/lib/external/NitroWiFi/libraries/stubs/md5/meson.build new file mode 100644 index 0000000000..7cc5938277 --- /dev/null +++ b/lib/external/NitroWiFi/libraries/stubs/md5/meson.build @@ -0,0 +1,11 @@ +libstubsmd5_srcs = files('src/dummy_md5.c') + +libstubsmd5 = static_library('stubsmd5', + sources: [libstubsmd5_srcs], + c_args: [c_args, sdk_args], + include_directories: [public_includes], + dependencies: [msl_dep, nitrosdk_dep], + pic: false +) + +nitrowifi_libs += libstubsmd5 diff --git a/lib/NitroWiFi/src/stubs/md5/dummy_md5.c b/lib/external/NitroWiFi/libraries/stubs/md5/src/dummy_md5.c similarity index 100% rename from lib/NitroWiFi/src/stubs/md5/dummy_md5.c rename to lib/external/NitroWiFi/libraries/stubs/md5/src/dummy_md5.c diff --git a/lib/external/NitroWiFi/libraries/stubs/meson.build b/lib/external/NitroWiFi/libraries/stubs/meson.build new file mode 100644 index 0000000000..f222c6d7a9 --- /dev/null +++ b/lib/external/NitroWiFi/libraries/stubs/meson.build @@ -0,0 +1 @@ +subdir('md5') diff --git a/lib/external/NitroWiFi/libraries/wcm/meson.build b/lib/external/NitroWiFi/libraries/wcm/meson.build new file mode 100644 index 0000000000..4457e76135 --- /dev/null +++ b/lib/external/NitroWiFi/libraries/wcm/meson.build @@ -0,0 +1,19 @@ +libwcm_srcs = files( + 'src/system.c', + 'src/aplist.c', + 'src/cpsif.c', + 'src/util_wcm.c' +) + +libwcm_internal_includes = include_directories('src/include') + +libwcm = static_library('wcm', + sources: [libwcm_srcs], + c_args: [c_args, sdk_args], + include_directories: [public_includes, libwcm_internal_includes], + c_pch: nitro_pch, + dependencies: [msl_dep, nitrosdk_dep], + pic: false +) + +nitrowifi_libs += libwcm diff --git a/lib/NitroWiFi/src/wcm/aplist.c b/lib/external/NitroWiFi/libraries/wcm/src/aplist.c similarity index 100% rename from lib/NitroWiFi/src/wcm/aplist.c rename to lib/external/NitroWiFi/libraries/wcm/src/aplist.c diff --git a/lib/NitroWiFi/src/wcm/cpsif.c b/lib/external/NitroWiFi/libraries/wcm/src/cpsif.c similarity index 99% rename from lib/NitroWiFi/src/wcm/cpsif.c rename to lib/external/NitroWiFi/libraries/wcm/src/cpsif.c index 35d5be03a3..908e06f4ab 100644 --- a/lib/NitroWiFi/src/wcm/cpsif.c +++ b/lib/external/NitroWiFi/libraries/wcm/src/cpsif.c @@ -1,5 +1,5 @@ -#include "include/wcm_private.h" -#include "include/wcm_cpsif.h" +#include "wcm_private.h" +#include "wcm_cpsif.h" #if WCM_DEBUG static const char cpsifWarningText_NotInit[] = {"WCM library is not initialized yet.\n"}; diff --git a/lib/NitroWiFi/src/wcm/include/wcm_cpsif.h b/lib/external/NitroWiFi/libraries/wcm/src/include/wcm_cpsif.h similarity index 100% rename from lib/NitroWiFi/src/wcm/include/wcm_cpsif.h rename to lib/external/NitroWiFi/libraries/wcm/src/include/wcm_cpsif.h diff --git a/lib/NitroWiFi/src/wcm/include/wcm_private.h b/lib/external/NitroWiFi/libraries/wcm/src/include/wcm_private.h similarity index 100% rename from lib/NitroWiFi/src/wcm/include/wcm_private.h rename to lib/external/NitroWiFi/libraries/wcm/src/include/wcm_private.h diff --git a/lib/NitroWiFi/src/wcm/system.c b/lib/external/NitroWiFi/libraries/wcm/src/system.c similarity index 99% rename from lib/NitroWiFi/src/wcm/system.c rename to lib/external/NitroWiFi/libraries/wcm/src/system.c index ff91452ecc..6f653c04bd 100644 --- a/lib/NitroWiFi/src/wcm/system.c +++ b/lib/external/NitroWiFi/libraries/wcm/src/system.c @@ -1,5 +1,5 @@ -#include "include/wcm_private.h" -#include "include/wcm_cpsif.h" +#include "wcm_private.h" +#include "wcm_cpsif.h" const u8 WCM_Essid_Any[WCM_ESSID_SIZE] = { 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, diff --git a/lib/NitroWiFi/src/wcm/util_wcm.c b/lib/external/NitroWiFi/libraries/wcm/src/util_wcm.c similarity index 100% rename from lib/NitroWiFi/src/wcm/util_wcm.c rename to lib/external/NitroWiFi/libraries/wcm/src/util_wcm.c diff --git a/lib/external/NitroWiFi/meson.build b/lib/external/NitroWiFi/meson.build new file mode 100644 index 0000000000..84e0dcf7e5 --- /dev/null +++ b/lib/external/NitroWiFi/meson.build @@ -0,0 +1,54 @@ +project('NitroWiFi', ['c', 'nasm']) + +# Compiler flags +c_args = [ + '-O4,p', + '-proc', 'arm946e', + '-enum', 'int', + '-lang', 'c99', + '-Cpp_exceptions', 'off', + '-gccext,on', + '-msgstyle', 'gcc', + '-ipa', 'file', + '-interworking', + '-inline', 'on,noauto', + '-char', 'signed', + '-nosyspath', + '-nostdinc' +] + +asm_args = [ + '-proc', 'arm5TE', + '-gccinc' +] + +sdk_args = [ + '-DSDK_CW_FORCE_EXPORT_SUPPORT', + '-DSDK_TS', + '-DSDK_4M', + '-DSDK_ARM9', + '-DSDK_CW', + '-DSDK_FINALROM', + '-DSDK_CODE_ARM', + '-DNNS_FINALROM' +] + +# Dependencies +msl_dep = dependency('msl', fallback: ['msl', 'msl_dep']) +nitrosdk_dep = dependency('NitroSDK', fallback : ['NitroSDK', 'nitrosdk_dep']) + +# Public includes +public_includes = include_directories('include') +nitro_pch = subproject('NitroSDK').get_variable('nitro_pch') + +# Libraries +nitrowifi_libs = [] +subdir('libraries') + +# Own dependency for consumers +nitrowifi_dep = declare_dependency( + compile_args: sdk_args, + dependencies: nitrosdk_dep, + include_directories: public_includes, + link_with: nitrowifi_libs +) \ No newline at end of file diff --git a/lib/gamespy/include/gs/available.h b/lib/external/gamespy/include/gs/available.h similarity index 100% rename from lib/gamespy/include/gs/available.h rename to lib/external/gamespy/include/gs/available.h diff --git a/lib/gamespy/include/gs/chat/chat.h b/lib/external/gamespy/include/gs/chat/chat.h similarity index 100% rename from lib/gamespy/include/gs/chat/chat.h rename to lib/external/gamespy/include/gs/chat/chat.h diff --git a/lib/gamespy/include/gs/chat/chatASCII.h b/lib/external/gamespy/include/gs/chat/chatASCII.h similarity index 100% rename from lib/gamespy/include/gs/chat/chatASCII.h rename to lib/external/gamespy/include/gs/chat/chatASCII.h diff --git a/lib/gamespy/include/gs/chat/chatCallbacks.h b/lib/external/gamespy/include/gs/chat/chatCallbacks.h similarity index 100% rename from lib/gamespy/include/gs/chat/chatCallbacks.h rename to lib/external/gamespy/include/gs/chat/chatCallbacks.h diff --git a/lib/gamespy/include/gs/chat/chatChannel.h b/lib/external/gamespy/include/gs/chat/chatChannel.h similarity index 100% rename from lib/gamespy/include/gs/chat/chatChannel.h rename to lib/external/gamespy/include/gs/chat/chatChannel.h diff --git a/lib/gamespy/include/gs/chat/chatCrypt.h b/lib/external/gamespy/include/gs/chat/chatCrypt.h similarity index 100% rename from lib/gamespy/include/gs/chat/chatCrypt.h rename to lib/external/gamespy/include/gs/chat/chatCrypt.h diff --git a/lib/gamespy/include/gs/chat/chatHandlers.h b/lib/external/gamespy/include/gs/chat/chatHandlers.h similarity index 100% rename from lib/gamespy/include/gs/chat/chatHandlers.h rename to lib/external/gamespy/include/gs/chat/chatHandlers.h diff --git a/lib/gamespy/include/gs/chat/chatMain.h b/lib/external/gamespy/include/gs/chat/chatMain.h similarity index 100% rename from lib/gamespy/include/gs/chat/chatMain.h rename to lib/external/gamespy/include/gs/chat/chatMain.h diff --git a/lib/gamespy/include/gs/chat/chatSocket.h b/lib/external/gamespy/include/gs/chat/chatSocket.h similarity index 100% rename from lib/gamespy/include/gs/chat/chatSocket.h rename to lib/external/gamespy/include/gs/chat/chatSocket.h diff --git a/lib/gamespy/include/gs/core.h b/lib/external/gamespy/include/gs/core.h similarity index 100% rename from lib/gamespy/include/gs/core.h rename to lib/external/gamespy/include/gs/core.h diff --git a/lib/gamespy/include/gs/darray.h b/lib/external/gamespy/include/gs/darray.h similarity index 100% rename from lib/gamespy/include/gs/darray.h rename to lib/external/gamespy/include/gs/darray.h diff --git a/lib/gamespy/include/gs/dummy_auth.h b/lib/external/gamespy/include/gs/dummy_auth.h similarity index 100% rename from lib/gamespy/include/gs/dummy_auth.h rename to lib/external/gamespy/include/gs/dummy_auth.h diff --git a/lib/gamespy/include/gs/ghttp/ghttp.h b/lib/external/gamespy/include/gs/ghttp/ghttp.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttp.h rename to lib/external/gamespy/include/gs/ghttp/ghttp.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpASCII.h b/lib/external/gamespy/include/gs/ghttp/ghttpASCII.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpASCII.h rename to lib/external/gamespy/include/gs/ghttp/ghttpASCII.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpBuffer.h b/lib/external/gamespy/include/gs/ghttp/ghttpBuffer.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpBuffer.h rename to lib/external/gamespy/include/gs/ghttp/ghttpBuffer.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpCallbacks.h b/lib/external/gamespy/include/gs/ghttp/ghttpCallbacks.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpCallbacks.h rename to lib/external/gamespy/include/gs/ghttp/ghttpCallbacks.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpCommon.h b/lib/external/gamespy/include/gs/ghttp/ghttpCommon.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpCommon.h rename to lib/external/gamespy/include/gs/ghttp/ghttpCommon.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpConnection.h b/lib/external/gamespy/include/gs/ghttp/ghttpConnection.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpConnection.h rename to lib/external/gamespy/include/gs/ghttp/ghttpConnection.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpEncryption.h b/lib/external/gamespy/include/gs/ghttp/ghttpEncryption.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpEncryption.h rename to lib/external/gamespy/include/gs/ghttp/ghttpEncryption.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpMain.h b/lib/external/gamespy/include/gs/ghttp/ghttpMain.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpMain.h rename to lib/external/gamespy/include/gs/ghttp/ghttpMain.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpPost.h b/lib/external/gamespy/include/gs/ghttp/ghttpPost.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpPost.h rename to lib/external/gamespy/include/gs/ghttp/ghttpPost.h diff --git a/lib/gamespy/include/gs/ghttp/ghttpProcess.h b/lib/external/gamespy/include/gs/ghttp/ghttpProcess.h similarity index 100% rename from lib/gamespy/include/gs/ghttp/ghttpProcess.h rename to lib/external/gamespy/include/gs/ghttp/ghttpProcess.h diff --git a/lib/gamespy/include/gs/gp/gp.h b/lib/external/gamespy/include/gs/gp/gp.h similarity index 100% rename from lib/gamespy/include/gs/gp/gp.h rename to lib/external/gamespy/include/gs/gp/gp.h diff --git a/lib/gamespy/include/gs/gp/gpi.h b/lib/external/gamespy/include/gs/gp/gpi.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpi.h rename to lib/external/gamespy/include/gs/gp/gpi.h diff --git a/lib/gamespy/include/gs/gp/gpiBuddy.h b/lib/external/gamespy/include/gs/gp/gpiBuddy.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiBuddy.h rename to lib/external/gamespy/include/gs/gp/gpiBuddy.h diff --git a/lib/gamespy/include/gs/gp/gpiBuffer.h b/lib/external/gamespy/include/gs/gp/gpiBuffer.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiBuffer.h rename to lib/external/gamespy/include/gs/gp/gpiBuffer.h diff --git a/lib/gamespy/include/gs/gp/gpiCallback.h b/lib/external/gamespy/include/gs/gp/gpiCallback.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiCallback.h rename to lib/external/gamespy/include/gs/gp/gpiCallback.h diff --git a/lib/gamespy/include/gs/gp/gpiConnect.h b/lib/external/gamespy/include/gs/gp/gpiConnect.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiConnect.h rename to lib/external/gamespy/include/gs/gp/gpiConnect.h diff --git a/lib/gamespy/include/gs/gp/gpiInfo.h b/lib/external/gamespy/include/gs/gp/gpiInfo.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiInfo.h rename to lib/external/gamespy/include/gs/gp/gpiInfo.h diff --git a/lib/gamespy/include/gs/gp/gpiOperation.h b/lib/external/gamespy/include/gs/gp/gpiOperation.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiOperation.h rename to lib/external/gamespy/include/gs/gp/gpiOperation.h diff --git a/lib/gamespy/include/gs/gp/gpiPeer.h b/lib/external/gamespy/include/gs/gp/gpiPeer.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiPeer.h rename to lib/external/gamespy/include/gs/gp/gpiPeer.h diff --git a/lib/gamespy/include/gs/gp/gpiProfile.h b/lib/external/gamespy/include/gs/gp/gpiProfile.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiProfile.h rename to lib/external/gamespy/include/gs/gp/gpiProfile.h diff --git a/lib/gamespy/include/gs/gp/gpiSearch.h b/lib/external/gamespy/include/gs/gp/gpiSearch.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiSearch.h rename to lib/external/gamespy/include/gs/gp/gpiSearch.h diff --git a/lib/gamespy/include/gs/gp/gpiTransfer.h b/lib/external/gamespy/include/gs/gp/gpiTransfer.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiTransfer.h rename to lib/external/gamespy/include/gs/gp/gpiTransfer.h diff --git a/lib/gamespy/include/gs/gp/gpiUnique.h b/lib/external/gamespy/include/gs/gp/gpiUnique.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiUnique.h rename to lib/external/gamespy/include/gs/gp/gpiUnique.h diff --git a/lib/gamespy/include/gs/gp/gpiUtility.h b/lib/external/gamespy/include/gs/gp/gpiUtility.h similarity index 100% rename from lib/gamespy/include/gs/gp/gpiUtility.h rename to lib/external/gamespy/include/gs/gp/gpiUtility.h diff --git a/lib/gamespy/include/gs/gsiDebug.h b/lib/external/gamespy/include/gs/gsiDebug.h similarity index 100% rename from lib/gamespy/include/gs/gsiDebug.h rename to lib/external/gamespy/include/gs/gsiDebug.h diff --git a/lib/gamespy/include/gs/gsiMemory.h b/lib/external/gamespy/include/gs/gsiMemory.h similarity index 100% rename from lib/gamespy/include/gs/gsiMemory.h rename to lib/external/gamespy/include/gs/gsiMemory.h diff --git a/lib/gamespy/include/gs/gstats/gbucket.h b/lib/external/gamespy/include/gs/gstats/gbucket.h similarity index 100% rename from lib/gamespy/include/gs/gstats/gbucket.h rename to lib/external/gamespy/include/gs/gstats/gbucket.h diff --git a/lib/gamespy/include/gs/gstats/gpersist.h b/lib/external/gamespy/include/gs/gstats/gpersist.h similarity index 100% rename from lib/gamespy/include/gs/gstats/gpersist.h rename to lib/external/gamespy/include/gs/gstats/gpersist.h diff --git a/lib/gamespy/include/gs/gstats/gstats.h b/lib/external/gamespy/include/gs/gstats/gstats.h similarity index 100% rename from lib/gamespy/include/gs/gstats/gstats.h rename to lib/external/gamespy/include/gs/gstats/gstats.h diff --git a/lib/gamespy/include/gs/gt2/gt2.h b/lib/external/gamespy/include/gs/gt2/gt2.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2.h rename to lib/external/gamespy/include/gs/gt2/gt2.h diff --git a/lib/gamespy/include/gs/gt2/gt2Auth.h b/lib/external/gamespy/include/gs/gt2/gt2Auth.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Auth.h rename to lib/external/gamespy/include/gs/gt2/gt2Auth.h diff --git a/lib/gamespy/include/gs/gt2/gt2Buffer.h b/lib/external/gamespy/include/gs/gt2/gt2Buffer.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Buffer.h rename to lib/external/gamespy/include/gs/gt2/gt2Buffer.h diff --git a/lib/gamespy/include/gs/gt2/gt2Callback.h b/lib/external/gamespy/include/gs/gt2/gt2Callback.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Callback.h rename to lib/external/gamespy/include/gs/gt2/gt2Callback.h diff --git a/lib/gamespy/include/gs/gt2/gt2Connection.h b/lib/external/gamespy/include/gs/gt2/gt2Connection.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Connection.h rename to lib/external/gamespy/include/gs/gt2/gt2Connection.h diff --git a/lib/gamespy/include/gs/gt2/gt2Encode.h b/lib/external/gamespy/include/gs/gt2/gt2Encode.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Encode.h rename to lib/external/gamespy/include/gs/gt2/gt2Encode.h diff --git a/lib/gamespy/include/gs/gt2/gt2Filter.h b/lib/external/gamespy/include/gs/gt2/gt2Filter.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Filter.h rename to lib/external/gamespy/include/gs/gt2/gt2Filter.h diff --git a/lib/gamespy/include/gs/gt2/gt2Main.h b/lib/external/gamespy/include/gs/gt2/gt2Main.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Main.h rename to lib/external/gamespy/include/gs/gt2/gt2Main.h diff --git a/lib/gamespy/include/gs/gt2/gt2Message.h b/lib/external/gamespy/include/gs/gt2/gt2Message.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Message.h rename to lib/external/gamespy/include/gs/gt2/gt2Message.h diff --git a/lib/gamespy/include/gs/gt2/gt2Socket.h b/lib/external/gamespy/include/gs/gt2/gt2Socket.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Socket.h rename to lib/external/gamespy/include/gs/gt2/gt2Socket.h diff --git a/lib/gamespy/include/gs/gt2/gt2Utility.h b/lib/external/gamespy/include/gs/gt2/gt2Utility.h similarity index 100% rename from lib/gamespy/include/gs/gt2/gt2Utility.h rename to lib/external/gamespy/include/gs/gt2/gt2Utility.h diff --git a/lib/gamespy/include/gs/hashtable.h b/lib/external/gamespy/include/gs/hashtable.h similarity index 100% rename from lib/gamespy/include/gs/hashtable.h rename to lib/external/gamespy/include/gs/hashtable.h diff --git a/lib/gamespy/include/gs/md5.h b/lib/external/gamespy/include/gs/md5.h similarity index 100% rename from lib/gamespy/include/gs/md5.h rename to lib/external/gamespy/include/gs/md5.h diff --git a/lib/gamespy/include/gs/natneg/natneg.h b/lib/external/gamespy/include/gs/natneg/natneg.h similarity index 100% rename from lib/gamespy/include/gs/natneg/natneg.h rename to lib/external/gamespy/include/gs/natneg/natneg.h diff --git a/lib/gamespy/include/gs/natneg/nninternal.h b/lib/external/gamespy/include/gs/natneg/nninternal.h similarity index 100% rename from lib/gamespy/include/gs/natneg/nninternal.h rename to lib/external/gamespy/include/gs/natneg/nninternal.h diff --git a/lib/gamespy/include/gs/nonport.h b/lib/external/gamespy/include/gs/nonport.h similarity index 100% rename from lib/gamespy/include/gs/nonport.h rename to lib/external/gamespy/include/gs/nonport.h diff --git a/lib/gamespy/include/gs/qr2/qr2.h b/lib/external/gamespy/include/gs/qr2/qr2.h similarity index 100% rename from lib/gamespy/include/gs/qr2/qr2.h rename to lib/external/gamespy/include/gs/qr2/qr2.h diff --git a/lib/gamespy/include/gs/qr2/qr2regkeys.h b/lib/external/gamespy/include/gs/qr2/qr2regkeys.h similarity index 100% rename from lib/gamespy/include/gs/qr2/qr2regkeys.h rename to lib/external/gamespy/include/gs/qr2/qr2regkeys.h diff --git a/lib/gamespy/include/gs/serverbrowsing/sb_ascii.h b/lib/external/gamespy/include/gs/serverbrowsing/sb_ascii.h similarity index 100% rename from lib/gamespy/include/gs/serverbrowsing/sb_ascii.h rename to lib/external/gamespy/include/gs/serverbrowsing/sb_ascii.h diff --git a/lib/gamespy/include/gs/serverbrowsing/sb_crypt.h b/lib/external/gamespy/include/gs/serverbrowsing/sb_crypt.h similarity index 100% rename from lib/gamespy/include/gs/serverbrowsing/sb_crypt.h rename to lib/external/gamespy/include/gs/serverbrowsing/sb_crypt.h diff --git a/lib/gamespy/include/gs/serverbrowsing/sb_internal.h b/lib/external/gamespy/include/gs/serverbrowsing/sb_internal.h similarity index 100% rename from lib/gamespy/include/gs/serverbrowsing/sb_internal.h rename to lib/external/gamespy/include/gs/serverbrowsing/sb_internal.h diff --git a/lib/gamespy/include/gs/serverbrowsing/sb_serverbrowsing.h b/lib/external/gamespy/include/gs/serverbrowsing/sb_serverbrowsing.h similarity index 100% rename from lib/gamespy/include/gs/serverbrowsing/sb_serverbrowsing.h rename to lib/external/gamespy/include/gs/serverbrowsing/sb_serverbrowsing.h diff --git a/lib/gamespy/include/gs/soap.h b/lib/external/gamespy/include/gs/soap.h similarity index 100% rename from lib/gamespy/include/gs/soap.h rename to lib/external/gamespy/include/gs/soap.h diff --git a/lib/gamespy/include/gs/stringutil.h b/lib/external/gamespy/include/gs/stringutil.h similarity index 100% rename from lib/gamespy/include/gs/stringutil.h rename to lib/external/gamespy/include/gs/stringutil.h diff --git a/lib/gamespy/asm/chat/chatcallbacks.s b/lib/external/gamespy/libraries/chat/asm/chatcallbacks.s similarity index 100% rename from lib/gamespy/asm/chat/chatcallbacks.s rename to lib/external/gamespy/libraries/chat/asm/chatcallbacks.s diff --git a/lib/gamespy/asm/chat/chatchannel.s b/lib/external/gamespy/libraries/chat/asm/chatchannel.s similarity index 100% rename from lib/gamespy/asm/chat/chatchannel.s rename to lib/external/gamespy/libraries/chat/asm/chatchannel.s diff --git a/lib/gamespy/asm/chat/chatcrypt.s b/lib/external/gamespy/libraries/chat/asm/chatcrypt.s similarity index 100% rename from lib/gamespy/asm/chat/chatcrypt.s rename to lib/external/gamespy/libraries/chat/asm/chatcrypt.s diff --git a/lib/gamespy/asm/chat/chathandlers.s b/lib/external/gamespy/libraries/chat/asm/chathandlers.s similarity index 100% rename from lib/gamespy/asm/chat/chathandlers.s rename to lib/external/gamespy/libraries/chat/asm/chathandlers.s diff --git a/lib/gamespy/asm/chat/chatmain.s b/lib/external/gamespy/libraries/chat/asm/chatmain.s similarity index 100% rename from lib/gamespy/asm/chat/chatmain.s rename to lib/external/gamespy/libraries/chat/asm/chatmain.s diff --git a/lib/gamespy/asm/chat/chatsocket.s b/lib/external/gamespy/libraries/chat/asm/chatsocket.s similarity index 100% rename from lib/gamespy/asm/chat/chatsocket.s rename to lib/external/gamespy/libraries/chat/asm/chatsocket.s diff --git a/lib/gamespy/asm/chat/incbin/overlay66_data.bin b/lib/external/gamespy/libraries/chat/asm/incbin/overlay66_data.bin similarity index 100% rename from lib/gamespy/asm/chat/incbin/overlay66_data.bin rename to lib/external/gamespy/libraries/chat/asm/incbin/overlay66_data.bin diff --git a/lib/gamespy/asm/chat/include/chatcallbacks.inc b/lib/external/gamespy/libraries/chat/asm/include/chatcallbacks.inc similarity index 100% rename from lib/gamespy/asm/chat/include/chatcallbacks.inc rename to lib/external/gamespy/libraries/chat/asm/include/chatcallbacks.inc diff --git a/lib/gamespy/asm/chat/include/chatchannel.inc b/lib/external/gamespy/libraries/chat/asm/include/chatchannel.inc similarity index 100% rename from lib/gamespy/asm/chat/include/chatchannel.inc rename to lib/external/gamespy/libraries/chat/asm/include/chatchannel.inc diff --git a/lib/gamespy/asm/chat/include/chatcrypt.inc b/lib/external/gamespy/libraries/chat/asm/include/chatcrypt.inc similarity index 100% rename from lib/gamespy/asm/chat/include/chatcrypt.inc rename to lib/external/gamespy/libraries/chat/asm/include/chatcrypt.inc diff --git a/lib/gamespy/asm/chat/include/chathandlers.inc b/lib/external/gamespy/libraries/chat/asm/include/chathandlers.inc similarity index 100% rename from lib/gamespy/asm/chat/include/chathandlers.inc rename to lib/external/gamespy/libraries/chat/asm/include/chathandlers.inc diff --git a/lib/gamespy/asm/chat/include/chatmain.inc b/lib/external/gamespy/libraries/chat/asm/include/chatmain.inc similarity index 100% rename from lib/gamespy/asm/chat/include/chatmain.inc rename to lib/external/gamespy/libraries/chat/asm/include/chatmain.inc diff --git a/lib/gamespy/asm/chat/include/chatsocket.inc b/lib/external/gamespy/libraries/chat/asm/include/chatsocket.inc similarity index 100% rename from lib/gamespy/asm/chat/include/chatsocket.inc rename to lib/external/gamespy/libraries/chat/asm/include/chatsocket.inc diff --git a/lib/external/gamespy/libraries/chat/asm/macros/function.inc b/lib/external/gamespy/libraries/chat/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/chat/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/gamespy/libraries/chat/meson.build b/lib/external/gamespy/libraries/chat/meson.build new file mode 100644 index 0000000000..9648b9596c --- /dev/null +++ b/lib/external/gamespy/libraries/chat/meson.build @@ -0,0 +1,17 @@ +libdwcgschat_srcs = files( + 'asm/chatcallbacks.s', + 'asm/chatchannel.s', + 'asm/chatcrypt.s', + 'asm/chathandlers.s', + 'asm/chatmain.s', + 'asm/chatsocket.s' +) + +libdwcgschat = static_library('dwcgschat', + sources: libdwcgschat_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgschat diff --git a/lib/gamespy/asm/available.s b/lib/external/gamespy/libraries/common/asm/available.s similarity index 100% rename from lib/gamespy/asm/available.s rename to lib/external/gamespy/libraries/common/asm/available.s diff --git a/lib/gamespy/asm/darray.s b/lib/external/gamespy/libraries/common/asm/darray.s similarity index 100% rename from lib/gamespy/asm/darray.s rename to lib/external/gamespy/libraries/common/asm/darray.s diff --git a/lib/gamespy/asm/hashtable.s b/lib/external/gamespy/libraries/common/asm/hashtable.s similarity index 100% rename from lib/gamespy/asm/hashtable.s rename to lib/external/gamespy/libraries/common/asm/hashtable.s diff --git a/lib/gamespy/asm/include/available.inc b/lib/external/gamespy/libraries/common/asm/include/available.inc similarity index 100% rename from lib/gamespy/asm/include/available.inc rename to lib/external/gamespy/libraries/common/asm/include/available.inc diff --git a/lib/gamespy/asm/include/darray.inc b/lib/external/gamespy/libraries/common/asm/include/darray.inc similarity index 100% rename from lib/gamespy/asm/include/darray.inc rename to lib/external/gamespy/libraries/common/asm/include/darray.inc diff --git a/lib/gamespy/asm/include/hashtable.inc b/lib/external/gamespy/libraries/common/asm/include/hashtable.inc similarity index 100% rename from lib/gamespy/asm/include/hashtable.inc rename to lib/external/gamespy/libraries/common/asm/include/hashtable.inc diff --git a/lib/gamespy/asm/include/md5c.inc b/lib/external/gamespy/libraries/common/asm/include/md5c.inc similarity index 100% rename from lib/gamespy/asm/include/md5c.inc rename to lib/external/gamespy/libraries/common/asm/include/md5c.inc diff --git a/lib/gamespy/asm/include/nonport.inc b/lib/external/gamespy/libraries/common/asm/include/nonport.inc similarity index 100% rename from lib/gamespy/asm/include/nonport.inc rename to lib/external/gamespy/libraries/common/asm/include/nonport.inc diff --git a/lib/external/gamespy/libraries/common/asm/macros/function.inc b/lib/external/gamespy/libraries/common/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/common/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/gamespy/asm/md5c.s b/lib/external/gamespy/libraries/common/asm/md5c.s similarity index 100% rename from lib/gamespy/asm/md5c.s rename to lib/external/gamespy/libraries/common/asm/md5c.s diff --git a/lib/gamespy/asm/nonport.s b/lib/external/gamespy/libraries/common/asm/nonport.s similarity index 100% rename from lib/gamespy/asm/nonport.s rename to lib/external/gamespy/libraries/common/asm/nonport.s diff --git a/lib/external/gamespy/libraries/common/meson.build b/lib/external/gamespy/libraries/common/meson.build new file mode 100644 index 0000000000..cb7793cbce --- /dev/null +++ b/lib/external/gamespy/libraries/common/meson.build @@ -0,0 +1,16 @@ +libdwcgscommon_srcs = files( + 'asm/available.s', + 'asm/darray.s', + 'asm/hashtable.s', + 'asm/md5c.s', + 'asm/nonport.s' +) + +libdwcgscommon = static_library('dwcgscommon', + sources: libdwcgscommon_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgscommon diff --git a/lib/gamespy/asm/ghttp/ghttpbuffer.s b/lib/external/gamespy/libraries/ghttp/asm/ghttpbuffer.s similarity index 100% rename from lib/gamespy/asm/ghttp/ghttpbuffer.s rename to lib/external/gamespy/libraries/ghttp/asm/ghttpbuffer.s diff --git a/lib/gamespy/asm/ghttp/ghttpcallbacks.s b/lib/external/gamespy/libraries/ghttp/asm/ghttpcallbacks.s similarity index 100% rename from lib/gamespy/asm/ghttp/ghttpcallbacks.s rename to lib/external/gamespy/libraries/ghttp/asm/ghttpcallbacks.s diff --git a/lib/gamespy/asm/ghttp/ghttpcommon.s b/lib/external/gamespy/libraries/ghttp/asm/ghttpcommon.s similarity index 100% rename from lib/gamespy/asm/ghttp/ghttpcommon.s rename to lib/external/gamespy/libraries/ghttp/asm/ghttpcommon.s diff --git a/lib/gamespy/asm/ghttp/ghttpconnection.s b/lib/external/gamespy/libraries/ghttp/asm/ghttpconnection.s similarity index 100% rename from lib/gamespy/asm/ghttp/ghttpconnection.s rename to lib/external/gamespy/libraries/ghttp/asm/ghttpconnection.s diff --git a/lib/gamespy/asm/ghttp/ghttpmain.s b/lib/external/gamespy/libraries/ghttp/asm/ghttpmain.s similarity index 100% rename from lib/gamespy/asm/ghttp/ghttpmain.s rename to lib/external/gamespy/libraries/ghttp/asm/ghttpmain.s diff --git a/lib/gamespy/asm/ghttp/ghttppost.s b/lib/external/gamespy/libraries/ghttp/asm/ghttppost.s similarity index 100% rename from lib/gamespy/asm/ghttp/ghttppost.s rename to lib/external/gamespy/libraries/ghttp/asm/ghttppost.s diff --git a/lib/gamespy/asm/ghttp/ghttpprocess.s b/lib/external/gamespy/libraries/ghttp/asm/ghttpprocess.s similarity index 100% rename from lib/gamespy/asm/ghttp/ghttpprocess.s rename to lib/external/gamespy/libraries/ghttp/asm/ghttpprocess.s diff --git a/lib/gamespy/asm/ghttp/incbin/overlay60_data.bin b/lib/external/gamespy/libraries/ghttp/asm/incbin/overlay60_data.bin similarity index 100% rename from lib/gamespy/asm/ghttp/incbin/overlay60_data.bin rename to lib/external/gamespy/libraries/ghttp/asm/incbin/overlay60_data.bin diff --git a/lib/gamespy/asm/ghttp/include/ghttpbuffer.inc b/lib/external/gamespy/libraries/ghttp/asm/include/ghttpbuffer.inc similarity index 100% rename from lib/gamespy/asm/ghttp/include/ghttpbuffer.inc rename to lib/external/gamespy/libraries/ghttp/asm/include/ghttpbuffer.inc diff --git a/lib/gamespy/asm/ghttp/include/ghttpcallbacks.inc b/lib/external/gamespy/libraries/ghttp/asm/include/ghttpcallbacks.inc similarity index 100% rename from lib/gamespy/asm/ghttp/include/ghttpcallbacks.inc rename to lib/external/gamespy/libraries/ghttp/asm/include/ghttpcallbacks.inc diff --git a/lib/gamespy/asm/ghttp/include/ghttpcommon.inc b/lib/external/gamespy/libraries/ghttp/asm/include/ghttpcommon.inc similarity index 100% rename from lib/gamespy/asm/ghttp/include/ghttpcommon.inc rename to lib/external/gamespy/libraries/ghttp/asm/include/ghttpcommon.inc diff --git a/lib/gamespy/asm/ghttp/include/ghttpconnection.inc b/lib/external/gamespy/libraries/ghttp/asm/include/ghttpconnection.inc similarity index 100% rename from lib/gamespy/asm/ghttp/include/ghttpconnection.inc rename to lib/external/gamespy/libraries/ghttp/asm/include/ghttpconnection.inc diff --git a/lib/gamespy/asm/ghttp/include/ghttpmain.inc b/lib/external/gamespy/libraries/ghttp/asm/include/ghttpmain.inc similarity index 100% rename from lib/gamespy/asm/ghttp/include/ghttpmain.inc rename to lib/external/gamespy/libraries/ghttp/asm/include/ghttpmain.inc diff --git a/lib/gamespy/asm/ghttp/include/ghttppost.inc b/lib/external/gamespy/libraries/ghttp/asm/include/ghttppost.inc similarity index 100% rename from lib/gamespy/asm/ghttp/include/ghttppost.inc rename to lib/external/gamespy/libraries/ghttp/asm/include/ghttppost.inc diff --git a/lib/gamespy/asm/ghttp/include/ghttpprocess.inc b/lib/external/gamespy/libraries/ghttp/asm/include/ghttpprocess.inc similarity index 100% rename from lib/gamespy/asm/ghttp/include/ghttpprocess.inc rename to lib/external/gamespy/libraries/ghttp/asm/include/ghttpprocess.inc diff --git a/lib/external/gamespy/libraries/ghttp/asm/macros/function.inc b/lib/external/gamespy/libraries/ghttp/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/ghttp/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/gamespy/libraries/ghttp/meson.build b/lib/external/gamespy/libraries/ghttp/meson.build new file mode 100644 index 0000000000..c10ccbf62a --- /dev/null +++ b/lib/external/gamespy/libraries/ghttp/meson.build @@ -0,0 +1,18 @@ +libdwcgsghttp_srcs = files( + 'asm/ghttpbuffer.s', + 'asm/ghttpcallbacks.s', + 'asm/ghttpcommon.s', + 'asm/ghttpconnection.s', + 'asm/ghttpmain.s', + 'asm/ghttppost.s', + 'asm/ghttpprocess.s' +) + +libdwcgsghttp = static_library('dwcgsghttp', + sources: libdwcgsghttp_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgsghttp diff --git a/lib/gamespy/asm/gp/gp.s b/lib/external/gamespy/libraries/gp/asm/gp.s similarity index 100% rename from lib/gamespy/asm/gp/gp.s rename to lib/external/gamespy/libraries/gp/asm/gp.s diff --git a/lib/gamespy/asm/gp/gpi.s b/lib/external/gamespy/libraries/gp/asm/gpi.s similarity index 100% rename from lib/gamespy/asm/gp/gpi.s rename to lib/external/gamespy/libraries/gp/asm/gpi.s diff --git a/lib/gamespy/asm/gp/gpibuddy.s b/lib/external/gamespy/libraries/gp/asm/gpibuddy.s similarity index 100% rename from lib/gamespy/asm/gp/gpibuddy.s rename to lib/external/gamespy/libraries/gp/asm/gpibuddy.s diff --git a/lib/gamespy/asm/gp/gpibuffer.s b/lib/external/gamespy/libraries/gp/asm/gpibuffer.s similarity index 100% rename from lib/gamespy/asm/gp/gpibuffer.s rename to lib/external/gamespy/libraries/gp/asm/gpibuffer.s diff --git a/lib/gamespy/asm/gp/gpicallback.s b/lib/external/gamespy/libraries/gp/asm/gpicallback.s similarity index 100% rename from lib/gamespy/asm/gp/gpicallback.s rename to lib/external/gamespy/libraries/gp/asm/gpicallback.s diff --git a/lib/gamespy/asm/gp/gpiconnect.s b/lib/external/gamespy/libraries/gp/asm/gpiconnect.s similarity index 100% rename from lib/gamespy/asm/gp/gpiconnect.s rename to lib/external/gamespy/libraries/gp/asm/gpiconnect.s diff --git a/lib/gamespy/asm/gp/gpiinfo.s b/lib/external/gamespy/libraries/gp/asm/gpiinfo.s similarity index 100% rename from lib/gamespy/asm/gp/gpiinfo.s rename to lib/external/gamespy/libraries/gp/asm/gpiinfo.s diff --git a/lib/gamespy/asm/gp/gpioperation.s b/lib/external/gamespy/libraries/gp/asm/gpioperation.s similarity index 100% rename from lib/gamespy/asm/gp/gpioperation.s rename to lib/external/gamespy/libraries/gp/asm/gpioperation.s diff --git a/lib/gamespy/asm/gp/gpipeer.s b/lib/external/gamespy/libraries/gp/asm/gpipeer.s similarity index 100% rename from lib/gamespy/asm/gp/gpipeer.s rename to lib/external/gamespy/libraries/gp/asm/gpipeer.s diff --git a/lib/gamespy/asm/gp/gpiprofile.s b/lib/external/gamespy/libraries/gp/asm/gpiprofile.s similarity index 100% rename from lib/gamespy/asm/gp/gpiprofile.s rename to lib/external/gamespy/libraries/gp/asm/gpiprofile.s diff --git a/lib/gamespy/asm/gp/gpisearch.s b/lib/external/gamespy/libraries/gp/asm/gpisearch.s similarity index 100% rename from lib/gamespy/asm/gp/gpisearch.s rename to lib/external/gamespy/libraries/gp/asm/gpisearch.s diff --git a/lib/gamespy/asm/gp/gpitransfer.s b/lib/external/gamespy/libraries/gp/asm/gpitransfer.s similarity index 100% rename from lib/gamespy/asm/gp/gpitransfer.s rename to lib/external/gamespy/libraries/gp/asm/gpitransfer.s diff --git a/lib/gamespy/asm/gp/gpiunique.s b/lib/external/gamespy/libraries/gp/asm/gpiunique.s similarity index 100% rename from lib/gamespy/asm/gp/gpiunique.s rename to lib/external/gamespy/libraries/gp/asm/gpiunique.s diff --git a/lib/gamespy/asm/gp/gpiutility.s b/lib/external/gamespy/libraries/gp/asm/gpiutility.s similarity index 100% rename from lib/gamespy/asm/gp/gpiutility.s rename to lib/external/gamespy/libraries/gp/asm/gpiutility.s diff --git a/lib/gamespy/asm/gp/incbin/overlay4_data.bin b/lib/external/gamespy/libraries/gp/asm/incbin/overlay4_data.bin similarity index 100% rename from lib/gamespy/asm/gp/incbin/overlay4_data.bin rename to lib/external/gamespy/libraries/gp/asm/incbin/overlay4_data.bin diff --git a/lib/gamespy/asm/gp/include/gp.inc b/lib/external/gamespy/libraries/gp/asm/include/gp.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gp.inc rename to lib/external/gamespy/libraries/gp/asm/include/gp.inc diff --git a/lib/gamespy/asm/gp/include/gpi.inc b/lib/external/gamespy/libraries/gp/asm/include/gpi.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpi.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpi.inc diff --git a/lib/gamespy/asm/gp/include/gpibuddy.inc b/lib/external/gamespy/libraries/gp/asm/include/gpibuddy.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpibuddy.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpibuddy.inc diff --git a/lib/gamespy/asm/gp/include/gpibuffer.inc b/lib/external/gamespy/libraries/gp/asm/include/gpibuffer.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpibuffer.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpibuffer.inc diff --git a/lib/gamespy/asm/gp/include/gpicallback.inc b/lib/external/gamespy/libraries/gp/asm/include/gpicallback.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpicallback.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpicallback.inc diff --git a/lib/gamespy/asm/gp/include/gpiconnect.inc b/lib/external/gamespy/libraries/gp/asm/include/gpiconnect.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpiconnect.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpiconnect.inc diff --git a/lib/gamespy/asm/gp/include/gpiinfo.inc b/lib/external/gamespy/libraries/gp/asm/include/gpiinfo.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpiinfo.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpiinfo.inc diff --git a/lib/gamespy/asm/gp/include/gpioperation.inc b/lib/external/gamespy/libraries/gp/asm/include/gpioperation.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpioperation.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpioperation.inc diff --git a/lib/gamespy/asm/gp/include/gpipeer.inc b/lib/external/gamespy/libraries/gp/asm/include/gpipeer.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpipeer.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpipeer.inc diff --git a/lib/gamespy/asm/gp/include/gpiprofile.inc b/lib/external/gamespy/libraries/gp/asm/include/gpiprofile.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpiprofile.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpiprofile.inc diff --git a/lib/gamespy/asm/gp/include/gpisearch.inc b/lib/external/gamespy/libraries/gp/asm/include/gpisearch.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpisearch.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpisearch.inc diff --git a/lib/gamespy/asm/gp/include/gpitransfer.inc b/lib/external/gamespy/libraries/gp/asm/include/gpitransfer.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpitransfer.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpitransfer.inc diff --git a/lib/gamespy/asm/gp/include/gpiunique.inc b/lib/external/gamespy/libraries/gp/asm/include/gpiunique.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpiunique.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpiunique.inc diff --git a/lib/gamespy/asm/gp/include/gpiutility.inc b/lib/external/gamespy/libraries/gp/asm/include/gpiutility.inc similarity index 100% rename from lib/gamespy/asm/gp/include/gpiutility.inc rename to lib/external/gamespy/libraries/gp/asm/include/gpiutility.inc diff --git a/lib/external/gamespy/libraries/gp/asm/macros/function.inc b/lib/external/gamespy/libraries/gp/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/gp/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/gamespy/libraries/gp/meson.build b/lib/external/gamespy/libraries/gp/meson.build new file mode 100644 index 0000000000..06c901fd19 --- /dev/null +++ b/lib/external/gamespy/libraries/gp/meson.build @@ -0,0 +1,25 @@ +libdwcgsgp_srcs = files( + 'asm/gp.s', + 'asm/gpi.s', + 'asm/gpibuddy.s', + 'asm/gpibuffer.s', + 'asm/gpicallback.s', + 'asm/gpiconnect.s', + 'asm/gpiinfo.s', + 'asm/gpioperation.s', + 'asm/gpipeer.s', + 'asm/gpiprofile.s', + 'asm/gpisearch.s', + 'asm/gpitransfer.s', + 'asm/gpiunique.s', + 'asm/gpiutility.s' +) + +libdwcgsgp = static_library('dwcgsgp', + sources: libdwcgsgp_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgsgp diff --git a/lib/gamespy/asm/gstats/gbucket.s b/lib/external/gamespy/libraries/gstats/asm/gbucket.s similarity index 100% rename from lib/gamespy/asm/gstats/gbucket.s rename to lib/external/gamespy/libraries/gstats/asm/gbucket.s diff --git a/lib/gamespy/asm/gstats/gstats.s b/lib/external/gamespy/libraries/gstats/asm/gstats.s similarity index 100% rename from lib/gamespy/asm/gstats/gstats.s rename to lib/external/gamespy/libraries/gstats/asm/gstats.s diff --git a/lib/gamespy/asm/gstats/incbin/gstats.bin b/lib/external/gamespy/libraries/gstats/asm/incbin/gstats.bin similarity index 100% rename from lib/gamespy/asm/gstats/incbin/gstats.bin rename to lib/external/gamespy/libraries/gstats/asm/incbin/gstats.bin diff --git a/lib/gamespy/asm/gstats/include/gbucket.inc b/lib/external/gamespy/libraries/gstats/asm/include/gbucket.inc similarity index 100% rename from lib/gamespy/asm/gstats/include/gbucket.inc rename to lib/external/gamespy/libraries/gstats/asm/include/gbucket.inc diff --git a/lib/gamespy/asm/gstats/include/gstats.inc b/lib/external/gamespy/libraries/gstats/asm/include/gstats.inc similarity index 100% rename from lib/gamespy/asm/gstats/include/gstats.inc rename to lib/external/gamespy/libraries/gstats/asm/include/gstats.inc diff --git a/lib/external/gamespy/libraries/gstats/asm/macros/function.inc b/lib/external/gamespy/libraries/gstats/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/gstats/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/gamespy/libraries/gstats/meson.build b/lib/external/gamespy/libraries/gstats/meson.build new file mode 100644 index 0000000000..dbe22d7777 --- /dev/null +++ b/lib/external/gamespy/libraries/gstats/meson.build @@ -0,0 +1,13 @@ +libdwcgsgstats_asm = files( + 'asm/gbucket.s', + 'asm/gstats.s' +) + +libdwcgsgstats = static_library('dwcgsgstats', + sources: libdwcgsgstats_asm, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgsgstats diff --git a/lib/gamespy/asm/gt2/gt2auth.s b/lib/external/gamespy/libraries/gt2/asm/gt2auth.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2auth.s rename to lib/external/gamespy/libraries/gt2/asm/gt2auth.s diff --git a/lib/gamespy/asm/gt2/gt2buffer.s b/lib/external/gamespy/libraries/gt2/asm/gt2buffer.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2buffer.s rename to lib/external/gamespy/libraries/gt2/asm/gt2buffer.s diff --git a/lib/gamespy/asm/gt2/gt2callback.s b/lib/external/gamespy/libraries/gt2/asm/gt2callback.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2callback.s rename to lib/external/gamespy/libraries/gt2/asm/gt2callback.s diff --git a/lib/gamespy/asm/gt2/gt2connection.s b/lib/external/gamespy/libraries/gt2/asm/gt2connection.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2connection.s rename to lib/external/gamespy/libraries/gt2/asm/gt2connection.s diff --git a/lib/gamespy/asm/gt2/gt2main.s b/lib/external/gamespy/libraries/gt2/asm/gt2main.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2main.s rename to lib/external/gamespy/libraries/gt2/asm/gt2main.s diff --git a/lib/gamespy/asm/gt2/gt2message.s b/lib/external/gamespy/libraries/gt2/asm/gt2message.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2message.s rename to lib/external/gamespy/libraries/gt2/asm/gt2message.s diff --git a/lib/gamespy/asm/gt2/gt2socket.s b/lib/external/gamespy/libraries/gt2/asm/gt2socket.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2socket.s rename to lib/external/gamespy/libraries/gt2/asm/gt2socket.s diff --git a/lib/gamespy/asm/gt2/gt2utility.s b/lib/external/gamespy/libraries/gt2/asm/gt2utility.s similarity index 100% rename from lib/gamespy/asm/gt2/gt2utility.s rename to lib/external/gamespy/libraries/gt2/asm/gt2utility.s diff --git a/lib/gamespy/asm/gt2/include/gt2auth.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2auth.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2auth.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2auth.inc diff --git a/lib/gamespy/asm/gt2/include/gt2buffer.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2buffer.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2buffer.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2buffer.inc diff --git a/lib/gamespy/asm/gt2/include/gt2callback.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2callback.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2callback.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2callback.inc diff --git a/lib/gamespy/asm/gt2/include/gt2connection.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2connection.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2connection.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2connection.inc diff --git a/lib/gamespy/asm/gt2/include/gt2main.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2main.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2main.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2main.inc diff --git a/lib/gamespy/asm/gt2/include/gt2message.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2message.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2message.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2message.inc diff --git a/lib/gamespy/asm/gt2/include/gt2socket.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2socket.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2socket.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2socket.inc diff --git a/lib/gamespy/asm/gt2/include/gt2utility.inc b/lib/external/gamespy/libraries/gt2/asm/include/gt2utility.inc similarity index 100% rename from lib/gamespy/asm/gt2/include/gt2utility.inc rename to lib/external/gamespy/libraries/gt2/asm/include/gt2utility.inc diff --git a/lib/external/gamespy/libraries/gt2/asm/macros/function.inc b/lib/external/gamespy/libraries/gt2/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/gt2/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/gamespy/libraries/gt2/meson.build b/lib/external/gamespy/libraries/gt2/meson.build new file mode 100644 index 0000000000..03445de666 --- /dev/null +++ b/lib/external/gamespy/libraries/gt2/meson.build @@ -0,0 +1,19 @@ +libdwcgsgt2_srcs = files( + 'asm/gt2auth.s', + 'asm/gt2buffer.s', + 'asm/gt2callback.s', + 'asm/gt2connection.s', + 'asm/gt2main.s', + 'asm/gt2message.s', + 'asm/gt2socket.s', + 'asm/gt2utility.s' +) + +libdwcgsgt2 = static_library('dwcgsgt2', + sources: libdwcgsgt2_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgsgt2 diff --git a/lib/external/gamespy/libraries/meson.build b/lib/external/gamespy/libraries/meson.build new file mode 100644 index 0000000000..53e8290c68 --- /dev/null +++ b/lib/external/gamespy/libraries/meson.build @@ -0,0 +1,9 @@ +subdir('chat') +subdir('common') +subdir('ghttp') +subdir('gp') +subdir('gstats') +subdir('gt2') +subdir('natneg') +subdir('qr2') +subdir('serverbrowsing') diff --git a/lib/gamespy/asm/natneg/include/natneg.inc b/lib/external/gamespy/libraries/natneg/asm/include/natneg.inc similarity index 100% rename from lib/gamespy/asm/natneg/include/natneg.inc rename to lib/external/gamespy/libraries/natneg/asm/include/natneg.inc diff --git a/lib/external/gamespy/libraries/natneg/asm/macros/function.inc b/lib/external/gamespy/libraries/natneg/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/natneg/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/gamespy/asm/natneg/natneg.s b/lib/external/gamespy/libraries/natneg/asm/natneg.s similarity index 100% rename from lib/gamespy/asm/natneg/natneg.s rename to lib/external/gamespy/libraries/natneg/asm/natneg.s diff --git a/lib/external/gamespy/libraries/natneg/meson.build b/lib/external/gamespy/libraries/natneg/meson.build new file mode 100644 index 0000000000..4ac4ff16e9 --- /dev/null +++ b/lib/external/gamespy/libraries/natneg/meson.build @@ -0,0 +1,10 @@ +libdwcgsnatneg_srcs = files('asm/natneg.s') + +libdwcgsnatneg = static_library('dwcgsnatneg', + sources: libdwcgsnatneg_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgsnatneg diff --git a/lib/gamespy/asm/qr2/include/qr2.inc b/lib/external/gamespy/libraries/qr2/asm/include/qr2.inc similarity index 100% rename from lib/gamespy/asm/qr2/include/qr2.inc rename to lib/external/gamespy/libraries/qr2/asm/include/qr2.inc diff --git a/lib/external/gamespy/libraries/qr2/asm/macros/function.inc b/lib/external/gamespy/libraries/qr2/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/qr2/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/gamespy/asm/qr2/qr2.s b/lib/external/gamespy/libraries/qr2/asm/qr2.s similarity index 100% rename from lib/gamespy/asm/qr2/qr2.s rename to lib/external/gamespy/libraries/qr2/asm/qr2.s diff --git a/lib/gamespy/asm/qr2/qr2regkeys.s b/lib/external/gamespy/libraries/qr2/asm/qr2regkeys.s similarity index 100% rename from lib/gamespy/asm/qr2/qr2regkeys.s rename to lib/external/gamespy/libraries/qr2/asm/qr2regkeys.s diff --git a/lib/external/gamespy/libraries/qr2/meson.build b/lib/external/gamespy/libraries/qr2/meson.build new file mode 100644 index 0000000000..d8b1390278 --- /dev/null +++ b/lib/external/gamespy/libraries/qr2/meson.build @@ -0,0 +1,13 @@ +libdwcgsqr2_srcs = files( + 'asm/qr2.s', + 'asm/qr2regkeys.s' +) + +libdwcgsqr2 = static_library('dwcgsqr2', + sources: libdwcgsqr2_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgsqr2 diff --git a/lib/gamespy/asm/serverbrowsing/include/sb_crypt.inc b/lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_crypt.inc similarity index 100% rename from lib/gamespy/asm/serverbrowsing/include/sb_crypt.inc rename to lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_crypt.inc diff --git a/lib/gamespy/asm/serverbrowsing/include/sb_queryengine.inc b/lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_queryengine.inc similarity index 100% rename from lib/gamespy/asm/serverbrowsing/include/sb_queryengine.inc rename to lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_queryengine.inc diff --git a/lib/gamespy/asm/serverbrowsing/include/sb_server.inc b/lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_server.inc similarity index 100% rename from lib/gamespy/asm/serverbrowsing/include/sb_server.inc rename to lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_server.inc diff --git a/lib/gamespy/asm/serverbrowsing/include/sb_serverbrowsing.inc b/lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_serverbrowsing.inc similarity index 100% rename from lib/gamespy/asm/serverbrowsing/include/sb_serverbrowsing.inc rename to lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_serverbrowsing.inc diff --git a/lib/gamespy/asm/serverbrowsing/include/sb_serverlist.inc b/lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_serverlist.inc similarity index 100% rename from lib/gamespy/asm/serverbrowsing/include/sb_serverlist.inc rename to lib/external/gamespy/libraries/serverbrowsing/asm/include/sb_serverlist.inc diff --git a/lib/external/gamespy/libraries/serverbrowsing/asm/macros/function.inc b/lib/external/gamespy/libraries/serverbrowsing/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/gamespy/libraries/serverbrowsing/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/gamespy/asm/serverbrowsing/sb_crypt.s b/lib/external/gamespy/libraries/serverbrowsing/asm/sb_crypt.s similarity index 100% rename from lib/gamespy/asm/serverbrowsing/sb_crypt.s rename to lib/external/gamespy/libraries/serverbrowsing/asm/sb_crypt.s diff --git a/lib/gamespy/asm/serverbrowsing/sb_queryengine.s b/lib/external/gamespy/libraries/serverbrowsing/asm/sb_queryengine.s similarity index 100% rename from lib/gamespy/asm/serverbrowsing/sb_queryengine.s rename to lib/external/gamespy/libraries/serverbrowsing/asm/sb_queryengine.s diff --git a/lib/gamespy/asm/serverbrowsing/sb_server.s b/lib/external/gamespy/libraries/serverbrowsing/asm/sb_server.s similarity index 100% rename from lib/gamespy/asm/serverbrowsing/sb_server.s rename to lib/external/gamespy/libraries/serverbrowsing/asm/sb_server.s diff --git a/lib/gamespy/asm/serverbrowsing/sb_serverbrowsing.s b/lib/external/gamespy/libraries/serverbrowsing/asm/sb_serverbrowsing.s similarity index 100% rename from lib/gamespy/asm/serverbrowsing/sb_serverbrowsing.s rename to lib/external/gamespy/libraries/serverbrowsing/asm/sb_serverbrowsing.s diff --git a/lib/gamespy/asm/serverbrowsing/sb_serverlist.s b/lib/external/gamespy/libraries/serverbrowsing/asm/sb_serverlist.s similarity index 100% rename from lib/gamespy/asm/serverbrowsing/sb_serverlist.s rename to lib/external/gamespy/libraries/serverbrowsing/asm/sb_serverlist.s diff --git a/lib/external/gamespy/libraries/serverbrowsing/meson.build b/lib/external/gamespy/libraries/serverbrowsing/meson.build new file mode 100644 index 0000000000..b2182e76a4 --- /dev/null +++ b/lib/external/gamespy/libraries/serverbrowsing/meson.build @@ -0,0 +1,16 @@ +libdwcgsserverbrowsing_srcs = files( + 'asm/sb_crypt.s', + 'asm/sb_queryengine.s', + 'asm/sb_server.s', + 'asm/sb_serverbrowsing.s', + 'asm/sb_serverlist.s' +) + +libdwcgsserverbrowsing = static_library('dwcgsserverbrowsing', + sources: libdwcgsserverbrowsing_srcs, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +gamespy_libs += libdwcgsserverbrowsing diff --git a/lib/external/gamespy/meson.build b/lib/external/gamespy/meson.build new file mode 100644 index 0000000000..15556afa3f --- /dev/null +++ b/lib/external/gamespy/meson.build @@ -0,0 +1,32 @@ +project('gamespy', ['c', 'nasm']) + +asm_args = [ + '-proc', 'arm5TE', + '-gccinc' +] + +# Public includes +public_includes = include_directories('include') + +# Dependencies +msl_dep = dependency('msl', fallback: ['msl', 'msl_dep']) +nitrosdk_dep = dependency('NitroSDK', fallback : ['NitroSDK', 'nitrosdk_dep']) +nitrosystem_dep = dependency('NitroSystem', fallback : ['NitroSystem', 'nitrosystem_dep']) +nitrowifi_dep = dependency('NitroWiFi', fallback : ['NitroWiFi', 'nitrowifi_dep']) + +# Libraries +gamespy_libs = [] +subdir('libraries') + +# Own dependency for consumers +gamespy_dep = declare_dependency( + compile_args: '-D_NITRO', + dependencies: [ + msl_dep, + nitrosdk_dep, + nitrosystem_dep, + nitrowifi_dep + ], + include_directories: public_includes, + link_with: gamespy_libs +) \ No newline at end of file diff --git a/lib/libVCT/asm/adpcm.s b/lib/external/libVCT/asm/adpcm.s similarity index 100% rename from lib/libVCT/asm/adpcm.s rename to lib/external/libVCT/asm/adpcm.s diff --git a/lib/libVCT/asm/audio.s b/lib/external/libVCT/asm/audio.s similarity index 100% rename from lib/libVCT/asm/audio.s rename to lib/external/libVCT/asm/audio.s diff --git a/lib/libVCT/asm/decoder.s b/lib/external/libVCT/asm/decoder.s similarity index 100% rename from lib/libVCT/asm/decoder.s rename to lib/external/libVCT/asm/decoder.s diff --git a/lib/libVCT/asm/fir.s b/lib/external/libVCT/asm/fir.s similarity index 100% rename from lib/libVCT/asm/fir.s rename to lib/external/libVCT/asm/fir.s diff --git a/lib/libVCT/asm/g711.s b/lib/external/libVCT/asm/g711.s similarity index 100% rename from lib/libVCT/asm/g711.s rename to lib/external/libVCT/asm/g711.s diff --git a/lib/libVCT/asm/incbin/ssp.bin b/lib/external/libVCT/asm/incbin/ssp.bin similarity index 100% rename from lib/libVCT/asm/incbin/ssp.bin rename to lib/external/libVCT/asm/incbin/ssp.bin diff --git a/lib/libVCT/asm/include/adpcm.inc b/lib/external/libVCT/asm/include/adpcm.inc similarity index 100% rename from lib/libVCT/asm/include/adpcm.inc rename to lib/external/libVCT/asm/include/adpcm.inc diff --git a/lib/libVCT/asm/include/audio.inc b/lib/external/libVCT/asm/include/audio.inc similarity index 100% rename from lib/libVCT/asm/include/audio.inc rename to lib/external/libVCT/asm/include/audio.inc diff --git a/lib/libVCT/asm/include/decoder.inc b/lib/external/libVCT/asm/include/decoder.inc similarity index 100% rename from lib/libVCT/asm/include/decoder.inc rename to lib/external/libVCT/asm/include/decoder.inc diff --git a/lib/libVCT/asm/include/fir.inc b/lib/external/libVCT/asm/include/fir.inc similarity index 100% rename from lib/libVCT/asm/include/fir.inc rename to lib/external/libVCT/asm/include/fir.inc diff --git a/lib/libVCT/asm/include/queue.inc b/lib/external/libVCT/asm/include/queue.inc similarity index 100% rename from lib/libVCT/asm/include/queue.inc rename to lib/external/libVCT/asm/include/queue.inc diff --git a/lib/libVCT/asm/include/ssp.inc b/lib/external/libVCT/asm/include/ssp.inc similarity index 100% rename from lib/libVCT/asm/include/ssp.inc rename to lib/external/libVCT/asm/include/ssp.inc diff --git a/lib/libVCT/asm/include/stream_vct.inc b/lib/external/libVCT/asm/include/stream_vct.inc similarity index 100% rename from lib/libVCT/asm/include/stream_vct.inc rename to lib/external/libVCT/asm/include/stream_vct.inc diff --git a/lib/libVCT/asm/include/udp_buffer.inc b/lib/external/libVCT/asm/include/udp_buffer.inc similarity index 100% rename from lib/libVCT/asm/include/udp_buffer.inc rename to lib/external/libVCT/asm/include/udp_buffer.inc diff --git a/lib/libVCT/asm/include/vad.inc b/lib/external/libVCT/asm/include/vad.inc similarity index 100% rename from lib/libVCT/asm/include/vad.inc rename to lib/external/libVCT/asm/include/vad.inc diff --git a/lib/libVCT/asm/include/vct_main.inc b/lib/external/libVCT/asm/include/vct_main.inc similarity index 100% rename from lib/libVCT/asm/include/vct_main.inc rename to lib/external/libVCT/asm/include/vct_main.inc diff --git a/lib/external/libVCT/asm/macros/function.inc b/lib/external/libVCT/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/libVCT/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/libVCT/asm/mixer.s b/lib/external/libVCT/asm/mixer.s similarity index 100% rename from lib/libVCT/asm/mixer.s rename to lib/external/libVCT/asm/mixer.s diff --git a/lib/libVCT/asm/queue.s b/lib/external/libVCT/asm/queue.s similarity index 100% rename from lib/libVCT/asm/queue.s rename to lib/external/libVCT/asm/queue.s diff --git a/lib/libVCT/asm/ssp.s b/lib/external/libVCT/asm/ssp.s similarity index 100% rename from lib/libVCT/asm/ssp.s rename to lib/external/libVCT/asm/ssp.s diff --git a/lib/libVCT/asm/stream_vct.s b/lib/external/libVCT/asm/stream_vct.s similarity index 100% rename from lib/libVCT/asm/stream_vct.s rename to lib/external/libVCT/asm/stream_vct.s diff --git a/lib/libVCT/asm/udp_buffer.s b/lib/external/libVCT/asm/udp_buffer.s similarity index 100% rename from lib/libVCT/asm/udp_buffer.s rename to lib/external/libVCT/asm/udp_buffer.s diff --git a/lib/libVCT/asm/vad.s b/lib/external/libVCT/asm/vad.s similarity index 100% rename from lib/libVCT/asm/vad.s rename to lib/external/libVCT/asm/vad.s diff --git a/lib/libVCT/asm/vct_main.s b/lib/external/libVCT/asm/vct_main.s similarity index 100% rename from lib/libVCT/asm/vct_main.s rename to lib/external/libVCT/asm/vct_main.s diff --git a/lib/libVCT/include/vct.h b/lib/external/libVCT/include/vct.h similarity index 100% rename from lib/libVCT/include/vct.h rename to lib/external/libVCT/include/vct.h diff --git a/lib/external/libVCT/meson.build b/lib/external/libVCT/meson.build new file mode 100644 index 0000000000..f227a30372 --- /dev/null +++ b/lib/external/libVCT/meson.build @@ -0,0 +1,34 @@ +project('libVCT', ['c', 'nasm']) + +asm_args = [ + '-proc', 'arm5TE', + '-gccinc' +] + +public_includes = include_directories('include') + +libvct_srcs = files( + 'asm/adpcm.s', + 'asm/audio.s', + 'asm/decoder.s', + 'asm/g711.s', + 'asm/queue.s', + 'asm/stream_vct.s', + 'asm/ssp.s', + 'asm/udp_buffer.s', + 'asm/vad.s', + 'asm/fir.s', + 'asm/mixer.s', + 'asm/vct_main.s' +) + +libvct = static_library('vct', + sources: libvct_srcs, + nasm_args: asm_args, + pic: false +) + +libvct_dep = declare_dependency( + include_directories: public_includes, + link_with: libvct +) \ No newline at end of file diff --git a/lib/external/libcrypto/asm/include/sign.inc b/lib/external/libcrypto/asm/include/sign.inc new file mode 100644 index 0000000000..f5e9239fc9 --- /dev/null +++ b/lib/external/libcrypto/asm/include/sign.inc @@ -0,0 +1,69 @@ +.public MI_CpuFill8 +.public MI_CpuCopy8 +.public MATH_CalcSHA1 +.public _s32_div_f +.public _u32_div_f +.public CRYPTO_VerifySignatureWithHash +.public ParseSignHash +.public SkipPadding +.public ASN1Skip +.public CRYPTOi_RSA +.public BN_mod_exp_mont +.public BN_mod_exp_recp +.public bn_div_words +.public BN_reciprocal +.public BN_div_recp +.public BN_mod_mul_reciprocal +.public BN_RECP_CTX_set +.public BN_RECP_CTX_free +.public BN_RECP_CTX_init +.public BN_MONT_CTX_free +.public BN_MONT_CTX_init +.public BN_MONT_CTX_new +.public BN_MONT_CTX_set_word +.public BN_gen_exp_string +.public BN_gen_exp_bits +.public BN_mod_inverse_word +.public bn_from_montgomery_words +.public bn_sqr_normal +.public BN_sqr +.public BN_mod_exp +.public BN_mod +.public BN_div +.public bn_mul_normal +.public BN_mul +.public BN_sub +.public BN_usub +.public BN_uadd +.public BN_add +.public BN_sub_word +.public BN_add_word +.public BN_rshift +.public BN_lshift +.public bn_sub_words +.public bn_add_words +.public bn_sqr_words +.public bn_mul_words +.public bn_mul_add_words +.public BN_is_bit_set +.public BN_set_bit +.public BN_ucmp +.public BN_bn2bin +.public BN_bin2bn +.public BN_set_word +.public BN_clear +.public BN_copy +.public bn_expand2 +.public BN_CTX_free +.public BN_CTX_init +.public BN_CTX_new +.public BN_new +.public BN_init +.public bn_fix_top +.public bn_zexpand +.public BN_free +.public BN_clear_free +.public BN_num_bits +.public BN_num_bits_word +.public CRYPTOi_MyFree +.public CRYPTOi_MyAlloc diff --git a/lib/external/libcrypto/asm/include/util.inc b/lib/external/libcrypto/asm/include/util.inc new file mode 100644 index 0000000000..63f9e8558f --- /dev/null +++ b/lib/external/libcrypto/asm/include/util.inc @@ -0,0 +1,2 @@ +.public OS_AllocFromHeap +.public OS_FreeToHeap \ No newline at end of file diff --git a/lib/external/libcrypto/asm/macros/function.inc b/lib/external/libcrypto/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/libcrypto/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/asm/unk_020A4A34.s b/lib/external/libcrypto/asm/rc4-arm4cw.s similarity index 100% rename from asm/unk_020A4A34.s rename to lib/external/libcrypto/asm/rc4-arm4cw.s diff --git a/asm/unk_020A490C.s b/lib/external/libcrypto/asm/rc4.s similarity index 100% rename from asm/unk_020A490C.s rename to lib/external/libcrypto/asm/rc4.s diff --git a/lib/external/libcrypto/asm/rc4s-arm4cw.s b/lib/external/libcrypto/asm/rc4s-arm4cw.s new file mode 100644 index 0000000000..f1ee9af490 --- /dev/null +++ b/lib/external/libcrypto/asm/rc4s-arm4cw.s @@ -0,0 +1,41 @@ + .include "macros/function.inc" + + + .text + + + arm_func_start CRYPTO_RC4Encrypt +CRYPTO_RC4Encrypt: ; 0x02239420 + stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} + ldrb r7, [r0] + ldrb r6, [r0, #1] + add r0, r0, #4 + mov lr, #0x1000000 + add r7, lr, r7, lsl #24 + mov r6, r6, lsl #0x18 + ldrb sb, [r0, r7, lsr #24] + subs r2, r2, #1 + bmi _02239480 +_02239448: + add r6, r6, sb, lsl #24 + subs r2, r2, #1 + ldrb r8, [r0, r6, lsr #24] + ldrb r5, [r1], #1 + strb r8, [r0, r7, lsr #24] + strb sb, [r0, r6, lsr #24] + add r4, sb, r8 + and r4, r4, #0xff + add r7, r7, lr + ldrb r4, [r0, r4] + ldrb sb, [r0, r7, lsr #24] + eor r5, r5, r4 + strb r5, [r3], #1 + bge _02239448 +_02239480: + sub r7, r7, lr + mov r7, r7, lsr #0x18 + mov r6, r6, lsr #0x18 + strb r7, [r0, #-4] + strb r6, [r0, #-3] + ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} + arm_func_end CRYPTO_RC4Encrypt diff --git a/asm/overlay097/ov97_02239420.s b/lib/external/libcrypto/asm/sign.s similarity index 86% rename from asm/overlay097/ov97_02239420.s rename to lib/external/libcrypto/asm/sign.s index a735a7e789..f1ea7bd23f 100644 --- a/asm/overlay097/ov97_02239420.s +++ b/lib/external/libcrypto/asm/sign.s @@ -1,47 +1,9 @@ .include "macros/function.inc" - .include "overlay097/ov97_02239420.inc" - + .include "include/sign.inc" - .text - arm_func_start CRYPTO_RC4Encrypt -CRYPTO_RC4Encrypt: ; 0x02239420 - stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} - ldrb r7, [r0] - ldrb r6, [r0, #1] - add r0, r0, #4 - mov lr, #0x1000000 - add r7, lr, r7, lsl #24 - mov r6, r6, lsl #0x18 - ldrb sb, [r0, r7, lsr #24] - subs r2, r2, #1 - bmi _02239480 -_02239448: - add r6, r6, sb, lsl #24 - subs r2, r2, #1 - ldrb r8, [r0, r6, lsr #24] - ldrb r5, [r1], #1 - strb r8, [r0, r7, lsr #24] - strb sb, [r0, r6, lsr #24] - add r4, sb, r8 - and r4, r4, #0xff - add r7, r7, lr - ldrb r4, [r0, r4] - ldrb sb, [r0, r7, lsr #24] - eor r5, r5, r4 - strb r5, [r3], #1 - bge _02239448 -_02239480: - sub r7, r7, lr - mov r7, r7, lsr #0x18 - mov r6, r6, lsr #0x18 - strb r7, [r0, #-4] - strb r6, [r0, #-3] - ldmia sp!, {r4, r5, r6, r7, r8, sb, pc} - arm_func_end CRYPTO_RC4Encrypt - arm_func_start CRYPTO_VerifySignature CRYPTO_VerifySignature: ; 0x02239498 stmfd sp!, {r4, r5, lr} @@ -57,14 +19,14 @@ CRYPTO_VerifySignature: ; 0x02239498 add r0, sp, #0 mov r1, r5 mov r2, r4 - bl ov97_022394DC + bl CRYPTO_VerifySignatureWithHash add sp, sp, #0x14 ldmia sp!, {r4, r5, lr} bx lr arm_func_end CRYPTO_VerifySignature - arm_func_start ov97_022394DC -ov97_022394DC: ; 0x022394DC + arm_func_start CRYPTO_VerifySignatureWithHash +CRYPTO_VerifySignatureWithHash: ; 0x022394DC stmfd sp!, {r4, lr} sub sp, sp, #0x120 mov r3, #0 @@ -79,12 +41,12 @@ ov97_022394DC: ; 0x022394DC add r0, sp, #0x1c mov r1, #0x100 str ip, [sp, #8] - bl ov97_02239918 + bl CRYPTOi_RSA mov r1, r0 add r0, sp, #0x1c add r2, sp, #0xc add r3, sp, #0x10 - bl ov97_02239780 + bl SkipPadding cmp r0, #0 addeq sp, sp, #0x120 moveq r0, #0 @@ -98,7 +60,7 @@ ov97_022394DC: ; 0x022394DC ldr r0, [sp, #0xc] ldr r1, [sp, #0x10] mov r3, r2 - bl ov97_022395DC + bl ParseSignHash cmp r0, #0 addeq sp, sp, #0x120 moveq r0, #0 @@ -131,10 +93,10 @@ _02239598: bx lr ; .align 2, 0 _022395D8: .word 0x00010001 - arm_func_end ov97_022394DC + arm_func_end CRYPTO_VerifySignatureWithHash - arm_func_start ov97_022395DC -ov97_022395DC: ; 0x022395DC + arm_func_start ParseSignHash +ParseSignHash: ; 0x022395DC stmfd sp!, {r0, r1, r2, r3} stmfd sp!, {r4, r5, lr} sub sp, sp, #4 @@ -144,7 +106,7 @@ ov97_022395DC: ; 0x022395DC add r1, sp, #0x14 mov r2, #0x30 mov r3, #0 - bl ov97_02239844 + bl ASN1Skip cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -155,7 +117,7 @@ ov97_022395DC: ; 0x022395DC add r1, sp, #0x14 mov r2, #0x30 mov r3, #0 - bl ov97_02239844 + bl ASN1Skip cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -166,7 +128,7 @@ ov97_022395DC: ; 0x022395DC add r1, sp, #0x14 add r3, sp, #0 mov r2, #6 - bl ov97_02239844 + bl ASN1Skip cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -196,7 +158,7 @@ ov97_022395DC: ; 0x022395DC add r3, sp, #0 mov r2, #5 str ip, [sp, #0x14] - bl ov97_02239844 + bl ASN1Skip cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -220,7 +182,7 @@ ov97_022395DC: ; 0x022395DC add r3, sp, #0 mov r2, #4 str ip, [sp, #0x14] - bl ov97_02239844 + bl ASN1Skip cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -240,10 +202,10 @@ ov97_022395DC: ; 0x022395DC ldmia sp!, {r4, r5, lr} add sp, sp, #0x10 bx lr - arm_func_end ov97_022395DC + arm_func_end ParseSignHash - arm_func_start ov97_02239780 -ov97_02239780: ; 0x02239780 + arm_func_start SkipPadding +SkipPadding: ; 0x02239780 stmdb sp!, {lr} sub sp, sp, #4 cmp r1, #0xa @@ -296,10 +258,10 @@ _02239804: add sp, sp, #4 ldmia sp!, {lr} bx lr - arm_func_end ov97_02239780 + arm_func_end SkipPadding - arm_func_start ov97_02239844 -ov97_02239844: ; 0x02239844 + arm_func_start ASN1Skip +ASN1Skip: ; 0x02239844 stmfd sp!, {r4, r5, r6, lr} ldr r5, [r0, #0] mov r6, #0 @@ -357,10 +319,10 @@ _022398FC: mov r0, #1 ldmia sp!, {r4, r5, r6, lr} bx lr - arm_func_end ov97_02239844 + arm_func_end ASN1Skip - arm_func_start ov97_02239918 -ov97_02239918: ; 0x02239918 + arm_func_start CRYPTOi_RSA +CRYPTOi_RSA: ; 0x02239918 stmfd sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x58 movs r6, r0 @@ -379,36 +341,36 @@ _02239948: ldmia sp!, {r4, r5, r6, r7, r8, lr} bx lr _02239958: - bl ov97_0223D358 + bl BN_CTX_new mov r4, r0 add r0, sp, #4 - bl ov97_0223D3D8 + bl BN_init add r0, sp, #0x18 - bl ov97_0223D3D8 + bl BN_init add r0, sp, #0x2c - bl ov97_0223D3D8 + bl BN_init add r0, sp, #0x40 - bl ov97_0223D3D8 + bl BN_init cmp r4, #0 mvneq r5, #1 beq _02239A34 add r2, sp, #4 mov r0, r8 mov r1, r7 - bl ov97_0223D014 + bl BN_bin2bn cmp r0, #0 mvneq r5, #1 beq _02239A34 ldr r1, [sp, #0x78] add r0, sp, #0x2c - bl ov97_0223D128 + bl BN_set_word cmp r0, #0 mvneq r5, #1 beq _02239A34 ldr r0, [sp, #0x70] ldr r1, [sp, #0x74] add r2, sp, #0x40 - bl ov97_0223D014 + bl BN_bin2bn cmp r0, #0 mvneq r5, #1 beq _02239A34 @@ -417,12 +379,12 @@ _02239958: add r2, sp, #0x2c add r3, sp, #0x40 str r4, [sp] - bl ov97_0223B564 + bl BN_mod_exp cmp r0, #0 mvneq r5, #1 beq _02239A34 add r0, sp, #0x18 - bl ov97_0223D534 + bl BN_num_bits add r1, r0, #7 mov r0, r1, asr #2 add r0, r1, r0, lsr #29 @@ -432,30 +394,30 @@ _02239958: bgt _02239A34 add r0, sp, #0x18 mov r1, r6 - bl ov97_0223CF98 + bl BN_bn2bin mov r5, r0 _02239A34: add r0, sp, #4 - bl ov97_0223D4B8 + bl BN_free add r0, sp, #0x18 - bl ov97_0223D4B8 + bl BN_free add r0, sp, #0x2c - bl ov97_0223D4B8 + bl BN_free add r0, sp, #0x40 - bl ov97_0223D4B8 + bl BN_free cmp r4, #0 beq _02239A64 mov r0, r4 - bl ov97_0223D2E8 + bl BN_CTX_free _02239A64: mov r0, r5 add sp, sp, #0x58 ldmia sp!, {r4, r5, r6, r7, r8, lr} bx lr - arm_func_end ov97_02239918 + arm_func_end CRYPTOi_RSA - arm_func_start ov97_02239A74 -ov97_02239A74: ; 0x02239A74 + arm_func_start BN_mod_exp_mont +BN_mod_exp_mont: ; 0x02239A74 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x7c mov r4, #0 @@ -492,7 +454,7 @@ ov97_02239A74: ; 0x02239A74 _02239AF8: ldr r0, [sp, #4] mov r1, #0 - bl ov97_0223D128 + bl BN_set_word add sp, sp, #0x7c mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} @@ -510,7 +472,7 @@ _02239B14: _02239B38: ldr r0, [sp, #4] mov r1, #1 - bl ov97_0223D128 + bl BN_set_word add sp, sp, #0x7c mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} @@ -524,7 +486,7 @@ _02239B54: bne _02239B88 ldr r0, [sp, #4] mov r1, r7 - bl ov97_0223D1D0 + bl BN_copy add sp, sp, #0x7c mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} @@ -534,13 +496,13 @@ _02239B88: str r0, [sp, #0x18] cmp r0, #0 bne _02239BBC - bl ov97_0223AC0C + bl BN_MONT_CTX_new str r0, [sp, #0x18] cmp r0, #0 beq _0223A218 ldr r2, [sp, #0xa0] mov r1, r5 - bl ov97_0223AC40 + bl BN_MONT_CTX_set_word cmp r0, #0 beq _0223A218 _02239BBC: @@ -551,7 +513,7 @@ _02239BBC: mov r0, r6 mov r2, #0 str r4, [sp, #0x1c] - bl ov97_0223AFD4 + bl BN_gen_exp_bits cmp r0, #0 beq _0223A218 ldr r0, [sp, #0xa0] @@ -597,7 +559,7 @@ _02239C54: str r2, [r1, #4] mov r1, sl str r0, [sp, #0x14] - bl ov97_0223D438 + bl bn_zexpand ldr r0, [r7, #4] mov r2, #0 cmp r0, #0 @@ -625,12 +587,12 @@ _02239CC8: mla r0, r3, r0, r5 ldr r3, [sp, #0xa0] str r0, [sp, #0x14] - bl ov97_0223B5C0 + bl BN_mod cmp r0, #0 beq _0223A218 ldr r0, [sp, #0x14] mov r1, sl - bl ov97_0223D438 + bl bn_zexpand _02239D0C: ldr r0, [sp, #0xa0] ldr r3, [r0, #0] @@ -672,7 +634,7 @@ _02239D0C: ble _02239DB0 ldr r0, [sp, #4] mov r1, sl - bl ov97_0223D268 + bl bn_expand2 _02239DB0: cmp r0, #0 beq _0223A218 @@ -682,7 +644,7 @@ _02239DB0: movle r0, r8 ble _02239DD4 mov r0, r8 - bl ov97_0223D268 + bl bn_expand2 _02239DD4: cmp r0, #0 beq _0223A218 @@ -694,7 +656,7 @@ _02239DD4: ble _02239E00 ldr r1, [sp, #0x24] mov r0, r7 - bl ov97_0223D268 + bl bn_expand2 _02239E00: cmp r0, #0 beq _0223A218 @@ -704,7 +666,7 @@ _02239E00: ble _02239E24 mov r1, r5 mov r0, r4 - bl ov97_0223D268 + bl bn_expand2 _02239E24: cmp r0, #0 beq _0223A218 @@ -715,7 +677,7 @@ _02239E24: ble _02239E4C ldr r1, [sp, #0x24] mov r0, r6 - bl ov97_0223D268 + bl bn_expand2 _02239E4C: cmp r0, #0 beq _0223A218 @@ -734,13 +696,13 @@ _02239E4C: ldr r1, [r1, #0] mov r0, r6 mov r2, sl - bl ov97_0223BB94 + bl bn_mul_normal str r7, [sp] ldr r0, [sp, #0x38] mov r1, r6 mov r2, r5 mov r3, sl - bl ov97_0223B1DC + bl bn_from_montgomery_words ldr r0, [sp, #0x10] cmp r0, #1 ble _02239F54 @@ -748,13 +710,13 @@ _02239E4C: mov r0, r6 mov r2, sl mov r3, fp - bl ov97_0223B31C + bl bn_sqr_normal mov r0, fp mov r1, r6 mov r2, r5 mov r3, sl str r7, [sp] - bl ov97_0223B1DC + bl bn_from_montgomery_words ldr r0, [sp, #0x10] mov r4, #1 cmp r0, #1 @@ -773,13 +735,13 @@ _02239F00: ldr r1, [sb, r3, lsl #2] mov r2, sl mov r3, fp - bl ov97_0223BB94 + bl bn_mul_normal str r7, [sp] ldr r0, [sb, r4, lsl #2] mov r1, r6 mov r2, r5 mov r3, sl - bl ov97_0223B1DC + bl bn_from_montgomery_words ldr r0, [sp, #0x10] add r4, r4, #1 cmp r4, r0 @@ -860,13 +822,13 @@ _0223A054: mov r1, r8 mov r2, sl mov r3, fp - bl ov97_0223B31C + bl bn_sqr_normal str r7, [sp] mov r0, r8 mov r1, r6 mov r2, r5 mov r3, sl - bl ov97_0223B1DC + bl bn_from_montgomery_words add r4, r4, #1 cmp r4, sb blt _0223A054 @@ -924,13 +886,13 @@ _0223A12C: mov r0, r6 mov r1, r8 mov r2, sl - bl ov97_0223BB94 + bl bn_mul_normal mov r0, r8 mov r1, r6 mov r2, r5 mov r3, sl str r7, [sp] - bl ov97_0223B1DC + bl bn_from_montgomery_words b _0223A1A4 _0223A168: ldr r0, [sp, #0x14] @@ -939,14 +901,14 @@ _0223A168: mov r0, r6 mov r1, r8 mov r2, sl - bl ov97_0223BB94 + bl bn_mul_normal ldr r0, [sp, #4] str r7, [sp] ldr r0, [r0, #0] mov r1, r6 mov r2, r5 mov r3, sl - bl ov97_0223B1DC + bl bn_from_montgomery_words b _0223A1F0 _0223A1A4: cmp sb, #0 @@ -970,7 +932,7 @@ _0223A1D4: mov r1, r8 mov r2, r5 mov r3, sl - bl ov97_0223B1DC + bl bn_from_montgomery_words _0223A1F0: ldr r0, [sp, #0xa0] ldr r0, [r0, #0x108] @@ -979,7 +941,7 @@ _0223A1F0: ldr r0, [sp, #4] mov r1, r0 str sl, [r1, #4] - bl ov97_0223D3EC + bl bn_fix_top mov r0, #1 str r0, [sp, #8] _0223A218: @@ -1000,7 +962,7 @@ _0223A240: ldr r0, [sp, #0x18] cmp r0, #0 beq _0223A25C - bl ov97_0223AB90 + bl BN_MONT_CTX_free _0223A25C: ldr r2, [sp, #0xc] ldr r1, [sp, #0xa0] @@ -1009,10 +971,10 @@ _0223A25C: add sp, sp, #0x7c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr - arm_func_end ov97_02239A74 + arm_func_end BN_mod_exp_mont - arm_func_start ov97_0223A278 -ov97_0223A278: ; 0x0223A278 + arm_func_start BN_mod_exp_recp +BN_mod_exp_recp: ; 0x0223A278 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x18c mov sl, r0 @@ -1025,7 +987,7 @@ ov97_0223A278: ; 0x0223A278 mov r4, r3 str r1, [sp, #0xc] ldr sb, [sp, #0x1b0] - bl ov97_0223D534 + bl BN_num_bits ldr r1, [r5, #4] mov r8, r0 cmp r1, #0 @@ -1039,7 +1001,7 @@ ov97_0223A278: ; 0x0223A278 _0223A2D4: mov r0, sl mov r1, #0 - bl ov97_0223D128 + bl BN_set_word add sp, sp, #0x18c mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} @@ -1058,7 +1020,7 @@ _0223A2F0: _0223A318: mov r0, sl mov r1, #1 - bl ov97_0223D128 + bl BN_set_word add sp, sp, #0x18c mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} @@ -1073,22 +1035,22 @@ _0223A334: bne _0223A36C mov r0, sl mov r1, r5 - bl ov97_0223D1D0 + bl BN_copy add sp, sp, #0x18c mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr _0223A36C: add r0, sp, #0x18 - bl ov97_0223AB68 + bl BN_RECP_CTX_init add r0, sp, #0x18 mov r1, r4 mov r2, sb - bl ov97_0223AAF0 + bl BN_RECP_CTX_set cmp r0, #0 ble _0223A5B8 add r0, sp, #0x4c - bl ov97_0223D3D8 + bl BN_init ldr r2, [sb] add r1, sb, #4 mov r0, #0x14 @@ -1101,7 +1063,7 @@ _0223A36C: mov r1, r5 mov r3, sb str r4, [sp, #0xc] - bl ov97_0223B5C0 + bl BN_mod cmp r0, #0 beq _0223A5B8 add r1, sp, #0x4c @@ -1109,7 +1071,7 @@ _0223A36C: mov r0, r6 mov r2, r1 str sb, [sp] - bl ov97_0223AA44 + bl BN_mod_mul_reciprocal cmp r0, #0 beq _0223A5B8 cmp r8, #0x11 @@ -1130,7 +1092,7 @@ _0223A414: add r5, sp, #0x60 _0223A42C: mov r0, r5 - bl ov97_0223D3D8 + bl BN_init sub r3, r4, #1 mov r2, #0x14 add r1, sp, #0x4c @@ -1139,7 +1101,7 @@ _0223A42C: mov r2, r6 add r3, sp, #0x18 str sb, [sp] - bl ov97_0223AA44 + bl BN_mod_mul_reciprocal cmp r0, #0 beq _0223A5B8 add r4, r4, #1 @@ -1152,7 +1114,7 @@ _0223A470: mov r1, r5 str r4, [sp, #0xc] sub r8, r8, #1 - bl ov97_0223D128 + bl BN_set_word cmp r0, #0 beq _0223A5B8 mov r0, r5 @@ -1162,7 +1124,7 @@ _0223A470: _0223A4A0: ldr r0, [sp, #4] mov r1, r8 - bl ov97_0223CE38 + bl BN_is_bit_set cmp r0, #0 bne _0223A4EC cmp r5, #0 @@ -1172,7 +1134,7 @@ _0223A4A0: mov r2, sl add r3, sp, #0x18 str sb, [sp] - bl ov97_0223AA44 + bl BN_mod_mul_reciprocal cmp r0, #0 beq _0223A5B8 _0223A4DC: @@ -1190,7 +1152,7 @@ _0223A500: subs r1, r8, r4 bmi _0223A530 ldr r0, [sp, #4] - bl ov97_0223CE38 + bl BN_is_bit_set cmp r0, #0 subne r0, r4, r7 movne r0, r6, lsl r0 @@ -1212,7 +1174,7 @@ _0223A548: mov r2, sl add r3, sp, #0x18 str sb, [sp] - bl ov97_0223AA44 + bl BN_mod_mul_reciprocal cmp r0, #0 beq _0223A5B8 add r4, r4, #1 @@ -1227,7 +1189,7 @@ _0223A574: mov r1, sl add r3, sp, #0x18 str sb, [sp] - bl ov97_0223AA44 + bl BN_mod_mul_reciprocal cmp r0, #0 beq _0223A5B8 add r0, r7, #1 @@ -1248,7 +1210,7 @@ _0223A5B8: add r5, sp, #0x4c _0223A5D8: mov r0, r5 - bl ov97_0223D510 + bl BN_clear_free ldr r0, [sp, #0xc] add r4, r4, #1 cmp r4, r0 @@ -1256,15 +1218,15 @@ _0223A5D8: blt _0223A5D8 _0223A5F4: add r0, sp, #0x18 - bl ov97_0223AB34 + bl BN_RECP_CTX_free ldr r0, [sp, #8] add sp, sp, #0x18c ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr - arm_func_end ov97_0223A278 + arm_func_end BN_mod_exp_recp - arm_func_start ov97_0223A60C -ov97_0223A60C: ; 0x0223A60C + arm_func_start bn_div_words +bn_div_words: ; 0x0223A60C stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #4 movs r8, r2 @@ -1277,7 +1239,7 @@ ov97_0223A60C: ; 0x0223A60C ldmeqia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bxeq lr mov r0, r8 - bl ov97_0223D568 + bl BN_num_bits_word cmp r0, #0x20 beq _0223A660 mov r1, #1 @@ -1352,10 +1314,10 @@ _0223A738: bx lr ; .align 2, 0 _0223A748: .word 0x0000FFFF - arm_func_end ov97_0223A60C + arm_func_end bn_div_words - arm_func_start ov97_0223A74C -ov97_0223A74C: ; 0x0223A74C + arm_func_start BN_reciprocal +BN_reciprocal: ; 0x0223A74C stmfd sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #0x18 mov r8, r0 @@ -1364,13 +1326,13 @@ ov97_0223A74C: ; 0x0223A74C mov r6, r2 mov r5, r3 mvn r4, #0 - bl ov97_0223D3D8 + bl BN_init add r0, sp, #4 mov r1, #0 - bl ov97_0223D128 + bl BN_set_word add r0, sp, #4 mov r1, r6 - bl ov97_0223CEA8 + bl BN_set_bit cmp r0, #0 beq _0223A7B0 add r2, sp, #4 @@ -1378,20 +1340,20 @@ ov97_0223A74C: ; 0x0223A74C mov r3, r7 mov r1, #0 str r5, [sp] - bl ov97_0223B5F4 + bl BN_div cmp r0, #0 movne r4, r6 _0223A7B0: add r0, sp, #4 - bl ov97_0223D4B8 + bl BN_free mov r0, r4 add sp, sp, #0x18 ldmia sp!, {r4, r5, r6, r7, r8, lr} bx lr - arm_func_end ov97_0223A74C + arm_func_end BN_reciprocal - arm_func_start ov97_0223A7C8 -ov97_0223A7C8: ; 0x0223A7C8 + arm_func_start BN_div_recp +BN_div_recp: ; 0x0223A7C8 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0xc ldr r6, [sp, #0x30] @@ -1427,15 +1389,15 @@ ov97_0223A7C8: ; 0x0223A7C8 _0223A848: mov r0, r8 mov r1, r7 - bl ov97_0223CF44 + bl BN_ucmp cmp r0, #0 bge _0223A888 mov r0, sl mov r1, #0 - bl ov97_0223D128 + bl BN_set_word mov r0, sb mov r1, r8 - bl ov97_0223D1D0 + bl BN_copy add sp, sp, #0xc str fp, [r6] mov r0, #1 @@ -1443,7 +1405,7 @@ _0223A848: bx lr _0223A888: mov r0, r8 - bl ov97_0223D534 + bl BN_num_bits ldr r1, [r7, #0x28] mov r2, r0 mov r0, r1, lsl #1 @@ -1462,28 +1424,28 @@ _0223A888: mov r1, r7 mov r3, r6 add r0, r7, #0x14 - bl ov97_0223A74C + bl BN_reciprocal str r0, [r7, #0x2c] _0223A8E0: ldr r2, [sp, #8] ldr r0, [sp, #4] mov r1, r8 sub r2, r2, r4 - bl ov97_0223C4E0 + bl BN_rshift cmp r0, #0 beq _0223AA30 ldr r1, [sp, #4] mov r0, r5 mov r3, r6 add r2, r7, #0x14 - bl ov97_0223BCB8 + bl BN_mul cmp r0, #0 beq _0223AA30 ldr r2, [sp, #8] mov r0, sl mov r1, r5 add r2, r2, r4 - bl ov97_0223C4E0 + bl BN_rshift cmp r0, #0 beq _0223AA30 mov r4, #0 @@ -1492,20 +1454,20 @@ _0223A8E0: mov r2, sl mov r3, r6 str r4, [sl, #0xc] - bl ov97_0223BCB8 + bl BN_mul cmp r0, #0 beq _0223AA30 mov r0, sb mov r1, r8 mov r2, r5 - bl ov97_0223BEFC + bl BN_usub cmp r0, #0 beq _0223AA30 mov r5, r4 mov r0, sb mov r1, r7 str r5, [sb, #0xc] - bl ov97_0223CF44 + bl BN_ucmp cmp r0, #0 blt _0223A9DC mov r4, #1 @@ -1516,17 +1478,17 @@ _0223A990: mov r0, sb mov r1, sb mov r2, r7 - bl ov97_0223BEFC + bl BN_usub cmp r0, #0 beq _0223AA30 mov r0, sl mov r1, r4 - bl ov97_0223C3B8 + bl BN_add_word cmp r0, #0 beq _0223AA30 mov r0, sb mov r1, r7 - bl ov97_0223CF44 + bl BN_ucmp cmp r0, #0 bge _0223A990 _0223A9DC: @@ -1559,10 +1521,10 @@ _0223AA30: add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr - arm_func_end ov97_0223A7C8 + arm_func_end BN_div_recp - arm_func_start ov97_0223AA44 -ov97_0223AA44: ; 0x0223AA44 + arm_func_start BN_mod_mul_reciprocal +BN_mod_mul_reciprocal: ; 0x0223AA44 stmfd sp!, {r4, r5, r6, r7, r8, lr} sub sp, sp, #8 ldr r4, [sp, #0x20] @@ -1581,14 +1543,14 @@ ov97_0223AA44: ; 0x0223AA44 bne _0223AA9C mov r0, r6 mov r2, r4 - bl ov97_0223B408 + bl BN_sqr cmp r0, #0 bne _0223AAB8 b _0223AAD4 _0223AA9C: mov r0, r6 mov r3, r4 - bl ov97_0223BCB8 + bl BN_mul cmp r0, #0 bne _0223AAB8 b _0223AAD4 @@ -1600,7 +1562,7 @@ _0223AAB8: mov r3, r7 mov r0, #0 str r4, [sp] - bl ov97_0223A7C8 + bl BN_div_recp mov r5, #1 _0223AAD4: ldr r1, [r4, #0] @@ -1610,20 +1572,20 @@ _0223AAD4: add sp, sp, #8 ldmia sp!, {r4, r5, r6, r7, r8, lr} bx lr - arm_func_end ov97_0223AA44 + arm_func_end BN_mod_mul_reciprocal - arm_func_start ov97_0223AAF0 -ov97_0223AAF0: ; 0x0223AAF0 + arm_func_start BN_RECP_CTX_set +BN_RECP_CTX_set: ; 0x0223AAF0 stmfd sp!, {r4, r5, lr} sub sp, sp, #4 mov r5, r0 mov r4, r1 - bl ov97_0223D1D0 + bl BN_copy add r0, r5, #0x14 mov r1, #0 - bl ov97_0223D128 + bl BN_set_word mov r0, r4 - bl ov97_0223D534 + bl BN_num_bits str r0, [r5, #0x28] mov r0, #0 str r0, [r5, #0x2c] @@ -1631,97 +1593,97 @@ ov97_0223AAF0: ; 0x0223AAF0 add sp, sp, #4 ldmia sp!, {r4, r5, lr} bx lr - arm_func_end ov97_0223AAF0 + arm_func_end BN_RECP_CTX_set - arm_func_start ov97_0223AB34 -ov97_0223AB34: ; 0x0223AB34 + arm_func_start BN_RECP_CTX_free +BN_RECP_CTX_free: ; 0x0223AB34 stmfd sp!, {r4, lr} mov r4, r0 - bl ov97_0223D4B8 + bl BN_free add r0, r4, #0x14 - bl ov97_0223D4B8 + bl BN_free ldr r0, [r4, #0x30] ands r0, r0, #1 ldmeqia sp!, {r4, lr} bxeq lr mov r0, r4 - bl ov97_0223D5E4 + bl CRYPTOi_MyFree ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223AB34 + arm_func_end BN_RECP_CTX_free - arm_func_start ov97_0223AB68 -ov97_0223AB68: ; 0x0223AB68 + arm_func_start BN_RECP_CTX_init +BN_RECP_CTX_init: ; 0x0223AB68 stmfd sp!, {r4, lr} mov r4, r0 - bl ov97_0223D3D8 + bl BN_init add r0, r4, #0x14 - bl ov97_0223D3D8 + bl BN_init mov r0, #0 str r0, [r4, #0x28] str r0, [r4, #0x30] ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223AB68 + arm_func_end BN_RECP_CTX_init - arm_func_start ov97_0223AB90 -ov97_0223AB90: ; 0x0223AB90 + arm_func_start BN_MONT_CTX_free +BN_MONT_CTX_free: ; 0x0223AB90 stmfd sp!, {r4, lr} mov r4, r0 add r0, r4, #0xc - bl ov97_0223D4B8 + bl BN_free add r0, r4, #0x20 - bl ov97_0223D4B8 + bl BN_free add r0, r4, #0x34 - bl ov97_0223D4B8 + bl BN_free ldr r0, [r4, #0x4c] ands r0, r0, #1 ldmeqia sp!, {r4, lr} bxeq lr mov r0, r4 - bl ov97_0223D5E4 + bl CRYPTOi_MyFree ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223AB90 + arm_func_end BN_MONT_CTX_free - arm_func_start ov97_0223ABD0 -ov97_0223ABD0: ; 0x0223ABD0 + arm_func_start BN_MONT_CTX_init +BN_MONT_CTX_init: ; 0x0223ABD0 stmfd sp!, {r4, lr} mov r4, r0 mov r1, #0 str r1, [r4, #0] add r0, r4, #0xc str r1, [r4, #8] - bl ov97_0223D3D8 + bl BN_init add r0, r4, #0x20 - bl ov97_0223D3D8 + bl BN_init add r0, r4, #0x34 - bl ov97_0223D3D8 + bl BN_init mov r0, #0 str r0, [r4, #0x4c] ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223ABD0 + arm_func_end BN_MONT_CTX_init - arm_func_start ov97_0223AC0C -ov97_0223AC0C: ; 0x0223AC0C + arm_func_start BN_MONT_CTX_new +BN_MONT_CTX_new: ; 0x0223AC0C stmfd sp!, {r4, lr} mov r0, #0x50 - bl ov97_0223D62C + bl CRYPTOi_MyAlloc movs r4, r0 moveq r0, #0 ldmeqia sp!, {r4, lr} bxeq lr - bl ov97_0223ABD0 + bl BN_MONT_CTX_init mov r1, #1 mov r0, r4 str r1, [r4, #0x4c] ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223AC0C + arm_func_end BN_MONT_CTX_new - arm_func_start ov97_0223AC40 -ov97_0223AC40: ; 0x0223AC40 + arm_func_start BN_MONT_CTX_set_word +BN_MONT_CTX_set_word: ; 0x0223AC40 stmfd sp!, {r4, r5, r6, r7, lr} sub sp, sp, #0x14 mov r6, r1 @@ -1735,18 +1697,18 @@ ov97_0223AC40: ; 0x0223AC40 bxeq lr add r0, r7, #0x20 add r4, r7, #0xc - bl ov97_0223D1D0 + bl BN_copy cmp r0, #0 addeq sp, sp, #0x14 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, r7, lr} bxeq lr add r0, sp, #0 - bl ov97_0223D3D8 + bl BN_init mov r1, #1 mov r0, r6 str r1, [r7, #0] - bl ov97_0223D534 + bl BN_num_bits add r1, r0, #0x1f mov r0, r1, asr #4 add r0, r1, r0, lsr #27 @@ -1754,7 +1716,7 @@ ov97_0223AC40: ; 0x0223AC40 mov r0, r4 mov r1, #0 str r2, [r7, #8] - bl ov97_0223D128 + bl BN_set_word cmp r0, #0 addeq sp, sp, #0x14 moveq r0, #0 @@ -1762,22 +1724,22 @@ ov97_0223AC40: ; 0x0223AC40 bxeq lr mov r0, r4 mov r1, #0x20 - bl ov97_0223CEA8 + bl BN_set_bit cmp r0, #0 beq _0223ADE4 ldr r0, [r6, #0] ldr r4, [r0, #0] mov r0, r4 - bl ov97_0223B148 + bl BN_mod_inverse_word mov r1, r0 add r0, sp, #0 - bl ov97_0223D128 + bl BN_set_word cmp r0, #0 beq _0223ADE4 add r0, sp, #0 mov r2, #0x20 mov r1, r0 - bl ov97_0223C5FC + bl BN_lshift cmp r0, #0 beq _0223ADE4 ldr r0, [sp, #4] @@ -1792,12 +1754,12 @@ ov97_0223AC40: ; 0x0223AC40 _0223AD4C: add r0, sp, #0 mov r1, #1 - bl ov97_0223C258 + bl BN_sub_word b _0223AD70 _0223AD5C: add r0, sp, #0 mvn r1, #0 - bl ov97_0223D128 + bl BN_set_word cmp r0, #0 beq _0223ADE4 _0223AD70: @@ -1811,36 +1773,36 @@ _0223AD70: mov r2, r4 ldrge r0, [r0, #4] movlt r0, #0 - bl ov97_0223A60C + bl bn_div_words str r0, [r7, #0x48] add r0, r7, #0xc mov r1, #0 - bl ov97_0223D128 + bl BN_set_word ldr r1, [r7, #8] add r0, r7, #0xc mov r1, r1, lsl #6 - bl ov97_0223CEA8 + bl BN_set_bit cmp r0, #0 beq _0223ADE4 add r0, r7, #0xc mov r1, r0 mov r3, r5 add r2, r7, #0x20 - bl ov97_0223B5C0 + bl BN_mod ldr r1, [r7, #8] add r0, r7, #0xc - bl ov97_0223D438 + bl bn_zexpand _0223ADE4: add r0, sp, #0 - bl ov97_0223D4B8 + bl BN_free mov r0, #1 add sp, sp, #0x14 ldmia sp!, {r4, r5, r6, r7, lr} bx lr - arm_func_end ov97_0223AC40 + arm_func_end BN_MONT_CTX_set_word - arm_func_start ov97_0223ADFC -ov97_0223ADFC: ; 0x0223ADFC + arm_func_start BN_gen_exp_string +BN_gen_exp_string: ; 0x0223ADFC stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0xc mov r4, r2 @@ -1969,10 +1931,10 @@ _0223AFA0: bx lr ; .align 2, 0 _0223AFD0: .word Unk_ov97_0223F158 - arm_func_end ov97_0223ADFC + arm_func_end BN_gen_exp_string - arm_func_start ov97_0223AFD4 -ov97_0223AFD4: ; 0x0223AFD4 + arm_func_start BN_gen_exp_bits +BN_gen_exp_bits: ; 0x0223AFD4 stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #4 ldr r5, [r3, #0], #4 @@ -2043,7 +2005,7 @@ _0223B0A4: movle r0, r4 ble _0223B0DC mov r0, r4 - bl ov97_0223D268 + bl bn_expand2 _0223B0DC: cmp r0, #0 addeq sp, sp, #4 @@ -2054,7 +2016,7 @@ _0223B0DC: mov r1, sb mov r2, r7 add r0, r5, #4 - bl ov97_0223ADFC + bl BN_gen_exp_string add r1, r0, #2 mov r0, r1, asr #8 strb r0, [r5] @@ -2075,10 +2037,10 @@ _0223B138: .word 0x00010001 _0223B13C: .word Unk_ov97_0223DEC4 _0223B140: .word 0x0223DEDC _0223B144: .word 0x0223DED0 - arm_func_end ov97_0223AFD4 + arm_func_end BN_gen_exp_bits - arm_func_start ov97_0223B148 -ov97_0223B148: ; 0x0223B148 + arm_func_start BN_mod_inverse_word +BN_mod_inverse_word: ; 0x0223B148 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov sl, r0 mov r1, sl @@ -2119,10 +2081,10 @@ _0223B1D0: mov r0, r1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, lr} bx lr - arm_func_end ov97_0223B148 + arm_func_end BN_mod_inverse_word - arm_func_start ov97_0223B1DC -ov97_0223B1DC: ; 0x0223B1DC + arm_func_start bn_from_montgomery_words +bn_from_montgomery_words: ; 0x0223B1DC stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0xc mov r7, r3 @@ -2144,7 +2106,7 @@ _0223B218: mul r3, r1, fp mov r1, r8 mov r2, r7 - bl ov97_0223CC58 + bl bn_mul_add_words add r1, r0, r6 ldr r0, [r5, #0] cmp r1, r6 @@ -2191,7 +2153,7 @@ _0223B2C0: mov r1, sb mov r2, r8 mov r3, r7 - bl ov97_0223C700 + bl bn_sub_words add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr @@ -2210,10 +2172,10 @@ _0223B2FC: add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr - arm_func_end ov97_0223B1DC + arm_func_end bn_from_montgomery_words - arm_func_start ov97_0223B31C -ov97_0223B31C: ; 0x0223B31C + arm_func_start bn_sqr_normal +bn_sqr_normal: ; 0x0223B31C stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #4 mov fp, r2 @@ -2237,7 +2199,7 @@ ov97_0223B31C: ; 0x0223B31C mov r0, r4 mov r1, r5 mov r2, r7 - bl ov97_0223CAB8 + bl bn_mul_words str r0, [r4, r7, lsl #2] add r4, r4, #8 _0223B384: @@ -2252,7 +2214,7 @@ _0223B390: mov r0, r4 mov r1, r5 mov r2, r7 - bl ov97_0223CC58 + bl bn_mul_add_words sub r8, r8, #1 str r0, [r4, r7, lsl #2] cmp r8, #0 @@ -2263,23 +2225,23 @@ _0223B3C4: mov r1, sl mov r2, sl mov r3, r6 - bl ov97_0223C814 + bl bn_add_words ldr r0, [sp] mov r1, sb mov r2, fp - bl ov97_0223C964 + bl bn_sqr_words ldr r2, [sp] mov r0, sl mov r1, sl mov r3, r6 - bl ov97_0223C814 + bl bn_add_words add sp, sp, #4 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr - arm_func_end ov97_0223B31C + arm_func_end bn_sqr_normal - arm_func_start ov97_0223B408 -ov97_0223B408: ; 0x0223B408 + arm_func_start BN_sqr +BN_sqr: ; 0x0223B408 stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #0x64 ldr r5, [r2, #0] @@ -2307,7 +2269,7 @@ ov97_0223B408: ; 0x0223B408 ble _0223B478 mov r0, r7 mov r1, r6 - bl ov97_0223D268 + bl bn_expand2 _0223B478: cmp r0, #0 addeq sp, sp, #0x64 @@ -2323,7 +2285,7 @@ _0223B478: ldr r1, [r8] add r3, sp, #0 mov r2, #4 - bl ov97_0223B31C + bl bn_sqr_normal b _0223B51C _0223B4B8: cmp r5, #8 @@ -2332,7 +2294,7 @@ _0223B4B8: ldr r1, [r8] add r3, sp, #0x20 mov r2, #8 - bl ov97_0223B31C + bl bn_sqr_normal b _0223B51C _0223B4D8: ldr r0, [r4, #8] @@ -2341,7 +2303,7 @@ _0223B4D8: ble _0223B4F4 mov r0, r4 mov r1, r6 - bl ov97_0223D268 + bl bn_expand2 _0223B4F4: cmp r0, #0 addeq sp, sp, #0x64 @@ -2352,7 +2314,7 @@ _0223B4F4: ldr r1, [r8] ldr r3, [r4, #0] mov r2, r5 - bl ov97_0223B31C + bl bn_sqr_normal _0223B51C: cmp r6, #0 ble _0223B540 @@ -2368,16 +2330,16 @@ _0223B540: beq _0223B554 mov r0, sb mov r1, r7 - bl ov97_0223D1D0 + bl BN_copy _0223B554: mov r0, #1 add sp, sp, #0x64 ldmia sp!, {r4, r5, r6, r7, r8, sb, lr} bx lr - arm_func_end ov97_0223B408 + arm_func_end BN_sqr - arm_func_start ov97_0223B564 -ov97_0223B564: ; 0x0223B564 + arm_func_start BN_mod_exp +BN_mod_exp: ; 0x0223B564 stmdb sp!, {lr} sub sp, sp, #0xc ldr ip, [r3, #4] @@ -2391,21 +2353,21 @@ ov97_0223B564: ; 0x0223B564 mov ip, #0 str lr, [sp] str ip, [sp, #4] - bl ov97_02239A74 + bl BN_mod_exp_mont add sp, sp, #0xc ldmia sp!, {lr} bx lr _0223B5A8: ldr ip, [sp, #0x10] str ip, [sp] - bl ov97_0223A278 + bl BN_mod_exp_recp add sp, sp, #0xc ldmia sp!, {lr} bx lr - arm_func_end ov97_0223B564 + arm_func_end BN_mod_exp - arm_func_start ov97_0223B5C0 -ov97_0223B5C0: ; 0x0223B5C0 + arm_func_start BN_mod +BN_mod: ; 0x0223B5C0 stmdb sp!, {lr} sub sp, sp, #4 mov lr, r1 @@ -2415,14 +2377,14 @@ ov97_0223B5C0: ; 0x0223B5C0 mov r2, lr mov r3, ip mov r0, #0 - bl ov97_0223B5F4 + bl BN_div add sp, sp, #4 ldmia sp!, {lr} bx lr - arm_func_end ov97_0223B5C0 + arm_func_end BN_mod - arm_func_start ov97_0223B5F4 -ov97_0223B5F4: ; 0x0223B5F4 + arm_func_start BN_div +BN_div: ; 0x0223B5F4 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0x4c mov r6, r3 @@ -2447,14 +2409,14 @@ _0223B634: _0223B644: ldr r0, [sp, #4] mov r1, r6 - bl ov97_0223CF44 + bl BN_ucmp cmp r0, #0 bge _0223B6A4 ldr r0, [sp] cmp r0, #0 beq _0223B680 ldr r1, [sp, #4] - bl ov97_0223D1D0 + bl BN_copy cmp r0, #0 addeq sp, sp, #0x4c moveq r0, #0 @@ -2465,7 +2427,7 @@ _0223B680: beq _0223B694 mov r0, r8 mov r1, #0 - bl ov97_0223D128 + bl BN_set_word _0223B694: add sp, sp, #0x4c mov r0, #1 @@ -2490,7 +2452,7 @@ _0223B6A4: addeq r1, r5, #3 mlaeq r8, r1, r2, r0 mov r0, r6 - bl ov97_0223D534 + bl BN_num_bits mov r1, r0, lsr #0x1f rsb r0, r1, r0, lsl #27 add r0, r1, r0, ror #27 @@ -2499,7 +2461,7 @@ _0223B6A4: ldr r0, [sp, #0x1c] ldr r2, [sp, #8] mov r1, r6 - bl ov97_0223C5FC + bl BN_lshift cmp r0, #0 addeq sp, sp, #0x4c moveq r0, #0 @@ -2512,7 +2474,7 @@ _0223B6A4: mov r4, #0 add r2, r2, #0x20 str r4, [r3, #0xc] - bl ov97_0223C5FC + bl BN_lshift cmp r0, #0 addeq sp, sp, #0x4c moveq r0, r4 @@ -2530,7 +2492,7 @@ _0223B6A4: add r0, sp, #0x38 sub r1, r4, r1 str r1, [sp, #0x10] - bl ov97_0223D3D8 + bl BN_init ldr r0, [sp, #0x18] ldr r2, [r0, #0] ldr r0, [sp, #0x28] @@ -2565,7 +2527,7 @@ _0223B6A4: movle r0, r8 ble _0223B81C mov r0, r8 - bl ov97_0223D268 + bl bn_expand2 _0223B81C: cmp r0, #0 beq _0223BB80 @@ -2589,19 +2551,19 @@ _0223B81C: ldrle r0, [sp, #0x14] ble _0223B878 ldr r0, [sp, #0x14] - bl ov97_0223D268 + bl bn_expand2 _0223B878: cmp r0, #0 beq _0223BB80 ldr r1, [sp, #0x1c] add r0, sp, #0x38 - bl ov97_0223CF44 + bl BN_ucmp cmp r0, #0 blt _0223B8CC add r0, sp, #0x38 ldr r2, [sp, #0x1c] mov r1, r0 - bl ov97_0223BEFC + bl BN_usub cmp r0, #0 beq _0223BB80 ldr r0, [sp, #0x20] @@ -2654,7 +2616,7 @@ _0223B92C: ldr r2, [sp, #0x24] mov r0, fp mov r1, r5 - bl ov97_0223A60C + bl bn_div_words mov r6, r0 _0223B970: ldr r0, [sp, #0x2c] @@ -2709,7 +2671,7 @@ _0223BA20: ldr r1, [r1, #0] ldr r2, [sp, #0x28] mov r3, r6 - bl ov97_0223CAB8 + bl bn_mul_words ldr r1, [sp, #0x14] ldr r2, [sp, #0x28] ldr r3, [r1, #0] @@ -2735,7 +2697,7 @@ _0223BA80: add r0, sp, #0x38 mov r1, r0 ldr r5, [sp, #0x3c] - bl ov97_0223BDB8 + bl BN_sub ldr r0, [sp, #0x18] ldr r1, [r0, #4] ldr r0, [sp, #0x3c] @@ -2751,7 +2713,7 @@ _0223BA80: mov r1, r0 sub r6, r6, #1 ldr r5, [sp, #0x3c] - bl ov97_0223C17C + bl BN_add ldr r0, [sp, #0x18] ldr r1, [r0, #4] ldr r0, [sp, #0x3c] @@ -2774,7 +2736,7 @@ _0223BAF8: blt _0223B92C _0223BB28: ldr r0, [sp, #0x18] - bl ov97_0223D3EC + bl bn_fix_top ldr r0, [sp] cmp r0, #0 beq _0223BB70 @@ -2783,7 +2745,7 @@ _0223BB28: ldr r1, [sp, #0x18] add r2, r2, #0x20 ldr r4, [r3, #0xc] - bl ov97_0223C4E0 + bl BN_rshift cmp r0, #0 addeq sp, sp, #0x4c moveq r0, #0 @@ -2803,10 +2765,10 @@ _0223BB80: bx lr ; .align 2, 0 _0223BB90: .word 0x0000FFFF - arm_func_end ov97_0223B5F4 + arm_func_end BN_div - arm_func_start ov97_0223BB94 -ov97_0223BB94: ; 0x0223BB94 + arm_func_start bn_mul_normal +bn_mul_normal: ; 0x0223BB94 stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #4 ldr r5, [sp, #0x20] @@ -2828,7 +2790,7 @@ _0223BBD0: mov r1, r8 mov r2, r7 add r4, sb, r7, lsl #2 - bl ov97_0223CAB8 + bl bn_mul_words str r0, [sb, r7, lsl #2] _0223BBEC: sub r0, r5, #1 @@ -2840,7 +2802,7 @@ _0223BBEC: mov r1, r8 mov r2, r7 add r0, sb, #4 - bl ov97_0223CC58 + bl bn_mul_add_words sub r1, r5, #2 cmp r1, #0 addle sp, sp, #4 @@ -2851,7 +2813,7 @@ _0223BBEC: mov r1, r8 mov r2, r7 add r0, sb, #8 - bl ov97_0223CC58 + bl bn_mul_add_words sub r1, r5, #3 cmp r1, #0 addle sp, sp, #4 @@ -2862,7 +2824,7 @@ _0223BBEC: mov r1, r8 mov r2, r7 add r0, sb, #0xc - bl ov97_0223CC58 + bl bn_mul_add_words sub r5, r5, #4 cmp r5, #0 addle sp, sp, #4 @@ -2873,23 +2835,19 @@ _0223BBEC: mov r1, r8 mov r2, r7 add r0, sb, #0x10 - bl ov97_0223CC58 + bl bn_mul_add_words str r0, [r4, #0x10] add r4, r4, #0x10 add sb, sb, #0x10 add r6, r6, #0x10 b _0223BBEC - arm_func_end ov97_0223BB94 - - arm_func_start ov97_0223BCAC -ov97_0223BCAC: ; 0x0223BCAC add sp, sp, #4 ldmia sp!, {r4, r5, r6, r7, r8, sb, lr} bx lr - arm_func_end ov97_0223BCAC + arm_func_end bn_mul_normal - arm_func_start ov97_0223BCB8 -ov97_0223BCB8: ; 0x0223BCB8 + arm_func_start BN_mul +BN_mul: ; 0x0223BCB8 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #4 mov sb, r1 @@ -2904,7 +2862,7 @@ ov97_0223BCB8: ; 0x0223BCB8 _0223BCE4: mov r0, sl mov r1, #0 - bl ov97_0223D128 + bl BN_set_word add sp, sp, #4 mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} @@ -2934,7 +2892,7 @@ _0223BD3C: ble _0223BD58 mov r0, r4 mov r1, r7 - bl ov97_0223D268 + bl bn_expand2 _0223BD58: cmp r0, #0 addeq sp, sp, #4 @@ -2947,24 +2905,24 @@ _0223BD58: ldr r1, [sb] ldr r3, [r8] mov r2, r6 - bl ov97_0223BB94 + bl bn_mul_normal mov r0, r4 str fp, [sl, #0xc] - bl ov97_0223D3EC + bl bn_fix_top cmp sl, r4 beq _0223BDA8 mov r0, sl mov r1, r4 - bl ov97_0223D1D0 + bl BN_copy _0223BDA8: mov r0, #1 add sp, sp, #4 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr - arm_func_end ov97_0223BCB8 + arm_func_end BN_mul - arm_func_start ov97_0223BDB8 -ov97_0223BDB8: ; 0x0223BDB8 + arm_func_start BN_sub +BN_sub: ; 0x0223BDB8 stmfd sp!, {r4, r5, r6, r7, lr} sub sp, sp, #4 mov r6, r1 @@ -2993,7 +2951,7 @@ _0223BE0C: mov r0, r7 mov r1, r6 mov r2, r5 - bl ov97_0223C060 + bl BN_uadd cmp r0, #0 moveq r0, #0 add sp, sp, #4 @@ -3011,7 +2969,7 @@ _0223BE40: movle r0, r7 ble _0223BE68 mov r0, r7 - bl ov97_0223D268 + bl bn_expand2 _0223BE68: cmp r0, #0 addeq sp, sp, #4 @@ -3020,13 +2978,13 @@ _0223BE68: bxeq lr mov r0, r6 mov r1, r5 - bl ov97_0223CF44 + bl BN_ucmp cmp r0, #0 bge _0223BEC0 mov r0, r7 mov r1, r5 mov r2, r6 - bl ov97_0223BEFC + bl BN_usub cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -3039,7 +2997,7 @@ _0223BEC0: mov r0, r7 mov r1, r6 mov r2, r5 - bl ov97_0223BEFC + bl BN_usub cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -3052,10 +3010,10 @@ _0223BEEC: add sp, sp, #4 ldmia sp!, {r4, r5, r6, r7, lr} bx lr - arm_func_end ov97_0223BDB8 + arm_func_end BN_sub - arm_func_start ov97_0223BEFC -ov97_0223BEFC: ; 0x0223BEFC + arm_func_start BN_usub +BN_usub: ; 0x0223BEFC stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r8, r1 mov r7, r2 @@ -3070,7 +3028,7 @@ ov97_0223BEFC: ; 0x0223BEFC cmp r6, r1 ble _0223BF38 mov r1, r6 - bl ov97_0223D268 + bl bn_expand2 _0223BF38: cmp r0, #0 moveq r0, #0 @@ -3150,14 +3108,14 @@ _0223BFF0: _0223C048: mov r0, r4 str r6, [r4, #4] - bl ov97_0223D3EC + bl bn_fix_top mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, lr} bx lr - arm_func_end ov97_0223BEFC + arm_func_end BN_usub - arm_func_start ov97_0223C060 -ov97_0223C060: ; 0x0223C060 + arm_func_start BN_uadd +BN_uadd: ; 0x0223C060 stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #4 mov r4, r1 @@ -3177,7 +3135,7 @@ ov97_0223C060: ; 0x0223C060 movle r0, sb ble _0223C0B0 mov r0, sb - bl ov97_0223D268 + bl bn_expand2 _0223C0B0: cmp r0, #0 addeq sp, sp, #4 @@ -3191,7 +3149,7 @@ _0223C0B0: mov r0, r4 mov r1, r5 mov r3, r7 - bl ov97_0223C814 + bl bn_add_words cmp r0, #0 add r4, r4, r7, lsl #2 add r5, r5, r7, lsl #2 @@ -3235,10 +3193,10 @@ _0223C16C: add sp, sp, #4 ldmia sp!, {r4, r5, r6, r7, r8, sb, lr} bx lr - arm_func_end ov97_0223C060 + arm_func_end BN_uadd - arm_func_start ov97_0223C17C -ov97_0223C17C: ; 0x0223C17C + arm_func_start BN_add +BN_add: ; 0x0223C17C stmfd sp!, {r4, r5, r6, lr} mov r5, r1 mov r4, r2 @@ -3253,13 +3211,13 @@ ov97_0223C17C: ; 0x0223C17C movne r4, r0 mov r0, r5 mov r1, r4 - bl ov97_0223CF44 + bl BN_ucmp cmp r0, #0 bge _0223C1EC mov r0, r6 mov r1, r4 mov r2, r5 - bl ov97_0223BEFC + bl BN_usub cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, lr} @@ -3271,7 +3229,7 @@ _0223C1EC: mov r0, r6 mov r1, r5 mov r2, r4 - bl ov97_0223BEFC + bl BN_usub cmp r0, #0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, lr} @@ -3291,16 +3249,16 @@ _0223C220: mov r0, r6 mov r1, r5 mov r2, r4 - bl ov97_0223C060 + bl BN_uadd cmp r0, #0 moveq r0, #0 movne r0, #1 ldmia sp!, {r4, r5, r6, lr} bx lr - arm_func_end ov97_0223C17C + arm_func_end BN_add - arm_func_start ov97_0223C258 -ov97_0223C258: ; 0x0223C258 + arm_func_start BN_sub_word +BN_sub_word: ; 0x0223C258 stmfd sp!, {r4, r5, lr} sub sp, sp, #4 movs r4, r1 @@ -3314,7 +3272,7 @@ ov97_0223C258: ; 0x0223C258 beq _0223C2A4 mov r2, #0 str r2, [r5, #0xc] - bl ov97_0223C3B8 + bl BN_add_word mov r1, #1 add sp, sp, #4 str r1, [r5, #0xc] @@ -3330,7 +3288,7 @@ _0223C2A4: cmp r1, #1 bge _0223C2CC mov r1, #1 - bl ov97_0223D268 + bl bn_expand2 _0223C2CC: cmp r0, #0 addeq sp, sp, #4 @@ -3397,10 +3355,10 @@ _0223C3A8: add sp, sp, #4 ldmia sp!, {r4, r5, lr} bx lr - arm_func_end ov97_0223C258 + arm_func_end BN_sub_word - arm_func_start ov97_0223C3B8 -ov97_0223C3B8: ; 0x0223C3B8 + arm_func_start BN_add_word +BN_add_word: ; 0x0223C3B8 stmfd sp!, {r4, r5, lr} sub sp, sp, #4 movs r4, r1 @@ -3417,7 +3375,7 @@ ov97_0223C3B8: ; 0x0223C3B8 ble _0223C410 mov r2, #0 str r2, [r5, #0xc] - bl ov97_0223C258 + bl BN_sub_word mov r1, #1 add sp, sp, #4 str r1, [r5, #0xc] @@ -3451,7 +3409,7 @@ _0223C460: add r1, r1, #1 cmp r1, r2 ble _0223C478 - bl ov97_0223D268 + bl bn_expand2 _0223C478: cmp r0, #0 addeq sp, sp, #4 @@ -3480,10 +3438,10 @@ _0223C4A0: add sp, sp, #4 ldmia sp!, {r4, r5, lr} bx lr - arm_func_end ov97_0223C3B8 + arm_func_end BN_add_word - arm_func_start ov97_0223C4E0 -ov97_0223C4E0: ; 0x0223C4E0 + arm_func_start BN_rshift +BN_rshift: ; 0x0223C4E0 stmfd sp!, {r4, r5, r6, r7, r8, lr} mov r7, r1 mov r1, r2, asr #4 @@ -3498,7 +3456,7 @@ ov97_0223C4E0: ; 0x0223C4E0 rsb r5, r4, #0x20 ble _0223C528 mov r1, #0 - bl ov97_0223D128 + bl BN_set_word mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, lr} bx lr @@ -3510,7 +3468,7 @@ _0223C528: add r1, r1, #2 cmp r1, r2 ble _0223C548 - bl ov97_0223D268 + bl bn_expand2 _0223C548: cmp r0, #0 moveq r0, #0 @@ -3559,14 +3517,14 @@ _0223C5D8: str r1, [r0, #4] _0223C5E8: mov r0, r8 - bl ov97_0223D3EC + bl bn_fix_top mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, lr} bx lr - arm_func_end ov97_0223C4E0 + arm_func_end BN_rshift - arm_func_start ov97_0223C5FC -ov97_0223C5FC: ; 0x0223C5FC + arm_func_start BN_lshift +BN_lshift: ; 0x0223C5FC stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, lr} mov r4, r1 mov r7, r2 @@ -3580,7 +3538,7 @@ ov97_0223C5FC: ; 0x0223C5FC cmp r1, r3 mov r6, r2, asr #5 ble _0223C634 - bl ov97_0223D268 + bl bn_expand2 _0223C634: cmp r0, #0 moveq r0, #0 @@ -3633,14 +3591,14 @@ _0223C6D0: add r1, r1, r6 add r1, r1, #1 str r1, [r5, #4] - bl ov97_0223D3EC + bl bn_fix_top mov r0, #1 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, lr} bx lr - arm_func_end ov97_0223C5FC + arm_func_end BN_lshift - arm_func_start ov97_0223C700 -ov97_0223C700: ; 0x0223C700 + arm_func_start bn_sub_words +bn_sub_words: ; 0x0223C700 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, lr} cmp r3, #0 movle r0, #0 @@ -3716,10 +3674,10 @@ _0223C808: mov r0, r6 ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, lr} bx lr - arm_func_end ov97_0223C700 + arm_func_end bn_sub_words - arm_func_start ov97_0223C814 -ov97_0223C814: ; 0x0223C814 + arm_func_start bn_add_words +bn_add_words: ; 0x0223C814 stmfd sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} sub sp, sp, #0xc cmp r3, #0 @@ -3806,10 +3764,10 @@ _0223C954: add sp, sp, #0xc ldmia sp!, {r4, r5, r6, r7, r8, sb, sl, fp, lr} bx lr - arm_func_end ov97_0223C814 + arm_func_end bn_add_words - arm_func_start ov97_0223C964 -ov97_0223C964: ; 0x0223C964 + arm_func_start bn_sqr_words +bn_sqr_words: ; 0x0223C964 stmfd sp!, {r4, r5, r6, r7, r8, lr} cmp r2, #0 ldmleia sp!, {r4, r5, r6, r7, r8, lr} @@ -3897,10 +3855,10 @@ _0223C980: bx lr ; .align 2, 0 _0223CAB4: .word 0x0000FFFF - arm_func_end ov97_0223C964 + arm_func_end bn_sqr_words - arm_func_start ov97_0223CAB8 -ov97_0223CAB8: ; 0x0223CAB8 + arm_func_start bn_mul_words +bn_mul_words: ; 0x0223CAB8 stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #4 cmp r2, #0 @@ -4008,10 +3966,10 @@ _0223CC44: bx lr ; .align 2, 0 _0223CC54: .word 0x0000FFFF - arm_func_end ov97_0223CAB8 + arm_func_end bn_mul_words - arm_func_start ov97_0223CC58 -ov97_0223CC58: ; 0x0223CC58 + arm_func_start bn_mul_add_words +bn_mul_add_words: ; 0x0223CC58 stmfd sp!, {r4, r5, r6, r7, r8, sb, lr} sub sp, sp, #4 cmp r2, #0 @@ -4135,10 +4093,10 @@ _0223CE24: bx lr ; .align 2, 0 _0223CE34: .word 0x0000FFFF - arm_func_end ov97_0223CC58 + arm_func_end bn_mul_add_words - arm_func_start ov97_0223CE38 -ov97_0223CE38: ; 0x0223CE38 + arm_func_start BN_is_bit_set +BN_is_bit_set: ; 0x0223CE38 stmdb sp!, {lr} sub sp, sp, #4 cmp r1, #0 @@ -4167,10 +4125,10 @@ ov97_0223CE38: ; 0x0223CE38 add sp, sp, #4 ldmia sp!, {lr} bx lr - arm_func_end ov97_0223CE38 + arm_func_end BN_is_bit_set - arm_func_start ov97_0223CEA8 -ov97_0223CEA8: ; 0x0223CEA8 + arm_func_start BN_set_bit +BN_set_bit: ; 0x0223CEA8 stmfd sp!, {r4, r5, r6, lr} mov r6, r0 mov r2, r1, asr #4 @@ -4186,7 +4144,7 @@ ov97_0223CEA8: ; 0x0223CEA8 add r1, r5, #1 cmp r1, r2 ble _0223CEE8 - bl ov97_0223D268 + bl bn_expand2 _0223CEE8: cmp r0, #0 moveq r0, #0 @@ -4214,10 +4172,10 @@ _0223CF28: str r1, [r2, r5, lsl #2] ldmia sp!, {r4, r5, r6, lr} bx lr - arm_func_end ov97_0223CEA8 + arm_func_end BN_set_bit - arm_func_start ov97_0223CF44 -ov97_0223CF44: ; 0x0223CF44 + arm_func_start BN_ucmp +BN_ucmp: ; 0x0223CF44 ldr r3, [r0, #4] ldr r2, [r1, #4] subs r2, r3, r2 @@ -4242,15 +4200,15 @@ _0223CF88: _0223CF90: mov r0, #0 bx lr - arm_func_end ov97_0223CF44 + arm_func_end BN_ucmp - arm_func_start ov97_0223CF98 -ov97_0223CF98: ; 0x0223CF98 + arm_func_start BN_bn2bin +BN_bn2bin: ; 0x0223CF98 stmfd sp!, {r4, r5, lr} sub sp, sp, #4 mov r5, r0 mov r4, r1 - bl ov97_0223D534 + bl BN_num_bits add r1, r0, #7 mov r0, r1, asr #2 add r0, r1, r0, lsr #29 @@ -4278,17 +4236,17 @@ _0223CFD0: add sp, sp, #4 ldmia sp!, {r4, r5, lr} bx lr - arm_func_end ov97_0223CF98 + arm_func_end BN_bn2bin - arm_func_start ov97_0223D014 -ov97_0223D014: ; 0x0223D014 + arm_func_start BN_bin2bn +BN_bin2bn: ; 0x0223D014 stmfd sp!, {r4, r5, r6, r7, lr} sub sp, sp, #4 movs r5, r2 mov r7, r0 mov r6, r1 bne _0223D034 - bl ov97_0223D38C + bl BN_new mov r5, r0 _0223D034: cmp r5, #0 @@ -4318,7 +4276,7 @@ _0223D034: mov r1, r0, asr #5 mov r0, r5 add r1, r1, #1 - bl ov97_0223D268 + bl bn_expand2 _0223D0A4: cmp r0, #0 addeq sp, sp, #4 @@ -4350,15 +4308,15 @@ _0223D0E0: bne _0223D0E0 _0223D110: mov r0, r5 - bl ov97_0223D3EC + bl bn_fix_top mov r0, r5 add sp, sp, #4 ldmia sp!, {r4, r5, r6, r7, lr} bx lr - arm_func_end ov97_0223D014 + arm_func_end BN_bin2bn - arm_func_start ov97_0223D128 -ov97_0223D128: ; 0x0223D128 + arm_func_start BN_set_word +BN_set_word: ; 0x0223D128 stmfd sp!, {r4, r5, lr} sub sp, sp, #4 mov r4, r0 @@ -4367,7 +4325,7 @@ ov97_0223D128: ; 0x0223D128 cmp r2, #1 bge _0223D14C mov r1, #2 - bl ov97_0223D268 + bl bn_expand2 _0223D14C: cmp r0, #0 addeq sp, sp, #4 @@ -4388,10 +4346,10 @@ _0223D14C: add sp, sp, #4 ldmia sp!, {r4, r5, lr} bx lr - arm_func_end ov97_0223D128 + arm_func_end BN_set_word - arm_func_start ov97_0223D198 -ov97_0223D198: ; 0x0223D198 + arm_func_start BN_clear +BN_clear: ; 0x0223D198 stmfd sp!, {r4, lr} mov r4, r0 ldr r0, [r4, #0] @@ -4407,10 +4365,10 @@ _0223D1BC: str r0, [r4, #0xc] ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223D198 + arm_func_end BN_clear - arm_func_start ov97_0223D1D0 -ov97_0223D1D0: ; 0x0223D1D0 + arm_func_start BN_copy +BN_copy: ; 0x0223D1D0 stmfd sp!, {r4, r5, lr} sub sp, sp, #4 mov r5, r0 @@ -4423,7 +4381,7 @@ ov97_0223D1D0: ; 0x0223D1D0 ldr r2, [r5, #8] cmp r1, r2 ble _0223D204 - bl ov97_0223D268 + bl bn_expand2 _0223D204: cmp r0, #0 addeq sp, sp, #4 @@ -4451,10 +4409,10 @@ _0223D250: add sp, sp, #4 ldmia sp!, {r4, r5, lr} bx lr - arm_func_end ov97_0223D1D0 + arm_func_end BN_copy - arm_func_start ov97_0223D268 -ov97_0223D268: ; 0x0223D268 + arm_func_start bn_expand2 +bn_expand2: ; 0x0223D268 stmfd sp!, {r4, r5, r6, lr} mov r5, r0 ldr r0, [r5, #8] @@ -4468,7 +4426,7 @@ ov97_0223D268: ; 0x0223D268 bxne lr add r0, r4, #1 mov r0, r0, lsl #2 - bl ov97_0223D62C + bl CRYPTOi_MyAlloc movs r6, r0 moveq r0, #0 ldmeqia sp!, {r4, r5, r6, lr} @@ -4481,7 +4439,7 @@ ov97_0223D268: ; 0x0223D268 mov r2, r2, lsl #2 bl MI_CpuCopy8 ldr r0, [r5, #0] - bl ov97_0223D5E4 + bl CRYPTOi_MyFree _0223D2D4: str r6, [r5, #0] str r4, [r5, #8] @@ -4489,17 +4447,17 @@ _0223D2DC: mov r0, r5 ldmia sp!, {r4, r5, r6, lr} bx lr - arm_func_end ov97_0223D268 + arm_func_end bn_expand2 - arm_func_start ov97_0223D2E8 -ov97_0223D2E8: ; 0x0223D2E8 + arm_func_start BN_CTX_free +BN_CTX_free: ; 0x0223D2E8 stmfd sp!, {r4, r5, r6, lr} mov r6, r0 add r4, r6, #4 mov r5, #0 _0223D2F8: mov r0, r4 - bl ov97_0223D510 + bl BN_clear_free add r5, r5, #1 cmp r5, #0xc add r4, r4, #0x14 @@ -4509,13 +4467,13 @@ _0223D2F8: ldmeqia sp!, {r4, r5, r6, lr} bxeq lr mov r0, r6 - bl ov97_0223D5E4 + bl CRYPTOi_MyFree ldmia sp!, {r4, r5, r6, lr} bx lr - arm_func_end ov97_0223D2E8 + arm_func_end BN_CTX_free - arm_func_start ov97_0223D330 -ov97_0223D330: ; 0x0223D330 + arm_func_start BN_CTX_init +BN_CTX_init: ; 0x0223D330 stmfd sp!, {r4, lr} mov r1, #0 mov r2, #0x110 @@ -4526,31 +4484,31 @@ ov97_0223D330: ; 0x0223D330 str r0, [r4, #0x108] ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223D330 + arm_func_end BN_CTX_init - arm_func_start ov97_0223D358 -ov97_0223D358: ; 0x0223D358 + arm_func_start BN_CTX_new +BN_CTX_new: ; 0x0223D358 stmfd sp!, {r4, lr} mov r0, #0x110 - bl ov97_0223D62C + bl CRYPTOi_MyAlloc movs r4, r0 moveq r0, #0 ldmeqia sp!, {r4, lr} bxeq lr - bl ov97_0223D330 + bl BN_CTX_init mov r1, #1 mov r0, r4 str r1, [r4, #0x108] ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223D358 + arm_func_end BN_CTX_new - arm_func_start ov97_0223D38C -ov97_0223D38C: ; 0x0223D38C + arm_func_start BN_new +BN_new: ; 0x0223D38C stmdb sp!, {lr} sub sp, sp, #4 mov r0, #0x14 - bl ov97_0223D62C + bl CRYPTOi_MyAlloc cmp r0, #0 addeq sp, sp, #4 moveq r0, #0 @@ -4566,20 +4524,20 @@ ov97_0223D38C: ; 0x0223D38C add sp, sp, #4 ldmia sp!, {lr} bx lr - arm_func_end ov97_0223D38C + arm_func_end BN_new - arm_func_start ov97_0223D3D8 -ov97_0223D3D8: ; 0x0223D3D8 + arm_func_start BN_init +BN_init: ; 0x0223D3D8 ldr ip, _0223D3E8 ; =MI_CpuFill8 mov r1, #0 mov r2, #0x14 bx ip ; .align 2, 0 _0223D3E8: .word MI_CpuFill8 - arm_func_end ov97_0223D3D8 + arm_func_end BN_init - arm_func_start ov97_0223D3EC -ov97_0223D3EC: ; 0x0223D3EC + arm_func_start bn_fix_top +bn_fix_top: ; 0x0223D3EC ldr r3, [r0, #4] cmp r3, #0 bxle lr @@ -4600,10 +4558,10 @@ _0223D410: cmp r1, #0 bgt _0223D410 bx lr - arm_func_end ov97_0223D3EC + arm_func_end bn_fix_top - arm_func_start ov97_0223D438 -ov97_0223D438: ; 0x0223D438 + arm_func_start bn_zexpand +bn_zexpand: ; 0x0223D438 stmfd sp!, {r4, r5, lr} sub sp, sp, #4 mov r5, r0 @@ -4616,7 +4574,7 @@ ov97_0223D438: ; 0x0223D438 ldr r2, [r5, #8] cmp r4, r2 ble _0223D46C - bl ov97_0223D268 + bl bn_expand2 _0223D46C: ldr r0, [r5, #0] cmp r0, #0 @@ -4638,10 +4596,10 @@ _0223D498: add sp, sp, #4 ldmia sp!, {r4, r5, lr} bx lr - arm_func_end ov97_0223D438 + arm_func_end bn_zexpand - arm_func_start ov97_0223D4B8 -ov97_0223D4B8: ; 0x0223D4B8 + arm_func_start BN_free +BN_free: ; 0x0223D4B8 stmfd sp!, {r4, lr} movs r4, r0 ldmeqia sp!, {r4, lr} @@ -4652,7 +4610,7 @@ ov97_0223D4B8: ; 0x0223D4B8 ldr r1, [r4, #0x10] ands r1, r1, #2 bne _0223D4E4 - bl ov97_0223D5E4 + bl CRYPTOi_MyFree _0223D4E4: ldr r0, [r4, #0x10] orr r0, r0, #0x8000 @@ -4662,26 +4620,26 @@ _0223D4E4: ldmeqia sp!, {r4, lr} bxeq lr mov r0, r4 - bl ov97_0223D5E4 + bl CRYPTOi_MyFree ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223D4B8 + arm_func_end BN_free - arm_func_start ov97_0223D510 -ov97_0223D510: ; 0x0223D510 + arm_func_start BN_clear_free +BN_clear_free: ; 0x0223D510 stmfd sp!, {r4, lr} movs r4, r0 ldmeqia sp!, {r4, lr} bxeq lr - bl ov97_0223D198 + bl BN_clear mov r0, r4 - bl ov97_0223D4B8 + bl BN_free ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223D510 + arm_func_end BN_clear_free - arm_func_start ov97_0223D534 -ov97_0223D534: ; 0x0223D534 + arm_func_start BN_num_bits +BN_num_bits: ; 0x0223D534 stmfd sp!, {r4, lr} ldr r1, [r0, #4] cmp r1, #0 @@ -4691,14 +4649,14 @@ ov97_0223D534: ; 0x0223D534 ldr r0, [r0, #0] sub r4, r1, #1 ldr r0, [r0, r4, lsl #2] - bl ov97_0223D568 + bl BN_num_bits_word add r0, r0, r4, lsl #5 ldmia sp!, {r4, lr} bx lr - arm_func_end ov97_0223D534 + arm_func_end BN_num_bits - arm_func_start ov97_0223D568 -ov97_0223D568: ; 0x0223D568 + arm_func_start BN_num_bits_word +BN_num_bits_word: ; 0x0223D568 mov r1, #0x10000 rsb r1, r1, #0 ands r1, r0, r1 @@ -4726,67 +4684,8 @@ _0223D594: bx lr ; .align 2, 0 _0223D5C4: .word 0x0223DEE8 - arm_func_end ov97_0223D568 + arm_func_end BN_num_bits_word - arm_func_start CRYPTO_SetAllocator -CRYPTO_SetAllocator: ; 0x0223D5C8 - ldr r3, _0223D5DC ; =0x02240AF4 - ldr r2, _0223D5E0 ; =0x02240AF8 - str r0, [r3, #0] - str r1, [r2, #0] - bx lr - ; .align 2, 0 -_0223D5DC: .word 0x02240AF4 -_0223D5E0: .word 0x02240AF8 - arm_func_end CRYPTO_SetAllocator - - arm_func_start ov97_0223D5E4 -ov97_0223D5E4: ; 0x0223D5E4 - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r1, _0223D628 ; =0x02240AF8 - mov r2, r0 - ldr r1, [r1, #0] - cmp r1, #0 - beq _0223D610 - blx r1 - add sp, sp, #4 - ldmia sp!, {lr} - bx lr -_0223D610: - mov r0, #0 - mvn r1, #0 - bl OS_FreeToHeap - add sp, sp, #4 - ldmia sp!, {lr} - bx lr - ; .align 2, 0 -_0223D628: .word 0x02240AF8 - arm_func_end ov97_0223D5E4 - - arm_func_start ov97_0223D62C -ov97_0223D62C: ; 0x0223D62C - stmdb sp!, {lr} - sub sp, sp, #4 - ldr r1, _0223D670 ; =0x02240AF4 - mov r2, r0 - ldr r1, [r1, #0] - cmp r1, #0 - beq _0223D658 - blx r1 - add sp, sp, #4 - ldmia sp!, {lr} - bx lr -_0223D658: - mov r0, #0 - mvn r1, #0 - bl OS_AllocFromHeap - add sp, sp, #4 - ldmia sp!, {lr} - bx lr - ; .align 2, 0 -_0223D670: .word 0x02240AF4 - arm_func_end ov97_0223D62C .rodata @@ -4815,5 +4714,4 @@ Unk_ov97_0223F158: ; 0x0223F158 .word 0x0223DF30 .word 0x0223DF28 .word 0x0223DF18 - .word 0x0223DEF8 - + .word 0x0223DEF8 \ No newline at end of file diff --git a/lib/external/libcrypto/asm/util.s b/lib/external/libcrypto/asm/util.s new file mode 100644 index 0000000000..bfb49b7d32 --- /dev/null +++ b/lib/external/libcrypto/asm/util.s @@ -0,0 +1,66 @@ + .include "macros/function.inc" + .include "include/util.inc" + + + .text + + + arm_func_start CRYPTO_SetAllocator +CRYPTO_SetAllocator: ; 0x0223D5C8 + ldr r3, _0223D5DC ; =0x02240AF4 + ldr r2, _0223D5E0 ; =0x02240AF8 + str r0, [r3, #0] + str r1, [r2, #0] + bx lr + ; .align 2, 0 +_0223D5DC: .word 0x02240AF4 +_0223D5E0: .word 0x02240AF8 + arm_func_end CRYPTO_SetAllocator + + arm_func_start CRYPTOi_MyFree +CRYPTOi_MyFree: ; 0x0223D5E4 + stmdb sp!, {lr} + sub sp, sp, #4 + ldr r1, _0223D628 ; =0x02240AF8 + mov r2, r0 + ldr r1, [r1, #0] + cmp r1, #0 + beq _0223D610 + blx r1 + add sp, sp, #4 + ldmia sp!, {lr} + bx lr +_0223D610: + mov r0, #0 + mvn r1, #0 + bl OS_FreeToHeap + add sp, sp, #4 + ldmia sp!, {lr} + bx lr + ; .align 2, 0 +_0223D628: .word 0x02240AF8 + arm_func_end CRYPTOi_MyFree + + arm_func_start CRYPTOi_MyAlloc +CRYPTOi_MyAlloc: ; 0x0223D62C + stmdb sp!, {lr} + sub sp, sp, #4 + ldr r1, _0223D670 ; =0x02240AF4 + mov r2, r0 + ldr r1, [r1, #0] + cmp r1, #0 + beq _0223D658 + blx r1 + add sp, sp, #4 + ldmia sp!, {lr} + bx lr +_0223D658: + mov r0, #0 + mvn r1, #0 + bl OS_AllocFromHeap + add sp, sp, #4 + ldmia sp!, {lr} + bx lr + ; .align 2, 0 +_0223D670: .word 0x02240AF4 + arm_func_end CRYPTOi_MyAlloc diff --git a/include/library/crypto.h b/lib/external/libcrypto/include/crypto.h similarity index 62% rename from include/library/crypto.h rename to lib/external/libcrypto/include/crypto.h index f22f12b156..f7a9dbf43d 100644 --- a/include/library/crypto.h +++ b/lib/external/libcrypto/include/crypto.h @@ -5,9 +5,9 @@ extern "C" { #endif -#include -#include -#include +#include +#include +#include #ifdef __cplusplus } diff --git a/include/library/crypto/rc4.h b/lib/external/libcrypto/include/crypto/rc4.h similarity index 100% rename from include/library/crypto/rc4.h rename to lib/external/libcrypto/include/crypto/rc4.h diff --git a/include/library/crypto/sign.h b/lib/external/libcrypto/include/crypto/sign.h similarity index 100% rename from include/library/crypto/sign.h rename to lib/external/libcrypto/include/crypto/sign.h diff --git a/include/library/crypto/util.h b/lib/external/libcrypto/include/crypto/util.h similarity index 100% rename from include/library/crypto/util.h rename to lib/external/libcrypto/include/crypto/util.h diff --git a/lib/external/libcrypto/meson.build b/lib/external/libcrypto/meson.build new file mode 100644 index 0000000000..bfbb03510b --- /dev/null +++ b/lib/external/libcrypto/meson.build @@ -0,0 +1,37 @@ +project('libcrypto', ['c', 'nasm']) + +asm_args = [ + '-proc', 'arm5TE', + '-16', + '-gccinc' +] + +public_includes = include_directories('include') + +libcrypto_static_srcs = files( + 'asm/rc4.s', + 'asm/rc4-arm4cw.s' +) + +libcrypto_ov97_srcs = files( + 'asm/rc4s-arm4cw.s', + 'asm/sign.s', + 'asm/util.s' +) + +libcrypto_static = static_library('crypto_static', + sources: libcrypto_static_srcs, + nasm_args: asm_args, + pic: false +) + +libcrypto_ov97 = static_library('crypto_ov97', + sources: libcrypto_ov97_srcs, + nasm_args: asm_args, + pic: false +) + +libcrypto_dep = declare_dependency( + include_directories: public_includes, + link_with: [libcrypto_static, libcrypto_ov97] +) \ No newline at end of file diff --git a/lib/syscall/asm/_secure.s b/lib/external/libsyscall/asm/_secure.s similarity index 100% rename from lib/syscall/asm/_secure.s rename to lib/external/libsyscall/asm/_secure.s diff --git a/lib/syscall/asm/macros/function.inc b/lib/external/libsyscall/asm/macros/function.inc similarity index 100% rename from lib/syscall/asm/macros/function.inc rename to lib/external/libsyscall/asm/macros/function.inc diff --git a/lib/external/libsyscall/meson.build b/lib/external/libsyscall/meson.build new file mode 100644 index 0000000000..9f4b958410 --- /dev/null +++ b/lib/external/libsyscall/meson.build @@ -0,0 +1,17 @@ +project('libsyscall', ['c', 'nasm']) + +asm_args = [ + '-proc', 'arm5TE', + '-16', + '-gccinc' +] + +libsyscall = static_library('syscall', + sources: 'asm/_secure.s', + nasm_args: asm_args, + pic: false +) + +libsyscall_dep = declare_dependency( + link_with: libsyscall +) \ No newline at end of file diff --git a/lib/msl/include/MSL_C/PREFIX_NITRO.h b/lib/external/msl/include/MSL_C/PREFIX_NITRO.h similarity index 100% rename from lib/msl/include/MSL_C/PREFIX_NITRO.h rename to lib/external/msl/include/MSL_C/PREFIX_NITRO.h diff --git a/lib/msl/include/MSL_C/abort_exit.h b/lib/external/msl/include/MSL_C/abort_exit.h similarity index 100% rename from lib/msl/include/MSL_C/abort_exit.h rename to lib/external/msl/include/MSL_C/abort_exit.h diff --git a/lib/msl/include/MSL_C/ansi_files.h b/lib/external/msl/include/MSL_C/ansi_files.h similarity index 100% rename from lib/msl/include/MSL_C/ansi_files.h rename to lib/external/msl/include/MSL_C/ansi_files.h diff --git a/lib/msl/include/MSL_C/ansi_fp.h b/lib/external/msl/include/MSL_C/ansi_fp.h similarity index 100% rename from lib/msl/include/MSL_C/ansi_fp.h rename to lib/external/msl/include/MSL_C/ansi_fp.h diff --git a/lib/msl/include/MSL_C/ansi_params.h b/lib/external/msl/include/MSL_C/ansi_params.h similarity index 100% rename from lib/msl/include/MSL_C/ansi_params.h rename to lib/external/msl/include/MSL_C/ansi_params.h diff --git a/lib/msl/include/MSL_C/ansi_prefix.ARM.h b/lib/external/msl/include/MSL_C/ansi_prefix.ARM.h similarity index 100% rename from lib/msl/include/MSL_C/ansi_prefix.ARM.h rename to lib/external/msl/include/MSL_C/ansi_prefix.ARM.h diff --git a/lib/msl/include/MSL_C/ansi_prefix.ARM.size.h b/lib/external/msl/include/MSL_C/ansi_prefix.ARM.size.h similarity index 100% rename from lib/msl/include/MSL_C/ansi_prefix.ARM.size.h rename to lib/external/msl/include/MSL_C/ansi_prefix.ARM.size.h diff --git a/lib/msl/include/MSL_C/arith.h b/lib/external/msl/include/MSL_C/arith.h similarity index 100% rename from lib/msl/include/MSL_C/arith.h rename to lib/external/msl/include/MSL_C/arith.h diff --git a/lib/msl/include/MSL_C/assert.h b/lib/external/msl/include/MSL_C/assert.h similarity index 100% rename from lib/msl/include/MSL_C/assert.h rename to lib/external/msl/include/MSL_C/assert.h diff --git a/lib/msl/include/MSL_C/assert_api.h b/lib/external/msl/include/MSL_C/assert_api.h similarity index 100% rename from lib/msl/include/MSL_C/assert_api.h rename to lib/external/msl/include/MSL_C/assert_api.h diff --git a/lib/msl/include/MSL_C/buffer_io.h b/lib/external/msl/include/MSL_C/buffer_io.h similarity index 100% rename from lib/msl/include/MSL_C/buffer_io.h rename to lib/external/msl/include/MSL_C/buffer_io.h diff --git a/lib/msl/include/MSL_C/cassert b/lib/external/msl/include/MSL_C/cassert similarity index 100% rename from lib/msl/include/MSL_C/cassert rename to lib/external/msl/include/MSL_C/cassert diff --git a/lib/msl/include/MSL_C/cctype b/lib/external/msl/include/MSL_C/cctype similarity index 100% rename from lib/msl/include/MSL_C/cctype rename to lib/external/msl/include/MSL_C/cctype diff --git a/lib/msl/include/MSL_C/cerrno b/lib/external/msl/include/MSL_C/cerrno similarity index 100% rename from lib/msl/include/MSL_C/cerrno rename to lib/external/msl/include/MSL_C/cerrno diff --git a/lib/msl/include/MSL_C/cfloat b/lib/external/msl/include/MSL_C/cfloat similarity index 100% rename from lib/msl/include/MSL_C/cfloat rename to lib/external/msl/include/MSL_C/cfloat diff --git a/lib/msl/include/MSL_C/char_io.h b/lib/external/msl/include/MSL_C/char_io.h similarity index 100% rename from lib/msl/include/MSL_C/char_io.h rename to lib/external/msl/include/MSL_C/char_io.h diff --git a/lib/msl/include/MSL_C/cinttypes b/lib/external/msl/include/MSL_C/cinttypes similarity index 100% rename from lib/msl/include/MSL_C/cinttypes rename to lib/external/msl/include/MSL_C/cinttypes diff --git a/lib/msl/include/MSL_C/ciso646 b/lib/external/msl/include/MSL_C/ciso646 similarity index 100% rename from lib/msl/include/MSL_C/ciso646 rename to lib/external/msl/include/MSL_C/ciso646 diff --git a/lib/msl/include/MSL_C/climits b/lib/external/msl/include/MSL_C/climits similarity index 100% rename from lib/msl/include/MSL_C/climits rename to lib/external/msl/include/MSL_C/climits diff --git a/lib/msl/include/MSL_C/clocale b/lib/external/msl/include/MSL_C/clocale similarity index 100% rename from lib/msl/include/MSL_C/clocale rename to lib/external/msl/include/MSL_C/clocale diff --git a/lib/msl/include/MSL_C/cmath b/lib/external/msl/include/MSL_C/cmath similarity index 100% rename from lib/msl/include/MSL_C/cmath rename to lib/external/msl/include/MSL_C/cmath diff --git a/lib/msl/include/MSL_C/complex.h b/lib/external/msl/include/MSL_C/complex.h similarity index 100% rename from lib/msl/include/MSL_C/complex.h rename to lib/external/msl/include/MSL_C/complex.h diff --git a/lib/msl/include/MSL_C/console_io.h b/lib/external/msl/include/MSL_C/console_io.h similarity index 100% rename from lib/msl/include/MSL_C/console_io.h rename to lib/external/msl/include/MSL_C/console_io.h diff --git a/lib/msl/include/MSL_C/critical_regions.NITRO.h b/lib/external/msl/include/MSL_C/critical_regions.NITRO.h similarity index 100% rename from lib/msl/include/MSL_C/critical_regions.NITRO.h rename to lib/external/msl/include/MSL_C/critical_regions.NITRO.h diff --git a/lib/msl/include/MSL_C/critical_regions.h b/lib/external/msl/include/MSL_C/critical_regions.h similarity index 100% rename from lib/msl/include/MSL_C/critical_regions.h rename to lib/external/msl/include/MSL_C/critical_regions.h diff --git a/lib/msl/include/MSL_C/critical_regions.pthreads.h b/lib/external/msl/include/MSL_C/critical_regions.pthreads.h similarity index 100% rename from lib/msl/include/MSL_C/critical_regions.pthreads.h rename to lib/external/msl/include/MSL_C/critical_regions.pthreads.h diff --git a/lib/msl/include/MSL_C/csetjmp b/lib/external/msl/include/MSL_C/csetjmp similarity index 100% rename from lib/msl/include/MSL_C/csetjmp rename to lib/external/msl/include/MSL_C/csetjmp diff --git a/lib/msl/include/MSL_C/csignal b/lib/external/msl/include/MSL_C/csignal similarity index 100% rename from lib/msl/include/MSL_C/csignal rename to lib/external/msl/include/MSL_C/csignal diff --git a/lib/msl/include/MSL_C/cstdarg b/lib/external/msl/include/MSL_C/cstdarg similarity index 100% rename from lib/msl/include/MSL_C/cstdarg rename to lib/external/msl/include/MSL_C/cstdarg diff --git a/lib/msl/include/MSL_C/cstddef b/lib/external/msl/include/MSL_C/cstddef similarity index 100% rename from lib/msl/include/MSL_C/cstddef rename to lib/external/msl/include/MSL_C/cstddef diff --git a/lib/msl/include/MSL_C/cstdint b/lib/external/msl/include/MSL_C/cstdint similarity index 100% rename from lib/msl/include/MSL_C/cstdint rename to lib/external/msl/include/MSL_C/cstdint diff --git a/lib/msl/include/MSL_C/cstdio b/lib/external/msl/include/MSL_C/cstdio similarity index 100% rename from lib/msl/include/MSL_C/cstdio rename to lib/external/msl/include/MSL_C/cstdio diff --git a/lib/msl/include/MSL_C/cstdlib b/lib/external/msl/include/MSL_C/cstdlib similarity index 100% rename from lib/msl/include/MSL_C/cstdlib rename to lib/external/msl/include/MSL_C/cstdlib diff --git a/lib/msl/include/MSL_C/cstring b/lib/external/msl/include/MSL_C/cstring similarity index 100% rename from lib/msl/include/MSL_C/cstring rename to lib/external/msl/include/MSL_C/cstring diff --git a/lib/msl/include/MSL_C/ctime b/lib/external/msl/include/MSL_C/ctime similarity index 100% rename from lib/msl/include/MSL_C/ctime rename to lib/external/msl/include/MSL_C/ctime diff --git a/lib/msl/include/MSL_C/ctype.h b/lib/external/msl/include/MSL_C/ctype.h similarity index 100% rename from lib/msl/include/MSL_C/ctype.h rename to lib/external/msl/include/MSL_C/ctype.h diff --git a/lib/msl/include/MSL_C/ctype_api.h b/lib/external/msl/include/MSL_C/ctype_api.h similarity index 100% rename from lib/msl/include/MSL_C/ctype_api.h rename to lib/external/msl/include/MSL_C/ctype_api.h diff --git a/lib/msl/include/MSL_C/cwchar b/lib/external/msl/include/MSL_C/cwchar similarity index 100% rename from lib/msl/include/MSL_C/cwchar rename to lib/external/msl/include/MSL_C/cwchar diff --git a/lib/msl/include/MSL_C/cwctype b/lib/external/msl/include/MSL_C/cwctype similarity index 100% rename from lib/msl/include/MSL_C/cwctype rename to lib/external/msl/include/MSL_C/cwctype diff --git a/lib/msl/include/MSL_C/div_t.h b/lib/external/msl/include/MSL_C/div_t.h similarity index 100% rename from lib/msl/include/MSL_C/div_t.h rename to lib/external/msl/include/MSL_C/div_t.h diff --git a/lib/msl/include/MSL_C/eof.h b/lib/external/msl/include/MSL_C/eof.h similarity index 100% rename from lib/msl/include/MSL_C/eof.h rename to lib/external/msl/include/MSL_C/eof.h diff --git a/lib/msl/include/MSL_C/errno.h b/lib/external/msl/include/MSL_C/errno.h similarity index 100% rename from lib/msl/include/MSL_C/errno.h rename to lib/external/msl/include/MSL_C/errno.h diff --git a/lib/msl/include/MSL_C/fenv.ARM.h b/lib/external/msl/include/MSL_C/fenv.ARM.h similarity index 100% rename from lib/msl/include/MSL_C/fenv.ARM.h rename to lib/external/msl/include/MSL_C/fenv.ARM.h diff --git a/lib/msl/include/MSL_C/fenv.h b/lib/external/msl/include/MSL_C/fenv.h similarity index 100% rename from lib/msl/include/MSL_C/fenv.h rename to lib/external/msl/include/MSL_C/fenv.h diff --git a/lib/msl/include/MSL_C/file_io.h b/lib/external/msl/include/MSL_C/file_io.h similarity index 100% rename from lib/msl/include/MSL_C/file_io.h rename to lib/external/msl/include/MSL_C/file_io.h diff --git a/lib/msl/include/MSL_C/file_struc.h b/lib/external/msl/include/MSL_C/file_struc.h similarity index 100% rename from lib/msl/include/MSL_C/file_struc.h rename to lib/external/msl/include/MSL_C/file_struc.h diff --git a/lib/msl/include/MSL_C/float.ARM.h b/lib/external/msl/include/MSL_C/float.ARM.h similarity index 100% rename from lib/msl/include/MSL_C/float.ARM.h rename to lib/external/msl/include/MSL_C/float.ARM.h diff --git a/lib/msl/include/MSL_C/float.h b/lib/external/msl/include/MSL_C/float.h similarity index 100% rename from lib/msl/include/MSL_C/float.h rename to lib/external/msl/include/MSL_C/float.h diff --git a/lib/msl/include/MSL_C/inttypes.h b/lib/external/msl/include/MSL_C/inttypes.h similarity index 100% rename from lib/msl/include/MSL_C/inttypes.h rename to lib/external/msl/include/MSL_C/inttypes.h diff --git a/lib/msl/include/MSL_C/iso646.h b/lib/external/msl/include/MSL_C/iso646.h similarity index 100% rename from lib/msl/include/MSL_C/iso646.h rename to lib/external/msl/include/MSL_C/iso646.h diff --git a/lib/msl/include/MSL_C/lconv.h b/lib/external/msl/include/MSL_C/lconv.h similarity index 100% rename from lib/msl/include/MSL_C/lconv.h rename to lib/external/msl/include/MSL_C/lconv.h diff --git a/lib/msl/include/MSL_C/limits.h b/lib/external/msl/include/MSL_C/limits.h similarity index 100% rename from lib/msl/include/MSL_C/limits.h rename to lib/external/msl/include/MSL_C/limits.h diff --git a/lib/msl/include/MSL_C/limits_api.h b/lib/external/msl/include/MSL_C/limits_api.h similarity index 100% rename from lib/msl/include/MSL_C/limits_api.h rename to lib/external/msl/include/MSL_C/limits_api.h diff --git a/lib/msl/include/MSL_C/locale.h b/lib/external/msl/include/MSL_C/locale.h similarity index 100% rename from lib/msl/include/MSL_C/locale.h rename to lib/external/msl/include/MSL_C/locale.h diff --git a/lib/msl/include/MSL_C/locale_api.h b/lib/external/msl/include/MSL_C/locale_api.h similarity index 100% rename from lib/msl/include/MSL_C/locale_api.h rename to lib/external/msl/include/MSL_C/locale_api.h diff --git a/lib/msl/include/MSL_C/math.ARM.h b/lib/external/msl/include/MSL_C/math.ARM.h similarity index 100% rename from lib/msl/include/MSL_C/math.ARM.h rename to lib/external/msl/include/MSL_C/math.ARM.h diff --git a/lib/msl/include/MSL_C/math.h b/lib/external/msl/include/MSL_C/math.h similarity index 100% rename from lib/msl/include/MSL_C/math.h rename to lib/external/msl/include/MSL_C/math.h diff --git a/lib/msl/include/MSL_C/math_api.h b/lib/external/msl/include/MSL_C/math_api.h similarity index 100% rename from lib/msl/include/MSL_C/math_api.h rename to lib/external/msl/include/MSL_C/math_api.h diff --git a/lib/msl/include/MSL_C/math_config.h b/lib/external/msl/include/MSL_C/math_config.h similarity index 100% rename from lib/msl/include/MSL_C/math_config.h rename to lib/external/msl/include/MSL_C/math_config.h diff --git a/lib/msl/include/MSL_C/math_integral.h b/lib/external/msl/include/MSL_C/math_integral.h similarity index 100% rename from lib/msl/include/MSL_C/math_integral.h rename to lib/external/msl/include/MSL_C/math_integral.h diff --git a/lib/msl/include/MSL_C/mbstring.h b/lib/external/msl/include/MSL_C/mbstring.h similarity index 100% rename from lib/msl/include/MSL_C/mbstring.h rename to lib/external/msl/include/MSL_C/mbstring.h diff --git a/lib/msl/include/MSL_C/mem_funcs.h b/lib/external/msl/include/MSL_C/mem_funcs.h similarity index 100% rename from lib/msl/include/MSL_C/mem_funcs.h rename to lib/external/msl/include/MSL_C/mem_funcs.h diff --git a/lib/msl/include/MSL_C/misc_io.h b/lib/external/msl/include/MSL_C/misc_io.h similarity index 100% rename from lib/msl/include/MSL_C/misc_io.h rename to lib/external/msl/include/MSL_C/misc_io.h diff --git a/lib/msl/include/MSL_C/mslGlobals.h b/lib/external/msl/include/MSL_C/mslGlobals.h similarity index 100% rename from lib/msl/include/MSL_C/mslGlobals.h rename to lib/external/msl/include/MSL_C/mslGlobals.h diff --git a/lib/msl/include/MSL_C/msl_c_version.h b/lib/external/msl/include/MSL_C/msl_c_version.h similarity index 100% rename from lib/msl/include/MSL_C/msl_c_version.h rename to lib/external/msl/include/MSL_C/msl_c_version.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_ctype.h b/lib/external/msl/include/MSL_C/msl_cpp_std_ctype.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_ctype.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_ctype.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_inttypes.h b/lib/external/msl/include/MSL_C/msl_cpp_std_inttypes.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_inttypes.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_inttypes.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_locale.h b/lib/external/msl/include/MSL_C/msl_cpp_std_locale.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_locale.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_locale.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_math.h b/lib/external/msl/include/MSL_C/msl_cpp_std_math.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_math.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_math.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_setjmp.h b/lib/external/msl/include/MSL_C/msl_cpp_std_setjmp.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_setjmp.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_setjmp.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_signal.h b/lib/external/msl/include/MSL_C/msl_cpp_std_signal.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_signal.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_signal.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_stdarg.h b/lib/external/msl/include/MSL_C/msl_cpp_std_stdarg.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_stdarg.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_stdarg.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_stddef.h b/lib/external/msl/include/MSL_C/msl_cpp_std_stddef.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_stddef.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_stddef.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_stdint.h b/lib/external/msl/include/MSL_C/msl_cpp_std_stdint.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_stdint.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_stdint.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_stdio.h b/lib/external/msl/include/MSL_C/msl_cpp_std_stdio.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_stdio.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_stdio.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_stdlib.h b/lib/external/msl/include/MSL_C/msl_cpp_std_stdlib.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_stdlib.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_stdlib.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_string.h b/lib/external/msl/include/MSL_C/msl_cpp_std_string.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_string.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_string.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_time.h b/lib/external/msl/include/MSL_C/msl_cpp_std_time.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_time.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_time.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_wchar.h b/lib/external/msl/include/MSL_C/msl_cpp_std_wchar.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_wchar.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_wchar.h diff --git a/lib/msl/include/MSL_C/msl_cpp_std_wctype.h b/lib/external/msl/include/MSL_C/msl_cpp_std_wctype.h similarity index 100% rename from lib/msl/include/MSL_C/msl_cpp_std_wctype.h rename to lib/external/msl/include/MSL_C/msl_cpp_std_wctype.h diff --git a/lib/msl/include/MSL_C/msl_rsize_t.h b/lib/external/msl/include/MSL_C/msl_rsize_t.h similarity index 100% rename from lib/msl/include/MSL_C/msl_rsize_t.h rename to lib/external/msl/include/MSL_C/msl_rsize_t.h diff --git a/lib/msl/include/MSL_C/msl_secure.h b/lib/external/msl/include/MSL_C/msl_secure.h similarity index 100% rename from lib/msl/include/MSL_C/msl_secure.h rename to lib/external/msl/include/MSL_C/msl_secure.h diff --git a/lib/msl/include/MSL_C/msl_secure_error.h b/lib/external/msl/include/MSL_C/msl_secure_error.h similarity index 100% rename from lib/msl/include/MSL_C/msl_secure_error.h rename to lib/external/msl/include/MSL_C/msl_secure_error.h diff --git a/lib/msl/include/MSL_C/msl_t.h b/lib/external/msl/include/MSL_C/msl_t.h similarity index 100% rename from lib/msl/include/MSL_C/msl_t.h rename to lib/external/msl/include/MSL_C/msl_t.h diff --git a/lib/msl/include/MSL_C/msl_thread_local_data.h b/lib/external/msl/include/MSL_C/msl_thread_local_data.h similarity index 100% rename from lib/msl/include/MSL_C/msl_thread_local_data.h rename to lib/external/msl/include/MSL_C/msl_thread_local_data.h diff --git a/lib/external/msl/include/MSL_C/nitro.mch b/lib/external/msl/include/MSL_C/nitro.mch new file mode 100644 index 0000000000..de48eb22a0 Binary files /dev/null and b/lib/external/msl/include/MSL_C/nitro.mch differ diff --git a/lib/msl/include/MSL_C/null.h b/lib/external/msl/include/MSL_C/null.h similarity index 100% rename from lib/msl/include/MSL_C/null.h rename to lib/external/msl/include/MSL_C/null.h diff --git a/lib/msl/include/MSL_C/os_enum.h b/lib/external/msl/include/MSL_C/os_enum.h similarity index 100% rename from lib/msl/include/MSL_C/os_enum.h rename to lib/external/msl/include/MSL_C/os_enum.h diff --git a/lib/msl/include/MSL_C/pool_alloc.h b/lib/external/msl/include/MSL_C/pool_alloc.h similarity index 100% rename from lib/msl/include/MSL_C/pool_alloc.h rename to lib/external/msl/include/MSL_C/pool_alloc.h diff --git a/lib/msl/include/MSL_C/setjmp.ARM.h b/lib/external/msl/include/MSL_C/setjmp.ARM.h similarity index 100% rename from lib/msl/include/MSL_C/setjmp.ARM.h rename to lib/external/msl/include/MSL_C/setjmp.ARM.h diff --git a/lib/msl/include/MSL_C/setjmp.h b/lib/external/msl/include/MSL_C/setjmp.h similarity index 100% rename from lib/msl/include/MSL_C/setjmp.h rename to lib/external/msl/include/MSL_C/setjmp.h diff --git a/lib/msl/include/MSL_C/signal.h b/lib/external/msl/include/MSL_C/signal.h similarity index 100% rename from lib/msl/include/MSL_C/signal.h rename to lib/external/msl/include/MSL_C/signal.h diff --git a/lib/msl/include/MSL_C/size_t.h b/lib/external/msl/include/MSL_C/size_t.h similarity index 100% rename from lib/msl/include/MSL_C/size_t.h rename to lib/external/msl/include/MSL_C/size_t.h diff --git a/lib/msl/include/MSL_C/stdarg.ARM.h b/lib/external/msl/include/MSL_C/stdarg.ARM.h similarity index 100% rename from lib/msl/include/MSL_C/stdarg.ARM.h rename to lib/external/msl/include/MSL_C/stdarg.ARM.h diff --git a/lib/msl/include/MSL_C/stdarg.h b/lib/external/msl/include/MSL_C/stdarg.h similarity index 100% rename from lib/msl/include/MSL_C/stdarg.h rename to lib/external/msl/include/MSL_C/stdarg.h diff --git a/lib/msl/include/MSL_C/stdbool.h b/lib/external/msl/include/MSL_C/stdbool.h similarity index 100% rename from lib/msl/include/MSL_C/stdbool.h rename to lib/external/msl/include/MSL_C/stdbool.h diff --git a/lib/msl/include/MSL_C/stddef.h b/lib/external/msl/include/MSL_C/stddef.h similarity index 100% rename from lib/msl/include/MSL_C/stddef.h rename to lib/external/msl/include/MSL_C/stddef.h diff --git a/lib/msl/include/MSL_C/stdint.h b/lib/external/msl/include/MSL_C/stdint.h similarity index 100% rename from lib/msl/include/MSL_C/stdint.h rename to lib/external/msl/include/MSL_C/stdint.h diff --git a/lib/msl/include/MSL_C/stdio.h b/lib/external/msl/include/MSL_C/stdio.h similarity index 100% rename from lib/msl/include/MSL_C/stdio.h rename to lib/external/msl/include/MSL_C/stdio.h diff --git a/lib/msl/include/MSL_C/stdio.posix.h b/lib/external/msl/include/MSL_C/stdio.posix.h similarity index 100% rename from lib/msl/include/MSL_C/stdio.posix.h rename to lib/external/msl/include/MSL_C/stdio.posix.h diff --git a/lib/msl/include/MSL_C/stdio_api.h b/lib/external/msl/include/MSL_C/stdio_api.h similarity index 100% rename from lib/msl/include/MSL_C/stdio_api.h rename to lib/external/msl/include/MSL_C/stdio_api.h diff --git a/lib/msl/include/MSL_C/stdlib.h b/lib/external/msl/include/MSL_C/stdlib.h similarity index 100% rename from lib/msl/include/MSL_C/stdlib.h rename to lib/external/msl/include/MSL_C/stdlib.h diff --git a/lib/msl/include/MSL_C/string.h b/lib/external/msl/include/MSL_C/string.h similarity index 100% rename from lib/msl/include/MSL_C/string.h rename to lib/external/msl/include/MSL_C/string.h diff --git a/lib/msl/include/MSL_C/string_api.h b/lib/external/msl/include/MSL_C/string_api.h similarity index 100% rename from lib/msl/include/MSL_C/string_api.h rename to lib/external/msl/include/MSL_C/string_api.h diff --git a/lib/msl/include/MSL_C/strtold.h b/lib/external/msl/include/MSL_C/strtold.h similarity index 100% rename from lib/msl/include/MSL_C/strtold.h rename to lib/external/msl/include/MSL_C/strtold.h diff --git a/lib/msl/include/MSL_C/strtoul.h b/lib/external/msl/include/MSL_C/strtoul.h similarity index 100% rename from lib/msl/include/MSL_C/strtoul.h rename to lib/external/msl/include/MSL_C/strtoul.h diff --git a/lib/msl/include/MSL_C/tgmath.h b/lib/external/msl/include/MSL_C/tgmath.h similarity index 100% rename from lib/msl/include/MSL_C/tgmath.h rename to lib/external/msl/include/MSL_C/tgmath.h diff --git a/lib/msl/include/MSL_C/thread_local_data_pthreads.h b/lib/external/msl/include/MSL_C/thread_local_data_pthreads.h similarity index 100% rename from lib/msl/include/MSL_C/thread_local_data_pthreads.h rename to lib/external/msl/include/MSL_C/thread_local_data_pthreads.h diff --git a/lib/msl/include/MSL_C/time.h b/lib/external/msl/include/MSL_C/time.h similarity index 100% rename from lib/msl/include/MSL_C/time.h rename to lib/external/msl/include/MSL_C/time.h diff --git a/lib/msl/include/MSL_C/time_api.h b/lib/external/msl/include/MSL_C/time_api.h similarity index 100% rename from lib/msl/include/MSL_C/time_api.h rename to lib/external/msl/include/MSL_C/time_api.h diff --git a/lib/msl/include/MSL_C/va_list.h b/lib/external/msl/include/MSL_C/va_list.h similarity index 100% rename from lib/msl/include/MSL_C/va_list.h rename to lib/external/msl/include/MSL_C/va_list.h diff --git a/lib/msl/include/MSL_C/wchar.h b/lib/external/msl/include/MSL_C/wchar.h similarity index 100% rename from lib/msl/include/MSL_C/wchar.h rename to lib/external/msl/include/MSL_C/wchar.h diff --git a/lib/msl/include/MSL_C/wchar_io.h b/lib/external/msl/include/MSL_C/wchar_io.h similarity index 100% rename from lib/msl/include/MSL_C/wchar_io.h rename to lib/external/msl/include/MSL_C/wchar_io.h diff --git a/lib/msl/include/MSL_C/wchar_t.h b/lib/external/msl/include/MSL_C/wchar_t.h similarity index 100% rename from lib/msl/include/MSL_C/wchar_t.h rename to lib/external/msl/include/MSL_C/wchar_t.h diff --git a/lib/msl/include/MSL_C/wcstold.h b/lib/external/msl/include/MSL_C/wcstold.h similarity index 100% rename from lib/msl/include/MSL_C/wcstold.h rename to lib/external/msl/include/MSL_C/wcstold.h diff --git a/lib/msl/include/MSL_C/wcstoul.h b/lib/external/msl/include/MSL_C/wcstoul.h similarity index 100% rename from lib/msl/include/MSL_C/wcstoul.h rename to lib/external/msl/include/MSL_C/wcstoul.h diff --git a/lib/msl/include/MSL_C/wctrans.h b/lib/external/msl/include/MSL_C/wctrans.h similarity index 100% rename from lib/msl/include/MSL_C/wctrans.h rename to lib/external/msl/include/MSL_C/wctrans.h diff --git a/lib/msl/include/MSL_C/wctype.h b/lib/external/msl/include/MSL_C/wctype.h similarity index 100% rename from lib/msl/include/MSL_C/wctype.h rename to lib/external/msl/include/MSL_C/wctype.h diff --git a/lib/msl/include/MSL_C/wctype_api.h b/lib/external/msl/include/MSL_C/wctype_api.h similarity index 100% rename from lib/msl/include/MSL_C/wctype_api.h rename to lib/external/msl/include/MSL_C/wctype_api.h diff --git a/lib/msl/include/MSL_C/weof.h b/lib/external/msl/include/MSL_C/weof.h similarity index 100% rename from lib/msl/include/MSL_C/weof.h rename to lib/external/msl/include/MSL_C/weof.h diff --git a/lib/msl/include/MSL_C/wmem.h b/lib/external/msl/include/MSL_C/wmem.h similarity index 100% rename from lib/msl/include/MSL_C/wmem.h rename to lib/external/msl/include/MSL_C/wmem.h diff --git a/lib/msl/include/MSL_C/wprintf.h b/lib/external/msl/include/MSL_C/wprintf.h similarity index 100% rename from lib/msl/include/MSL_C/wprintf.h rename to lib/external/msl/include/MSL_C/wprintf.h diff --git a/lib/msl/include/MSL_C/wscanf.h b/lib/external/msl/include/MSL_C/wscanf.h similarity index 100% rename from lib/msl/include/MSL_C/wscanf.h rename to lib/external/msl/include/MSL_C/wscanf.h diff --git a/lib/msl/include/MSL_C/wstdio.h b/lib/external/msl/include/MSL_C/wstdio.h similarity index 100% rename from lib/msl/include/MSL_C/wstdio.h rename to lib/external/msl/include/MSL_C/wstdio.h diff --git a/lib/msl/include/MSL_C/wstring.h b/lib/external/msl/include/MSL_C/wstring.h similarity index 100% rename from lib/msl/include/MSL_C/wstring.h rename to lib/external/msl/include/MSL_C/wstring.h diff --git a/lib/msl/include/MSL_C/wtime.h b/lib/external/msl/include/MSL_C/wtime.h similarity index 100% rename from lib/msl/include/MSL_C/wtime.h rename to lib/external/msl/include/MSL_C/wtime.h diff --git a/lib/msl/include/MSL_Extras/dirent.h b/lib/external/msl/include/MSL_Extras/dirent.h similarity index 100% rename from lib/msl/include/MSL_Extras/dirent.h rename to lib/external/msl/include/MSL_Extras/dirent.h diff --git a/lib/msl/include/MSL_Extras/extras.h b/lib/external/msl/include/MSL_Extras/extras.h similarity index 100% rename from lib/msl/include/MSL_Extras/extras.h rename to lib/external/msl/include/MSL_Extras/extras.h diff --git a/lib/msl/include/MSL_Extras/extras_io.h b/lib/external/msl/include/MSL_Extras/extras_io.h similarity index 100% rename from lib/msl/include/MSL_Extras/extras_io.h rename to lib/external/msl/include/MSL_Extras/extras_io.h diff --git a/lib/msl/include/MSL_Extras/extras_malloc.h b/lib/external/msl/include/MSL_Extras/extras_malloc.h similarity index 100% rename from lib/msl/include/MSL_Extras/extras_malloc.h rename to lib/external/msl/include/MSL_Extras/extras_malloc.h diff --git a/lib/msl/include/MSL_Extras/extras_stdlib.h b/lib/external/msl/include/MSL_Extras/extras_stdlib.h similarity index 100% rename from lib/msl/include/MSL_Extras/extras_stdlib.h rename to lib/external/msl/include/MSL_Extras/extras_stdlib.h diff --git a/lib/msl/include/MSL_Extras/extras_string.h b/lib/external/msl/include/MSL_Extras/extras_string.h similarity index 100% rename from lib/msl/include/MSL_Extras/extras_string.h rename to lib/external/msl/include/MSL_Extras/extras_string.h diff --git a/lib/msl/include/MSL_Extras/extras_time.h b/lib/external/msl/include/MSL_Extras/extras_time.h similarity index 100% rename from lib/msl/include/MSL_Extras/extras_time.h rename to lib/external/msl/include/MSL_Extras/extras_time.h diff --git a/lib/msl/include/MSL_Extras/extras_wchar.h b/lib/external/msl/include/MSL_Extras/extras_wchar.h similarity index 100% rename from lib/msl/include/MSL_Extras/extras_wchar.h rename to lib/external/msl/include/MSL_Extras/extras_wchar.h diff --git a/lib/msl/include/MSL_Extras/fcntl.h b/lib/external/msl/include/MSL_Extras/fcntl.h similarity index 100% rename from lib/msl/include/MSL_Extras/fcntl.h rename to lib/external/msl/include/MSL_Extras/fcntl.h diff --git a/lib/msl/include/MSL_Extras/sys/stat.h b/lib/external/msl/include/MSL_Extras/sys/stat.h similarity index 100% rename from lib/msl/include/MSL_Extras/sys/stat.h rename to lib/external/msl/include/MSL_Extras/sys/stat.h diff --git a/lib/msl/include/MSL_Extras/sys/timeb.h b/lib/external/msl/include/MSL_Extras/sys/timeb.h similarity index 100% rename from lib/msl/include/MSL_Extras/sys/timeb.h rename to lib/external/msl/include/MSL_Extras/sys/timeb.h diff --git a/lib/msl/include/MSL_Extras/sys/utsname.h b/lib/external/msl/include/MSL_Extras/sys/utsname.h similarity index 100% rename from lib/msl/include/MSL_Extras/sys/utsname.h rename to lib/external/msl/include/MSL_Extras/sys/utsname.h diff --git a/lib/msl/include/MSL_Extras/unistd.h b/lib/external/msl/include/MSL_Extras/unistd.h similarity index 100% rename from lib/msl/include/MSL_Extras/unistd.h rename to lib/external/msl/include/MSL_Extras/unistd.h diff --git a/lib/msl/include/MSL_Extras/unistd_api.h b/lib/external/msl/include/MSL_Extras/unistd_api.h similarity index 100% rename from lib/msl/include/MSL_Extras/unistd_api.h rename to lib/external/msl/include/MSL_Extras/unistd_api.h diff --git a/lib/msl/include/MSL_Extras/unix.h b/lib/external/msl/include/MSL_Extras/unix.h similarity index 100% rename from lib/msl/include/MSL_Extras/unix.h rename to lib/external/msl/include/MSL_Extras/unix.h diff --git a/lib/msl/include/MSL_Extras/utime.h b/lib/external/msl/include/MSL_Extras/utime.h similarity index 100% rename from lib/msl/include/MSL_Extras/utime.h rename to lib/external/msl/include/MSL_Extras/utime.h diff --git a/lib/msl/asm/MSL_C++/include/ios.inc b/lib/external/msl/libraries/MSL_C++/asm/include/ios.inc similarity index 100% rename from lib/msl/asm/MSL_C++/include/ios.inc rename to lib/external/msl/libraries/MSL_C++/asm/include/ios.inc diff --git a/lib/msl/asm/MSL_C++/include/locale_cpp.inc b/lib/external/msl/libraries/MSL_C++/asm/include/locale_cpp.inc similarity index 100% rename from lib/msl/asm/MSL_C++/include/locale_cpp.inc rename to lib/external/msl/libraries/MSL_C++/asm/include/locale_cpp.inc diff --git a/lib/msl/asm/MSL_C++/include/msl_thread.inc b/lib/external/msl/libraries/MSL_C++/asm/include/msl_thread.inc similarity index 100% rename from lib/msl/asm/MSL_C++/include/msl_thread.inc rename to lib/external/msl/libraries/MSL_C++/asm/include/msl_thread.inc diff --git a/lib/msl/asm/MSL_C++/ios.s b/lib/external/msl/libraries/MSL_C++/asm/ios.s similarity index 100% rename from lib/msl/asm/MSL_C++/ios.s rename to lib/external/msl/libraries/MSL_C++/asm/ios.s diff --git a/lib/msl/asm/MSL_C++/locale_cpp.s b/lib/external/msl/libraries/MSL_C++/asm/locale_cpp.s similarity index 100% rename from lib/msl/asm/MSL_C++/locale_cpp.s rename to lib/external/msl/libraries/MSL_C++/asm/locale_cpp.s diff --git a/lib/external/msl/libraries/MSL_C++/asm/macros/function.inc b/lib/external/msl/libraries/MSL_C++/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/msl/libraries/MSL_C++/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/msl/asm/MSL_C++/msl_thread.s b/lib/external/msl/libraries/MSL_C++/asm/msl_thread.s similarity index 100% rename from lib/msl/asm/MSL_C++/msl_thread.s rename to lib/external/msl/libraries/MSL_C++/asm/msl_thread.s diff --git a/lib/external/msl/libraries/MSL_C++/meson.build b/lib/external/msl/libraries/MSL_C++/meson.build new file mode 100644 index 0000000000..73c23e7b90 --- /dev/null +++ b/lib/external/msl/libraries/MSL_C++/meson.build @@ -0,0 +1,16 @@ +msl_cpp_srcs = files( + 'asm/ios.s', + 'asm/locale_cpp.s', + 'asm/msl_thread.s' +) + +msl_cpp = static_library('MSL_CPP_NITRO_Ai_LE', + name_prefix: '', + sources: msl_cpp_srcs, + c_args: c_args, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +msl_libs += msl_cpp diff --git a/lib/msl/asm/MSL_C/abort_exit_arm.s b/lib/external/msl/libraries/MSL_C/asm/abort_exit_arm.s similarity index 100% rename from lib/msl/asm/MSL_C/abort_exit_arm.s rename to lib/external/msl/libraries/MSL_C/asm/abort_exit_arm.s diff --git a/lib/msl/asm/MSL_C/ansi_fp.s b/lib/external/msl/libraries/MSL_C/asm/ansi_fp.s similarity index 100% rename from lib/msl/asm/MSL_C/ansi_fp.s rename to lib/external/msl/libraries/MSL_C/asm/ansi_fp.s diff --git a/lib/msl/asm/MSL_C/critical_region.s b/lib/external/msl/libraries/MSL_C/asm/critical_region.s similarity index 100% rename from lib/msl/asm/MSL_C/critical_region.s rename to lib/external/msl/libraries/MSL_C/asm/critical_region.s diff --git a/lib/msl/asm/MSL_C/ctype.s b/lib/external/msl/libraries/MSL_C/asm/ctype.s similarity index 100% rename from lib/msl/asm/MSL_C/ctype.s rename to lib/external/msl/libraries/MSL_C/asm/ctype.s diff --git a/lib/msl/asm/MSL_C/direct_io.s b/lib/external/msl/libraries/MSL_C/asm/direct_io.s similarity index 100% rename from lib/msl/asm/MSL_C/direct_io.s rename to lib/external/msl/libraries/MSL_C/asm/direct_io.s diff --git a/lib/msl/asm/MSL_C/e_pow.s b/lib/external/msl/libraries/MSL_C/asm/e_pow.s similarity index 100% rename from lib/msl/asm/MSL_C/e_pow.s rename to lib/external/msl/libraries/MSL_C/asm/e_pow.s diff --git a/lib/msl/asm/MSL_C/file_io.s b/lib/external/msl/libraries/MSL_C/asm/file_io.s similarity index 100% rename from lib/msl/asm/MSL_C/file_io.s rename to lib/external/msl/libraries/MSL_C/asm/file_io.s diff --git a/lib/msl/asm/MSL_C/file_pos.s b/lib/external/msl/libraries/MSL_C/asm/file_pos.s similarity index 100% rename from lib/msl/asm/MSL_C/file_pos.s rename to lib/external/msl/libraries/MSL_C/asm/file_pos.s diff --git a/lib/msl/asm/MSL_C++/float.s b/lib/external/msl/libraries/MSL_C/asm/float.s similarity index 100% rename from lib/msl/asm/MSL_C++/float.s rename to lib/external/msl/libraries/MSL_C/asm/float.s diff --git a/lib/msl/asm/MSL_C/incbin/ansi_fp.bin b/lib/external/msl/libraries/MSL_C/asm/incbin/ansi_fp.bin similarity index 100% rename from lib/msl/asm/MSL_C/incbin/ansi_fp.bin rename to lib/external/msl/libraries/MSL_C/asm/incbin/ansi_fp.bin diff --git a/lib/msl/asm/MSL_C/incbin/ctype.bin b/lib/external/msl/libraries/MSL_C/asm/incbin/ctype.bin similarity index 100% rename from lib/msl/asm/MSL_C/incbin/ctype.bin rename to lib/external/msl/libraries/MSL_C/asm/incbin/ctype.bin diff --git a/lib/msl/asm/MSL_C/incbin/locale_c.bin b/lib/external/msl/libraries/MSL_C/asm/incbin/locale_c.bin similarity index 100% rename from lib/msl/asm/MSL_C/incbin/locale_c.bin rename to lib/external/msl/libraries/MSL_C/asm/incbin/locale_c.bin diff --git a/lib/msl/asm/MSL_C/incbin/wctype.bin b/lib/external/msl/libraries/MSL_C/asm/incbin/wctype.bin similarity index 100% rename from lib/msl/asm/MSL_C/incbin/wctype.bin rename to lib/external/msl/libraries/MSL_C/asm/incbin/wctype.bin diff --git a/lib/msl/asm/MSL_C/include/abort_exit_arm.inc b/lib/external/msl/libraries/MSL_C/asm/include/abort_exit_arm.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/abort_exit_arm.inc rename to lib/external/msl/libraries/MSL_C/asm/include/abort_exit_arm.inc diff --git a/lib/msl/asm/MSL_C/include/ansi_fp.inc b/lib/external/msl/libraries/MSL_C/asm/include/ansi_fp.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/ansi_fp.inc rename to lib/external/msl/libraries/MSL_C/asm/include/ansi_fp.inc diff --git a/lib/msl/asm/MSL_C/include/direct_io.inc b/lib/external/msl/libraries/MSL_C/asm/include/direct_io.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/direct_io.inc rename to lib/external/msl/libraries/MSL_C/asm/include/direct_io.inc diff --git a/lib/msl/asm/MSL_C/include/e_pow.inc b/lib/external/msl/libraries/MSL_C/asm/include/e_pow.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/e_pow.inc rename to lib/external/msl/libraries/MSL_C/asm/include/e_pow.inc diff --git a/lib/msl/asm/MSL_C/include/file_io.inc b/lib/external/msl/libraries/MSL_C/asm/include/file_io.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/file_io.inc rename to lib/external/msl/libraries/MSL_C/asm/include/file_io.inc diff --git a/lib/msl/asm/MSL_C/include/file_pos.inc b/lib/external/msl/libraries/MSL_C/asm/include/file_pos.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/file_pos.inc rename to lib/external/msl/libraries/MSL_C/asm/include/file_pos.inc diff --git a/lib/msl/asm/MSL_C/include/locale_c.inc b/lib/external/msl/libraries/MSL_C/asm/include/locale_c.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/locale_c.inc rename to lib/external/msl/libraries/MSL_C/asm/include/locale_c.inc diff --git a/lib/msl/asm/MSL_C/include/math_arm.inc b/lib/external/msl/libraries/MSL_C/asm/include/math_arm.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/math_arm.inc rename to lib/external/msl/libraries/MSL_C/asm/include/math_arm.inc diff --git a/lib/msl/asm/MSL_C/include/math_sun.inc b/lib/external/msl/libraries/MSL_C/asm/include/math_sun.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/math_sun.inc rename to lib/external/msl/libraries/MSL_C/asm/include/math_sun.inc diff --git a/lib/msl/asm/MSL_C/include/mbstring.inc b/lib/external/msl/libraries/MSL_C/asm/include/mbstring.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/mbstring.inc rename to lib/external/msl/libraries/MSL_C/asm/include/mbstring.inc diff --git a/lib/msl/asm/MSL_C/include/mem_msl.inc b/lib/external/msl/libraries/MSL_C/asm/include/mem_msl.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/mem_msl.inc rename to lib/external/msl/libraries/MSL_C/asm/include/mem_msl.inc diff --git a/lib/msl/asm/MSL_C/include/pool_alloc.inc b/lib/external/msl/libraries/MSL_C/asm/include/pool_alloc.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/pool_alloc.inc rename to lib/external/msl/libraries/MSL_C/asm/include/pool_alloc.inc diff --git a/lib/msl/asm/MSL_C/include/printf.inc b/lib/external/msl/libraries/MSL_C/asm/include/printf.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/printf.inc rename to lib/external/msl/libraries/MSL_C/asm/include/printf.inc diff --git a/lib/msl/asm/MSL_C/include/s_frexp.inc b/lib/external/msl/libraries/MSL_C/asm/include/s_frexp.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/s_frexp.inc rename to lib/external/msl/libraries/MSL_C/asm/include/s_frexp.inc diff --git a/lib/msl/asm/MSL_C/include/s_ldexp.inc b/lib/external/msl/libraries/MSL_C/asm/include/s_ldexp.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/s_ldexp.inc rename to lib/external/msl/libraries/MSL_C/asm/include/s_ldexp.inc diff --git a/lib/msl/asm/MSL_C/include/scanf.inc b/lib/external/msl/libraries/MSL_C/asm/include/scanf.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/scanf.inc rename to lib/external/msl/libraries/MSL_C/asm/include/scanf.inc diff --git a/lib/msl/asm/MSL_C/include/signal.inc b/lib/external/msl/libraries/MSL_C/asm/include/signal.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/signal.inc rename to lib/external/msl/libraries/MSL_C/asm/include/signal.inc diff --git a/lib/msl/asm/MSL_C/include/strtold.inc b/lib/external/msl/libraries/MSL_C/asm/include/strtold.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/strtold.inc rename to lib/external/msl/libraries/MSL_C/asm/include/strtold.inc diff --git a/lib/msl/asm/MSL_C/include/strtoul.inc b/lib/external/msl/libraries/MSL_C/asm/include/strtoul.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/strtoul.inc rename to lib/external/msl/libraries/MSL_C/asm/include/strtoul.inc diff --git a/lib/msl/asm/MSL_C/include/w_pow.inc b/lib/external/msl/libraries/MSL_C/asm/include/w_pow.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/w_pow.inc rename to lib/external/msl/libraries/MSL_C/asm/include/w_pow.inc diff --git a/lib/msl/asm/MSL_C/include/wmem.inc b/lib/external/msl/libraries/MSL_C/asm/include/wmem.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/wmem.inc rename to lib/external/msl/libraries/MSL_C/asm/include/wmem.inc diff --git a/lib/msl/asm/MSL_C/include/wprintf.inc b/lib/external/msl/libraries/MSL_C/asm/include/wprintf.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/wprintf.inc rename to lib/external/msl/libraries/MSL_C/asm/include/wprintf.inc diff --git a/lib/msl/asm/MSL_C/locale_c.s b/lib/external/msl/libraries/MSL_C/asm/locale_c.s similarity index 100% rename from lib/msl/asm/MSL_C/locale_c.s rename to lib/external/msl/libraries/MSL_C/asm/locale_c.s diff --git a/lib/external/msl/libraries/MSL_C/asm/macros/function.inc b/lib/external/msl/libraries/MSL_C/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/msl/libraries/MSL_C/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/msl/asm/MSL_C/math_api.s b/lib/external/msl/libraries/MSL_C/asm/math_api.s similarity index 100% rename from lib/msl/asm/MSL_C/math_api.s rename to lib/external/msl/libraries/MSL_C/asm/math_api.s diff --git a/lib/msl/asm/MSL_C/math_arm.s b/lib/external/msl/libraries/MSL_C/asm/math_arm.s similarity index 100% rename from lib/msl/asm/MSL_C/math_arm.s rename to lib/external/msl/libraries/MSL_C/asm/math_arm.s diff --git a/lib/msl/asm/MSL_C/math_sun.s b/lib/external/msl/libraries/MSL_C/asm/math_sun.s similarity index 100% rename from lib/msl/asm/MSL_C/math_sun.s rename to lib/external/msl/libraries/MSL_C/asm/math_sun.s diff --git a/lib/msl/asm/MSL_C/mbstring.s b/lib/external/msl/libraries/MSL_C/asm/mbstring.s similarity index 100% rename from lib/msl/asm/MSL_C/mbstring.s rename to lib/external/msl/libraries/MSL_C/asm/mbstring.s diff --git a/lib/msl/asm/MSL_C/mem_funcs.s b/lib/external/msl/libraries/MSL_C/asm/mem_funcs.s similarity index 100% rename from lib/msl/asm/MSL_C/mem_funcs.s rename to lib/external/msl/libraries/MSL_C/asm/mem_funcs.s diff --git a/lib/msl/asm/MSL_C/mem_msl.s b/lib/external/msl/libraries/MSL_C/asm/mem_msl.s similarity index 100% rename from lib/msl/asm/MSL_C/mem_msl.s rename to lib/external/msl/libraries/MSL_C/asm/mem_msl.s diff --git a/lib/msl/asm/MSL_C/pool_alloc.s b/lib/external/msl/libraries/MSL_C/asm/pool_alloc.s similarity index 100% rename from lib/msl/asm/MSL_C/pool_alloc.s rename to lib/external/msl/libraries/MSL_C/asm/pool_alloc.s diff --git a/lib/msl/asm/MSL_C/printf.s b/lib/external/msl/libraries/MSL_C/asm/printf.s similarity index 100% rename from lib/msl/asm/MSL_C/printf.s rename to lib/external/msl/libraries/MSL_C/asm/printf.s diff --git a/lib/msl/asm/MSL_C/qsort.s b/lib/external/msl/libraries/MSL_C/asm/qsort.s similarity index 100% rename from lib/msl/asm/MSL_C/qsort.s rename to lib/external/msl/libraries/MSL_C/asm/qsort.s diff --git a/lib/msl/asm/MSL_C/rand.s b/lib/external/msl/libraries/MSL_C/asm/rand.s similarity index 100% rename from lib/msl/asm/MSL_C/rand.s rename to lib/external/msl/libraries/MSL_C/asm/rand.s diff --git a/lib/msl/asm/MSL_C/s_copysign.s b/lib/external/msl/libraries/MSL_C/asm/s_copysign.s similarity index 100% rename from lib/msl/asm/MSL_C/s_copysign.s rename to lib/external/msl/libraries/MSL_C/asm/s_copysign.s diff --git a/lib/msl/asm/MSL_C/s_fabs.s b/lib/external/msl/libraries/MSL_C/asm/s_fabs.s similarity index 100% rename from lib/msl/asm/MSL_C/s_fabs.s rename to lib/external/msl/libraries/MSL_C/asm/s_fabs.s diff --git a/lib/msl/asm/MSL_C/s_frexp.s b/lib/external/msl/libraries/MSL_C/asm/s_frexp.s similarity index 100% rename from lib/msl/asm/MSL_C/s_frexp.s rename to lib/external/msl/libraries/MSL_C/asm/s_frexp.s diff --git a/lib/msl/asm/MSL_C/s_ldexp.s b/lib/external/msl/libraries/MSL_C/asm/s_ldexp.s similarity index 100% rename from lib/msl/asm/MSL_C/s_ldexp.s rename to lib/external/msl/libraries/MSL_C/asm/s_ldexp.s diff --git a/lib/msl/asm/MSL_C/scanf.s b/lib/external/msl/libraries/MSL_C/asm/scanf.s similarity index 100% rename from lib/msl/asm/MSL_C/scanf.s rename to lib/external/msl/libraries/MSL_C/asm/scanf.s diff --git a/lib/msl/asm/MSL_C/signal.s b/lib/external/msl/libraries/MSL_C/asm/signal.s similarity index 100% rename from lib/msl/asm/MSL_C/signal.s rename to lib/external/msl/libraries/MSL_C/asm/signal.s diff --git a/lib/msl/asm/MSL_C/string.s b/lib/external/msl/libraries/MSL_C/asm/string.s similarity index 100% rename from lib/msl/asm/MSL_C/string.s rename to lib/external/msl/libraries/MSL_C/asm/string.s diff --git a/lib/msl/asm/MSL_C/strtold.s b/lib/external/msl/libraries/MSL_C/asm/strtold.s similarity index 100% rename from lib/msl/asm/MSL_C/strtold.s rename to lib/external/msl/libraries/MSL_C/asm/strtold.s diff --git a/lib/msl/asm/MSL_C/strtoul.s b/lib/external/msl/libraries/MSL_C/asm/strtoul.s similarity index 100% rename from lib/msl/asm/MSL_C/strtoul.s rename to lib/external/msl/libraries/MSL_C/asm/strtoul.s diff --git a/lib/msl/asm/MSL_C/w_pow.s b/lib/external/msl/libraries/MSL_C/asm/w_pow.s similarity index 100% rename from lib/msl/asm/MSL_C/w_pow.s rename to lib/external/msl/libraries/MSL_C/asm/w_pow.s diff --git a/lib/msl/asm/MSL_C/wchar_io.s b/lib/external/msl/libraries/MSL_C/asm/wchar_io.s similarity index 100% rename from lib/msl/asm/MSL_C/wchar_io.s rename to lib/external/msl/libraries/MSL_C/asm/wchar_io.s diff --git a/lib/msl/asm/MSL_C/wctype.s b/lib/external/msl/libraries/MSL_C/asm/wctype.s similarity index 100% rename from lib/msl/asm/MSL_C/wctype.s rename to lib/external/msl/libraries/MSL_C/asm/wctype.s diff --git a/lib/msl/asm/MSL_C/wmem.s b/lib/external/msl/libraries/MSL_C/asm/wmem.s similarity index 100% rename from lib/msl/asm/MSL_C/wmem.s rename to lib/external/msl/libraries/MSL_C/asm/wmem.s diff --git a/lib/msl/asm/MSL_C/wprintf.s b/lib/external/msl/libraries/MSL_C/asm/wprintf.s similarity index 100% rename from lib/msl/asm/MSL_C/wprintf.s rename to lib/external/msl/libraries/MSL_C/asm/wprintf.s diff --git a/lib/msl/asm/MSL_C/wstring.s b/lib/external/msl/libraries/MSL_C/asm/wstring.s similarity index 100% rename from lib/msl/asm/MSL_C/wstring.s rename to lib/external/msl/libraries/MSL_C/asm/wstring.s diff --git a/lib/external/msl/libraries/MSL_C/meson.build b/lib/external/msl/libraries/MSL_C/meson.build new file mode 100644 index 0000000000..bbb12ef106 --- /dev/null +++ b/lib/external/msl/libraries/MSL_C/meson.build @@ -0,0 +1,54 @@ +msl_c_srcs = files( + 'asm/abort_exit_arm.s', + 'asm/critical_region.s', + 'asm/math_arm.s', + 'src/alloc.c', + 'src/ansi_files.c', + 'src/arith.c', + 'src/assert.c', + 'src/buffer_io.c', + 'src/errno.c', + 'asm/direct_io.s', + 'asm/file_io.s', + 'asm/file_pos.s', + 'asm/mbstring.s', + 'asm/mem_msl.s', + 'asm/mem_funcs.s', + 'asm/float.s', + 'asm/locale_c.s', + 'asm/printf.s', + 'asm/qsort.s', + 'asm/rand.s', + 'asm/ctype.s', + 'asm/scanf.s', + 'asm/signal.s', + 'asm/string.s', + 'asm/strtold.s', + 'asm/strtoul.s', + 'asm/wchar_io.s', + 'asm/wmem.s', + 'asm/wprintf.s', + 'asm/wstring.s', + 'asm/wctype.s', + 'asm/e_pow.s', + 'asm/s_copysign.s', + 'asm/s_fabs.s', + 'asm/s_frexp.s', + 'asm/s_ldexp.s', + 'asm/w_pow.s', + 'asm/ansi_fp.s', + 'asm/math_api.s', + 'asm/math_sun.s', + 'asm/pool_alloc.s' +) + +msl_c = static_library('MSL_C_NITRO_Ai_LE', + name_prefix: '', + sources: msl_c_srcs, + c_args: c_args, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +msl_libs += msl_c diff --git a/lib/msl/src/MSL_C/alloc.c b/lib/external/msl/libraries/MSL_C/src/alloc.c similarity index 100% rename from lib/msl/src/MSL_C/alloc.c rename to lib/external/msl/libraries/MSL_C/src/alloc.c diff --git a/lib/msl/src/MSL_C/ansi_files.c b/lib/external/msl/libraries/MSL_C/src/ansi_files.c similarity index 100% rename from lib/msl/src/MSL_C/ansi_files.c rename to lib/external/msl/libraries/MSL_C/src/ansi_files.c diff --git a/lib/msl/src/MSL_C/arith.c b/lib/external/msl/libraries/MSL_C/src/arith.c similarity index 100% rename from lib/msl/src/MSL_C/arith.c rename to lib/external/msl/libraries/MSL_C/src/arith.c diff --git a/lib/msl/src/MSL_C/assert.c b/lib/external/msl/libraries/MSL_C/src/assert.c similarity index 100% rename from lib/msl/src/MSL_C/assert.c rename to lib/external/msl/libraries/MSL_C/src/assert.c diff --git a/lib/msl/src/MSL_C/buffer_io.c b/lib/external/msl/libraries/MSL_C/src/buffer_io.c similarity index 100% rename from lib/msl/src/MSL_C/buffer_io.c rename to lib/external/msl/libraries/MSL_C/src/buffer_io.c diff --git a/lib/msl/src/MSL_C/errno.c b/lib/external/msl/libraries/MSL_C/src/errno.c similarity index 100% rename from lib/msl/src/MSL_C/errno.c rename to lib/external/msl/libraries/MSL_C/src/errno.c diff --git a/lib/msl/asm/MSL_C/extras.s b/lib/external/msl/libraries/MSL_Extras/asm/extras.s similarity index 100% rename from lib/msl/asm/MSL_C/extras.s rename to lib/external/msl/libraries/MSL_Extras/asm/extras.s diff --git a/lib/msl/asm/MSL_C/include/extras.inc b/lib/external/msl/libraries/MSL_Extras/asm/include/extras.inc similarity index 100% rename from lib/msl/asm/MSL_C/include/extras.inc rename to lib/external/msl/libraries/MSL_Extras/asm/include/extras.inc diff --git a/lib/external/msl/libraries/MSL_Extras/asm/macros/function.inc b/lib/external/msl/libraries/MSL_Extras/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/msl/libraries/MSL_Extras/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/msl/libraries/MSL_Extras/meson.build b/lib/external/msl/libraries/MSL_Extras/meson.build new file mode 100644 index 0000000000..e58a296b71 --- /dev/null +++ b/lib/external/msl/libraries/MSL_Extras/meson.build @@ -0,0 +1,12 @@ +msl_extras_srcs = files('asm/extras.s') + +msl_extras = static_library('MSL_Extras_NITRO_Ai_LE', + name_prefix: '', + sources: msl_extras_srcs, + c_args: c_args, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +msl_libs += msl_extras diff --git a/lib/msl/asm/runtime/__nitro_eabi_init.s b/lib/external/msl/libraries/MSL_Runtime/asm/__nitro_eabi_init.s similarity index 100% rename from lib/msl/asm/runtime/__nitro_eabi_init.s rename to lib/external/msl/libraries/MSL_Runtime/asm/__nitro_eabi_init.s diff --git a/lib/msl/asm/runtime/compressednumbers.s b/lib/external/msl/libraries/MSL_Runtime/asm/compressednumbers.s similarity index 100% rename from lib/msl/asm/runtime/compressednumbers.s rename to lib/external/msl/libraries/MSL_Runtime/asm/compressednumbers.s diff --git a/lib/msl/asm/runtime/cxxabi_rtti.s b/lib/external/msl/libraries/MSL_Runtime/asm/cxxabi_rtti.s similarity index 100% rename from lib/msl/asm/runtime/cxxabi_rtti.s rename to lib/external/msl/libraries/MSL_Runtime/asm/cxxabi_rtti.s diff --git a/lib/msl/asm/runtime/exceptionhandler.s b/lib/external/msl/libraries/MSL_Runtime/asm/exceptionhandler.s similarity index 100% rename from lib/msl/asm/runtime/exceptionhandler.s rename to lib/external/msl/libraries/MSL_Runtime/asm/exceptionhandler.s diff --git a/lib/external/msl/libraries/MSL_Runtime/asm/incbin/main_etable.bin b/lib/external/msl/libraries/MSL_Runtime/asm/incbin/main_etable.bin new file mode 100644 index 0000000000..f6e80167e3 Binary files /dev/null and b/lib/external/msl/libraries/MSL_Runtime/asm/incbin/main_etable.bin differ diff --git a/lib/msl/asm/runtime/include/cxxabi_rtti.inc b/lib/external/msl/libraries/MSL_Runtime/asm/include/cxxabi_rtti.inc similarity index 100% rename from lib/msl/asm/runtime/include/cxxabi_rtti.inc rename to lib/external/msl/libraries/MSL_Runtime/asm/include/cxxabi_rtti.inc diff --git a/lib/msl/asm/runtime/include/exceptionhandler.inc b/lib/external/msl/libraries/MSL_Runtime/asm/include/exceptionhandler.inc similarity index 100% rename from lib/msl/asm/runtime/include/exceptionhandler.inc rename to lib/external/msl/libraries/MSL_Runtime/asm/include/exceptionhandler.inc diff --git a/lib/msl/asm/runtime/include/mwexception.inc b/lib/external/msl/libraries/MSL_Runtime/asm/include/mwexception.inc similarity index 100% rename from lib/msl/asm/runtime/include/mwexception.inc rename to lib/external/msl/libraries/MSL_Runtime/asm/include/mwexception.inc diff --git a/lib/msl/asm/runtime/include/new.inc b/lib/external/msl/libraries/MSL_Runtime/asm/include/new.inc similarity index 100% rename from lib/msl/asm/runtime/include/new.inc rename to lib/external/msl/libraries/MSL_Runtime/asm/include/new.inc diff --git a/lib/msl/asm/runtime/include/semihosted_console_io.inc b/lib/external/msl/libraries/MSL_Runtime/asm/include/semihosted_console_io.inc similarity index 100% rename from lib/msl/asm/runtime/include/semihosted_console_io.inc rename to lib/external/msl/libraries/MSL_Runtime/asm/include/semihosted_console_io.inc diff --git a/lib/external/msl/libraries/MSL_Runtime/asm/macros/function.inc b/lib/external/msl/libraries/MSL_Runtime/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/msl/libraries/MSL_Runtime/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/msl/asm/runtime/mwexception.s b/lib/external/msl/libraries/MSL_Runtime/asm/mwexception.s similarity index 100% rename from lib/msl/asm/runtime/mwexception.s rename to lib/external/msl/libraries/MSL_Runtime/asm/mwexception.s diff --git a/lib/msl/asm/runtime/new.s b/lib/external/msl/libraries/MSL_Runtime/asm/new.s similarity index 71% rename from lib/msl/asm/runtime/new.s rename to lib/external/msl/libraries/MSL_Runtime/asm/new.s index 5248697c1d..35e42eab94 100644 --- a/lib/msl/asm/runtime/new.s +++ b/lib/external/msl/libraries/MSL_Runtime/asm/new.s @@ -222,3 +222,71 @@ Unk_021D0D60: ; 0x021D0D60 Unk_021D0D64: ; 0x021D0D64 .space 0x4 + + .extern Unk_020E4558 + .extern Unk_020E4560 + .extern Unk_020E4568 + .extern Unk_020E4570 + .extern Unk_020E4578 + .extern Unk_020E4580 + .extern Unk_020E4588 + .extern Unk_020E4590 + .extern Unk_020E45A0 + .extern Unk_020E45B4 + .extern Unk_020E45CC + .extern Unk_020E45D4 + .extern Unk_020E45E4 + .extern Unk_020E45EC + .extern Unk_020E4600 + .extern Unk_020E4608 + .extern Unk_020E4610 + .extern Unk_020E4628 + .extern Unk_020E4644 + .extern Unk_020E465C + + .section .exception, 4 + + .global Exception_Table_Index +Exception_Table_Index: ; 0x020E4670 + .incbin "incbin/main_etable.bin", 0x118, 0x164 + .word Unk_020E4558 + .incbin "incbin/main_etable.bin",0x280,0x68 + .word Unk_020E4560 + .incbin "incbin/main_etable.bin",0x2EC,0x2C + .word Unk_020E4568 + .incbin "incbin/main_etable.bin",0x31C,0x8C + .word Unk_020E4570 + .incbin "incbin/main_etable.bin",0x3AC,0x8 + .word Unk_020E4578 + .incbin "incbin/main_etable.bin",0x3B8,0x2C + .word Unk_020E4580 + .incbin "incbin/main_etable.bin",0x3E8,0x80 + .word Unk_020E4588 + .incbin "incbin/main_etable.bin",0x46C,0x2C + .word Unk_020E4590 + .incbin "incbin/main_etable.bin",0x49C,0x2C + .word Unk_020E45A0 + .incbin "incbin/main_etable.bin",0x4CC,0x68 + .word Unk_020E45B4 + .incbin "incbin/main_etable.bin",0x538,0x2C + .word Unk_020E45CC + .incbin "incbin/main_etable.bin",0x568,0x8 + .word Unk_020E45D4 + .incbin "incbin/main_etable.bin",0x574,0x8 + .word Unk_020E45E4 + .incbin "incbin/main_etable.bin",0x580,0x14 + .word Unk_020E45EC + .incbin "incbin/main_etable.bin",0x598,0x8 + .word Unk_020E4600 + .incbin "incbin/main_etable.bin",0x5A4,0x8 + .word Unk_020E4608 + .incbin "incbin/main_etable.bin",0x5B0,0x38 + .word Unk_020E4610 + .incbin "incbin/main_etable.bin",0x5EC,0x8 + .word Unk_020E4628 + .incbin "incbin/main_etable.bin",0x5F8,0x14 + .word Unk_020E4644 + .incbin "incbin/main_etable.bin",0x610,0x8 + .word Unk_020E465C + .incbin "incbin/main_etable.bin",0x61C,0xCC + diff --git a/lib/msl/asm/runtime/semihosted_console_io.s b/lib/external/msl/libraries/MSL_Runtime/asm/semihosted_console_io.s similarity index 100% rename from lib/msl/asm/runtime/semihosted_console_io.s rename to lib/external/msl/libraries/MSL_Runtime/asm/semihosted_console_io.s diff --git a/lib/msl/asm/runtime/staticinitializer.s b/lib/external/msl/libraries/MSL_Runtime/asm/staticinitializer.s similarity index 100% rename from lib/msl/asm/runtime/staticinitializer.s rename to lib/external/msl/libraries/MSL_Runtime/asm/staticinitializer.s diff --git a/lib/external/msl/libraries/MSL_Runtime/meson.build b/lib/external/msl/libraries/MSL_Runtime/meson.build new file mode 100644 index 0000000000..b49f1689b3 --- /dev/null +++ b/lib/external/msl/libraries/MSL_Runtime/meson.build @@ -0,0 +1,21 @@ +msl_runtime_srcs = files( + 'asm/semihosted_console_io.s', + 'asm/compressednumbers.s', + 'asm/exceptionhandler.s', + 'asm/new.s', + 'asm/staticinitializer.s', + 'asm/cxxabi_rtti.s', + 'asm/mwexception.s', + 'asm/__nitro_eabi_init.s' +) + +msl_runtime = static_library('NITRO_Runtime_Ai_LE', + name_prefix: '', + sources: msl_runtime_srcs, + c_args: c_args, + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +msl_libs += msl_runtime diff --git a/lib/msl/asm/Mathlib/_d_add.s b/lib/external/msl/libraries/Mathlib/asm/_d_add.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_add.s rename to lib/external/msl/libraries/Mathlib/asm/_d_add.s diff --git a/lib/msl/asm/Mathlib/_d_div.s b/lib/external/msl/libraries/Mathlib/asm/_d_div.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_div.s rename to lib/external/msl/libraries/Mathlib/asm/_d_div.s diff --git a/lib/msl/asm/Mathlib/_d_dtof.s b/lib/external/msl/libraries/Mathlib/asm/_d_dtof.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_dtof.s rename to lib/external/msl/libraries/Mathlib/asm/_d_dtof.s diff --git a/lib/msl/asm/Mathlib/_d_dtoi.s b/lib/external/msl/libraries/Mathlib/asm/_d_dtoi.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_dtoi.s rename to lib/external/msl/libraries/Mathlib/asm/_d_dtoi.s diff --git a/lib/msl/asm/Mathlib/_d_dtou.s b/lib/external/msl/libraries/Mathlib/asm/_d_dtou.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_dtou.s rename to lib/external/msl/libraries/Mathlib/asm/_d_dtou.s diff --git a/lib/msl/asm/Mathlib/_d_dtoull.s b/lib/external/msl/libraries/Mathlib/asm/_d_dtoull.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_dtoull.s rename to lib/external/msl/libraries/Mathlib/asm/_d_dtoull.s diff --git a/lib/msl/asm/Mathlib/_d_itod.s b/lib/external/msl/libraries/Mathlib/asm/_d_itod.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_itod.s rename to lib/external/msl/libraries/Mathlib/asm/_d_itod.s diff --git a/lib/msl/asm/Mathlib/_d_mul.s b/lib/external/msl/libraries/Mathlib/asm/_d_mul.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_mul.s rename to lib/external/msl/libraries/Mathlib/asm/_d_mul.s diff --git a/lib/msl/asm/Mathlib/_d_sqrt.s b/lib/external/msl/libraries/Mathlib/asm/_d_sqrt.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_sqrt.s rename to lib/external/msl/libraries/Mathlib/asm/_d_sqrt.s diff --git a/lib/msl/asm/Mathlib/_d_sub.s b/lib/external/msl/libraries/Mathlib/asm/_d_sub.s similarity index 100% rename from lib/msl/asm/Mathlib/_d_sub.s rename to lib/external/msl/libraries/Mathlib/asm/_d_sub.s diff --git a/lib/msl/asm/Mathlib/_f_add.s b/lib/external/msl/libraries/Mathlib/asm/_f_add.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_add.s rename to lib/external/msl/libraries/Mathlib/asm/_f_add.s diff --git a/lib/msl/asm/Mathlib/_f_cmp.s b/lib/external/msl/libraries/Mathlib/asm/_f_cmp.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_cmp.s rename to lib/external/msl/libraries/Mathlib/asm/_f_cmp.s diff --git a/lib/msl/asm/Mathlib/_f_div.s b/lib/external/msl/libraries/Mathlib/asm/_f_div.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_div.s rename to lib/external/msl/libraries/Mathlib/asm/_f_div.s diff --git a/lib/msl/asm/Mathlib/_f_ftod.s b/lib/external/msl/libraries/Mathlib/asm/_f_ftod.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_ftod.s rename to lib/external/msl/libraries/Mathlib/asm/_f_ftod.s diff --git a/lib/msl/asm/Mathlib/_f_ftoi.s b/lib/external/msl/libraries/Mathlib/asm/_f_ftoi.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_ftoi.s rename to lib/external/msl/libraries/Mathlib/asm/_f_ftoi.s diff --git a/lib/msl/asm/Mathlib/_f_ftou.s b/lib/external/msl/libraries/Mathlib/asm/_f_ftou.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_ftou.s rename to lib/external/msl/libraries/Mathlib/asm/_f_ftou.s diff --git a/lib/msl/asm/Mathlib/_f_itof.s b/lib/external/msl/libraries/Mathlib/asm/_f_itof.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_itof.s rename to lib/external/msl/libraries/Mathlib/asm/_f_itof.s diff --git a/lib/msl/asm/Mathlib/_f_lltof.s b/lib/external/msl/libraries/Mathlib/asm/_f_lltof.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_lltof.s rename to lib/external/msl/libraries/Mathlib/asm/_f_lltof.s diff --git a/lib/msl/asm/Mathlib/_f_mul.s b/lib/external/msl/libraries/Mathlib/asm/_f_mul.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_mul.s rename to lib/external/msl/libraries/Mathlib/asm/_f_mul.s diff --git a/lib/msl/asm/Mathlib/_f_sub.s b/lib/external/msl/libraries/Mathlib/asm/_f_sub.s similarity index 100% rename from lib/msl/asm/Mathlib/_f_sub.s rename to lib/external/msl/libraries/Mathlib/asm/_f_sub.s diff --git a/lib/msl/asm/Mathlib/_ll_div.s b/lib/external/msl/libraries/Mathlib/asm/_ll_div.s similarity index 100% rename from lib/msl/asm/Mathlib/_ll_div.s rename to lib/external/msl/libraries/Mathlib/asm/_ll_div.s diff --git a/lib/msl/asm/Mathlib/_ll_mul.s b/lib/external/msl/libraries/Mathlib/asm/_ll_mul.s similarity index 100% rename from lib/msl/asm/Mathlib/_ll_mul.s rename to lib/external/msl/libraries/Mathlib/asm/_ll_mul.s diff --git a/lib/msl/asm/Mathlib/_ll_sll.s b/lib/external/msl/libraries/Mathlib/asm/_ll_sll.s similarity index 100% rename from lib/msl/asm/Mathlib/_ll_sll.s rename to lib/external/msl/libraries/Mathlib/asm/_ll_sll.s diff --git a/lib/msl/asm/Mathlib/_s32_div_f.s b/lib/external/msl/libraries/Mathlib/asm/_s32_div_f.s similarity index 100% rename from lib/msl/asm/Mathlib/_s32_div_f.s rename to lib/external/msl/libraries/Mathlib/asm/_s32_div_f.s diff --git a/lib/msl/asm/Mathlib/_u32_div_f.s b/lib/external/msl/libraries/Mathlib/asm/_u32_div_f.s similarity index 100% rename from lib/msl/asm/Mathlib/_u32_div_f.s rename to lib/external/msl/libraries/Mathlib/asm/_u32_div_f.s diff --git a/lib/msl/asm/Mathlib/ieee_status.s b/lib/external/msl/libraries/Mathlib/asm/ieee_status.s similarity index 100% rename from lib/msl/asm/Mathlib/ieee_status.s rename to lib/external/msl/libraries/Mathlib/asm/ieee_status.s diff --git a/lib/msl/asm/Mathlib/include/_d_add.inc b/lib/external/msl/libraries/Mathlib/asm/include/_d_add.inc similarity index 100% rename from lib/msl/asm/Mathlib/include/_d_add.inc rename to lib/external/msl/libraries/Mathlib/asm/include/_d_add.inc diff --git a/lib/msl/asm/Mathlib/include/_d_sub.inc b/lib/external/msl/libraries/Mathlib/asm/include/_d_sub.inc similarity index 100% rename from lib/msl/asm/Mathlib/include/_d_sub.inc rename to lib/external/msl/libraries/Mathlib/asm/include/_d_sub.inc diff --git a/lib/msl/asm/Mathlib/include/_f_add.inc b/lib/external/msl/libraries/Mathlib/asm/include/_f_add.inc similarity index 100% rename from lib/msl/asm/Mathlib/include/_f_add.inc rename to lib/external/msl/libraries/Mathlib/asm/include/_f_add.inc diff --git a/lib/msl/asm/Mathlib/include/_f_lltof.inc b/lib/external/msl/libraries/Mathlib/asm/include/_f_lltof.inc similarity index 100% rename from lib/msl/asm/Mathlib/include/_f_lltof.inc rename to lib/external/msl/libraries/Mathlib/asm/include/_f_lltof.inc diff --git a/lib/msl/asm/Mathlib/include/_f_mul.inc b/lib/external/msl/libraries/Mathlib/asm/include/_f_mul.inc similarity index 100% rename from lib/msl/asm/Mathlib/include/_f_mul.inc rename to lib/external/msl/libraries/Mathlib/asm/include/_f_mul.inc diff --git a/lib/msl/asm/Mathlib/include/_f_sub.inc b/lib/external/msl/libraries/Mathlib/asm/include/_f_sub.inc similarity index 100% rename from lib/msl/asm/Mathlib/include/_f_sub.inc rename to lib/external/msl/libraries/Mathlib/asm/include/_f_sub.inc diff --git a/lib/msl/asm/Mathlib/include/_ll_div.inc b/lib/external/msl/libraries/Mathlib/asm/include/_ll_div.inc similarity index 100% rename from lib/msl/asm/Mathlib/include/_ll_div.inc rename to lib/external/msl/libraries/Mathlib/asm/include/_ll_div.inc diff --git a/lib/external/msl/libraries/Mathlib/asm/macros/function.inc b/lib/external/msl/libraries/Mathlib/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/external/msl/libraries/Mathlib/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/lib/external/msl/libraries/Mathlib/meson.build b/lib/external/msl/libraries/Mathlib/meson.build new file mode 100644 index 0000000000..116a036b1c --- /dev/null +++ b/lib/external/msl/libraries/Mathlib/meson.build @@ -0,0 +1,39 @@ +mathlib_srcs = files( + 'asm/_d_add.s', + 'asm/_d_dtof.s', + 'asm/_d_dtoi.s', + 'asm/_d_dtou.s', + 'asm/_d_dtoull.s', + 'asm/_d_itod.s', + 'asm/_d_mul.s', + 'asm/_d_sqrt.s', + 'asm/_d_sub.s', + 'asm/_f_add.s', + 'asm/_f_cmp.s', + 'asm/_f_div.s', + 'asm/_f_ftod.s', + 'asm/_f_ftoi.s', + 'asm/_f_ftou.s', + 'asm/_f_itof.s', + 'asm/_f_lltof.s', + 'asm/_f_mul.s', + 'asm/_f_sub.s', + 'asm/_ll_div.s', + 'asm/_ll_mul.s', + 'asm/_ll_sll.s', + 'asm/_s32_div_f.s', + 'asm/_u32_div_f.s', + 'asm/_d_div.s', + 'asm/ieee_status.s' +) + +mathlib = static_library('FP_fastI_v5t_LE', + name_prefix: '', + sources: mathlib_srcs, + c_args: [c_args], + nasm_args: asm_args, + include_directories: public_includes, + pic: false +) + +msl_libs += mathlib \ No newline at end of file diff --git a/lib/external/msl/libraries/meson.build b/lib/external/msl/libraries/meson.build new file mode 100644 index 0000000000..2c89b979ca --- /dev/null +++ b/lib/external/msl/libraries/meson.build @@ -0,0 +1,5 @@ +subdir('Mathlib') +subdir('MSL_C') +subdir('MSL_C++') +subdir('MSL_Extras') +subdir('MSL_Runtime') diff --git a/lib/external/msl/meson.build b/lib/external/msl/meson.build new file mode 100644 index 0000000000..2debefff23 --- /dev/null +++ b/lib/external/msl/meson.build @@ -0,0 +1,40 @@ +project('msl', ['c', 'nasm']) + +# Compiler flags +c_args = [ + '-O4,p', + '-proc', 'arm946e', + '-enum', 'int', + '-lang', 'c99', + '-Cpp_exceptions', 'off', + '-gccext,on', + '-msgstyle', 'gcc', + '-ipa', 'file', + '-interworking', + '-inline', 'on,noauto', + '-char', 'signed', + '-nosyspath', + '-nostdinc' +] + +asm_args = [ + '-proc', 'arm5TE', + '-gccinc' +] + +# Public includes +public_includes = [ + include_directories('include'), + include_directories('include/MSL_C'), + include_directories('include/MSL_Extras') +] + +# Libraries +msl_libs = [] +subdir('libraries') + +# Own dependency for consumers +msl_dep = declare_dependency( + include_directories: public_includes, + link_with: msl_libs +) \ No newline at end of file diff --git a/asm/overlay061/ov61_0222CEDC.inc b/lib/internal/libgds/asm/include/ov61_0222CEDC.inc similarity index 100% rename from asm/overlay061/ov61_0222CEDC.inc rename to lib/internal/libgds/asm/include/ov61_0222CEDC.inc diff --git a/asm/overlay061/ov61_0222D498.inc b/lib/internal/libgds/asm/include/ov61_0222D498.inc similarity index 100% rename from asm/overlay061/ov61_0222D498.inc rename to lib/internal/libgds/asm/include/ov61_0222D498.inc diff --git a/asm/overlay061/ov61_0222DCDC.inc b/lib/internal/libgds/asm/include/ov61_0222DCDC.inc similarity index 100% rename from asm/overlay061/ov61_0222DCDC.inc rename to lib/internal/libgds/asm/include/ov61_0222DCDC.inc diff --git a/asm/overlay061/ov61_0222E0B8.inc b/lib/internal/libgds/asm/include/ov61_0222E0B8.inc similarity index 100% rename from asm/overlay061/ov61_0222E0B8.inc rename to lib/internal/libgds/asm/include/ov61_0222E0B8.inc diff --git a/lib/internal/libgds/asm/macros/function.inc b/lib/internal/libgds/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/internal/libgds/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/asm/overlay061/ov61_0222CEDC.s b/lib/internal/libgds/asm/ov61_0222CEDC.s similarity index 99% rename from asm/overlay061/ov61_0222CEDC.s rename to lib/internal/libgds/asm/ov61_0222CEDC.s index 97bc4329df..231ac0ef7d 100644 --- a/asm/overlay061/ov61_0222CEDC.s +++ b/lib/internal/libgds/asm/ov61_0222CEDC.s @@ -1,5 +1,5 @@ .include "macros/function.inc" - .include "overlay061/ov61_0222CEDC.inc" + .include "include/ov61_0222CEDC.inc" .extern Unk_ov61_0222E764 diff --git a/asm/overlay061/ov61_0222D498.s b/lib/internal/libgds/asm/ov61_0222D498.s similarity index 99% rename from asm/overlay061/ov61_0222D498.s rename to lib/internal/libgds/asm/ov61_0222D498.s index 1a7dd5cae8..050445e209 100644 --- a/asm/overlay061/ov61_0222D498.s +++ b/lib/internal/libgds/asm/ov61_0222D498.s @@ -1,5 +1,5 @@ .include "macros/function.inc" - .include "overlay061/ov61_0222D498.inc" + .include "include/ov61_0222D498.inc" diff --git a/asm/overlay061/ov61_0222DCDC.s b/lib/internal/libgds/asm/ov61_0222DCDC.s similarity index 99% rename from asm/overlay061/ov61_0222DCDC.s rename to lib/internal/libgds/asm/ov61_0222DCDC.s index c7a150aa00..ef190d52dd 100644 --- a/asm/overlay061/ov61_0222DCDC.s +++ b/lib/internal/libgds/asm/ov61_0222DCDC.s @@ -1,5 +1,5 @@ .include "macros/function.inc" - .include "overlay061/ov61_0222DCDC.inc" + .include "include/ov61_0222DCDC.inc" diff --git a/asm/overlay061/ov61_0222E0B8.s b/lib/internal/libgds/asm/ov61_0222E0B8.s similarity index 99% rename from asm/overlay061/ov61_0222E0B8.s rename to lib/internal/libgds/asm/ov61_0222E0B8.s index 9338507a9c..fbf97291fc 100644 --- a/asm/overlay061/ov61_0222E0B8.s +++ b/lib/internal/libgds/asm/ov61_0222E0B8.s @@ -1,5 +1,5 @@ .include "macros/function.inc" - .include "overlay061/ov61_0222E0B8.inc" + .include "include/ov61_0222E0B8.inc" diff --git a/asm/overlay061/ov61_0222E478.s b/lib/internal/libgds/asm/ov61_0222E478.s similarity index 100% rename from asm/overlay061/ov61_0222E478.s rename to lib/internal/libgds/asm/ov61_0222E478.s diff --git a/include/library/global_terminal.h b/lib/internal/libgds/include/gds.h similarity index 100% rename from include/library/global_terminal.h rename to lib/internal/libgds/include/gds.h diff --git a/lib/internal/libgds/meson.build b/lib/internal/libgds/meson.build new file mode 100644 index 0000000000..781fc4524a --- /dev/null +++ b/lib/internal/libgds/meson.build @@ -0,0 +1,17 @@ +libgds_srcs = files( + 'asm/ov61_0222CEDC.s', + 'asm/ov61_0222D498.s', + 'asm/ov61_0222DCDC.s', + 'asm/ov61_0222E0B8.s', + 'asm/ov61_0222E478.s' +) + +libgds_public_includes = include_directories('include') + +libgds = static_library('gds', + sources: libgds_srcs, + c_args: c_args, + nasm_args: asm_args, + include_directories: libgds_public_includes, + pic: false +) \ No newline at end of file diff --git a/asm/include/unk_0209C400.inc b/lib/internal/libspl/asm/include/unk_0209C400.inc similarity index 100% rename from asm/include/unk_0209C400.inc rename to lib/internal/libspl/asm/include/unk_0209C400.inc diff --git a/asm/include/unk_0209CF00.inc b/lib/internal/libspl/asm/include/unk_0209CF00.inc similarity index 100% rename from asm/include/unk_0209CF00.inc rename to lib/internal/libspl/asm/include/unk_0209CF00.inc diff --git a/asm/include/unk_0209DD54.inc b/lib/internal/libspl/asm/include/unk_0209DD54.inc similarity index 100% rename from asm/include/unk_0209DD54.inc rename to lib/internal/libspl/asm/include/unk_0209DD54.inc diff --git a/asm/include/unk_020A05BC.inc b/lib/internal/libspl/asm/include/unk_020A05BC.inc similarity index 100% rename from asm/include/unk_020A05BC.inc rename to lib/internal/libspl/asm/include/unk_020A05BC.inc diff --git a/asm/include/unk_020A19F0.inc b/lib/internal/libspl/asm/include/unk_020A19F0.inc similarity index 100% rename from asm/include/unk_020A19F0.inc rename to lib/internal/libspl/asm/include/unk_020A19F0.inc diff --git a/asm/include/unk_020A1E30.inc b/lib/internal/libspl/asm/include/unk_020A1E30.inc similarity index 100% rename from asm/include/unk_020A1E30.inc rename to lib/internal/libspl/asm/include/unk_020A1E30.inc diff --git a/asm/include/unk_020A2354.inc b/lib/internal/libspl/asm/include/unk_020A2354.inc similarity index 100% rename from asm/include/unk_020A2354.inc rename to lib/internal/libspl/asm/include/unk_020A2354.inc diff --git a/lib/internal/libspl/asm/macros/function.inc b/lib/internal/libspl/asm/macros/function.inc new file mode 100644 index 0000000000..f71cc4ccae --- /dev/null +++ b/lib/internal/libspl/asm/macros/function.inc @@ -0,0 +1,29 @@ +#pragma once + + .macro arm_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .arm + .endm + + .macro arm_func_end name + .size \name, .-\name + .endm + + .macro thumb_func_start name + .balign 4, 0 + .global \name + .type \name, @function + .thumb + .endm + + .macro non_word_aligned_thumb_func_start name + .global \name + .type \name, @function + .thumb + .endm + + .macro thumb_func_end name + .size \name, .-\name + .endm \ No newline at end of file diff --git a/asm/unk_0209C400.s b/lib/internal/libspl/asm/unk_0209C400.s similarity index 100% rename from asm/unk_0209C400.s rename to lib/internal/libspl/asm/unk_0209C400.s diff --git a/asm/unk_0209CF00.s b/lib/internal/libspl/asm/unk_0209CF00.s similarity index 100% rename from asm/unk_0209CF00.s rename to lib/internal/libspl/asm/unk_0209CF00.s diff --git a/asm/unk_0209DD54.s b/lib/internal/libspl/asm/unk_0209DD54.s similarity index 100% rename from asm/unk_0209DD54.s rename to lib/internal/libspl/asm/unk_0209DD54.s diff --git a/asm/unk_020A05BC.s b/lib/internal/libspl/asm/unk_020A05BC.s similarity index 100% rename from asm/unk_020A05BC.s rename to lib/internal/libspl/asm/unk_020A05BC.s diff --git a/asm/unk_020A19F0.s b/lib/internal/libspl/asm/unk_020A19F0.s similarity index 100% rename from asm/unk_020A19F0.s rename to lib/internal/libspl/asm/unk_020A19F0.s diff --git a/asm/unk_020A1E30.s b/lib/internal/libspl/asm/unk_020A1E30.s similarity index 100% rename from asm/unk_020A1E30.s rename to lib/internal/libspl/asm/unk_020A1E30.s diff --git a/asm/unk_020A2238.s b/lib/internal/libspl/asm/unk_020A2238.s similarity index 100% rename from asm/unk_020A2238.s rename to lib/internal/libspl/asm/unk_020A2238.s diff --git a/asm/unk_020A2354.s b/lib/internal/libspl/asm/unk_020A2354.s similarity index 100% rename from asm/unk_020A2354.s rename to lib/internal/libspl/asm/unk_020A2354.s diff --git a/include/library/spl.h b/lib/internal/libspl/include/spl.h similarity index 100% rename from include/library/spl.h rename to lib/internal/libspl/include/spl.h diff --git a/lib/internal/libspl/meson.build b/lib/internal/libspl/meson.build new file mode 100644 index 0000000000..6c2a76c9d5 --- /dev/null +++ b/lib/internal/libspl/meson.build @@ -0,0 +1,20 @@ +libspl_srcs = files( + 'asm/unk_0209C400.s', + 'asm/unk_0209CF00.s', + 'asm/unk_0209DD54.s', + 'asm/unk_020A05BC.s', + 'asm/unk_020A19F0.s', + 'asm/unk_020A1E30.s', + 'asm/unk_020A2238.s', + 'asm/unk_020A2354.s' +) + +libspl_public_includes = include_directories('include') + +libspl = static_library('spl', + sources: libspl_srcs, + c_args: c_args, + nasm_args: asm_args, + include_directories: [public_includes, libspl_public_includes], + pic: false +) diff --git a/lib/internal/meson.build b/lib/internal/meson.build new file mode 100644 index 0000000000..3647ab2065 --- /dev/null +++ b/lib/internal/meson.build @@ -0,0 +1,2 @@ +subdir('libgds') +subdir('libspl') diff --git a/lib/syscall/Makefile b/lib/syscall/Makefile deleted file mode 100644 index 9634e80701..0000000000 --- a/lib/syscall/Makefile +++ /dev/null @@ -1,32 +0,0 @@ -GAME_CODE ?= arm9 -MWCCVER := 2.0/sp2p3 -PROC := arm946e -PROC_S := arm5te -PROC_LD := v5te -BUILD_DIR := build - -include ../../common.mk - -MWLDFLAGS := -library -nodead -w off -proc $(PROC_LD) -LIB := $(BUILD_DIR)/libsyscall.a - -.PHONY: all install - -INSTALL_PREFIX ?= $(WORK_DIR)/lib/ARM9-TS -INSTALL_LIBDIR := $(INSTALL_PREFIX)/lib - -all: $(LIB) - -ASM_SRCS := asm/_secure.s - -$(LIB): $(ALL_OBJS) - cd $(BUILD_DIR) && LM_LICENSE_FILE=$(BACK_REL)/$(LM_LICENSE_FILE) $(WINE) $(MWLD) $(MWLDFLAGS) -o $(BACK_REL)/$(LIB) $(ALL_OBJS:$(BUILD_DIR)/%=%) - -install: all - $(shell mkdir -p $(INSTALL_LIBDIR)) - cp $(LIB) $(INSTALL_LIBDIR)/ - -tidy: - $(RM) -r $(BUILD_DIR) - -clean: tidy diff --git a/main.lsf b/main.lsf deleted file mode 100644 index f23e59be34..0000000000 --- a/main.lsf +++ /dev/null @@ -1,2207 +0,0 @@ -############################################################ -### Linker spec file for Pokemon Platinum US ### -### Pass this to the SDK's makelcf.exe utility ### -### along with the ARM9-TS template. ### -### WIP ### -############################################################ - -Static main -{ - Address 0x02000000 - StackSize 0 2048 - Object src/main.o - Object src/unk_0200112C.o - Object src/game_version.o - Object src/unk_02001AF4.o - Object src/unk_020021B0.o - Object src/unk_02002328.o - Object src/unk_02002B7C.o - Object src/unk_02002F38.o - Object src/unk_02003B60.o - Object src/unk_020041CC.o - Object src/unk_02005474.o - Object src/unk_02006224.o - Object src/game_overlay.o - Object src/unk_0200679C.o - Object src/unk_020067E8.o - Object src/narc.o - Object src/unk_02006E3C.o - Object src/unk_0200762C.o - Object src/unk_020093B4.o - Object src/unk_02009714.o - Object src/unk_0200A328.o - Object src/unk_0200A784.o - Object src/unk_0200A9DC.o - Object src/unk_0200AC5C.o - Object src/unk_0200B29C.o - Object src/unk_0200B358.o - Object src/unk_0200C440.o - Object src/unk_0200C6E4.o - Object src/unk_0200D9E8.o - Object src/unk_0200DA60.o - Object src/unk_0200F174.o - Object src/unk_0200F85C.o - Object src/unk_02012480.o - Object src/unk_02012744.o - Object src/unk_020131EC.o - Object src/unk_0201378C.o - Object src/unk_02013A04.o - Object src/unk_02013B10.o - Object src/unk_02014000.o - Object src/unk_020149F0.o - Object src/unk_02014A84.o - Object src/unk_02014D38.o - Object src/unk_02015064.o - Object src/unk_0201567C.o - Object src/unk_020158A8.o - Object src/unk_02015920.o - Object src/unk_02015F84.o - Object src/unk_02017038.o - Object src/unk_020170BC.o - Object src/unk_02017428.o - Object src/unk_02017498.o - Object src/unk_02017728.o - Object src/heap.o - Object src/unk_02018340.o - Object src/unk_0201C970.o - Object src/unk_0201CCF0.o - Object src/unk_0201CED8.o - Object src/unk_0201D0C8.o - Object src/unk_0201D15C.o - Object src/unk_0201D670.o - Object src/unk_0201DBEC.o - Object src/unk_0201DD00.o - Object src/unk_0201E010.o - Object src/unk_0201E0A4.o - Object src/unk_0201E190.o - Object src/unk_0201E3BC.o - Object src/unk_0201E3D8.o - Object src/unk_0201E86C.o - Object src/unk_0201F834.o - Object src/gx_layers.o - Object src/unk_02020020.o - Object src/unk_02020AEC.o - Object src/unk_020218BC.o - Object src/unk_02022594.o - Object src/unk_02022844.o - Object src/error_handling.o - Object src/unk_0202298C.o - Object src/unk_0202309C.o - Object src/unk_020232E0.o - Object src/strbuf.o - Object src/unk_02023FCC.o - Object src/unk_0202414C.o - Object src/unk_0202419C.o - Object src/unk_020241F0.o - Object src/unk_02024220.o - Object src/unk_02024358.o - Object src/unk_0202440C.o - Object src/unk_020244AC.o - Object src/unk_02025CB0.o - Object src/unk_02025E08.o - Object src/unk_02025E68.o - Object src/unk_0202602C.o - Object src/unk_02026150.o - Object src/unk_020261E4.o - Object src/unk_0202631C.o - Object src/unk_020277A4.o - Object src/unk_020279FC.o - Object src/unk_02027B70.o - Object src/unk_02027F50.o - Object src/unk_02027F84.o - Object src/unk_02028124.o - Object src/unk_0202854C.o - Object src/unk_020298BC.o - Object src/poffin.o - Object src/unk_0202ACE0.o - Object src/unk_0202B37C.o - Object src/coins.o - Object src/unk_0202B604.o - Object src/unk_0202C7FC.o - Object src/unk_0202C858.o - Object src/unk_0202C9F4.o - Object src/unk_0202CBE4.o - Object src/unk_0202CC64.o - Object src/unk_0202CD50.o - Object src/unk_0202D05C.o - Object src/unk_0202D778.o - Object src/unk_0202D7A8.o - Object src/unk_0202DA40.o - Object src/unk_0202DAB4.o - Object src/unk_0202DF8C.o - Object src/unk_0202E2CC.o - Object src/unk_0202E840.o - Object src/unk_0202EEC0.o - Object src/unk_0202F108.o - Object src/unk_0202F180.o - Object src/unk_0202F1D4.o - Object src/unk_0202FF4C.o - Object src/unk_02030108.o - Object src/unk_020302D0.o - Object src/unk_02030494.o - Object src/unk_0203061C.o - Object src/unk_02030880.o - Object src/unk_02030A80.o - Object src/unk_02030CE8.o - Object src/unk_02030EA4.o - Object src/unk_02030EE0.o - Object src/unk_02032188.o - Object src/unk_020322D8.o - Object src/unk_0203266C.o - Object src/unk_02032798.o - Object src/unk_020329E0.o - Object src/unk_02033200.o - Object src/unk_02034198.o - Object src/unk_020363E8.o - Object src/unk_020366A0.o - Object src/unk_02038ED4.o - Object src/unk_02038F8C.o - Object src/unk_02038FFC.o - Object src/unk_0203909C.o - Object src/unk_020393C8.o - Object src/unk_02039814.o - Object src/unk_02039A58.o - Object src/unk_02039A64.o - Object src/unk_02039C80.o - Object src/map_header.o - Object src/unk_0203A378.o - Object src/unk_0203A6DC.o - Object src/unk_0203A7D8.o - Object src/unk_0203A944.o - Object src/unk_0203A9C8.o - Object src/unk_0203C954.o - Object src/unk_0203CC84.o - Object src/unk_0203D178.o - Object src/unk_0203D1B8.o - Object src/unk_0203E724.o - Object src/unk_0203E880.o - Object src/unk_0203F6C4.o - Object src/unk_02046AD4.o - Object src/unk_02046C7C.o - Object src/unk_020474B8.o - Object src/unk_020480A8.o - Object src/unk_020482D4.o - Object src/unk_02048614.o - Object src/unk_02048BD0.o - Object src/unk_02048DD8.o - Object src/unk_020494DC.o - Object src/unk_02049D08.o - Object src/unk_0204AEE8.o - Object src/unk_0204B64C.o - Object src/unk_0204B830.o - Object src/unk_0204C500.o - Object src/unk_0204C6C8.o - Object src/unk_0204C8F0.o - Object src/unk_0204CA84.o - Object src/unk_0204CDDC.o - Object src/unk_0204CFFC.o - Object src/unk_0204E240.o - Object src/unk_0204E378.o - Object src/unk_0204E3CC.o - Object src/unk_0204E75C.o - Object src/unk_0204E974.o - Object src/unk_0204EDA4.o - Object src/unk_0204F02C.o - Object src/unk_0204F04C.o - Object src/unk_0204F13C.o - Object src/unk_0204FA34.o - Object src/unk_0204FAB4.o - Object src/unk_0205001C.o - Object src/unk_0205003C.o - Object src/unk_02050548.o - Object src/unk_02050568.o - Object src/unk_020507CC.o - Object src/unk_020508D4.o - Object src/unk_02050A74.o - Object src/enc_effects.o - Object src/unk_02051D8C.o - Object src/unk_020528D0.o - Object src/unk_02052C6C.o - Object src/unk_020530C8.o - Object src/unk_02054884.o - Object src/unk_02054BD0.o - Object src/unk_02054D00.o - Object src/unk_020553DC.o - Object src/unk_020556C4.o - Object src/unk_0205578C.o - Object src/unk_02055808.o - Object src/unk_020559DC.o - Object src/unk_02055C50.o - Object src/unk_020562F8.o - Object src/unk_02056720.o - Object src/unk_02056B30.o - Object src/unk_020573FC.o - Object src/unk_0205749C.o - Object src/unk_02057518.o - Object src/unk_0205964C.o - Object src/unk_0205A0D8.o - Object src/unk_0205B33C.o - Object src/unk_0205C22C.o - Object src/unk_0205C980.o - Object src/unk_0205CA94.o - Object src/unk_0205D8CC.o - Object src/unk_0205DAC8.o - Object src/unk_0205DFC4.o - Object src/unk_0205E7D0.o - Object src/unk_0205F180.o - Object src/unk_02061804.o - Object src/unk_020EDBAC.o - Object src/unk_02063400.o - Object src/unk_0206450C.o - Object src/unk_020655F4.o - Object src/unk_020673B8.o - Object src/unk_020677F4.o - Object src/unk_02067A84.o - Object src/unk_02068344.o - Object src/unk_020683F4.o - Object src/unk_0206940C.o - Object src/unk_02069BE0.o - Object src/unk_0206A780.o - Object src/unk_0206A8DC.o - Object src/unk_0206AFE0.o - Object src/unk_0206B70C.o - Object src/unk_0206B9D8.o - Object src/unk_0206C0E8.o - Object src/unk_0206C2D0.o - Object src/unk_0206C33C.o - Object src/unk_0206C660.o - Object src/unk_0206C784.o - Object src/unk_0206CCB0.o - Object src/unk_0206F314.o - Object src/unk_02070428.o - Object src/unk_0207064C.o - Object src/unk_0207070C.o - Object src/unk_020711C8.o - Object src/unk_020711EC.o - Object src/unk_0207160C.o - Object src/unk_02071B10.o - Object src/unk_02071CD0.o - Object src/unk_02071CFC.o - Object src/unk_02071D40.o - Object src/unk_020722AC.o - Object src/unk_02073700.o - Object src/unk_02073838.o - Object src/unk_02073C2C.o - Object src/move_table.o - Object src/unk_02079170.o - Object src/unk_020797C8.o - Object src/unk_02079D40.o - Object src/party.o - Object src/unk_0207A274.o - Object src/unk_0207A2A8.o - Object src/unk_0207A6DC.o - Object src/unk_0207AE68.o - Object src/unk_0207C63C.o - Object src/unk_0207C908.o - Object src/unk_0207CB08.o - Object src/item.o - Object src/unk_0207D3B8.o - Object src/unk_0207DA28.o - Object src/unk_0207DFAC.o - Object src/unk_0207E060.o - Object src/unk_0207E0B8.o - Object src/unk_020819DC.o - Object src/unk_02082C2C.o - Object src/unk_02083370.o - Object src/unk_02084B70.o - Object src/unk_0208694C.o - Object src/unk_020890F4.o - Object src/unk_02089604.o - Object src/unk_0208A3F4.o - Object src/unk_0208B284.o - Object src/unk_0208BA78.o - Object src/unk_0208BEBC.o - Object src/unk_0208C010.o - Object src/unk_0208C098.o - Object src/unk_0208C324.o - Object src/unk_0208EA44.o - Object src/unk_0208FCF8.o - Object src/unk_020916B4.o - Object src/unk_020920C0.o - Object src/unk_020923C0.o - Object src/unk_02092494.o - Object src/unk_020933F8.o - Object src/unk_02094EDC.o - Object src/unk_02095AF0.o - Object src/unk_02095CD4.o - Object src/unk_02095E98.o - Object src/unk_020961E8.o - Object src/unk_02096420.o - Object src/unk_020972FC.o - Object src/unk_0209739C.o - Object src/unk_0209747C.o - Object src/unk_02097624.o - Object src/unk_02097B18.o - Object src/unk_02098218.o - Object src/unk_020985E4.o - Object src/unk_020986CC.o - Object src/unk_02098700.o - Object src/unk_02098988.o - Object src/unk_020F6824.o - Object src/unk_020989DC.o - Object src/unk_02098FFC.o - Object src/unk_02099500.o - Object src/unk_02099550.o - Object src/unk_02099604.o - Object src/unk_020996D0.o - Object src/unk_020997B8.o - Object src/unk_020998EC.o - Object src/unk_02099D44.o - Object src/unk_02099DFC.o - Object src/unk_0209A2C4.o - Object src/unk_0209A74C.o - Object src/unk_0209AA74.o - Object src/unk_0209AC14.o - Object src/unk_0209ACBC.o - Object src/unk_0209ACF4.o - Object src/unk_0209B344.o - Object src/error_message_reset.o - Object src/unk_0209B6F8.o - Object src/unk_0209BA18.o - Object src/unk_0209BA80.o - Object src/unk_0209BDF8.o - Object src/unk_0209C194.o - Object src/unk_0209C370.o - Object src/unk_0209C390.o - Object asm/unk_0209C400.o - Object asm/unk_0209CF00.o - Object asm/unk_0209DD54.o - Object asm/unk_020A05BC.o - Object asm/unk_020A19F0.o - Object asm/unk_020A1E30.o - Object asm/unk_020A2238.o - Object asm/unk_020A2354.o - Object lib/NitroSDK/src/wvr/wvr.o - Object lib/NitroDWC/asm/bm/dwc_backup.o - Object lib/NitroDWC/asm/bm/dwc_bm_init.o - Object lib/NitroDWC/asm/bm/util_wifiidtool.o - Object lib/NitroDWC/src/account/dwc_init.o - Object lib/NitroDWC/src/account/dwc_account.o - Object asm/unk_020A490C.o - Object asm/unk_020A4A34.o - Object lib/NitroSystem/src/fnd/list_nnsfnd.o - Object lib/NitroSystem/src/fnd/heapcommon.o - Object lib/NitroSystem/src/fnd/expheap.o - Object lib/NitroSystem/src/fnd/frameheap.o - Object lib/NitroSystem/src/fnd/unitheap.o - Object lib/NitroSystem/src/fnd/allocator.o - Object lib/NitroSystem/src/gfd/gfd_TexVramMan.o - Object lib/NitroSystem/src/gfd/gfd_PlttVramMan.o - Object lib/NitroSystem/src/gfd/gfd_FrameTexVramMan.o - Object lib/NitroSystem/src/gfd/gfd_FramePlttVramMan.o - Object lib/NitroSystem/src/gfd/gfd_VramTransferManager.o - Object lib/NitroSystem/src/gfd/gfdi_LinkedListVramMan_Common.o - Object lib/NitroSystem/src/gfd/gfd_LinkedListTexVramMan.o - Object lib/NitroSystem/src/gfd/gfd_LinkedListPlttVramMan.o - Object lib/NitroSystem/src/g2d/load/g2d_NAN_load.o - Object lib/NitroSystem/src/g2d/load/g2d_NOB_load.o - Object lib/NitroSystem/src/g2d/load/g2d_NMC_load.o - Object lib/NitroSystem/src/g2d/load/g2d_NCG_load.o - Object lib/NitroSystem/src/g2d/load/g2d_NCL_load.o - Object lib/NitroSystem/src/g2d/load/g2d_NSC_load.o - Object lib/NitroSystem/src/g2d/load/g2d_Load.o - Object lib/NitroSystem/src/g2d/g2d_Softsprite.o - Object lib/NitroSystem/src/g2d/g2d_Animation.o - Object lib/NitroSystem/src/g2d/g2d_OAM.o - Object lib/NitroSystem/src/g2d/g2d_PaletteTable.o - Object lib/NitroSystem/src/g2d/g2d_Image.o - Object lib/NitroSystem/src/g2d/g2d_SRTcontrol.o - Object lib/NitroSystem/src/g2d/g2d_Node.o - Object lib/NitroSystem/src/g2d/g2d_CellAnimation.o - Object lib/NitroSystem/src/g2d/g2d_MultiCellanimation.o - Object lib/NitroSystem/src/g2d/g2d_Renderer.o - Object lib/NitroSystem/src/g2d/internal/g2di_Mtx32.o - Object lib/NitroSystem/src/g2d/g2d_celltransfermanager.o - Object lib/NitroSystem/src/g2d/g2d_oamsoftwarespritedraw.o - Object lib/NitroSystem/src/g2d/g2d_renderercore.o - Object lib/NitroSystem/src/g2d/g2d_font.o - Object lib/NitroSystem/src/g2d/g2d_charcanvas.o - Object lib/NitroSystem/src/g2d/g2d_textcanvas.o - Object lib/NitroSystem/src/g2d/load/g2d_NFT_load.o - Object lib/NitroSystem/src/g2d/internal/g2di_BitReader.o - Object lib/NitroSystem/src/g2d/internal/g2di_SplitChar.o - Object lib/NitroSystem/src/g3d/kernel.o - Object lib/NitroSystem/src/g3d/glbstate.o - Object lib/NitroSystem/src/g3d/anm.o - Object lib/NitroSystem/src/g3d/cgtool.o - Object lib/NitroSystem/src/g3d/sbc.o - Object lib/NitroSystem/src/g3d/1mat1shp.o - Object lib/NitroSystem/src/g3d/gecom.o - Object lib/NitroSystem/src/g3d/util_nnsg3d.o - Object lib/NitroSystem/src/g3d/mem_nnsg3d.o - Object lib/NitroSystem/src/g3d/model.o - Object lib/NitroSystem/src/g3d/binres/res_struct_accessor.o - Object lib/NitroSystem/src/g3d/binres/res_struct_accessor_anm.o - Object lib/NitroSystem/asm/g3d/nsbca.o - Object lib/NitroSystem/src/g3d/anm/nsbma.o - Object lib/NitroSystem/src/g3d/anm/nsbta.o - Object lib/NitroSystem/src/g3d/anm/nsbtp.o - Object lib/NitroSystem/src/g3d/anm/nsbva.o - Object lib/NitroSystem/src/g3d/cgtool/basic.o - Object lib/NitroSystem/src/g3d/cgtool/maya.o - Object lib/NitroSystem/src/g3d/cgtool/si3d.o - Object lib/NitroSystem/src/g3d/cgtool/3dsmax.o - Object lib/NitroSystem/src/g3d/cgtool/xsi.o - Object lib/NitroSystem/src/snd/main_nnssnd.o - Object lib/NitroSystem/src/snd/resource_mgr.o - Object lib/NitroSystem/src/snd/waveout.o - Object lib/NitroSystem/src/snd/player.o - Object lib/NitroSystem/src/snd/stream_nnssnd.o - Object lib/NitroSystem/src/snd/capture.o - Object lib/NitroSystem/src/snd/sndarc.o - Object lib/NitroSystem/src/snd/heap_nnssnd.o - Object lib/NitroSystem/src/snd/sndarc_loader.o - Object lib/NitroSystem/src/snd/sndarc_player.o - Object lib/NitroSystem/src/snd/sndarc_stream.o - Object lib/NitroSystem/src/snd/seqdata.o - Object lib/NitroSystem/src/snd/fader.o - Object lib/NitroSDK/src/fx/fx_mtx22.o - Object lib/NitroSDK/src/fx/fx_mtx33.o - Object lib/NitroSDK/src/fx/fx_mtx43.o - Object lib/NitroSDK/src/fx/fx_mtx44.o - Object lib/NitroSDK/src/fx/fx_cp.o - Object lib/NitroSDK/src/fx/fx_vec.o - Object lib/NitroSDK/src/fx/fx_trig.o - Object lib/NitroSDK/src/fx/fx_sincos.o - Object lib/NitroSDK/src/fx/fx_atanidx.o - Object lib/NitroSDK/src/fx/fx.o - Object lib/NitroSDK/src/gx/gx.o - Object lib/NitroSDK/src/gx/gxstate.o - Object lib/NitroSDK/src/gx/gx_vramcnt.o - Object lib/NitroSDK/src/gx/gx_bgcnt.o - Object lib/NitroSDK/src/gx/g2.o - Object lib/NitroSDK/src/gx/g3b.o - Object lib/NitroSDK/src/gx/g3imm.o - Object lib/NitroSDK/src/gx/g3x.o - Object lib/NitroSDK/src/gx/g3_util.o - Object lib/NitroSDK/src/gx/gx_load2d.o - Object lib/NitroSDK/src/gx/gx_load3d.o - Object lib/NitroSDK/src/gx/g3.o - Object lib/NitroSDK/src/gx/gxasm.o - Object lib/NitroSDK/asm/os/os_irqhandler.o - Object lib/NitroSDK/asm/os/os_irqtable.o - Object lib/NitroSDK/asm/os/os_interrupt.o - Object lib/NitroSDK/asm/os/os_spinlock.o - Object lib/NitroSDK/asm/os/os_printf.o - Object lib/NitroSDK/asm/os/os_thread.o - Object lib/NitroSDK/asm/os/os_context.o - Object lib/NitroSDK/asm/os/os_emulator.o - Object lib/NitroSDK/asm/os/os_message.o - Object lib/NitroSDK/asm/os/os_mutex.o - Object lib/NitroSDK/asm/os/os_cache.o - Object lib/NitroSDK/asm/os/os_init.o - Object lib/NitroSDK/asm/os/os_arena.o - Object lib/NitroSDK/asm/os/os_alloc.o - Object lib/NitroSDK/asm/os/os_tcm.o - Object lib/NitroSDK/asm/os/os_protectionunit.o - Object lib/NitroSDK/asm/os/os_protectionregion.o - Object lib/NitroSDK/asm/os/os_exception.o - Object lib/NitroSDK/asm/os/os_timer.o - Object lib/NitroSDK/asm/os/os_tick.o - Object lib/NitroSDK/asm/os/os_alarm.o - Object lib/NitroSDK/asm/os/os_valarm.o - Object lib/NitroSDK/asm/os/os_system.o - Object lib/NitroSDK/asm/os/os_reset.o - Object lib/NitroSDK/asm/os/os_ownerinfo.o - Object lib/NitroSDK/asm/os/os_vramexclusive.o - Object lib/NitroSDK/asm/os/os_entropy.o - Object lib/NitroSDK/asm/os/os_terminate_proc.o - Object lib/NitroSDK/src/mi/mi_wram.o - Object lib/NitroSDK/src/mi/mi_dma.o - Object lib/NitroSDK/src/mi/mi_dma_hblank.o - Object lib/NitroSDK/src/mi/mi_dma_gxcommand.o - Object lib/NitroSDK/src/mi/mi_memory.o - Object lib/NitroSDK/src/mi/mi_swap.o - Object lib/NitroSDK/src/mi/mi_uncompress.o - Object lib/NitroSDK/src/mi/mi_dma_card.o - Object lib/NitroSDK/src/mi/mi_init.o - Object lib/NitroSDK/src/snd/snd_interface.o - Object lib/NitroSDK/src/snd/snd_main.o - Object lib/NitroSDK/src/snd/snd_command.o - Object lib/NitroSDK/src/snd/snd_alarm.o - Object lib/NitroSDK/src/snd/snd_work.o - Object lib/NitroSDK/src/snd/snd_util.o - Object lib/NitroSDK/src/snd/snd_bank.o - Object lib/NitroSDK/src/pxi/pxi_init.o - Object lib/NitroSDK/src/pxi/pxi_fifo.o - Object lib/NitroSDK/src/fs/fs_command.o - Object lib/NitroSDK/src/fs/fs_command_default.o - Object lib/NitroSDK/src/fs/fs_archive.o - Object lib/NitroSDK/src/fs/fs_file.o - Object lib/NitroSDK/src/fs/fs_rom.o - Object lib/NitroSDK/src/fs/fs_overlay.o - Object lib/NitroSDK/asm/dgt/hash1.o - Object lib/NitroSDK/asm/dgt/hash2.o - Object lib/NitroSDK/asm/dgt/hmac.o - Object lib/NitroSDK/asm/dgt/sha1s-arm4cw.o - Object lib/NitroSDK/src/cp/cp_context.o - Object lib/NitroSDK/src/spi/tp.o - Object lib/NitroSDK/src/spi/mic.o - Object lib/NitroSDK/src/spi/pm.o - Object lib/NitroSDK/src/rtc/external.o - Object lib/NitroSDK/src/rtc/internal.o - Object lib/NitroSDK/src/rtc/convert.o - Object lib/NitroSDK/src/card/card_common.o - Object lib/NitroSDK/src/card/card_spi.o - Object lib/NitroSDK/src/card/card_backup.o - Object lib/NitroSDK/src/card/card_rom.o - Object lib/NitroSDK/src/card/card_request.o - Object lib/NitroSDK/asm/card/card_pullout.o - Object lib/NitroSDK/asm/wm/wm_system.o - Object lib/NitroSDK/src/wm/wm_sync.o - Object lib/NitroSDK/src/wm/wm_standard.o - Object lib/NitroSDK/src/wm/wm_mp.o - Object lib/NitroSDK/src/wm/wm_dcf.o - Object lib/NitroSDK/src/wm/wm_ds.o - Object lib/NitroSDK/src/wm/wm_ks.o - Object lib/NitroSDK/src/wm/wm_etc.o - Object lib/NitroSDK/src/ctrdg/ctrdg.o - Object lib/NitroSDK/src/ctrdg/ctrdg_proc.o - Object lib/NitroSDK/src/ctrdg/ctrdg_backup.o - Object lib/NitroSDK/src/ctrdg/ctrdg_flash_common.o - Object lib/NitroSDK/src/ctrdg/ctrdg_sram.o - Object lib/NitroSDK/src/ctrdg/ctrdg_flash_AT29LV512.o - Object lib/NitroSDK/src/ctrdg/ctrdg_flash_LE26FV10N1TS-10.o - Object lib/NitroSDK/src/ctrdg/ctrdg_flash_LE39FW512.o - Object lib/NitroSDK/src/ctrdg/ctrdg_flash_MX29L010.o - Object lib/NitroSDK/src/ctrdg/ctrdg_flash_MX29L512.o - Object lib/NitroSDK/src/ctrdg/ctrdg_task.o - Object lib/NitroSDK/src/math/math.o - Object lib/NitroSDK/src/math/dgt.o - Object lib/NitroSDK/src/math/crc.o - Object lib/NitroSDK/asm/std/std_string.o - Object lib/NitroSDK/asm/std/std_sprintf.o - Object lib/msl/asm/MSL_C/abort_exit_arm.o - Object lib/msl/asm/MSL_C/critical_region.o - Object lib/msl/asm/MSL_C/math_arm.o - Object lib/msl/src/MSL_C/alloc.o - Object lib/msl/src/MSL_C/ansi_files.o - Object lib/msl/src/MSL_C/errno.o - Object lib/msl/src/MSL_C/arith.o - Object lib/msl/src/MSL_C/assert.o - Object lib/msl/src/MSL_C/buffer_io.o - Object lib/msl/asm/MSL_C/direct_io.o - Object lib/msl/asm/MSL_C/file_io.o - Object lib/msl/asm/MSL_C/file_pos.o - Object lib/msl/asm/MSL_C/mbstring.o - Object lib/msl/asm/MSL_C/mem_msl.o - Object lib/msl/asm/MSL_C/mem_funcs.o - Object lib/msl/asm/MSL_C++/float.o - Object lib/msl/asm/MSL_C/locale_c.o - Object lib/msl/asm/MSL_C/printf.o - Object lib/msl/asm/MSL_C/qsort.o - Object lib/msl/asm/MSL_C/rand.o - Object lib/msl/asm/MSL_C/ctype.o - Object lib/msl/asm/MSL_C/scanf.o - Object lib/msl/asm/MSL_C/signal.o - Object lib/msl/asm/MSL_C/string.o - Object lib/msl/asm/MSL_C/strtold.o - Object lib/msl/asm/MSL_C/strtoul.o - Object lib/msl/asm/MSL_C/wchar_io.o - Object lib/msl/asm/MSL_C/wmem.o - Object lib/msl/asm/MSL_C/wprintf.o - Object lib/msl/asm/MSL_C/wstring.o - Object lib/msl/asm/MSL_C/wctype.o - Object lib/msl/asm/MSL_C/e_pow.o - Object lib/msl/asm/MSL_C/s_copysign.o - Object lib/msl/asm/MSL_C/s_fabs.o - Object lib/msl/asm/MSL_C/s_frexp.o - Object lib/msl/asm/MSL_C/s_ldexp.o - Object lib/msl/asm/MSL_C/w_pow.o - Object lib/msl/asm/MSL_C/ansi_fp.o - Object lib/msl/asm/MSL_C/math_api.o - Object lib/msl/asm/MSL_C/math_sun.o - Object lib/msl/asm/MSL_C/pool_alloc.o - Object lib/msl/asm/MSL_C/extras.o - Object lib/msl/asm/MSL_C++/ios.o - Object lib/msl/asm/MSL_C++/locale_cpp.o - Object lib/msl/asm/MSL_C++/msl_thread.o - Object lib/msl/asm/Mathlib/_d_add.o - Object lib/msl/asm/Mathlib/_d_dtof.o - Object lib/msl/asm/Mathlib/_d_dtoi.o - Object lib/msl/asm/Mathlib/_d_dtou.o - Object lib/msl/asm/Mathlib/_d_dtoull.o - Object lib/msl/asm/Mathlib/_d_itod.o - Object lib/msl/asm/Mathlib/_d_mul.o - Object lib/msl/asm/Mathlib/_d_sqrt.o - Object lib/msl/asm/Mathlib/_d_sub.o - Object lib/msl/asm/Mathlib/_f_add.o - Object lib/msl/asm/Mathlib/_f_cmp.o - Object lib/msl/asm/Mathlib/_f_div.o - Object lib/msl/asm/Mathlib/_f_ftod.o - Object lib/msl/asm/Mathlib/_f_ftoi.o - Object lib/msl/asm/Mathlib/_f_ftou.o - Object lib/msl/asm/Mathlib/_f_itof.o - Object lib/msl/asm/Mathlib/_f_lltof.o - Object lib/msl/asm/Mathlib/_f_mul.o - Object lib/msl/asm/Mathlib/_f_sub.o - Object lib/msl/asm/Mathlib/_ll_div.o - Object lib/msl/asm/Mathlib/_ll_mul.o - Object lib/msl/asm/Mathlib/_ll_sll.o - Object lib/msl/asm/Mathlib/_s32_div_f.o - Object lib/msl/asm/Mathlib/_u32_div_f.o - Object lib/msl/asm/Mathlib/_d_div.o - Object lib/msl/asm/Mathlib/ieee_status.o - Object lib/msl/asm/Runtime/semihosted_console_io.o - Object lib/msl/asm/Runtime/compressednumbers.o - Object lib/msl/asm/Runtime/exceptionhandler.o - Object lib/msl/asm/Runtime/new.o - Object asm/main_etable.o - Object lib/msl/asm/Runtime/staticinitializer.o - Object lib/msl/asm/Runtime/cxxabi_rtti.o - Object lib/msl/asm/Runtime/mwexception.o - Object lib/msl/asm/Runtime/__nitro_eabi_init.o -} - -Autoload ITCM -{ - Address 0x01FF8000 - Object asm/itcm.o (.itcm) - Object lib/NitroSDK/src/mi/mi_dma.o (.itcm) - Object lib/NitroSDK/src/mi/mi_dma_gxcommand.o (.itcm) -} - -Autoload DTCM -{ - Address 0x027E0000 - Object asm/dtcm.o (.dtcm) - Object asm/dtcm.o (.bss) -} - -Overlay overlay0 -{ - After main - Object src/overlay000/ov0_dummy.o -} - -Overlay overlay1 -{ - After main - Object src/overlay001/ov1_021D0D80.o -} - -Overlay overlay2 -{ - After overlay1 - Object src/overlay002/ov2_dummy.o -} - -Overlay overlay3 -{ - After ITCM - Object src/overlay003/ov3_dummy.o -} - -Overlay overlay4 -{ - After main - Object src/overlay004/ov4_021D0D80.o - Object src/overlay004/ov4_021D2808.o - Object lib/NitroDWC/asm/auth/dwc_auth.o - Object lib/NitroDWC/asm/auth/dwc_cal.o - Object lib/NitroDWC/asm/auth/dwc_http.o - Object lib/NitroDWC/asm/auth/dwc_netcheck.o - Object lib/NitroDWC/asm/auth/dwc_nastime.o - Object lib/NitroDWC/asm/auth/dwc_svl.o - Object lib/NitroDWC/asm/auth/util_base64.o - Object lib/NitroDWC/src/base/dwc_error.o - Object lib/NitroDWC/src/base/dwc_memfunc.o - Object lib/NitroDWC/asm/auth/dwc_ca_cybertrust.o - Object lib/NitroDWC/asm/auth/dwc_ca_nas_self.o - Object lib/NitroDWC/asm/auth/dwc_ca_thawte_premiumserver.o - Object lib/NitroDWC/asm/auth/dwc_ca_thawte_server.o - Object lib/NitroDWC/asm/auth/dwc_ca_verisign.o - Object lib/NitroDWC/asm/auth/dwc_ca_globalsign.o - Object lib/NitroDWC/src/base/dwc_connectinet.o - Object lib/NitroDWC/src/base/dwc_nasfunc.o - Object lib/NitroDWC/src/base/dwc_nd.o - Object lib/NitroDWC/asm/base/dwc_common.o - Object lib/NitroDWC/src/base/dwc_main.o - Object lib/NitroDWC/src/base/dwc_login.o - Object lib/NitroDWC/src/base/dwc_friend.o - Object lib/NitroDWC/src/base/dwc_match.o - Object lib/NitroDWC/src/base/dwc_transport.o - Object lib/NitroDWC/src/base/dwc_ghttp.o - Object lib/NitroDWC/asm/ac/dwc_ac.o - Object lib/NitroDWC/asm/ac/beacon.o - Object lib/NitroDWC/asm/ac/callback.o - Object lib/NitroDWC/asm/ac/connect.o - Object lib/NitroDWC/asm/ac/close.o - Object lib/NitroDWC/asm/ac/error.o - Object lib/NitroDWC/asm/ac/makelist.o - Object lib/NitroDWC/asm/ac/retry.o - Object lib/NitroDWC/asm/ac/search_dwcac.o - Object lib/NitroDWC/asm/ac/start.o - Object lib/NitroDWC/asm/ac/test.o - Object lib/NitroDWC/asm/ac/shop_usb.o - Object lib/NitroDWC/asm/ac/wds.o - Object lib/NitroDWC/asm/ac/nintendospot.o - Object lib/gamespy/asm/available.o - Object lib/gamespy/asm/darray.o - Object lib/gamespy/asm/hashtable.o - Object lib/gamespy/asm/md5c.o - Object lib/gamespy/asm/nonport.o - Object lib/gamespy/asm/gp/gp.o - Object lib/gamespy/asm/gp/gpi.o - Object lib/gamespy/asm/gp/gpibuddy.o - Object lib/gamespy/asm/gp/gpibuffer.o - Object lib/gamespy/asm/gp/gpicallback.o - Object lib/gamespy/asm/gp/gpiconnect.o - Object lib/gamespy/asm/gp/gpiinfo.o - Object lib/gamespy/asm/gp/gpioperation.o - Object lib/gamespy/asm/gp/gpipeer.o - Object lib/gamespy/asm/gp/gpiprofile.o - Object lib/gamespy/asm/gp/gpisearch.o - Object lib/gamespy/asm/gp/gpitransfer.o - Object lib/gamespy/asm/gp/gpiunique.o - Object lib/gamespy/asm/gp/gpiutility.o - Object lib/gamespy/asm/gstats/gbucket.o - Object lib/gamespy/asm/gstats/gstats.o - Object lib/gamespy/asm/gt2/gt2auth.o - Object lib/gamespy/asm/gt2/gt2buffer.o - Object lib/gamespy/asm/gt2/gt2callback.o - Object lib/gamespy/asm/gt2/gt2connection.o - Object lib/gamespy/asm/gt2/gt2main.o - Object lib/gamespy/asm/gt2/gt2message.o - Object lib/gamespy/asm/gt2/gt2socket.o - Object lib/gamespy/asm/gt2/gt2utility.o - Object lib/gamespy/asm/natneg/natneg.o - Object lib/gamespy/asm/qr2/qr2.o - Object lib/gamespy/asm/qr2/qr2regkeys.o - Object lib/gamespy/asm/serverbrowsing/sb_crypt.o - Object lib/gamespy/asm/serverbrowsing/sb_queryengine.o - Object lib/gamespy/asm/serverbrowsing/sb_server.o - Object lib/gamespy/asm/serverbrowsing/sb_serverbrowsing.o - Object lib/gamespy/asm/serverbrowsing/sb_serverlist.o - Object lib/libVCT/asm/adpcm.o - Object lib/libVCT/asm/audio.o - Object lib/libVCT/asm/decoder.o - Object lib/libVCT/asm/g711.o - Object lib/libVCT/asm/queue.o - Object lib/libVCT/asm/stream_vct.o - Object lib/libVCT/asm/ssp.o - Object lib/libVCT/asm/udp_buffer.o - Object lib/libVCT/asm/vad.o - Object lib/libVCT/asm/fir.o - Object lib/libVCT/asm/mixer.o - Object lib/libVCT/asm/vct_main.o - Object lib/NitroWiFi/src/soc/socl_startup.o - Object lib/NitroWiFi/src/soc/socl_command.o - Object lib/NitroWiFi/src/soc/socl_create.o - Object lib/NitroWiFi/src/soc/socl_listen_accept.o - Object lib/NitroWiFi/src/soc/socl_bind.o - Object lib/NitroWiFi/src/soc/socl_const.o - Object lib/NitroWiFi/src/soc/socl_read.o - Object lib/NitroWiFi/src/soc/socl_write.o - Object lib/NitroWiFi/src/soc/socl_shutdown.o - Object lib/NitroWiFi/src/soc/socl_close.o - Object lib/NitroWiFi/src/soc/socl_cleanup.o - Object lib/NitroWiFi/src/soc/socl_resolve.o - Object lib/NitroWiFi/src/soc/socl_poll.o - Object lib/NitroWiFi/src/soc/socl_misc.o - Object lib/NitroWiFi/src/soc/socl_list.o - Object lib/NitroWiFi/src/soc/soc.o - Object lib/NitroWiFi/src/soc/socl_ssl.o - Object lib/NitroWiFi/asm/cps/network.o - Object lib/NitroWiFi/asm/ssl/ssl.o - Object lib/NitroWiFi/asm/ssl/md5.o - Object lib/NitroWiFi/asm/ssl/sha1.o - Object lib/NitroWiFi/asm/ssl/arc4.o - Object lib/NitroWiFi/asm/ssl/biginteger.o - Object lib/NitroWiFi/src/wcm/system.o - Object lib/NitroWiFi/src/wcm/aplist.o - Object lib/NitroWiFi/src/wcm/cpsif.o - Object lib/NitroWiFi/src/wcm/util_wcm.o - Object lib/NitroWiFi/src/stubs/md5/dummy_md5.o -} - -Overlay overlay5 -{ - After main - Object src/overlay005/ov5_021D0D80.o - Object src/overlay005/ov5_021D1A94.o - Object src/overlay005/ov5_021D1C30.o - Object src/overlay005/ov5_021D2F14.o - Object src/overlay005/ov5_021D37AC.o - Object src/overlay005/ov5_021D431C.o - Object src/overlay005/ov5_021D521C.o - Object src/overlay005/ov5_021D56BC.o - Object src/overlay005/ov5_021D57BC.o - Object src/overlay005/ov5_021D5878.o - Object src/overlay005/ov5_021D5B40.o - Object src/overlay005/ov5_021D5BC0.o - Object src/overlay005/ov5_021D5CB0.o - Object src/overlay005/ov5_021D5EB8.o - Object src/overlay005/ov5_021DB888.o - Object src/overlay005/ov5_021DC018.o - Object src/overlay005/ov5_021DD42C.o - Object src/overlay005/ov5_021DD6FC.o - Object src/overlay005/ov5_021DDAE4.o - Object src/overlay005/ov5_021DDBE8.o - Object src/overlay005/ov5_021DF440.o - Object src/overlay005/ov5_021DFB54.o - Object src/overlay005/ov5_021E1154.o - Object src/overlay005/ov5_021E135C.o - Object src/overlay005/ov5_021E15F4.o - Object src/overlay005/ov5_021E1B08.o - Object src/overlay005/ov5_021E1D20.o - Object src/overlay005/ov5_021E2098.o - Object src/overlay005/ov5_021E22B0.o - Object src/overlay005/ov5_021E2338.o - Object src/overlay005/ov5_021E622C.o - Object src/overlay005/ov5_021E779C.o - Object src/overlay005/ov5_021EA714.o - Object src/overlay005/ov5_021EA874.o - Object src/overlay005/ov5_021EAFA4.o - Object src/overlay005/ov5_021FAF40.o - Object src/overlay005/ov5_021EB1A0.o - Object src/overlay005/ov5_021ECA70.o - Object src/overlay005/ov5_021ECC20.o - Object src/overlay005/ov5_021ECE40.o - Object src/overlay005/ov5_021EE75C.o - Object src/overlay005/ov5_021EE7D4.o - Object src/overlay005/ov5_021EEAC8.o - Object src/overlay005/ov5_021EEC68.o - Object src/overlay005/ov5_021EEF34.o - Object src/overlay005/ov5_021EF250.o - Object src/overlay005/ov5_021EF3A8.o - Object src/overlay005/ov5_021EF4BC.o - Object src/overlay005/ov5_021EF75C.o - Object src/overlay005/ov5_021EFB0C.o - Object src/overlay005/ov5_021F007C.o - Object src/overlay005/ov5_021FF6B8.o - Object src/overlay005/ov5_021F067C.o - Object src/overlay005/ov5_021F0824.o - Object src/overlay005/ov5_021F08CC.o - Object src/overlay005/ov5_021F0E84.o - Object src/overlay005/ov5_021F0EB0.o - Object src/overlay005/ov5_021F101C.o - Object src/overlay005/ov5_021F10E8.o - Object src/overlay005/ov5_021F134C.o - Object src/overlay005/ov5_021F17B8.o - Object src/overlay005/ov5_021F1CC8.o - Object src/overlay005/ov5_021F204C.o - Object src/overlay005/ov5_021F23D0.o - Object src/overlay005/ov5_021F25C0.o - Object src/overlay005/ov5_021F2850.o - Object src/overlay005/ov5_021F2A7C.o - Object src/overlay005/ov5_021F2BD0.o - Object src/overlay005/ov5_021F2D20.o - Object src/overlay005/ov5_021F3284.o - Object src/overlay005/ov5_021F348C.o - Object src/overlay005/ov5_021F37A8.o - Object src/overlay005/ov5_021F3A50.o - Object src/overlay005/ov5_021F3D00.o - Object src/overlay005/ov5_021F3E74.o - Object src/overlay005/ov5_021F4018.o - Object src/overlay005/ov5_021F428C.o - Object src/overlay005/ov5_021F47B0.o - Object src/overlay005/ov5_021F4DAC.o - Object src/overlay005/ov5_021F4E08.o - Object src/overlay005/ov5_021F5060.o - Object src/overlay005/ov5_021F50BC.o - Object src/overlay005/ov5_021F5284.o - Object src/overlay005/ov5_021F5428.o - Object src/overlay005/ov5_021F55CC.o - Object src/overlay005/ov5_021F575C.o - Object src/overlay005/ov5_021F5894.o - Object src/overlay005/ov5_021F5A10.o - Object src/overlay005/ov5_021F600C.o - Object src/overlay005/ov5_021F61BC.o - Object src/overlay005/ov5_021F6454.o - Object src/overlay005/ov5_021F77A8.o - Object src/overlay005/ov5_021F8370.o - Object src/overlay005/ov5_021F8560.o -} - -Overlay overlay6 -{ - After overlay5 - Object src/overlay006/ov6_0223E140.o - Object src/overlay006/ov6_02240C9C.o - Object src/overlay006/ov6_022426AC.o - Object src/overlay006/ov6_02242984.o - Object src/overlay006/ov6_02242AF0.o - Object src/overlay006/ov6_02242F74.o - Object src/overlay006/ov6_02243004.o - Object src/overlay006/ov6_022430C4.o - Object src/overlay006/ov6_02243218.o - Object src/overlay006/ov6_02243258.o - Object src/overlay006/ov6_02246034.o - Object src/overlay006/ov6_02246184.o - Object src/overlay006/ov6_02246444.o - Object src/overlay006/ov6_022465FC.o - Object src/overlay006/ov6_02246A30.o - Object src/overlay006/ov6_02246B74.o - Object src/overlay006/ov6_02246BF4.o - Object src/overlay006/ov6_02246C24.o - Object src/overlay006/ov6_02246F00.o - Object src/overlay006/ov6_02247078.o - Object src/overlay006/ov6_02247100.o - Object src/overlay006/ov6_022475B0.o - Object src/overlay006/ov6_02247660.o - Object src/overlay006/ov6_022477B8.o - Object src/overlay006/ov6_02247830.o - Object src/overlay006/ov6_02247A0C.o - Object src/overlay006/ov6_02247D30.o - Object src/overlay006/ov6_02247F5C.o - Object src/overlay006/ov6_02248050.o - Object src/overlay006/ov6_02248948.o - Object src/overlay006/ov6_022489E4.o -} - -Overlay overlay7 -{ - After overlay6 - Object src/overlay007/ov7_02249960.o - Object src/overlay007/ov7_0224B4E8.o - Object src/overlay007/ov7_0224BE9C.o - Object src/overlay007/ov7_0224CD28.o -} - -Overlay overlay8 -{ - After overlay6 - Object src/overlay008/ov8_02249960.o -} - -Overlay overlay9 -{ - After overlay6 - Object src/overlay009/ov9_02249960.o -} - -Overlay overlay10 -{ - After overlay4 - Object src/overlay010/ov10_0221F800.o -} - -Overlay overlay11 -{ - After overlay4 - Object src/overlay011/ov11_0221F800.o - Object src/overlay011/ov11_0221F840.o -} - -Overlay overlay12 -{ - After overlay11 - Object src/overlay012/ov12_0221FC20.o - Object src/overlay012/ov12_022237EC.o - Object src/overlay012/ov12_0222389C.o - Object src/overlay012/ov12_0222421C.o - Object src/overlay012/ov12_02225104.o - Object src/overlay012/ov12_02225640.o - Object src/overlay012/ov12_02225864.o - Object src/overlay012/ov12_02226998.o - Object src/overlay012/ov12_022269C0.o - Object src/overlay012/ov12_02226B84.o - Object src/overlay012/ov12_0222AC70.o - Object src/overlay012/ov12_0222D6B0.o - Object src/overlay012/ov12_0222E784.o - Object src/overlay012/ov12_0222E91C.o - Object src/overlay012/ov12_0222F700.o - Object src/overlay012/ov12_022346A4.o - Object src/overlay012/ov12_02234E44.o - Object src/overlay012/ov12_02235254.o - Object src/overlay012/ov12_02235E94.o - Object src/overlay012/ov12_02237E54.o - Object src/overlay012/ov12_02237EFC.o - Object src/overlay012/ov12_022380BC.o - Object src/overlay012/is_form_symmetrical.o -} - -Overlay overlay13 -{ - After overlay11 - Object src/overlay013/ov13_0221FC20.o - Object src/overlay013/ov13_02221A88.o - Object src/overlay013/ov13_02224500.o - Object src/overlay013/ov13_02225710.o - Object src/overlay013/ov13_022264F4.o - Object src/overlay013/ov13_02227288.o - Object src/overlay013/ov13_02227A4C.o - Object src/overlay013/ov13_02227BDC.o - Object src/overlay013/ov13_02228128.o - Object src/overlay013/ov13_02228A38.o -} - -Overlay overlay14 -{ - After overlay11 - Object src/overlay014/ov14_0221FC20.o - Object asm/overlay014/ov14_022248A4.o -} - -Overlay overlay15 -{ - After main - Object src/overlay015/ov15_dummy.o -} - -Overlay overlay16 -{ - After overlay12 - Object src/overlay016/ov16_0223B140.o - Object src/overlay016/ov16_0223DF00.o - Object src/overlay016/ov16_022405FC.o - Object src/overlay016/ov16_0224B940.o - Object src/overlay016/ov16_0225177C.o - Object src/overlay016/ov16_0225BFFC.o - Object src/overlay016/ov16_0225CBB8.o - Object src/overlay016/ov16_02264798.o - Object src/overlay016/ov16_0226485C.o - Object src/overlay016/ov16_02266F1C.o - Object src/overlay016/ov16_02268520.o - Object src/overlay016/ov16_0226871C.o - Object src/overlay016/ov16_0226D094.o - Object src/overlay016/ov16_0226DB7C.o - Object src/overlay016/ov16_0226DE44.o - Object src/overlay016/ov16_0226E148.o -} - -Overlay overlay17 -{ - After overlay12 - Object src/overlay017/ov17_0223B140.o - Object src/overlay017/ov17_0223CB1C.o - Object src/overlay017/ov17_0223DAD0.o - Object src/overlay017/ov17_0223F118.o - Object src/overlay017/ov17_0223F7E4.o - Object src/overlay017/ov17_02241270.o - Object src/overlay017/ov17_022413D8.o - Object src/overlay017/ov17_02243AC4.o - Object src/overlay017/ov17_02243C28.o - Object src/overlay017/ov17_02245F14.o - Object src/overlay017/ov17_02246ECC.o - Object src/overlay017/ov17_022476F8.o - Object src/overlay017/ov17_02247A48.o - Object src/overlay017/ov17_022492DC.o - Object src/overlay017/ov17_0224A0FC.o - Object src/overlay017/ov17_0224CFB8.o - Object src/overlay017/ov17_0224E930.o - Object src/overlay017/ov17_0224F080.o - Object src/overlay017/ov17_0224F18C.o - Object src/overlay017/ov17_0224F4D4.o - Object src/overlay017/ov17_02250744.o - Object src/overlay017/ov17_02251D6C.o - Object src/overlay017/ov17_02252A70.o - Object src/overlay017/ov17_02252AB0.o - Object src/overlay017/ov17_02252CEC.o -} - -Overlay overlay18 -{ - After overlay4 - Object src/overlay018/ov18_0221F800.o - Object lib/NitroSDK/src/mb/mb_parent.o - Object lib/NitroSDK/src/mb/mb_fileinfo.o - Object lib/NitroSDK/src/mb/mb_common.o - Object lib/NitroSDK/src/mb/mb_gameinfo.o - Object lib/NitroSDK/src/mb/mb_wm_base.o - Object lib/NitroSDK/src/mb/mb_cache.o - Object lib/NitroSDK/src/mb/mb_task.o - Object lib/NitroSDK/src/mb/mb_block.o - Object lib/NitroDWC/asm/util/aoss.o - Object lib/NitroDWC/asm/util/aosslink.o - Object lib/NitroDWC/asm/util/apc.o - Object lib/NitroDWC/asm/util/atermset.o - Object lib/NitroDWC/asm/util/anime.o - Object lib/NitroDWC/asm/util/button.o - Object lib/NitroDWC/asm/util/comment.o - Object lib/NitroDWC/asm/util/common.o - Object lib/NitroDWC/asm/util/focus.o - Object lib/NitroDWC/asm/util/headline.o - Object lib/NitroDWC/asm/util/icon.o - Object lib/NitroDWC/asm/util/keyboard.o - Object lib/NitroDWC/asm/util/keyboard10.o - Object lib/NitroDWC/asm/util/libaoss.o - Object lib/NitroDWC/asm/util/main_dwcutil.o - Object lib/NitroDWC/asm/util/message.o - Object lib/NitroDWC/asm/util/move.o - Object lib/NitroDWC/asm/util/rakuraku.o - Object lib/NitroDWC/asm/util/sceneend.o - Object lib/NitroDWC/asm/util/sceneinit.o - Object lib/NitroDWC/asm/util/scenemenu.o - Object lib/NitroDWC/asm/util/sceneopterase.o - Object lib/NitroDWC/asm/util/sceneopterase1.o - Object lib/NitroDWC/asm/util/sceneoptinfo.o - Object lib/NitroDWC/asm/util/sceneoptmenu.o - Object lib/NitroDWC/asm/util/sceneoptmovcomm.o - Object lib/NitroDWC/asm/util/sceneoptmovcomplete.o - Object lib/NitroDWC/asm/util/sceneoptmovconfirm.o - Object lib/NitroDWC/asm/util/sceneoptmovdisconnect.o - Object lib/NitroDWC/asm/util/sceneoptmovfailure.o - Object lib/NitroDWC/asm/util/sceneoptmovuser.o - Object lib/NitroDWC/asm/util/sceneoptmovwait.o - Object lib/NitroDWC/asm/util/scenesetaossbutton.o - Object lib/NitroDWC/asm/util/scenesetaosscomplete.o - Object lib/NitroDWC/asm/util/scenesetaplist.o - Object lib/NitroDWC/asm/util/scenesetedit32.o - Object lib/NitroDWC/asm/util/sceneseteditaddress.o - Object lib/NitroDWC/asm/util/sceneseterror.o - Object lib/NitroDWC/asm/util/scenesetlist.o - Object lib/NitroDWC/asm/util/scenesetlistsave.o - Object lib/NitroDWC/asm/util/scenesetrakubutton.o - Object lib/NitroDWC/asm/util/scenesetrakucomplete.o - Object lib/NitroDWC/asm/util/scenesetrakuready.o - Object lib/NitroDWC/asm/util/scenesetsearch.o - Object lib/NitroDWC/asm/util/scenesetselectap.o - Object lib/NitroDWC/asm/util/scenesetselectway.o - Object lib/NitroDWC/asm/util/scenesettest.o - Object lib/NitroDWC/asm/util/scenesettestcomplete.o - Object lib/NitroDWC/asm/util/scenesettestconfirm.o - Object lib/NitroDWC/asm/util/scenesetusbcomplete.o - Object lib/NitroDWC/asm/util/scenesetusbready.o - Object lib/NitroDWC/asm/util/screen.o - Object lib/NitroDWC/asm/util/scrollbar.o - Object lib/NitroDWC/asm/util/search_dwcutil.o - Object lib/NitroDWC/asm/util/setting.o - Object lib/NitroDWC/asm/util/sound.o - Object lib/NitroDWC/asm/util/step.o - Object lib/NitroDWC/asm/util/usbap.o - Object lib/NitroDWC/asm/util/window.o - Object lib/NitroDWC/asm/util/dwc_mov_mbp.o - Object lib/NitroDWC/asm/util/dwc_mov_wh.o - Object lib/NitroDWC/asm/util/dwc_moveid.o - Object lib/NitroDWC/asm/util/archive.o - Object lib/NitroDWC/asm/util/cell.o - Object lib/NitroDWC/asm/util/cellinfo.o - Object lib/NitroDWC/asm/util/deque.o - Object lib/NitroDWC/asm/util/effect.o - Object lib/NitroDWC/asm/util/font.o - Object lib/NitroDWC/asm/util/foundation.o - Object lib/NitroDWC/asm/util/graphics.o - Object lib/NitroDWC/asm/util/heap_dwcutil.o - Object lib/NitroDWC/asm/util/input.o - Object lib/NitroDWC/asm/util/interrupt.o - Object lib/NitroDWC/asm/util/list_dwcutil.o - Object lib/NitroDWC/asm/util/obj.o - Object lib/NitroDWC/asm/util/objvram.o - Object lib/NitroDWC/asm/util/str.o - Object lib/NitroDWC/asm/util/sub.o - Object lib/NitroDWC/asm/util/task.o -} - -Overlay overlay19 -{ - After main - Object src/overlay019/ov19_021D0D80.o - Object src/overlay019/ov19_021D603C.o - Object src/overlay019/ov19_021D61B0.o - Object src/overlay019/ov19_021D79F8.o - Object src/overlay019/ov19_021D8B54.o - Object src/overlay019/ov19_021DA270.o - Object src/overlay019/ov19_021DA814.o - Object src/overlay019/ov19_021DA92C.o - Object src/overlay019/ov19_021DB2FC.o - Object src/overlay019/ov19_021DB8E4.o - Object src/overlay019/ov19_021DC5F0.o - Object src/overlay019/ov19_021DCF88.o - Object src/overlay019/ov19_021DE3E8.o - Object src/overlay019/ov19_021DEC04.o - Object src/overlay019/ov19_021DF964.o -} - -Overlay overlay20 -{ - After main - Object src/overlay020/ov20_021D0D80.o - Object src/overlay020/ov20_021D2098.o - Object src/overlay020/ov20_021D2EA4.o - Object src/overlay020/ov20_021D3864.o - Object src/overlay020/ov20_021D3A54.o - Object src/overlay020/ov20_021D40E8.o - Object src/overlay020/ov20_021D4728.o - Object src/overlay020/ov20_021D4E38.o - Object src/overlay020/ov20_021D5044.o -} - -Overlay overlay21 -{ - After main - Object src/overlay021/ov21_021D0D80.o - Object src/overlay021/ov21_021D1F90.o - Object src/overlay021/ov21_021D1FA4.o - Object src/overlay021/ov21_021D3208.o - Object src/overlay021/ov21_021D3FE0.o - Object src/overlay021/ov21_021D423C.o - Object src/overlay021/ov21_021D4340.o - Object src/overlay021/ov21_021D4C0C.o - Object src/overlay021/ov21_021D4EE4.o - Object src/overlay021/ov21_021D517C.o - Object src/overlay021/ov21_021D5600.o - Object src/overlay021/ov21_021D57B4.o - Object src/overlay021/ov21_021D5AEC.o - Object src/overlay021/ov21_021D76B0.o - Object src/overlay021/ov21_021D85B0.o - Object src/overlay021/ov21_021D94BC.o - Object src/overlay021/ov21_021DC9BC.o - Object src/overlay021/ov21_021DDD2C.o - Object src/overlay021/ov21_021DE668.o - Object src/overlay021/ov21_021DF734.o - Object src/overlay021/ov21_021E0C68.o - Object src/overlay021/ov21_021E1924.o - Object src/overlay021/ov21_021E29DC.o - Object src/overlay021/ov21_021E3FFC.o - Object src/overlay021/ov21_021E4CA4.o - Object src/overlay021/ov21_021E6014.o - Object src/overlay021/ov21_021E68F4.o - Object src/overlay021/ov21_021E737C.o - Object src/overlay021/ov21_021E8484.o - Object src/overlay021/ov21_021E8D48.o -} - -Overlay overlay22 -{ - After overlay17 - Object src/overlay022/ov22_02254DE0.o - Object src/overlay022/ov22_02255094.o - Object src/overlay022/ov22_02255D44.o - Object src/overlay022/ov22_022578F4.o - Object src/overlay022/ov22_02257F50.o - Object src/overlay022/ov22_022588F0.o - Object src/overlay022/ov22_0225894C.o - Object src/overlay022/ov22_022589E0.o - Object src/overlay022/ov22_02259098.o - Object src/overlay022/ov22_02259484.o - Object src/overlay022/ov22_02259560.o - Object src/overlay022/ov22_022597BC.o - Object src/overlay022/ov22_02259C58.o - Object src/overlay022/ov22_0225A428.o - Object src/overlay022/ov22_0225AF44.o - Object src/overlay022/ov22_0225AF8C.o - Object src/overlay022/ov22_0225B660.o -} - -Overlay overlay23 -{ - After overlay5 - Object src/overlay023/ov23_0223E140.o - Object src/overlay023/ov23_022416A8.o - Object src/overlay023/ov23_02241F74.o - Object src/overlay023/ov23_0224340C.o - Object src/overlay023/ov23_02248C08.o - Object src/overlay023/ov23_02248F1C.o - Object src/overlay023/ov23_02249918.o - Object src/overlay023/ov23_022499E4.o - Object src/overlay023/ov23_0224A1D0.o - Object src/overlay023/ov23_0224B05C.o - Object src/overlay023/ov23_0224DC40.o - Object src/overlay023/ov23_0224F294.o - Object src/overlay023/ov23_0225128C.o - Object src/overlay023/ov23_022521F0.o - Object src/overlay023/ov23_02253598.o - Object src/overlay023/ov23_02253D40.o - Object src/overlay023/ov23_0225426C.o - Object src/overlay023/ov23_0225429C.o - Object src/overlay023/ov23_022542CC.o - Object src/overlay023/ov23_02254A14.o -} - -Overlay overlay24 -{ - After overlay9 - Object src/overlay024/ov24_02253CE0.o -} - -Overlay overlay25 -{ - After overlay9 - Object src/overlay025/ov25_02253CE0.o - Object src/overlay025/ov25_02254560.o - Object src/overlay025/ov25_02255090.o - Object src/overlay025/ov25_02255540.o - Object src/overlay025/ov25_02255ACC.o - Object src/overlay025/ov25_02255DBC.o -} - -Overlay overlay26 -{ - After overlay25 - Object src/overlay026/ov26_022561C0.o - Object src/overlay026/ov26_02256404.o -} - -Overlay overlay27 -{ - After overlay25 - Object src/overlay027/ov27_022561C0.o - Object src/overlay027/ov27_0225680C.o -} - -Overlay overlay28 -{ - After overlay25 - Object src/overlay028/ov28_022561C0.o - Object src/overlay028/ov28_0225697C.o - Object src/overlay028/ov28_02256E9C.o -} - -Overlay overlay29 -{ - After overlay25 - Object src/overlay029/ov29_022561C0.o - Object src/overlay029/ov29_022566C8.o -} - -Overlay overlay30 -{ - After overlay25 - Object src/overlay030/ov30_022561C0.o - Object src/overlay030/ov30_022563EC.o -} - -Overlay overlay31 -{ - After overlay25 - Object src/overlay031/ov31_022561C0.o - Object src/overlay031/ov31_02256554.o -} - -Overlay overlay32 -{ - After overlay25 - Object src/overlay032/ov32_022561C0.o - Object src/overlay032/ov32_02256470.o -} - -Overlay overlay33 -{ - After overlay25 - Object src/overlay033/ov33_022561C0.o - Object src/overlay033/ov33_02256474.o -} - -Overlay overlay34 -{ - After overlay25 - Object src/overlay034/ov34_022561C0.o - Object src/overlay034/ov34_02256540.o -} - -Overlay overlay35 -{ - After overlay25 - Object src/overlay035/ov35_022561C0.o - Object src/overlay035/ov35_02256410.o -} - -Overlay overlay36 -{ - After overlay25 - Object src/overlay036/ov36_022561C0.o - Object src/overlay036/ov36_02256404.o -} - -Overlay overlay37 -{ - After overlay25 - Object src/overlay037/ov37_022561C0.o - Object src/overlay037/ov37_022563D4.o -} - -Overlay overlay38 -{ - After overlay25 - Object src/overlay038/ov38_022561C0.o - Object src/overlay038/ov38_0225632C.o -} - -Overlay overlay39 -{ - After overlay25 - Object src/overlay039/ov39_022561C0.o - Object src/overlay039/ov39_022563DC.o -} - -Overlay overlay40 -{ - After overlay25 - Object src/overlay040/ov40_022561C0.o - Object src/overlay040/ov40_0225645C.o -} - -Overlay overlay41 -{ - After overlay25 - Object src/overlay041/ov41_022561C0.o - Object src/overlay041/ov41_022567B0.o -} - -Overlay overlay42 -{ - After overlay25 - Object src/overlay042/ov42_022561C0.o - Object src/overlay042/ov42_022563D4.o -} - -Overlay overlay43 -{ - After overlay25 - Object src/overlay043/ov43_022561C0.o - Object src/overlay043/ov43_02256544.o -} - -Overlay overlay44 -{ - After overlay25 - Object src/overlay044/ov44_022561C0.o - Object src/overlay044/ov44_022565BC.o -} - -Overlay overlay45 -{ - After overlay25 - Object src/overlay045/ov45_022561C0.o - Object src/overlay045/ov45_022566EC.o -} - -Overlay overlay46 -{ - After overlay25 - Object src/overlay046/ov46_022561C0.o - Object src/overlay046/ov46_02256BCC.o -} - -Overlay overlay47 -{ - After overlay25 - Object src/overlay047/ov47_022561C0.o - Object src/overlay047/ov47_02256634.o -} - -Overlay overlay48 -{ - After overlay25 - Object src/overlay048/ov48_022561C0.o - Object src/overlay048/ov48_0225650C.o -} - -Overlay overlay49 -{ - After overlay25 - Object src/overlay049/ov49_022561C0.o - Object src/overlay049/ov49_022563D4.o -} - -Overlay overlay50 -{ - After overlay25 - Object src/overlay050/ov50_022561C0.o - Object src/overlay050/ov50_02256510.o -} - -Overlay overlay51 -{ - After overlay25 - Object src/overlay051/ov51_022561C0.o - Object src/overlay051/ov51_0225632C.o -} - -Overlay overlay52 -{ - After overlay25 - Object src/overlay052/ov52_022561C0.o - Object src/overlay052/ov52_02256694.o -} - -Overlay overlay53 -{ - After overlay25 - Object src/overlay053/ov53_022561C0.o - Object src/overlay053/ov53_02256420.o -} - -Overlay overlay54 -{ - After overlay25 - Object src/overlay054/ov54_022561C0.o - Object src/overlay054/ov54_0225642C.o -} - -Overlay overlay55 -{ - After overlay25 - Object src/overlay055/ov55_022561C0.o - Object src/overlay055/ov55_0225632C.o -} - -Overlay overlay56 -{ - After overlay25 - Object src/overlay056/ov56_022561C0.o -} - -Overlay overlay57 -{ - After main - Object src/overlay057/ov57_021D0D80.o - Object src/overlay057/ov57_021D0F30.o -} - -Overlay overlay58 -{ - After main - Object src/overlay058/ov58_021D0D80.o -} - -Overlay overlay59 -{ - After main - Object src/overlay059/ov59_021D0D80.o - Object src/overlay059/ov59_021D2A2C.o - Object src/overlay059/ov59_021D2B44.o - Object src/overlay059/ov59_021D2F88.o -} - -Overlay overlay60 -{ - After overlay4 - Object src/overlay060/ov60_0221F800.o - Object src/overlay060/ov60_0221F968.o - Object lib/gamespy/asm/ghttp/ghttpbuffer.o - Object lib/gamespy/asm/ghttp/ghttpcallbacks.o - Object lib/gamespy/asm/ghttp/ghttpcommon.o - Object lib/gamespy/asm/ghttp/ghttpconnection.o - Object lib/gamespy/asm/ghttp/ghttpmain.o - Object lib/gamespy/asm/ghttp/ghttppost.o - Object lib/gamespy/asm/ghttp/ghttpprocess.o - Object lib/NitroDWC/asm/nd/dwci_nd_ca_nasself.o - Object lib/NitroDWC/asm/nd/dwci_nd_attr.o - Object lib/NitroDWC/asm/nd/dwci_nd_base64.o - Object lib/NitroDWC/asm/nd/dwci_nd_bgnend.o - Object lib/NitroDWC/asm/nd/dwci_nd_cancel.o - Object lib/NitroDWC/asm/nd/dwci_nd_dwc_nitro.o - Object lib/NitroDWC/asm/nd/dwci_nd_fileapi.o - Object lib/NitroDWC/asm/nd/dwci_nd_filecount.o - Object lib/NitroDWC/asm/nd/dwci_nd_fileget.o - Object lib/NitroDWC/asm/nd/dwci_nd_filelist.o - Object lib/NitroDWC/asm/nd/dwci_nd_os_nitro.o - Object lib/NitroDWC/asm/nd/dwci_nd_stdlib_nitro.o - Object lib/NitroDWC/asm/nd/dwci_nd_string.o - Object lib/NitroDWC/asm/nhttp/nhttp_bgnend.o - Object lib/NitroDWC/asm/nhttp/nhttp_control.o - Object lib/NitroDWC/asm/nhttp/nhttp_list.o - Object lib/NitroDWC/asm/nhttp/nhttp_os_nitro.o - Object lib/NitroDWC/asm/nhttp/nhttp_recvbuf.o - Object lib/NitroDWC/asm/nhttp/nhttp_request.o - Object lib/NitroDWC/asm/nhttp/nhttp_resolve_nitro.o - Object lib/NitroDWC/asm/nhttp/nhttp_response.o - Object lib/NitroDWC/asm/nhttp/nhttp_socket_nitro.o - Object lib/NitroDWC/asm/nhttp/nhttp_stdlib_nitro.o - Object lib/NitroDWC/asm/nhttp/nhttp_thread.o - Object lib/NitroDWC/asm/nhttp/nhttp_token.o -} - -Overlay overlay61 -{ - After overlay60 - Object src/overlay061/ov61_0222AE60.o - Object src/overlay061/ov61_0222B008.o - Object src/overlay061/ov61_0222BC4C.o - Object src/overlay061/ov61_0222BF44.o - Object asm/overlay061/ov61_0222CEDC.o - Object asm/overlay061/ov61_0222D498.o - Object asm/overlay061/ov61_0222DCDC.o - Object asm/overlay061/ov61_0222E0B8.o - Object asm/overlay061/ov61_0222E478.o -} - -Overlay overlay62 -{ - After overlay61 - Object src/overlay062/ov62_0222F2C0.o - Object src/overlay062/ov62_022300D8.o - Object src/overlay062/ov62_02231690.o - Object src/overlay062/ov62_02234A10.o - Object src/overlay062/ov62_02235278.o - Object src/overlay062/ov62_02235E64.o - Object src/overlay062/ov62_02236CBC.o - Object src/overlay062/ov62_02237D24.o - Object src/overlay062/ov62_02239D60.o - Object src/overlay062/ov62_0223CAEC.o - Object src/overlay062/ov62_0223DFA8.o - Object src/overlay062/ov62_0224112C.o - Object src/overlay062/ov62_02241204.o - Object src/overlay062/ov62_02246B00.o - Object src/overlay062/ov62_02247D74.o - Object src/overlay062/ov62_02248408.o -} - -Overlay overlay63 -{ - After overlay60 - Object src/overlay063/ov63_0222AE60.o - Object src/overlay063/ov63_0222BCE8.o - Object src/overlay063/ov63_0222BE18.o - Object src/overlay063/ov63_0222CA88.o - Object src/overlay063/ov63_0222CCE4.o - Object src/overlay063/ov63_0222D160.o - Object src/overlay063/ov63_0222D1C0.o - Object src/overlay063/ov63_0222D77C.o -} - -Overlay overlay64 -{ - After overlay63 - Object src/overlay064/ov64_0222DCE0.o -} - -Overlay overlay65 -{ - After overlay63 - Object src/overlay065/ov65_0222DCE0.o - Object src/overlay065/ov65_02235060.o - Object src/overlay065/ov65_02236474.o - Object src/overlay065/ov65_0223648C.o -} - -Overlay overlay66 -{ - After overlay63 - Object src/overlay066/ov66_0222DCE0.o - Object src/overlay066/ov66_0222DDF0.o - Object src/overlay066/ov66_02230C44.o - Object src/overlay066/ov66_02231428.o - Object src/overlay066/ov66_0223177C.o - Object src/overlay066/ov66_022324F0.o - Object src/overlay066/ov66_022343A8.o - Object src/overlay066/ov66_02234EA8.o - Object lib/NitroDWC/asm/ppwlobby/ppw_lobby.o - Object lib/NitroDWC/asm/ppwlobby/ppw_innerinfo.o - Object lib/NitroDWC/asm/ppwlobby/dwci_encsession.o - Object lib/NitroDWC/asm/ppwlobby/ppw_parser.o - Object lib/NitroDWC/asm/ppwlobby/ppw_profile.o - Object lib/NitroDWC/asm/ppwlobby/dwci_lobby.o - Object lib/NitroDWC/asm/ilobby/dwci_lobbybase.o - Object lib/NitroDWC/asm/ilobby/dwci_lobbynewhandler.o - Object lib/NitroDWC/asm/ilobby/dwci_lobbycallback.o - Object lib/NitroDWC/asm/ilobby/dwci_lobbydata.o - Object lib/gamespy/asm/chat/chatcallbacks.o - Object lib/gamespy/asm/chat/chatchannel.o - Object lib/gamespy/asm/chat/chatcrypt.o - Object lib/gamespy/asm/chat/chathandlers.o - Object lib/gamespy/asm/chat/chatmain.o - Object lib/gamespy/asm/chat/chatsocket.o - Object lib/NitroDWC/asm/enc/dwc_encsession.o -} - -Overlay overlay67 -{ - After overlay66 - Object src/overlay067/ov67_0225C700.o -} - -Overlay overlay68 -{ - After overlay66 - Object src/overlay068/ov68_0225C700.o -} - -Overlay overlay69 -{ - After overlay66 - Object src/overlay069/ov69_0225C700.o -} - -Overlay overlay70 -{ - After overlay66 - Object src/overlay070/ov70_0225C700.o - Object src/overlay070/ov70_0225C858.o - Object src/overlay070/ov70_0225C9B4.o - Object src/overlay070/ov70_0225D9A4.o - Object src/overlay070/ov70_02260A70.o - Object src/overlay070/ov70_02260B44.o - Object src/overlay070/ov70_02261E10.o - Object src/overlay070/ov70_02262DA8.o - Object src/overlay070/ov70_022630A4.o - Object src/overlay070/ov70_02265F38.o - Object src/overlay070/ov70_02266E9C.o - Object src/overlay070/ov70_02269190.o - Object src/overlay070/ov70_0226C338.o - Object src/overlay070/ov70_0226C60C.o - Object src/overlay070/ov70_0226C8B4.o - Object src/overlay070/ov70_0226CC74.o - Object src/overlay070/ov70_0226CE54.o -} - -Overlay overlay71 -{ - After overlay12 - Object src/overlay071/ov71_0223B140.o - Object src/overlay071/ov71_0223C69C.o - Object src/overlay071/ov71_0223CF0C.o - Object src/overlay071/ov71_0223D324.o -} - -Overlay overlay72 -{ - After overlay71 - Object src/overlay072/ov72_0223D7A0.o -} - -Overlay overlay73 -{ - After main - Object src/overlay073/ov73_021D0D80.o - Object src/overlay073/ov73_021D3250.o -} - -Overlay overlay74 -{ - After main - Object src/overlay074/ov74_021D0D80.o -} - -Overlay overlay75 -{ - After main - Object src/overlay075/ov75_021D0D80.o -} - -Overlay overlay76 -{ - After overlay12 - Object src/overlay076/ov76_0223B140.o - Object src/overlay076/ov76_0223B870.o - Object src/overlay076/ov76_0223D338.o -} - -Overlay overlay77 -{ - After main - Object src/overlay077/ov77_021D0D80.o - Object src/overlay077/ov77_021D25B0.o - Object src/overlay077/ov77_021D54B0.o - Object src/overlay077/ov77_021D6670.o - Object src/overlay077/ov77_021D6C70.o -} - -Overlay overlay78 -{ - After main - Object src/overlay078/ov78_021D0D80.o -} - -Overlay overlay79 -{ - After main - Object src/overlay079/ov79_021D0D80.o - Object src/overlay079/ov79_021D183C.o - Object src/overlay079/ov79_021D20F4.o - Object src/overlay079/ov79_021D2268.o - Object src/overlay079/ov79_021D3768.o -} - -Overlay overlay80 -{ - After main - Object src/overlay080/ov80_021D0D80.o - Object src/overlay080/ov80_021D1458.o - Object src/overlay080/ov80_021D2A08.o - Object src/overlay080/ov80_021D2AF4.o -} - -Overlay overlay81 -{ - After main - Object src/overlay081/ov81_021D0D80.o - Object src/overlay081/ov81_021D1610.o -} - -Overlay overlay82 -{ - After overlay12 - Object src/overlay082/ov82_0223B140.o - Object src/overlay082/ov82_0223B2E0.o -} - -Overlay overlay83 -{ - After overlay82 - Object src/overlay083/ov83_0223B5A0.o - Object src/overlay083/ov83_0223C958.o - Object src/overlay083/ov83_0223D144.o - Object src/overlay083/ov83_0223D150.o - Object src/overlay083/ov83_0223D4CC.o - Object src/overlay083/ov83_0223D6A8.o - Object src/overlay083/ov83_0223F7F4.o -} - -Overlay overlay84 -{ - After overlay82 - Object src/overlay084/ov84_0223B5A0.o - Object src/overlay084/ov84_0223F040.o - Object src/overlay084/ov84_022403F4.o -} - -Overlay overlay85 -{ - After overlay84 - Object src/overlay085/ov85_02241440.o -} - -Overlay overlay86 -{ - After overlay12 - Object src/overlay086/ov86_0223B140.o -} - -Overlay overlay87 -{ - After main - Object src/overlay087/ov87_021D0D80.o - Object src/overlay087/ov87_021D106C.o -} - -Overlay overlay88 -{ - After overlay12 - Object src/overlay088/ov88_0223B140.o - Object src/overlay088/ov88_0223E9C4.o -} - -Overlay overlay89 -{ - After main - Object src/overlay089/ov89_dummy.o -} - -Overlay overlay90 -{ - After main - Object src/overlay090/ov90_021D0D80.o -} - -Overlay overlay91 -{ - After main - Object src/overlay091/ov91_021D0D80.o -} - -Overlay overlay92 -{ - After main - Object src/overlay092/ov92_021D0D80.o -} - -Overlay overlay93 -{ - After main - Object src/overlay093/ov93_021D0D80.o - Object src/overlay093/ov93_021D111C.o -} - -Overlay overlay94 -{ - After overlay12 - Object src/overlay094/ov94_0223B140.o - Object src/overlay094/ov94_0223BCB0.o - Object src/overlay094/ov94_0223C610.o - Object src/overlay094/ov94_0223D0C4.o - Object src/overlay094/ov94_0223DC04.o - Object src/overlay094/ov94_0223E46C.o - Object src/overlay094/ov94_0223FB48.o - Object src/overlay094/ov94_022414B8.o - Object src/overlay094/ov94_02242AD0.o - Object src/overlay094/ov94_02243EF8.o - Object src/overlay094/ov94_022443E0.o - Object src/overlay094/ov94_022444C8.o - Object src/overlay094/ov94_02244950.o -} - -Overlay overlay95 -{ - After overlay94 - Object src/overlay095/ov95_02246C20.o - Object src/overlay095/ov95_022476F0.o - Object src/overlay095/ov95_02247B6C.o - Object src/overlay095/ov95_02248590.o - Object src/overlay095/ov95_02249740.o - Object src/overlay095/ov95_02249F90.o - Object src/overlay095/ov95_0224A390.o - Object src/overlay095/ov95_0224ABC0.o - Object src/overlay095/ov95_0224B3D8.o -} - -Overlay overlay96 -{ - After overlay12 - Object src/overlay096/ov96_0223B140.o - Object src/overlay096/ov96_0223B6A0.o - Object src/overlay096/ov96_0223BCE0.o -} - -Overlay overlay97 -{ - After overlay60 - Object src/overlay097/ov97_0222AE60.o - Object src/overlay097/ov97_0222C174.o - Object src/overlay097/ov97_0222D04C.o - Object src/overlay097/ov97_0222D2F8.o - Object src/overlay097/ov97_0222D30C.o - Object src/overlay097/ov97_02230410.o - Object src/overlay097/ov97_02232054.o - Object src/overlay097/ov97_02232200.o - Object src/overlay097/ov97_02232DC8.o - Object src/overlay097/ov97_02233408.o - Object src/overlay097/ov97_022337FC.o - Object src/overlay097/ov97_02233814.o - Object src/overlay097/ov97_02233B18.o - Object src/overlay097/ov97_02235D18.o - Object src/overlay097/ov97_0223635C.o - Object src/overlay097/ov97_02236380.o - Object src/overlay097/ov97_02237520.o - Object src/overlay097/ov97_02237694.o - Object src/overlay097/ov97_02238534.o - Object src/overlay097/ov97_02238D74.o - Object src/overlay097/ov97_022392E4.o - Object asm/overlay097/ov97_02239420.o -} - -Overlay overlay98 -{ - After overlay94 - Object src/overlay098/ov98_02246C20.o - Object src/overlay098/ov98_022471C8.o - Object src/overlay098/ov98_022499C8.o -} - -Overlay overlay99 -{ - After main - Object src/overlay099/ov99_021D0D80.o - Object src/overlay099/ov99_021D1A54.o - Object src/overlay099/ov99_021D2C08.o - Object src/overlay099/ov99_021D2E28.o - Object src/overlay099/ov99_021D340C.o - Object src/overlay099/ov99_021D3A40.o - Object src/overlay099/ov99_021D3C18.o - Object src/overlay099/ov99_021D3DE0.o - Object src/overlay099/ov99_021D3E78.o - Object src/overlay099/ov99_021D4134.o -} - -Overlay overlay100 -{ - After main - Object src/overlay100/ov100_021D0D80.o - Object src/overlay100/ov100_021D13E4.o - Object src/overlay100/ov100_021D1C44.o - Object src/overlay100/ov100_021D2F0C.o - Object src/overlay100/ov100_021D400C.o - Object src/overlay100/ov100_021D44C0.o - Object src/overlay100/ov100_021D46C8.o - Object src/overlay100/ov100_021D4E04.o -} - -Overlay overlay101 -{ - After main - Object src/overlay101/ov101_021D0D80.o - Object src/overlay101/ov101_021D1A28.o - Object src/overlay101/ov101_021D59AC.o - Object src/overlay101/ov101_021D7E48.o - Object src/overlay101/ov101_021D94D8.o -} - -Overlay overlay102 -{ - After main - Object src/overlay102/ov102_021D0D80.o -} - -Overlay overlay103 -{ - After overlay63 - Object src/overlay103/ov103_dummy.o -} - -Overlay overlay104 -{ - After overlay63 - Object src/overlay104/ov104_0222DCE0.o - Object src/overlay104/ov104_0222E63C.o - Object src/overlay104/ov104_0222E930.o - Object src/overlay104/ov104_0222EA90.o - Object src/overlay104/ov104_0222ECE8.o - Object src/overlay104/ov104_0222FBE4.o - Object src/overlay104/ov104_02231F74.o - Object src/overlay104/ov104_022332B4.o - Object src/overlay104/ov104_022339B4.o - Object src/overlay104/ov104_02234838.o - Object src/overlay104/ov104_02234DB4.o - Object src/overlay104/ov104_022358E8.o - Object src/overlay104/ov104_022361B4.o - Object src/overlay104/ov104_02237378.o - Object src/overlay104/ov104_02237DD8.o - Object src/overlay104/ov104_02239080.o - Object src/overlay104/ov104_02239130.o - Object src/overlay104/ov104_022394A4.o - Object src/overlay104/ov104_022395F0.o - Object src/overlay104/ov104_02239C58.o - Object src/overlay104/ov104_0223A0C4.o - Object src/overlay104/ov104_0223A7F4.o - Object src/overlay104/ov104_0223AF58.o - Object src/overlay104/ov104_0223B6F4.o - Object src/overlay104/ov104_0223BCBC.o - Object src/overlay104/ov104_0223C164.o - Object src/overlay104/ov104_0223C2D4.o - Object src/overlay104/ov104_0223D5D0.o - Object src/overlay104/ov104_0223D768.o - Object src/overlay104/ov104_0223D860.o - Object src/overlay104/ov104_0223D9E4.o - Object src/overlay104/ov104_0223DC7C.o - Object src/overlay104/ov104_0223E894.o -} - -Overlay overlay105 -{ - After overlay104 - Object src/overlay105/ov105_02241AE0.o - Object src/overlay105/ov105_02245AAC.o - Object src/overlay105/ov105_02245CD0.o - Object src/overlay105/ov105_02245DC4.o - Object src/overlay105/ov105_02245E54.o - Object src/overlay105/ov105_02245FB8.o - Object src/overlay105/ov105_02246214.o -} - -Overlay overlay106 -{ - After overlay104 - Object src/overlay106/ov106_02241AE0.o - Object src/overlay106/ov106_02243310.o - Object src/overlay106/ov106_022435FC.o - Object src/overlay106/ov106_022436E0.o -} - -Overlay overlay107 -{ - After overlay104 - Object src/overlay107/ov107_02241AE0.o - Object src/overlay107/ov107_02245EB0.o - Object src/overlay107/ov107_02249604.o - Object src/overlay107/ov107_02249B1C.o - Object src/overlay107/ov107_02249C98.o - Object src/overlay107/ov107_02249D14.o -} - -Overlay overlay108 -{ - After overlay104 - Object src/overlay108/ov108_02241AE0.o - Object src/overlay108/ov108_02243030.o - Object src/overlay108/ov108_0224351C.o - Object src/overlay108/ov108_02243630.o -} - -Overlay overlay109 -{ - After main - Object src/overlay109/ov109_021D0D80.o - Object src/overlay109/ov109_021D3D50.o -} - -Overlay overlay110 -{ - After main - Object src/overlay110/ov110_021D0D80.o - Object src/overlay110/ov110_021D2124.o -} - -Overlay overlay111 -{ - After main - Object src/overlay111/ov111_021D0D80.o - Object src/overlay111/ov111_021D2F80.o - Object src/overlay111/ov111_021D33F4.o - Object src/overlay111/ov111_021D3548.o -} - -Overlay overlay112 -{ - After overlay66 - Object src/overlay112/ov112_0225C700.o -} - -Overlay overlay113 -{ - After overlay66 - Object src/overlay113/ov113_0225C700.o - Object src/overlay113/ov113_0225E368.o - Object src/overlay113/ov113_02260620.o - Object src/overlay113/ov113_022607D8.o -} - -Overlay overlay114 -{ - After overlay66 - Object src/overlay114/ov114_0225C700.o - Object src/overlay114/ov114_02260038.o - Object src/overlay114/ov114_02260044.o -} - -Overlay overlay115 -{ - After overlay114 - Object src/overlay115/ov115_02260440.o - Object src/overlay115/ov115_02260BBC.o - Object src/overlay115/ov115_02260CEC.o - Object src/overlay115/ov115_02265A18.o - Object src/overlay115/ov115_02265A24.o -} - -Overlay overlay116 -{ - After overlay114 - Object src/overlay116/ov116_02260440.o - Object src/overlay116/ov116_022604C4.o - Object src/overlay116/ov116_02261870.o - Object src/overlay116/ov116_02262A44.o - Object src/overlay116/ov116_02262A8C.o - Object src/overlay116/ov116_0226432C.o - Object src/overlay116/ov116_02266FEC.o -} - -Overlay overlay117 -{ - After overlay114 - Object src/overlay117/ov117_02260440.o - Object src/overlay117/ov117_02260668.o - Object src/overlay117/ov117_022626B0.o - Object src/overlay117/ov117_02263AF0.o - Object src/overlay117/ov117_02266498.o - Object src/overlay117/ov117_022665FC.o - Object src/overlay117/ov117_022666C0.o -} - -Overlay overlay118 -{ - After main - Object src/overlay118/ov118_021D0D80.o -} - -Overlay overlay119 -{ - After main - Object src/overlay119/ov119_021D0D80.o - Object src/overlay119/ov119_021D191C.o -} - -Overlay overlay120 -{ - After main - Object src/overlay120/ov120_021D0D80.o -} - -Overlay overlay121 -{ - After main - Object src/overlay121/ov121_021D0D80.o -} - diff --git a/make_tools.mk b/make_tools.mk deleted file mode 100644 index 8c7f86d17d..0000000000 --- a/make_tools.mk +++ /dev/null @@ -1,11 +0,0 @@ -MAKEFLAGS += --no-print-directory - -#TOOLDIRS := $(filter-out tools/mwccarm tools/bin tools/ntr_merge_elf tools/asmdiff,$(wildcard tools/*)) -TOOLDIRS := tools/fixrom tools/gen_fx_consts tools/mwasmarm_patcher - -.PHONY: all $(TOOLDIRS) - -all: $(TOOLDIRS) - -$(TOOLDIRS): - $(MAKE) -C $@ diff --git a/meson.build b/meson.build new file mode 100644 index 0000000000..6be0da5596 --- /dev/null +++ b/meson.build @@ -0,0 +1,207 @@ +project('pokeplatinum', ['c', 'nasm'], + subproject_dir: 'lib/external', + version: '1.0', + meson_version: '>=1.2.0', + default_options : [ + 'buildtype=plain', + 'warning_level=0' + ] +) + +fs = import('fs') + +############################################################ +### INCLUDE PATHS ### +############################################################ +public_includes = include_directories('include', 'asm') + + +############################################################ +### COMPILER FLAGS ### +############################################################ +c_args = [ + '-O4,p', + '-proc', 'arm946e', + '-thumb', + '-enum', 'int', + '-lang', 'c99', + '-Cpp_exceptions', 'off', + '-gccext,on', + '-msgstyle', 'gcc', + '-ipa', 'file', + '-interworking', + '-inline', 'on,noauto', + '-char', 'signed', + '-nosyspath', + '-nostdinc' +] + +pokeplatinum_args = [ + '-DPM_KEEP_ASSERTS', + '-DGAME_VERSION=PLATINUM', + '-DGAME_LANGUAGE=ENGLISH' +] + +asm_args = [ + '-proc', 'arm5TE', + '-16', + '-gccinc' +] + +link_args = [ + '-w', 'off', + '-proc', 'arm946e', + '-nopic', + '-nopid', + '-interworking', + '-map', 'closure,unused', + '-symtab', 'sort', + '-msgstyle' ,'gcc', + '-nostdlib', + '-m', '_start', + '-force_active', 'DGTi_hash2_arm4_small,Exception_Table_Index,Unk_02101B00,Unk_02101CE4' +] + + +############################################################ +### TOOLS ### +############################################################ +subdir('tools') + + +############################################################ +### SPEC FILES ### +############################################################ +subdir('platinum.us') + + +############################################################ +### DEPENDENCIES ### +############################################################ +gamespy_dep = dependency('gamespy', fallback : ['gamespy', 'gamespy_dep']) +libvct_dep = dependency('libVCT', fallback : ['libVCT', 'libvct_dep']) +msl_dep = dependency('msl', fallback : ['msl', 'msl_dep']) +nitrosdk_dep = dependency('NitroSDK', fallback : ['NitroSDK', 'nitrosdk_dep']) +nitrosystem_dep = dependency('NitroSystem', fallback : ['NitroSystem', 'nitrosystem_dep']) +nitrowifi_dep = dependency('NitroWiFi', fallback : ['NitroWiFi', 'nitrowifi_dep']) +nitrodwc_dep = dependency('NitroDWC', fallback : ['NitroDWC', 'nitrodwc_dep']) +libcrypto_dep = dependency('libcrypto', fallback : ['libcrypto', 'libcrypto_dep']) +libsyscall_dep = dependency('libsyscall', fallback : ['libsyscall', 'libsyscall_dep']) + + +############################################################ +### INTERNAL LIBRARIES ### +############################################################ +subdir('lib/internal') + + +############################################################ +### GAME SOURCES ### +############################################################ +subdir('src') +subdir('asm') + + +# Build main executable +main = executable('main', + sources: [ + pokeplatinum_c, + pokeplatinum_asm + ], + c_args: [ + c_args, + pokeplatinum_args + ], + nasm_args: asm_args, + c_pch: 'include/pch/global_pch.h', + include_directories: [ + public_includes, + libgds_public_includes, + libspl_public_includes + ], + dependencies: [ + gamespy_dep, + libvct_dep, + msl_dep, + nitrosdk_dep, + nitrosystem_dep, + nitrowifi_dep, + nitrodwc_dep, + libsyscall_dep, + libcrypto_dep + ], + link_with: [ + libgds, + libspl + ], + link_args: [ + link_args, + 'platinum.us/main.lcf' + ], + link_depends: main_lcf, + native: false +) + + +############################################################ +### FILE SYSTEM ### +############################################################ +subdir('res') + + +############################################################ +### ARM7 BINARIES ### +############################################################ +ichneumon_sub = subproject('NitroSDK').get_variable('ichneumon_sub') +ichneumon_sub_defs = subproject('NitroSDK').get_variable('ichneumon_sub_defs') + + +############################################################ +### DS ROM ### +############################################################ +pokeplatinum_nds = custom_target('pokeplatinum.us.nds', + output: [ + 'pokeplatinum.us.nds', + 'pokeplatinum.us.nlf' + ], + input: [ + main, + banner_bnr, + rom_header_template, + rom_rsf, + ichneumon_sub, + ichneumon_sub_defs, + fixrom_exe, + nitrofs_files # Make sure this is always listed last + ], + command : [ + 'sh', '-c', + '"$@" && @INPUT6@ @OUTPUT0@ --secure-crc 0xF8B8 --game-code CPUE', + '--', + makerom_exe, + '-DTITLE_NAME=POKEMON PL', + '-DBNR=@INPUT1@', + '-DHEADER_TEMPLATE=@INPUT2@', + '-DARM7=@INPUT4@', + '-DARM7_DEFS=@INPUT5@', + '@INPUT3@', + '@OUTPUT0@', + '@OUTPUT1@' + ], + build_by_default : true +) + + +############################################################ +### TESTS ### +############################################################ +sha1sum = find_program('sha1sum', native: true) + +test('SBIN Checksums', sha1sum, args: ['-c', '--quiet', sbins_sha1]) +test('ROM Checksum', sha1sum, args: ['-c', '--quiet', rom_sha1]) + + +############################################################ +### POSTCONF ### +############################################################ +meson.add_postconf_script(postconf_py) diff --git a/meson/cross.ini b/meson/cross.ini new file mode 100644 index 0000000000..c21177e6f9 --- /dev/null +++ b/meson/cross.ini @@ -0,0 +1,12 @@ +[binaries] +c = [root + '/tools/cw/mwrap.exe', 'mwccarm'] +c_ld = [root + '/tools/cw/mwrap.exe', 'mwldarm'] +nasm = [root + '/tools/cw/mwrap.exe', 'mwasmarm'] +ar = [root + '/tools/cw/mwrap.exe', 'mwldarm'] +strip = ['false'] + +[host_machine] +system = 'bare metal' +cpu_family = 'arm' +cpu = 'arm' +endian = 'little' diff --git a/meson/cross_unix.ini b/meson/cross_unix.ini new file mode 100644 index 0000000000..27e6266c19 --- /dev/null +++ b/meson/cross_unix.ini @@ -0,0 +1,12 @@ +[binaries] +c = [root + '/tools/cw/mwrap', 'mwccarm'] +c_ld = [root + '/tools/cw/mwrap', 'mwldarm'] +nasm = [root + '/tools/cw/mwrap', 'mwasmarm'] +ar = [root + '/tools/cw/mwrap', 'mwldarm'] +strip = ['false'] + +[host_machine] +system = 'bare metal' +cpu_family = 'arm' +cpu = 'arm' +endian = 'little' diff --git a/meson/native.ini b/meson/native.ini new file mode 100644 index 0000000000..ae83773b3b --- /dev/null +++ b/meson/native.ini @@ -0,0 +1,8 @@ +[binaries] +c = 'gcc' +cpp = 'g++' +ar = 'ar' + +makebanner = root + '/tools/maketools/makebanner.exe' +makelcf = root + '/tools/maketools/makelcf.exe' +makerom = root + '/tools/maketools/makerom.exe' diff --git a/meson/native_unix.ini b/meson/native_unix.ini new file mode 100644 index 0000000000..198f596dbb --- /dev/null +++ b/meson/native_unix.ini @@ -0,0 +1,8 @@ +[binaries] +c = 'gcc' +cpp = 'g++' +ar = 'ar' + +makebanner = ['wine', root + '/tools/maketools/makebanner.exe'] +makelcf = ['wine', root + '/tools/maketools/makelcf.exe'] +makerom = ['wine', root + '/tools/maketools/makerom.exe'] diff --git a/platform.mk b/platform.mk deleted file mode 100644 index dc45cf0239..0000000000 --- a/platform.mk +++ /dev/null @@ -1,38 +0,0 @@ - -WSLENV ?= no -ifeq ($(WSLENV),no) -NOWINE = 0 -else -NOWINE = 1 -endif - -ifeq ($(OS),Windows_NT) -EXE := .exe -WINE := -GREP := grep -P -SED := sed -r -SHA1SUM := sha1sum -MKTEMP := mktemp -else -EXE := -WINE := wine -UNAME_S := $(shell uname -s) -ifeq ($(UNAME_S),Darwin) -GREP := grep -E -SED := gsed -r -SHA1SUM := shasum -MKTEMP := gmktemp -else -GREP := grep -P -SED := sed -r -SHA1SUM := sha1sum -MKTEMP := mktemp -endif -endif - -ifeq ($(NOWINE),1) -WINE := -WINPATH := wslpath -else -WINPATH := winepath -endif diff --git a/platinum.sha1 b/platinum.sha1 deleted file mode 100644 index 6b081c0189..0000000000 --- a/platinum.sha1 +++ /dev/null @@ -1 +0,0 @@ -ce81046eda7d232513069519cb2085349896dec7 pokeplatinum.us.nds \ No newline at end of file diff --git a/platinum.us/main.lsf b/platinum.us/main.lsf new file mode 100644 index 0000000000..0050f1949b --- /dev/null +++ b/platinum.us/main.lsf @@ -0,0 +1,1726 @@ +############################################################ +### Linker spec file for Pokemon Platinum US ### +### Pass this to the SDK's makelcf.exe utility ### +### along with the ARM9-TS template. ### +### WIP ### +############################################################ + +Static main +{ + Address 0x02000000 + StackSize 0 2048 + Library libdwcaccount.a (.version) + Library libcard.a (.version) + Library libvct.a (.version) + Library libsoc.a (.version) + Library libcps.a (.version) + Library libssl.a (.version) + Object main.nef.p/src_main.c.o + Object main.nef.p/src_unk_0200112C.c.o + Object main.nef.p/src_game_version.c.o + Object main.nef.p/src_unk_02001AF4.c.o + Object main.nef.p/src_unk_020021B0.c.o + Object main.nef.p/src_unk_02002328.c.o + Object main.nef.p/src_unk_02002B7C.c.o + Object main.nef.p/src_unk_02002F38.c.o + Object main.nef.p/src_unk_02003B60.c.o + Object main.nef.p/src_unk_020041CC.c.o + Object main.nef.p/src_unk_02005474.c.o + Object main.nef.p/src_unk_02006224.c.o + Object main.nef.p/src_game_overlay.c.o + Object main.nef.p/src_unk_0200679C.c.o + Object main.nef.p/src_unk_020067E8.c.o + Object main.nef.p/src_narc.c.o + Object main.nef.p/src_unk_02006E3C.c.o + Object main.nef.p/src_unk_0200762C.c.o + Object main.nef.p/src_unk_020093B4.c.o + Object main.nef.p/src_unk_02009714.c.o + Object main.nef.p/src_unk_0200A328.c.o + Object main.nef.p/src_unk_0200A784.c.o + Object main.nef.p/src_unk_0200A9DC.c.o + Object main.nef.p/src_unk_0200AC5C.c.o + Object main.nef.p/src_unk_0200B29C.c.o + Object main.nef.p/src_unk_0200B358.c.o + Object main.nef.p/src_unk_0200C440.c.o + Object main.nef.p/src_unk_0200C6E4.c.o + Object main.nef.p/src_unk_0200D9E8.c.o + Object main.nef.p/src_unk_0200DA60.c.o + Object main.nef.p/src_unk_0200F174.c.o + Object main.nef.p/src_unk_0200F85C.c.o + Object main.nef.p/src_unk_02012480.c.o + Object main.nef.p/src_unk_02012744.c.o + Object main.nef.p/src_unk_020131EC.c.o + Object main.nef.p/src_unk_0201378C.c.o + Object main.nef.p/src_unk_02013A04.c.o + Object main.nef.p/src_unk_02013B10.c.o + Object main.nef.p/src_unk_02014000.c.o + Object main.nef.p/src_unk_020149F0.c.o + Object main.nef.p/src_unk_02014A84.c.o + Object main.nef.p/src_unk_02014D38.c.o + Object main.nef.p/src_unk_02015064.c.o + Object main.nef.p/src_unk_0201567C.c.o + Object main.nef.p/src_unk_020158A8.c.o + Object main.nef.p/src_unk_02015920.c.o + Object main.nef.p/src_unk_02015F84.c.o + Object main.nef.p/src_unk_02017038.c.o + Object main.nef.p/src_unk_020170BC.c.o + Object main.nef.p/src_unk_02017428.c.o + Object main.nef.p/src_unk_02017498.c.o + Object main.nef.p/src_unk_02017728.c.o + Object main.nef.p/src_heap.c.o + Object main.nef.p/src_unk_02018340.c.o + Object main.nef.p/src_unk_0201C970.c.o + Object main.nef.p/src_unk_0201CCF0.c.o + Object main.nef.p/src_unk_0201CED8.c.o + Object main.nef.p/src_unk_0201D0C8.c.o + Object main.nef.p/src_unk_0201D15C.c.o + Object main.nef.p/src_unk_0201D670.c.o + Object main.nef.p/src_unk_0201DBEC.c.o + Object main.nef.p/src_unk_0201DD00.c.o + Object main.nef.p/src_unk_0201E010.c.o + Object main.nef.p/src_unk_0201E0A4.c.o + Object main.nef.p/src_unk_0201E190.c.o + Object main.nef.p/src_unk_0201E3BC.c.o + Object main.nef.p/src_unk_0201E3D8.c.o + Object main.nef.p/src_unk_0201E86C.c.o + Object main.nef.p/src_unk_0201F834.c.o + Object main.nef.p/src_gx_layers.c.o + Object main.nef.p/src_unk_02020020.c.o + Object main.nef.p/src_unk_02020AEC.c.o + Object main.nef.p/src_unk_020218BC.c.o + Object main.nef.p/src_unk_02022594.c.o + Object main.nef.p/src_unk_02022844.c.o + Object main.nef.p/src_error_handling.c.o + Object main.nef.p/src_unk_0202298C.c.o + Object main.nef.p/src_unk_0202309C.c.o + Object main.nef.p/src_unk_020232E0.c.o + Object main.nef.p/src_strbuf.c.o + Object main.nef.p/src_unk_02023FCC.c.o + Object main.nef.p/src_unk_0202414C.c.o + Object main.nef.p/src_unk_0202419C.c.o + Object main.nef.p/src_unk_020241F0.c.o + Object main.nef.p/src_unk_02024220.c.o + Object main.nef.p/src_unk_02024358.c.o + Object main.nef.p/src_unk_0202440C.c.o + Object main.nef.p/src_unk_020244AC.c.o + Object main.nef.p/src_unk_02025CB0.c.o + Object main.nef.p/src_unk_02025E08.c.o + Object main.nef.p/src_unk_02025E68.c.o + Object main.nef.p/src_unk_0202602C.c.o + Object main.nef.p/src_unk_02026150.c.o + Object main.nef.p/src_unk_020261E4.c.o + Object main.nef.p/src_unk_0202631C.c.o + Object main.nef.p/src_unk_020277A4.c.o + Object main.nef.p/src_unk_020279FC.c.o + Object main.nef.p/src_unk_02027B70.c.o + Object main.nef.p/src_unk_02027F50.c.o + Object main.nef.p/src_unk_02027F84.c.o + Object main.nef.p/src_unk_02028124.c.o + Object main.nef.p/src_unk_0202854C.c.o + Object main.nef.p/src_unk_020298BC.c.o + Object main.nef.p/src_poffin.c.o + Object main.nef.p/src_unk_0202ACE0.c.o + Object main.nef.p/src_unk_0202B37C.c.o + Object main.nef.p/src_coins.c.o + Object main.nef.p/src_unk_0202B604.c.o + Object main.nef.p/src_unk_0202C7FC.c.o + Object main.nef.p/src_unk_0202C858.c.o + Object main.nef.p/src_unk_0202C9F4.c.o + Object main.nef.p/src_unk_0202CBE4.c.o + Object main.nef.p/src_unk_0202CC64.c.o + Object main.nef.p/src_unk_0202CD50.c.o + Object main.nef.p/src_unk_0202D05C.c.o + Object main.nef.p/src_unk_0202D778.c.o + Object main.nef.p/src_unk_0202D7A8.c.o + Object main.nef.p/src_unk_0202DA40.c.o + Object main.nef.p/src_unk_0202DAB4.c.o + Object main.nef.p/src_unk_0202DF8C.c.o + Object main.nef.p/src_unk_0202E2CC.c.o + Object main.nef.p/src_unk_0202E840.c.o + Object main.nef.p/src_unk_0202EEC0.c.o + Object main.nef.p/src_unk_0202F108.c.o + Object main.nef.p/src_unk_0202F180.c.o + Object main.nef.p/src_unk_0202F1D4.c.o + Object main.nef.p/src_unk_0202FF4C.c.o + Object main.nef.p/src_unk_02030108.c.o + Object main.nef.p/src_unk_020302D0.c.o + Object main.nef.p/src_unk_02030494.c.o + Object main.nef.p/src_unk_0203061C.c.o + Object main.nef.p/src_unk_02030880.c.o + Object main.nef.p/src_unk_02030A80.c.o + Object main.nef.p/src_unk_02030CE8.c.o + Object main.nef.p/src_unk_02030EA4.c.o + Object main.nef.p/src_unk_02030EE0.c.o + Object main.nef.p/src_unk_02032188.c.o + Object main.nef.p/src_unk_020322D8.c.o + Object main.nef.p/src_unk_0203266C.c.o + Object main.nef.p/src_unk_02032798.c.o + Object main.nef.p/src_unk_020329E0.c.o + Object main.nef.p/src_unk_02033200.c.o + Object main.nef.p/src_unk_02034198.c.o + Object main.nef.p/src_unk_020363E8.c.o + Object main.nef.p/src_unk_020366A0.c.o + Object main.nef.p/src_unk_02038ED4.c.o + Object main.nef.p/src_unk_02038F8C.c.o + Object main.nef.p/src_unk_02038FFC.c.o + Object main.nef.p/src_unk_0203909C.c.o + Object main.nef.p/src_unk_020393C8.c.o + Object main.nef.p/src_unk_02039814.c.o + Object main.nef.p/src_unk_02039A58.c.o + Object main.nef.p/src_unk_02039A64.c.o + Object main.nef.p/src_unk_02039C80.c.o + Object main.nef.p/src_map_header.c.o + Object main.nef.p/src_unk_0203A378.c.o + Object main.nef.p/src_unk_0203A6DC.c.o + Object main.nef.p/src_unk_0203A7D8.c.o + Object main.nef.p/src_unk_0203A944.c.o + Object main.nef.p/src_unk_0203A9C8.c.o + Object main.nef.p/src_unk_0203C954.c.o + Object main.nef.p/src_unk_0203CC84.c.o + Object main.nef.p/src_unk_0203D178.c.o + Object main.nef.p/src_unk_0203D1B8.c.o + Object main.nef.p/src_unk_0203E724.c.o + Object main.nef.p/src_unk_0203E880.c.o + Object main.nef.p/src_unk_0203F6C4.c.o + Object main.nef.p/src_unk_02046AD4.c.o + Object main.nef.p/src_unk_02046C7C.c.o + Object main.nef.p/src_unk_020474B8.c.o + Object main.nef.p/src_unk_020480A8.c.o + Object main.nef.p/src_unk_020482D4.c.o + Object main.nef.p/src_unk_02048614.c.o + Object main.nef.p/src_unk_02048BD0.c.o + Object main.nef.p/src_unk_02048DD8.c.o + Object main.nef.p/src_unk_020494DC.c.o + Object main.nef.p/src_unk_02049D08.c.o + Object main.nef.p/src_unk_0204AEE8.c.o + Object main.nef.p/src_unk_0204B64C.c.o + Object main.nef.p/src_unk_0204B830.c.o + Object main.nef.p/src_unk_0204C500.c.o + Object main.nef.p/src_unk_0204C6C8.c.o + Object main.nef.p/src_unk_0204C8F0.c.o + Object main.nef.p/src_unk_0204CA84.c.o + Object main.nef.p/src_unk_0204CDDC.c.o + Object main.nef.p/src_unk_0204CFFC.c.o + Object main.nef.p/src_unk_0204E240.c.o + Object main.nef.p/src_unk_0204E378.c.o + Object main.nef.p/src_unk_0204E3CC.c.o + Object main.nef.p/src_unk_0204E75C.c.o + Object main.nef.p/src_unk_0204E974.c.o + Object main.nef.p/src_unk_0204EDA4.c.o + Object main.nef.p/src_unk_0204F02C.c.o + Object main.nef.p/src_unk_0204F04C.c.o + Object main.nef.p/src_unk_0204F13C.c.o + Object main.nef.p/src_unk_0204FA34.c.o + Object main.nef.p/src_unk_0204FAB4.c.o + Object main.nef.p/src_unk_0205001C.c.o + Object main.nef.p/src_unk_0205003C.c.o + Object main.nef.p/src_unk_02050548.c.o + Object main.nef.p/src_unk_02050568.c.o + Object main.nef.p/src_unk_020507CC.c.o + Object main.nef.p/src_unk_020508D4.c.o + Object main.nef.p/src_unk_02050A74.c.o + Object main.nef.p/src_enc_effects.c.o + Object main.nef.p/src_unk_02051D8C.c.o + Object main.nef.p/src_unk_020528D0.c.o + Object main.nef.p/src_unk_02052C6C.c.o + Object main.nef.p/src_unk_020530C8.c.o + Object main.nef.p/src_unk_02054884.c.o + Object main.nef.p/src_unk_02054BD0.c.o + Object main.nef.p/src_unk_02054D00.c.o + Object main.nef.p/src_unk_020553DC.c.o + Object main.nef.p/src_unk_020556C4.c.o + Object main.nef.p/src_unk_0205578C.c.o + Object main.nef.p/src_unk_02055808.c.o + Object main.nef.p/src_unk_020559DC.c.o + Object main.nef.p/src_unk_02055C50.c.o + Object main.nef.p/src_unk_020562F8.c.o + Object main.nef.p/src_unk_02056720.c.o + Object main.nef.p/src_unk_02056B30.c.o + Object main.nef.p/src_unk_020573FC.c.o + Object main.nef.p/src_unk_0205749C.c.o + Object main.nef.p/src_unk_02057518.c.o + Object main.nef.p/src_unk_0205964C.c.o + Object main.nef.p/src_unk_0205A0D8.c.o + Object main.nef.p/src_unk_0205B33C.c.o + Object main.nef.p/src_unk_0205C22C.c.o + Object main.nef.p/src_unk_0205C980.c.o + Object main.nef.p/src_unk_0205CA94.c.o + Object main.nef.p/src_unk_0205D8CC.c.o + Object main.nef.p/src_unk_0205DAC8.c.o + Object main.nef.p/src_unk_0205DFC4.c.o + Object main.nef.p/src_unk_0205E7D0.c.o + Object main.nef.p/src_unk_0205F180.c.o + Object main.nef.p/src_unk_02061804.c.o + Object main.nef.p/src_unk_020EDBAC.c.o + Object main.nef.p/src_unk_02063400.c.o + Object main.nef.p/src_unk_0206450C.c.o + Object main.nef.p/src_unk_020655F4.c.o + Object main.nef.p/src_unk_020673B8.c.o + Object main.nef.p/src_unk_020677F4.c.o + Object main.nef.p/src_unk_02067A84.c.o + Object main.nef.p/src_unk_02068344.c.o + Object main.nef.p/src_unk_020683F4.c.o + Object main.nef.p/src_unk_0206940C.c.o + Object main.nef.p/src_unk_02069BE0.c.o + Object main.nef.p/src_unk_0206A780.c.o + Object main.nef.p/src_unk_0206A8DC.c.o + Object main.nef.p/src_unk_0206AFE0.c.o + Object main.nef.p/src_unk_0206B70C.c.o + Object main.nef.p/src_unk_0206B9D8.c.o + Object main.nef.p/src_unk_0206C0E8.c.o + Object main.nef.p/src_unk_0206C2D0.c.o + Object main.nef.p/src_unk_0206C33C.c.o + Object main.nef.p/src_unk_0206C660.c.o + Object main.nef.p/src_unk_0206C784.c.o + Object main.nef.p/src_unk_0206CCB0.c.o + Object main.nef.p/src_unk_0206F314.c.o + Object main.nef.p/src_unk_02070428.c.o + Object main.nef.p/src_unk_0207064C.c.o + Object main.nef.p/src_unk_0207070C.c.o + Object main.nef.p/src_unk_020711C8.c.o + Object main.nef.p/src_unk_020711EC.c.o + Object main.nef.p/src_unk_0207160C.c.o + Object main.nef.p/src_unk_02071B10.c.o + Object main.nef.p/src_unk_02071CD0.c.o + Object main.nef.p/src_unk_02071CFC.c.o + Object main.nef.p/src_unk_02071D40.c.o + Object main.nef.p/src_unk_020722AC.c.o + Object main.nef.p/src_unk_02073700.c.o + Object main.nef.p/src_unk_02073838.c.o + Object main.nef.p/src_unk_02073C2C.c.o + Object main.nef.p/src_move_table.c.o + Object main.nef.p/src_unk_02079170.c.o + Object main.nef.p/src_unk_020797C8.c.o + Object main.nef.p/src_unk_02079D40.c.o + Object main.nef.p/src_party.c.o + Object main.nef.p/src_unk_0207A274.c.o + Object main.nef.p/src_unk_0207A2A8.c.o + Object main.nef.p/src_unk_0207A6DC.c.o + Object main.nef.p/src_unk_0207AE68.c.o + Object main.nef.p/src_unk_0207C63C.c.o + Object main.nef.p/src_unk_0207C908.c.o + Object main.nef.p/src_unk_0207CB08.c.o + Object main.nef.p/src_item.c.o + Object main.nef.p/src_unk_0207D3B8.c.o + Object main.nef.p/src_unk_0207DA28.c.o + Object main.nef.p/src_unk_0207DFAC.c.o + Object main.nef.p/src_unk_0207E060.c.o + Object main.nef.p/src_unk_0207E0B8.c.o + Object main.nef.p/src_unk_020819DC.c.o + Object main.nef.p/src_unk_02082C2C.c.o + Object main.nef.p/src_unk_02083370.c.o + Object main.nef.p/src_unk_02084B70.c.o + Object main.nef.p/src_unk_0208694C.c.o + Object main.nef.p/src_unk_020890F4.c.o + Object main.nef.p/src_unk_02089604.c.o + Object main.nef.p/src_unk_0208A3F4.c.o + Object main.nef.p/src_unk_0208B284.c.o + Object main.nef.p/src_unk_0208BA78.c.o + Object main.nef.p/src_unk_0208BEBC.c.o + Object main.nef.p/src_unk_0208C010.c.o + Object main.nef.p/src_unk_0208C098.c.o + Object main.nef.p/src_unk_0208C324.c.o + Object main.nef.p/src_unk_0208EA44.c.o + Object main.nef.p/src_unk_0208FCF8.c.o + Object main.nef.p/src_unk_020916B4.c.o + Object main.nef.p/src_unk_020920C0.c.o + Object main.nef.p/src_unk_020923C0.c.o + Object main.nef.p/src_unk_02092494.c.o + Object main.nef.p/src_unk_020933F8.c.o + Object main.nef.p/src_unk_02094EDC.c.o + Object main.nef.p/src_unk_02095AF0.c.o + Object main.nef.p/src_unk_02095CD4.c.o + Object main.nef.p/src_unk_02095E98.c.o + Object main.nef.p/src_unk_020961E8.c.o + Object main.nef.p/src_unk_02096420.c.o + Object main.nef.p/src_unk_020972FC.c.o + Object main.nef.p/src_unk_0209739C.c.o + Object main.nef.p/src_unk_0209747C.c.o + Object main.nef.p/src_unk_02097624.c.o + Object main.nef.p/src_unk_02097B18.c.o + Object main.nef.p/src_unk_02098218.c.o + Object main.nef.p/src_unk_020985E4.c.o + Object main.nef.p/src_unk_020986CC.c.o + Object main.nef.p/src_unk_02098700.c.o + Object main.nef.p/src_unk_02098988.c.o + Object main.nef.p/src_unk_020F6824.c.o + Object main.nef.p/src_unk_020989DC.c.o + Object main.nef.p/src_unk_02098FFC.c.o + Object main.nef.p/src_unk_02099500.c.o + Object main.nef.p/src_unk_02099550.c.o + Object main.nef.p/src_unk_02099604.c.o + Object main.nef.p/src_unk_020996D0.c.o + Object main.nef.p/src_unk_020997B8.c.o + Object main.nef.p/src_unk_020998EC.c.o + Object main.nef.p/src_unk_02099D44.c.o + Object main.nef.p/src_unk_02099DFC.c.o + Object main.nef.p/src_unk_0209A2C4.c.o + Object main.nef.p/src_unk_0209A74C.c.o + Object main.nef.p/src_unk_0209AA74.c.o + Object main.nef.p/src_unk_0209AC14.c.o + Object main.nef.p/src_unk_0209ACBC.c.o + Object main.nef.p/src_unk_0209ACF4.c.o + Object main.nef.p/src_unk_0209B344.c.o + Object main.nef.p/src_error_message_reset.c.o + Object main.nef.p/src_unk_0209B6F8.c.o + Object main.nef.p/src_unk_0209BA18.c.o + Object main.nef.p/src_unk_0209BA80.c.o + Object main.nef.p/src_unk_0209BDF8.c.o + Object main.nef.p/src_unk_0209C194.c.o + Object main.nef.p/src_unk_0209C370.c.o + Object main.nef.p/src_unk_0209C390.c.o + Library libspl.a + Library libwvr.a + Library libdwcbm.a + Library libdwcaccount.a + Library libcrypto_static.a + Library libnnsfnd.a + Library libnnsgfd.a + Library libnnsg2d.a + Library libnnsg3d.a + Library libnnssnd.a + Library libfx.a + Library libgx.a + Library libos.a + Library libmi.a + Library libsnd.a + Library libpxi.a + Library libfs.a + Library libdgt.a + Library libcp.a + Library libspi.a + Library librtc.a + Library libcard.a + Library libwm.a + Library libctrdg.a + Library libmath.a + Library libstd.a + Library MSL_C_NITRO_Ai_LE.a + Library MSL_Extras_NITRO_Ai_LE.a + Library MSL_CPP_NITRO_Ai_LE.a + Library FP_fastI_v5t_LE.a + Library NITRO_Runtime_Ai_LE.a +} + +Autoload ITCM +{ + Address 0x01FF8000 + Library libos.a (.itcm) + Library libmi.a (.itcm) +} + +Autoload DTCM +{ + Address 0x027E0000 + Object main.nef.p/asm_dtcm.s.o (.dtcm) + Object main.nef.p/asm_dtcm.s.o (.bss) +} + +Overlay overlay0 +{ + After main + Object main.nef.p/src_overlay000_ov0_dummy.c.o +} + +Overlay overlay1 +{ + After main + Object main.nef.p/src_overlay001_ov1_021D0D80.c.o +} + +Overlay overlay2 +{ + After overlay1 + Object main.nef.p/src_overlay002_ov2_dummy.c.o +} + +Overlay overlay3 +{ + After ITCM + Object main.nef.p/src_overlay003_ov3_dummy.c.o +} + +Overlay overlay4 +{ + After main + Object main.nef.p/src_overlay004_ov4_021D0D80.c.o + Object main.nef.p/src_overlay004_ov4_021D2808.c.o + Library libdwcauth.a + Library libdwcbase.a + Library libdwcac.a + Library libdwcgscommon.a + Library libdwcgsgp.a + Library libdwcgsgstats.a + Library libdwcgsgt2.a + Library libdwcgsnatneg.a + Library libdwcgsqr2.a + Library libdwcgsserverbrowsing.a + Library libvct.a + Library libsoc.a + Library libcps.a + Library libssl.a + Library libwcm.a + Library libstubsmd5.a +} + +Overlay overlay5 +{ + After main + Object main.nef.p/src_overlay005_ov5_021D0D80.c.o + Object main.nef.p/src_overlay005_ov5_021D1A94.c.o + Object main.nef.p/src_overlay005_ov5_021D1C30.c.o + Object main.nef.p/src_overlay005_ov5_021D2F14.c.o + Object main.nef.p/src_overlay005_ov5_021D37AC.c.o + Object main.nef.p/src_overlay005_ov5_021D431C.c.o + Object main.nef.p/src_overlay005_ov5_021D521C.c.o + Object main.nef.p/src_overlay005_ov5_021D56BC.c.o + Object main.nef.p/src_overlay005_ov5_021D57BC.c.o + Object main.nef.p/src_overlay005_ov5_021D5878.c.o + Object main.nef.p/src_overlay005_ov5_021D5B40.c.o + Object main.nef.p/src_overlay005_ov5_021D5BC0.c.o + Object main.nef.p/src_overlay005_ov5_021D5CB0.c.o + Object main.nef.p/src_overlay005_ov5_021D5EB8.c.o + Object main.nef.p/src_overlay005_ov5_021DB888.c.o + Object main.nef.p/src_overlay005_ov5_021DC018.c.o + Object main.nef.p/src_overlay005_ov5_021DD42C.c.o + Object main.nef.p/src_overlay005_ov5_021DD6FC.c.o + Object main.nef.p/src_overlay005_ov5_021DDAE4.c.o + Object main.nef.p/src_overlay005_ov5_021DDBE8.c.o + Object main.nef.p/src_overlay005_ov5_021DF440.c.o + Object main.nef.p/src_overlay005_ov5_021DFB54.c.o + Object main.nef.p/src_overlay005_ov5_021E1154.c.o + Object main.nef.p/src_overlay005_ov5_021E135C.c.o + Object main.nef.p/src_overlay005_ov5_021E15F4.c.o + Object main.nef.p/src_overlay005_ov5_021E1B08.c.o + Object main.nef.p/src_overlay005_ov5_021E1D20.c.o + Object main.nef.p/src_overlay005_ov5_021E2098.c.o + Object main.nef.p/src_overlay005_ov5_021E22B0.c.o + Object main.nef.p/src_overlay005_ov5_021E2338.c.o + Object main.nef.p/src_overlay005_ov5_021E622C.c.o + Object main.nef.p/src_overlay005_ov5_021E779C.c.o + Object main.nef.p/src_overlay005_ov5_021EA714.c.o + Object main.nef.p/src_overlay005_ov5_021EA874.c.o + Object main.nef.p/src_overlay005_ov5_021EAFA4.c.o + Object main.nef.p/src_overlay005_ov5_021FAF40.c.o + Object main.nef.p/src_overlay005_ov5_021EB1A0.c.o + Object main.nef.p/src_overlay005_ov5_021ECA70.c.o + Object main.nef.p/src_overlay005_ov5_021ECC20.c.o + Object main.nef.p/src_overlay005_ov5_021ECE40.c.o + Object main.nef.p/src_overlay005_ov5_021EE75C.c.o + Object main.nef.p/src_overlay005_ov5_021EE7D4.c.o + Object main.nef.p/src_overlay005_ov5_021EEAC8.c.o + Object main.nef.p/src_overlay005_ov5_021EEC68.c.o + Object main.nef.p/src_overlay005_ov5_021EEF34.c.o + Object main.nef.p/src_overlay005_ov5_021EF250.c.o + Object main.nef.p/src_overlay005_ov5_021EF3A8.c.o + Object main.nef.p/src_overlay005_ov5_021EF4BC.c.o + Object main.nef.p/src_overlay005_ov5_021EF75C.c.o + Object main.nef.p/src_overlay005_ov5_021EFB0C.c.o + Object main.nef.p/src_overlay005_ov5_021F007C.c.o + Object main.nef.p/src_overlay005_ov5_021FF6B8.c.o + Object main.nef.p/src_overlay005_ov5_021F067C.c.o + Object main.nef.p/src_overlay005_ov5_021F0824.c.o + Object main.nef.p/src_overlay005_ov5_021F08CC.c.o + Object main.nef.p/src_overlay005_ov5_021F0E84.c.o + Object main.nef.p/src_overlay005_ov5_021F0EB0.c.o + Object main.nef.p/src_overlay005_ov5_021F101C.c.o + Object main.nef.p/src_overlay005_ov5_021F10E8.c.o + Object main.nef.p/src_overlay005_ov5_021F134C.c.o + Object main.nef.p/src_overlay005_ov5_021F17B8.c.o + Object main.nef.p/src_overlay005_ov5_021F1CC8.c.o + Object main.nef.p/src_overlay005_ov5_021F204C.c.o + Object main.nef.p/src_overlay005_ov5_021F23D0.c.o + Object main.nef.p/src_overlay005_ov5_021F25C0.c.o + Object main.nef.p/src_overlay005_ov5_021F2850.c.o + Object main.nef.p/src_overlay005_ov5_021F2A7C.c.o + Object main.nef.p/src_overlay005_ov5_021F2BD0.c.o + Object main.nef.p/src_overlay005_ov5_021F2D20.c.o + Object main.nef.p/src_overlay005_ov5_021F3284.c.o + Object main.nef.p/src_overlay005_ov5_021F348C.c.o + Object main.nef.p/src_overlay005_ov5_021F37A8.c.o + Object main.nef.p/src_overlay005_ov5_021F3A50.c.o + Object main.nef.p/src_overlay005_ov5_021F3D00.c.o + Object main.nef.p/src_overlay005_ov5_021F3E74.c.o + Object main.nef.p/src_overlay005_ov5_021F4018.c.o + Object main.nef.p/src_overlay005_ov5_021F428C.c.o + Object main.nef.p/src_overlay005_ov5_021F47B0.c.o + Object main.nef.p/src_overlay005_ov5_021F4DAC.c.o + Object main.nef.p/src_overlay005_ov5_021F4E08.c.o + Object main.nef.p/src_overlay005_ov5_021F5060.c.o + Object main.nef.p/src_overlay005_ov5_021F50BC.c.o + Object main.nef.p/src_overlay005_ov5_021F5284.c.o + Object main.nef.p/src_overlay005_ov5_021F5428.c.o + Object main.nef.p/src_overlay005_ov5_021F55CC.c.o + Object main.nef.p/src_overlay005_ov5_021F575C.c.o + Object main.nef.p/src_overlay005_ov5_021F5894.c.o + Object main.nef.p/src_overlay005_ov5_021F5A10.c.o + Object main.nef.p/src_overlay005_ov5_021F600C.c.o + Object main.nef.p/src_overlay005_ov5_021F61BC.c.o + Object main.nef.p/src_overlay005_ov5_021F6454.c.o + Object main.nef.p/src_overlay005_ov5_021F77A8.c.o + Object main.nef.p/src_overlay005_ov5_021F8370.c.o + Object main.nef.p/src_overlay005_ov5_021F8560.c.o +} + +Overlay overlay6 +{ + After overlay5 + Object main.nef.p/src_overlay006_ov6_0223E140.c.o + Object main.nef.p/src_overlay006_ov6_02240C9C.c.o + Object main.nef.p/src_overlay006_ov6_022426AC.c.o + Object main.nef.p/src_overlay006_ov6_02242984.c.o + Object main.nef.p/src_overlay006_ov6_02242AF0.c.o + Object main.nef.p/src_overlay006_ov6_02242F74.c.o + Object main.nef.p/src_overlay006_ov6_02243004.c.o + Object main.nef.p/src_overlay006_ov6_022430C4.c.o + Object main.nef.p/src_overlay006_ov6_02243218.c.o + Object main.nef.p/src_overlay006_ov6_02243258.c.o + Object main.nef.p/src_overlay006_ov6_02246034.c.o + Object main.nef.p/src_overlay006_ov6_02246184.c.o + Object main.nef.p/src_overlay006_ov6_02246444.c.o + Object main.nef.p/src_overlay006_ov6_022465FC.c.o + Object main.nef.p/src_overlay006_ov6_02246A30.c.o + Object main.nef.p/src_overlay006_ov6_02246B74.c.o + Object main.nef.p/src_overlay006_ov6_02246BF4.c.o + Object main.nef.p/src_overlay006_ov6_02246C24.c.o + Object main.nef.p/src_overlay006_ov6_02246F00.c.o + Object main.nef.p/src_overlay006_ov6_02247078.c.o + Object main.nef.p/src_overlay006_ov6_02247100.c.o + Object main.nef.p/src_overlay006_ov6_022475B0.c.o + Object main.nef.p/src_overlay006_ov6_02247660.c.o + Object main.nef.p/src_overlay006_ov6_022477B8.c.o + Object main.nef.p/src_overlay006_ov6_02247830.c.o + Object main.nef.p/src_overlay006_ov6_02247A0C.c.o + Object main.nef.p/src_overlay006_ov6_02247D30.c.o + Object main.nef.p/src_overlay006_ov6_02247F5C.c.o + Object main.nef.p/src_overlay006_ov6_02248050.c.o + Object main.nef.p/src_overlay006_ov6_02248948.c.o + Object main.nef.p/src_overlay006_ov6_022489E4.c.o +} + +Overlay overlay7 +{ + After overlay6 + Object main.nef.p/src_overlay007_ov7_02249960.c.o + Object main.nef.p/src_overlay007_ov7_0224B4E8.c.o + Object main.nef.p/src_overlay007_ov7_0224BE9C.c.o + Object main.nef.p/src_overlay007_ov7_0224CD28.c.o +} + +Overlay overlay8 +{ + After overlay6 + Object main.nef.p/src_overlay008_ov8_02249960.c.o +} + +Overlay overlay9 +{ + After overlay6 + Object main.nef.p/src_overlay009_ov9_02249960.c.o +} + +Overlay overlay10 +{ + After overlay4 + Object main.nef.p/src_overlay010_ov10_0221F800.c.o +} + +Overlay overlay11 +{ + After overlay4 + Object main.nef.p/src_overlay011_ov11_0221F800.c.o + Object main.nef.p/src_overlay011_ov11_0221F840.c.o +} + +Overlay overlay12 +{ + After overlay11 + Object main.nef.p/src_overlay012_ov12_0221FC20.c.o + Object main.nef.p/src_overlay012_ov12_022237EC.c.o + Object main.nef.p/src_overlay012_ov12_0222389C.c.o + Object main.nef.p/src_overlay012_ov12_0222421C.c.o + Object main.nef.p/src_overlay012_ov12_02225104.c.o + Object main.nef.p/src_overlay012_ov12_02225640.c.o + Object main.nef.p/src_overlay012_ov12_02225864.c.o + Object main.nef.p/src_overlay012_ov12_02226998.c.o + Object main.nef.p/src_overlay012_ov12_022269C0.c.o + Object main.nef.p/src_overlay012_ov12_02226B84.c.o + Object main.nef.p/src_overlay012_ov12_0222AC70.c.o + Object main.nef.p/src_overlay012_ov12_0222D6B0.c.o + Object main.nef.p/src_overlay012_ov12_0222E784.c.o + Object main.nef.p/src_overlay012_ov12_0222E91C.c.o + Object main.nef.p/src_overlay012_ov12_0222F700.c.o + Object main.nef.p/src_overlay012_ov12_022346A4.c.o + Object main.nef.p/src_overlay012_ov12_02234E44.c.o + Object main.nef.p/src_overlay012_ov12_02235254.c.o + Object main.nef.p/src_overlay012_ov12_02235E94.c.o + Object main.nef.p/src_overlay012_ov12_02237E54.c.o + Object main.nef.p/src_overlay012_ov12_02237EFC.c.o + Object main.nef.p/src_overlay012_ov12_022380BC.c.o + Object main.nef.p/src_overlay012_is_form_symmetrical.c.o +} + +Overlay overlay13 +{ + After overlay11 + Object main.nef.p/src_overlay013_ov13_0221FC20.c.o + Object main.nef.p/src_overlay013_ov13_02221A88.c.o + Object main.nef.p/src_overlay013_ov13_02224500.c.o + Object main.nef.p/src_overlay013_ov13_02225710.c.o + Object main.nef.p/src_overlay013_ov13_022264F4.c.o + Object main.nef.p/src_overlay013_ov13_02227288.c.o + Object main.nef.p/src_overlay013_ov13_02227A4C.c.o + Object main.nef.p/src_overlay013_ov13_02227BDC.c.o + Object main.nef.p/src_overlay013_ov13_02228128.c.o + Object main.nef.p/src_overlay013_ov13_02228A38.c.o +} + +Overlay overlay14 +{ + After overlay11 + Object main.nef.p/src_overlay014_ov14_0221FC20.c.o + Object main.nef.p/overlay014/asm_overlay014_ov14_022248A4.s.o +} + +Overlay overlay15 +{ + After main + Object main.nef.p/src_overlay015_ov15_dummy.c.o +} + +Overlay overlay16 +{ + After overlay12 + Object main.nef.p/src_overlay016_ov16_0223B140.c.o + Object main.nef.p/src_overlay016_ov16_0223DF00.c.o + Object main.nef.p/src_overlay016_ov16_022405FC.c.o + Object main.nef.p/src_overlay016_ov16_0224B940.c.o + Object main.nef.p/src_overlay016_ov16_0225177C.c.o + Object main.nef.p/src_overlay016_ov16_0225BFFC.c.o + Object main.nef.p/src_overlay016_ov16_0225CBB8.c.o + Object main.nef.p/src_overlay016_ov16_02264798.c.o + Object main.nef.p/src_overlay016_ov16_0226485C.c.o + Object main.nef.p/src_overlay016_ov16_02266F1C.c.o + Object main.nef.p/src_overlay016_ov16_02268520.c.o + Object main.nef.p/src_overlay016_ov16_0226871C.c.o + Object main.nef.p/src_overlay016_ov16_0226D094.c.o + Object main.nef.p/src_overlay016_ov16_0226DB7C.c.o + Object main.nef.p/src_overlay016_ov16_0226DE44.c.o + Object main.nef.p/src_overlay016_ov16_0226E148.c.o +} + +Overlay overlay17 +{ + After overlay12 + Object main.nef.p/src_overlay017_ov17_0223B140.c.o + Object main.nef.p/src_overlay017_ov17_0223CB1C.c.o + Object main.nef.p/src_overlay017_ov17_0223DAD0.c.o + Object main.nef.p/src_overlay017_ov17_0223F118.c.o + Object main.nef.p/src_overlay017_ov17_0223F7E4.c.o + Object main.nef.p/src_overlay017_ov17_02241270.c.o + Object main.nef.p/src_overlay017_ov17_022413D8.c.o + Object main.nef.p/src_overlay017_ov17_02243AC4.c.o + Object main.nef.p/src_overlay017_ov17_02243C28.c.o + Object main.nef.p/src_overlay017_ov17_02245F14.c.o + Object main.nef.p/src_overlay017_ov17_02246ECC.c.o + Object main.nef.p/src_overlay017_ov17_022476F8.c.o + Object main.nef.p/src_overlay017_ov17_02247A48.c.o + Object main.nef.p/src_overlay017_ov17_022492DC.c.o + Object main.nef.p/src_overlay017_ov17_0224A0FC.c.o + Object main.nef.p/src_overlay017_ov17_0224CFB8.c.o + Object main.nef.p/src_overlay017_ov17_0224E930.c.o + Object main.nef.p/src_overlay017_ov17_0224F080.c.o + Object main.nef.p/src_overlay017_ov17_0224F18C.c.o + Object main.nef.p/src_overlay017_ov17_0224F4D4.c.o + Object main.nef.p/src_overlay017_ov17_02250744.c.o + Object main.nef.p/src_overlay017_ov17_02251D6C.c.o + Object main.nef.p/src_overlay017_ov17_02252A70.c.o + Object main.nef.p/src_overlay017_ov17_02252AB0.c.o + Object main.nef.p/src_overlay017_ov17_02252CEC.c.o +} + +Overlay overlay18 +{ + After overlay4 + Object main.nef.p/src_overlay018_ov18_0221F800.c.o + Library libmb.a + Library libdwcutil.a +} + +Overlay overlay19 +{ + After main + Object main.nef.p/src_overlay019_ov19_021D0D80.c.o + Object main.nef.p/src_overlay019_ov19_021D603C.c.o + Object main.nef.p/src_overlay019_ov19_021D61B0.c.o + Object main.nef.p/src_overlay019_ov19_021D79F8.c.o + Object main.nef.p/src_overlay019_ov19_021D8B54.c.o + Object main.nef.p/src_overlay019_ov19_021DA270.c.o + Object main.nef.p/src_overlay019_ov19_021DA814.c.o + Object main.nef.p/src_overlay019_ov19_021DA92C.c.o + Object main.nef.p/src_overlay019_ov19_021DB2FC.c.o + Object main.nef.p/src_overlay019_ov19_021DB8E4.c.o + Object main.nef.p/src_overlay019_ov19_021DC5F0.c.o + Object main.nef.p/src_overlay019_ov19_021DCF88.c.o + Object main.nef.p/src_overlay019_ov19_021DE3E8.c.o + Object main.nef.p/src_overlay019_ov19_021DEC04.c.o + Object main.nef.p/src_overlay019_ov19_021DF964.c.o +} + +Overlay overlay20 +{ + After main + Object main.nef.p/src_overlay020_ov20_021D0D80.c.o + Object main.nef.p/src_overlay020_ov20_021D2098.c.o + Object main.nef.p/src_overlay020_ov20_021D2EA4.c.o + Object main.nef.p/src_overlay020_ov20_021D3864.c.o + Object main.nef.p/src_overlay020_ov20_021D3A54.c.o + Object main.nef.p/src_overlay020_ov20_021D40E8.c.o + Object main.nef.p/src_overlay020_ov20_021D4728.c.o + Object main.nef.p/src_overlay020_ov20_021D4E38.c.o + Object main.nef.p/src_overlay020_ov20_021D5044.c.o +} + +Overlay overlay21 +{ + After main + Object main.nef.p/src_overlay021_ov21_021D0D80.c.o + Object main.nef.p/src_overlay021_ov21_021D1F90.c.o + Object main.nef.p/src_overlay021_ov21_021D1FA4.c.o + Object main.nef.p/src_overlay021_ov21_021D3208.c.o + Object main.nef.p/src_overlay021_ov21_021D3FE0.c.o + Object main.nef.p/src_overlay021_ov21_021D423C.c.o + Object main.nef.p/src_overlay021_ov21_021D4340.c.o + Object main.nef.p/src_overlay021_ov21_021D4C0C.c.o + Object main.nef.p/src_overlay021_ov21_021D4EE4.c.o + Object main.nef.p/src_overlay021_ov21_021D517C.c.o + Object main.nef.p/src_overlay021_ov21_021D5600.c.o + Object main.nef.p/src_overlay021_ov21_021D57B4.c.o + Object main.nef.p/src_overlay021_ov21_021D5AEC.c.o + Object main.nef.p/src_overlay021_ov21_021D76B0.c.o + Object main.nef.p/src_overlay021_ov21_021D85B0.c.o + Object main.nef.p/src_overlay021_ov21_021D94BC.c.o + Object main.nef.p/src_overlay021_ov21_021DC9BC.c.o + Object main.nef.p/src_overlay021_ov21_021DDD2C.c.o + Object main.nef.p/src_overlay021_ov21_021DE668.c.o + Object main.nef.p/src_overlay021_ov21_021DF734.c.o + Object main.nef.p/src_overlay021_ov21_021E0C68.c.o + Object main.nef.p/src_overlay021_ov21_021E1924.c.o + Object main.nef.p/src_overlay021_ov21_021E29DC.c.o + Object main.nef.p/src_overlay021_ov21_021E3FFC.c.o + Object main.nef.p/src_overlay021_ov21_021E4CA4.c.o + Object main.nef.p/src_overlay021_ov21_021E6014.c.o + Object main.nef.p/src_overlay021_ov21_021E68F4.c.o + Object main.nef.p/src_overlay021_ov21_021E737C.c.o + Object main.nef.p/src_overlay021_ov21_021E8484.c.o + Object main.nef.p/src_overlay021_ov21_021E8D48.c.o +} + +Overlay overlay22 +{ + After overlay17 + Object main.nef.p/src_overlay022_ov22_02254DE0.c.o + Object main.nef.p/src_overlay022_ov22_02255094.c.o + Object main.nef.p/src_overlay022_ov22_02255D44.c.o + Object main.nef.p/src_overlay022_ov22_022578F4.c.o + Object main.nef.p/src_overlay022_ov22_02257F50.c.o + Object main.nef.p/src_overlay022_ov22_022588F0.c.o + Object main.nef.p/src_overlay022_ov22_0225894C.c.o + Object main.nef.p/src_overlay022_ov22_022589E0.c.o + Object main.nef.p/src_overlay022_ov22_02259098.c.o + Object main.nef.p/src_overlay022_ov22_02259484.c.o + Object main.nef.p/src_overlay022_ov22_02259560.c.o + Object main.nef.p/src_overlay022_ov22_022597BC.c.o + Object main.nef.p/src_overlay022_ov22_02259C58.c.o + Object main.nef.p/src_overlay022_ov22_0225A428.c.o + Object main.nef.p/src_overlay022_ov22_0225AF44.c.o + Object main.nef.p/src_overlay022_ov22_0225AF8C.c.o + Object main.nef.p/src_overlay022_ov22_0225B660.c.o +} + +Overlay overlay23 +{ + After overlay5 + Object main.nef.p/src_overlay023_ov23_0223E140.c.o + Object main.nef.p/src_overlay023_ov23_022416A8.c.o + Object main.nef.p/src_overlay023_ov23_02241F74.c.o + Object main.nef.p/src_overlay023_ov23_0224340C.c.o + Object main.nef.p/src_overlay023_ov23_02248C08.c.o + Object main.nef.p/src_overlay023_ov23_02248F1C.c.o + Object main.nef.p/src_overlay023_ov23_02249918.c.o + Object main.nef.p/src_overlay023_ov23_022499E4.c.o + Object main.nef.p/src_overlay023_ov23_0224A1D0.c.o + Object main.nef.p/src_overlay023_ov23_0224B05C.c.o + Object main.nef.p/src_overlay023_ov23_0224DC40.c.o + Object main.nef.p/src_overlay023_ov23_0224F294.c.o + Object main.nef.p/src_overlay023_ov23_0225128C.c.o + Object main.nef.p/src_overlay023_ov23_022521F0.c.o + Object main.nef.p/src_overlay023_ov23_02253598.c.o + Object main.nef.p/src_overlay023_ov23_02253D40.c.o + Object main.nef.p/src_overlay023_ov23_0225426C.c.o + Object main.nef.p/src_overlay023_ov23_0225429C.c.o + Object main.nef.p/src_overlay023_ov23_022542CC.c.o + Object main.nef.p/src_overlay023_ov23_02254A14.c.o +} + +Overlay overlay24 +{ + After overlay9 + Object main.nef.p/src_overlay024_ov24_02253CE0.c.o +} + +Overlay overlay25 +{ + After overlay9 + Object main.nef.p/src_overlay025_ov25_02253CE0.c.o + Object main.nef.p/src_overlay025_ov25_02254560.c.o + Object main.nef.p/src_overlay025_ov25_02255090.c.o + Object main.nef.p/src_overlay025_ov25_02255540.c.o + Object main.nef.p/src_overlay025_ov25_02255ACC.c.o + Object main.nef.p/src_overlay025_ov25_02255DBC.c.o +} + +Overlay overlay26 +{ + After overlay25 + Object main.nef.p/src_overlay026_ov26_022561C0.c.o + Object main.nef.p/src_overlay026_ov26_02256404.c.o +} + +Overlay overlay27 +{ + After overlay25 + Object main.nef.p/src_overlay027_ov27_022561C0.c.o + Object main.nef.p/src_overlay027_ov27_0225680C.c.o +} + +Overlay overlay28 +{ + After overlay25 + Object main.nef.p/src_overlay028_ov28_022561C0.c.o + Object main.nef.p/src_overlay028_ov28_0225697C.c.o + Object main.nef.p/src_overlay028_ov28_02256E9C.c.o +} + +Overlay overlay29 +{ + After overlay25 + Object main.nef.p/src_overlay029_ov29_022561C0.c.o + Object main.nef.p/src_overlay029_ov29_022566C8.c.o +} + +Overlay overlay30 +{ + After overlay25 + Object main.nef.p/src_overlay030_ov30_022561C0.c.o + Object main.nef.p/src_overlay030_ov30_022563EC.c.o +} + +Overlay overlay31 +{ + After overlay25 + Object main.nef.p/src_overlay031_ov31_022561C0.c.o + Object main.nef.p/src_overlay031_ov31_02256554.c.o +} + +Overlay overlay32 +{ + After overlay25 + Object main.nef.p/src_overlay032_ov32_022561C0.c.o + Object main.nef.p/src_overlay032_ov32_02256470.c.o +} + +Overlay overlay33 +{ + After overlay25 + Object main.nef.p/src_overlay033_ov33_022561C0.c.o + Object main.nef.p/src_overlay033_ov33_02256474.c.o +} + +Overlay overlay34 +{ + After overlay25 + Object main.nef.p/src_overlay034_ov34_022561C0.c.o + Object main.nef.p/src_overlay034_ov34_02256540.c.o +} + +Overlay overlay35 +{ + After overlay25 + Object main.nef.p/src_overlay035_ov35_022561C0.c.o + Object main.nef.p/src_overlay035_ov35_02256410.c.o +} + +Overlay overlay36 +{ + After overlay25 + Object main.nef.p/src_overlay036_ov36_022561C0.c.o + Object main.nef.p/src_overlay036_ov36_02256404.c.o +} + +Overlay overlay37 +{ + After overlay25 + Object main.nef.p/src_overlay037_ov37_022561C0.c.o + Object main.nef.p/src_overlay037_ov37_022563D4.c.o +} + +Overlay overlay38 +{ + After overlay25 + Object main.nef.p/src_overlay038_ov38_022561C0.c.o + Object main.nef.p/src_overlay038_ov38_0225632C.c.o +} + +Overlay overlay39 +{ + After overlay25 + Object main.nef.p/src_overlay039_ov39_022561C0.c.o + Object main.nef.p/src_overlay039_ov39_022563DC.c.o +} + +Overlay overlay40 +{ + After overlay25 + Object main.nef.p/src_overlay040_ov40_022561C0.c.o + Object main.nef.p/src_overlay040_ov40_0225645C.c.o +} + +Overlay overlay41 +{ + After overlay25 + Object main.nef.p/src_overlay041_ov41_022561C0.c.o + Object main.nef.p/src_overlay041_ov41_022567B0.c.o +} + +Overlay overlay42 +{ + After overlay25 + Object main.nef.p/src_overlay042_ov42_022561C0.c.o + Object main.nef.p/src_overlay042_ov42_022563D4.c.o +} + +Overlay overlay43 +{ + After overlay25 + Object main.nef.p/src_overlay043_ov43_022561C0.c.o + Object main.nef.p/src_overlay043_ov43_02256544.c.o +} + +Overlay overlay44 +{ + After overlay25 + Object main.nef.p/src_overlay044_ov44_022561C0.c.o + Object main.nef.p/src_overlay044_ov44_022565BC.c.o +} + +Overlay overlay45 +{ + After overlay25 + Object main.nef.p/src_overlay045_ov45_022561C0.c.o + Object main.nef.p/src_overlay045_ov45_022566EC.c.o +} + +Overlay overlay46 +{ + After overlay25 + Object main.nef.p/src_overlay046_ov46_022561C0.c.o + Object main.nef.p/src_overlay046_ov46_02256BCC.c.o +} + +Overlay overlay47 +{ + After overlay25 + Object main.nef.p/src_overlay047_ov47_022561C0.c.o + Object main.nef.p/src_overlay047_ov47_02256634.c.o +} + +Overlay overlay48 +{ + After overlay25 + Object main.nef.p/src_overlay048_ov48_022561C0.c.o + Object main.nef.p/src_overlay048_ov48_0225650C.c.o +} + +Overlay overlay49 +{ + After overlay25 + Object main.nef.p/src_overlay049_ov49_022561C0.c.o + Object main.nef.p/src_overlay049_ov49_022563D4.c.o +} + +Overlay overlay50 +{ + After overlay25 + Object main.nef.p/src_overlay050_ov50_022561C0.c.o + Object main.nef.p/src_overlay050_ov50_02256510.c.o +} + +Overlay overlay51 +{ + After overlay25 + Object main.nef.p/src_overlay051_ov51_022561C0.c.o + Object main.nef.p/src_overlay051_ov51_0225632C.c.o +} + +Overlay overlay52 +{ + After overlay25 + Object main.nef.p/src_overlay052_ov52_022561C0.c.o + Object main.nef.p/src_overlay052_ov52_02256694.c.o +} + +Overlay overlay53 +{ + After overlay25 + Object main.nef.p/src_overlay053_ov53_022561C0.c.o + Object main.nef.p/src_overlay053_ov53_02256420.c.o +} + +Overlay overlay54 +{ + After overlay25 + Object main.nef.p/src_overlay054_ov54_022561C0.c.o + Object main.nef.p/src_overlay054_ov54_0225642C.c.o +} + +Overlay overlay55 +{ + After overlay25 + Object main.nef.p/src_overlay055_ov55_022561C0.c.o + Object main.nef.p/src_overlay055_ov55_0225632C.c.o +} + +Overlay overlay56 +{ + After overlay25 + Object main.nef.p/src_overlay056_ov56_022561C0.c.o +} + +Overlay overlay57 +{ + After main + Object main.nef.p/src_overlay057_ov57_021D0D80.c.o + Object main.nef.p/src_overlay057_ov57_021D0F30.c.o +} + +Overlay overlay58 +{ + After main + Object main.nef.p/src_overlay058_ov58_021D0D80.c.o +} + +Overlay overlay59 +{ + After main + Object main.nef.p/src_overlay059_ov59_021D0D80.c.o + Object main.nef.p/src_overlay059_ov59_021D2A2C.c.o + Object main.nef.p/src_overlay059_ov59_021D2B44.c.o + Object main.nef.p/src_overlay059_ov59_021D2F88.c.o +} + +Overlay overlay60 +{ + After overlay4 + Object main.nef.p/src_overlay060_ov60_0221F800.c.o + Object main.nef.p/src_overlay060_ov60_0221F968.c.o + Library libdwcgsghttp.a + Library libdwcnd.a + Library libdwcnhttp.a +} + +Overlay overlay61 +{ + After overlay60 + Object main.nef.p/src_overlay061_ov61_0222AE60.c.o + Object main.nef.p/src_overlay061_ov61_0222B008.c.o + Object main.nef.p/src_overlay061_ov61_0222BC4C.c.o + Object main.nef.p/src_overlay061_ov61_0222BF44.c.o + Library libgds.a +} + +Overlay overlay62 +{ + After overlay61 + Object main.nef.p/src_overlay062_ov62_0222F2C0.c.o + Object main.nef.p/src_overlay062_ov62_022300D8.c.o + Object main.nef.p/src_overlay062_ov62_02231690.c.o + Object main.nef.p/src_overlay062_ov62_02234A10.c.o + Object main.nef.p/src_overlay062_ov62_02235278.c.o + Object main.nef.p/src_overlay062_ov62_02235E64.c.o + Object main.nef.p/src_overlay062_ov62_02236CBC.c.o + Object main.nef.p/src_overlay062_ov62_02237D24.c.o + Object main.nef.p/src_overlay062_ov62_02239D60.c.o + Object main.nef.p/src_overlay062_ov62_0223CAEC.c.o + Object main.nef.p/src_overlay062_ov62_0223DFA8.c.o + Object main.nef.p/src_overlay062_ov62_0224112C.c.o + Object main.nef.p/src_overlay062_ov62_02241204.c.o + Object main.nef.p/src_overlay062_ov62_02246B00.c.o + Object main.nef.p/src_overlay062_ov62_02247D74.c.o + Object main.nef.p/src_overlay062_ov62_02248408.c.o +} + +Overlay overlay63 +{ + After overlay60 + Object main.nef.p/src_overlay063_ov63_0222AE60.c.o + Object main.nef.p/src_overlay063_ov63_0222BCE8.c.o + Object main.nef.p/src_overlay063_ov63_0222BE18.c.o + Object main.nef.p/src_overlay063_ov63_0222CA88.c.o + Object main.nef.p/src_overlay063_ov63_0222CCE4.c.o + Object main.nef.p/src_overlay063_ov63_0222D160.c.o + Object main.nef.p/src_overlay063_ov63_0222D1C0.c.o + Object main.nef.p/src_overlay063_ov63_0222D77C.c.o +} + +Overlay overlay64 +{ + After overlay63 + Object main.nef.p/src_overlay064_ov64_0222DCE0.c.o +} + +Overlay overlay65 +{ + After overlay63 + Object main.nef.p/src_overlay065_ov65_0222DCE0.c.o + Object main.nef.p/src_overlay065_ov65_02235060.c.o + Object main.nef.p/src_overlay065_ov65_02236474.c.o + Object main.nef.p/src_overlay065_ov65_0223648C.c.o +} + +Overlay overlay66 +{ + After overlay63 + Object main.nef.p/src_overlay066_ov66_0222DCE0.c.o + Object main.nef.p/src_overlay066_ov66_0222DDF0.c.o + Object main.nef.p/src_overlay066_ov66_02230C44.c.o + Object main.nef.p/src_overlay066_ov66_02231428.c.o + Object main.nef.p/src_overlay066_ov66_0223177C.c.o + Object main.nef.p/src_overlay066_ov66_022324F0.c.o + Object main.nef.p/src_overlay066_ov66_022343A8.c.o + Object main.nef.p/src_overlay066_ov66_02234EA8.c.o + Library libdwcbm.a + Library libdwcaccount.a + Library libdwcppwlobby.a + Library libdwcilobby.a + Library libdwcgschat.a + Library libdwcenc.a +} + +Overlay overlay67 +{ + After overlay66 + Object main.nef.p/src_overlay067_ov67_0225C700.c.o +} + +Overlay overlay68 +{ + After overlay66 + Object main.nef.p/src_overlay068_ov68_0225C700.c.o +} + +Overlay overlay69 +{ + After overlay66 + Object main.nef.p/src_overlay069_ov69_0225C700.c.o +} + +Overlay overlay70 +{ + After overlay66 + Object main.nef.p/src_overlay070_ov70_0225C700.c.o + Object main.nef.p/src_overlay070_ov70_0225C858.c.o + Object main.nef.p/src_overlay070_ov70_0225C9B4.c.o + Object main.nef.p/src_overlay070_ov70_0225D9A4.c.o + Object main.nef.p/src_overlay070_ov70_02260A70.c.o + Object main.nef.p/src_overlay070_ov70_02260B44.c.o + Object main.nef.p/src_overlay070_ov70_02261E10.c.o + Object main.nef.p/src_overlay070_ov70_02262DA8.c.o + Object main.nef.p/src_overlay070_ov70_022630A4.c.o + Object main.nef.p/src_overlay070_ov70_02265F38.c.o + Object main.nef.p/src_overlay070_ov70_02266E9C.c.o + Object main.nef.p/src_overlay070_ov70_02269190.c.o + Object main.nef.p/src_overlay070_ov70_0226C338.c.o + Object main.nef.p/src_overlay070_ov70_0226C60C.c.o + Object main.nef.p/src_overlay070_ov70_0226C8B4.c.o + Object main.nef.p/src_overlay070_ov70_0226CC74.c.o + Object main.nef.p/src_overlay070_ov70_0226CE54.c.o +} + +Overlay overlay71 +{ + After overlay12 + Object main.nef.p/src_overlay071_ov71_0223B140.c.o + Object main.nef.p/src_overlay071_ov71_0223C69C.c.o + Object main.nef.p/src_overlay071_ov71_0223CF0C.c.o + Object main.nef.p/src_overlay071_ov71_0223D324.c.o +} + +Overlay overlay72 +{ + After overlay71 + Object main.nef.p/src_overlay072_ov72_0223D7A0.c.o +} + +Overlay overlay73 +{ + After main + Object main.nef.p/src_overlay073_ov73_021D0D80.c.o + Object main.nef.p/src_overlay073_ov73_021D3250.c.o +} + +Overlay overlay74 +{ + After main + Object main.nef.p/src_overlay074_ov74_021D0D80.c.o +} + +Overlay overlay75 +{ + After main + Object main.nef.p/src_overlay075_ov75_021D0D80.c.o +} + +Overlay overlay76 +{ + After overlay12 + Object main.nef.p/src_overlay076_ov76_0223B140.c.o + Object main.nef.p/src_overlay076_ov76_0223B870.c.o + Object main.nef.p/src_overlay076_ov76_0223D338.c.o +} + +Overlay overlay77 +{ + After main + Object main.nef.p/src_overlay077_ov77_021D0D80.c.o + Object main.nef.p/src_overlay077_ov77_021D25B0.c.o + Object main.nef.p/src_overlay077_ov77_021D54B0.c.o + Object main.nef.p/src_overlay077_ov77_021D6670.c.o + Object main.nef.p/src_overlay077_ov77_021D6C70.c.o +} + +Overlay overlay78 +{ + After main + Object main.nef.p/src_overlay078_ov78_021D0D80.c.o +} + +Overlay overlay79 +{ + After main + Object main.nef.p/src_overlay079_ov79_021D0D80.c.o + Object main.nef.p/src_overlay079_ov79_021D183C.c.o + Object main.nef.p/src_overlay079_ov79_021D20F4.c.o + Object main.nef.p/src_overlay079_ov79_021D2268.c.o + Object main.nef.p/src_overlay079_ov79_021D3768.c.o +} + +Overlay overlay80 +{ + After main + Object main.nef.p/src_overlay080_ov80_021D0D80.c.o + Object main.nef.p/src_overlay080_ov80_021D1458.c.o + Object main.nef.p/src_overlay080_ov80_021D2A08.c.o + Object main.nef.p/src_overlay080_ov80_021D2AF4.c.o +} + +Overlay overlay81 +{ + After main + Object main.nef.p/src_overlay081_ov81_021D0D80.c.o + Object main.nef.p/src_overlay081_ov81_021D1610.c.o +} + +Overlay overlay82 +{ + After overlay12 + Object main.nef.p/src_overlay082_ov82_0223B140.c.o + Object main.nef.p/src_overlay082_ov82_0223B2E0.c.o +} + +Overlay overlay83 +{ + After overlay82 + Object main.nef.p/src_overlay083_ov83_0223B5A0.c.o + Object main.nef.p/src_overlay083_ov83_0223C958.c.o + Object main.nef.p/src_overlay083_ov83_0223D144.c.o + Object main.nef.p/src_overlay083_ov83_0223D150.c.o + Object main.nef.p/src_overlay083_ov83_0223D4CC.c.o + Object main.nef.p/src_overlay083_ov83_0223D6A8.c.o + Object main.nef.p/src_overlay083_ov83_0223F7F4.c.o +} + +Overlay overlay84 +{ + After overlay82 + Object main.nef.p/src_overlay084_ov84_0223B5A0.c.o + Object main.nef.p/src_overlay084_ov84_0223F040.c.o + Object main.nef.p/src_overlay084_ov84_022403F4.c.o +} + +Overlay overlay85 +{ + After overlay84 + Object main.nef.p/src_overlay085_ov85_02241440.c.o +} + +Overlay overlay86 +{ + After overlay12 + Object main.nef.p/src_overlay086_ov86_0223B140.c.o +} + +Overlay overlay87 +{ + After main + Object main.nef.p/src_overlay087_ov87_021D0D80.c.o + Object main.nef.p/src_overlay087_ov87_021D106C.c.o +} + +Overlay overlay88 +{ + After overlay12 + Object main.nef.p/src_overlay088_ov88_0223B140.c.o + Object main.nef.p/src_overlay088_ov88_0223E9C4.c.o +} + +Overlay overlay89 +{ + After main + Object main.nef.p/src_overlay089_ov89_dummy.c.o +} + +Overlay overlay90 +{ + After main + Object main.nef.p/src_overlay090_ov90_021D0D80.c.o +} + +Overlay overlay91 +{ + After main + Object main.nef.p/src_overlay091_ov91_021D0D80.c.o +} + +Overlay overlay92 +{ + After main + Object main.nef.p/src_overlay092_ov92_021D0D80.c.o +} + +Overlay overlay93 +{ + After main + Object main.nef.p/src_overlay093_ov93_021D0D80.c.o + Object main.nef.p/src_overlay093_ov93_021D111C.c.o +} + +Overlay overlay94 +{ + After overlay12 + Object main.nef.p/src_overlay094_ov94_0223B140.c.o + Object main.nef.p/src_overlay094_ov94_0223BCB0.c.o + Object main.nef.p/src_overlay094_ov94_0223C610.c.o + Object main.nef.p/src_overlay094_ov94_0223D0C4.c.o + Object main.nef.p/src_overlay094_ov94_0223DC04.c.o + Object main.nef.p/src_overlay094_ov94_0223E46C.c.o + Object main.nef.p/src_overlay094_ov94_0223FB48.c.o + Object main.nef.p/src_overlay094_ov94_022414B8.c.o + Object main.nef.p/src_overlay094_ov94_02242AD0.c.o + Object main.nef.p/src_overlay094_ov94_02243EF8.c.o + Object main.nef.p/src_overlay094_ov94_022443E0.c.o + Object main.nef.p/src_overlay094_ov94_022444C8.c.o + Object main.nef.p/src_overlay094_ov94_02244950.c.o +} + +Overlay overlay95 +{ + After overlay94 + Object main.nef.p/src_overlay095_ov95_02246C20.c.o + Object main.nef.p/src_overlay095_ov95_022476F0.c.o + Object main.nef.p/src_overlay095_ov95_02247B6C.c.o + Object main.nef.p/src_overlay095_ov95_02248590.c.o + Object main.nef.p/src_overlay095_ov95_02249740.c.o + Object main.nef.p/src_overlay095_ov95_02249F90.c.o + Object main.nef.p/src_overlay095_ov95_0224A390.c.o + Object main.nef.p/src_overlay095_ov95_0224ABC0.c.o + Object main.nef.p/src_overlay095_ov95_0224B3D8.c.o +} + +Overlay overlay96 +{ + After overlay12 + Object main.nef.p/src_overlay096_ov96_0223B140.c.o + Object main.nef.p/src_overlay096_ov96_0223B6A0.c.o + Object main.nef.p/src_overlay096_ov96_0223BCE0.c.o +} + +Overlay overlay97 +{ + After overlay60 + Object main.nef.p/src_overlay097_ov97_0222AE60.c.o + Object main.nef.p/src_overlay097_ov97_0222C174.c.o + Object main.nef.p/src_overlay097_ov97_0222D04C.c.o + Object main.nef.p/src_overlay097_ov97_0222D2F8.c.o + Object main.nef.p/src_overlay097_ov97_0222D30C.c.o + Object main.nef.p/src_overlay097_ov97_02230410.c.o + Object main.nef.p/src_overlay097_ov97_02232054.c.o + Object main.nef.p/src_overlay097_ov97_02232200.c.o + Object main.nef.p/src_overlay097_ov97_02232DC8.c.o + Object main.nef.p/src_overlay097_ov97_02233408.c.o + Object main.nef.p/src_overlay097_ov97_022337FC.c.o + Object main.nef.p/src_overlay097_ov97_02233814.c.o + Object main.nef.p/src_overlay097_ov97_02233B18.c.o + Object main.nef.p/src_overlay097_ov97_02235D18.c.o + Object main.nef.p/src_overlay097_ov97_0223635C.c.o + Object main.nef.p/src_overlay097_ov97_02236380.c.o + Object main.nef.p/src_overlay097_ov97_02237520.c.o + Object main.nef.p/src_overlay097_ov97_02237694.c.o + Object main.nef.p/src_overlay097_ov97_02238534.c.o + Object main.nef.p/src_overlay097_ov97_02238D74.c.o + Object main.nef.p/src_overlay097_ov97_022392E4.c.o + Library libcrypto_ov97.a +} + +Overlay overlay98 +{ + After overlay94 + Object main.nef.p/src_overlay098_ov98_02246C20.c.o + Object main.nef.p/src_overlay098_ov98_022471C8.c.o + Object main.nef.p/src_overlay098_ov98_022499C8.c.o +} + +Overlay overlay99 +{ + After main + Object main.nef.p/src_overlay099_ov99_021D0D80.c.o + Object main.nef.p/src_overlay099_ov99_021D1A54.c.o + Object main.nef.p/src_overlay099_ov99_021D2C08.c.o + Object main.nef.p/src_overlay099_ov99_021D2E28.c.o + Object main.nef.p/src_overlay099_ov99_021D340C.c.o + Object main.nef.p/src_overlay099_ov99_021D3A40.c.o + Object main.nef.p/src_overlay099_ov99_021D3C18.c.o + Object main.nef.p/src_overlay099_ov99_021D3DE0.c.o + Object main.nef.p/src_overlay099_ov99_021D3E78.c.o + Object main.nef.p/src_overlay099_ov99_021D4134.c.o +} + +Overlay overlay100 +{ + After main + Object main.nef.p/src_overlay100_ov100_021D0D80.c.o + Object main.nef.p/src_overlay100_ov100_021D13E4.c.o + Object main.nef.p/src_overlay100_ov100_021D1C44.c.o + Object main.nef.p/src_overlay100_ov100_021D2F0C.c.o + Object main.nef.p/src_overlay100_ov100_021D400C.c.o + Object main.nef.p/src_overlay100_ov100_021D44C0.c.o + Object main.nef.p/src_overlay100_ov100_021D46C8.c.o + Object main.nef.p/src_overlay100_ov100_021D4E04.c.o +} + +Overlay overlay101 +{ + After main + Object main.nef.p/src_overlay101_ov101_021D0D80.c.o + Object main.nef.p/src_overlay101_ov101_021D1A28.c.o + Object main.nef.p/src_overlay101_ov101_021D59AC.c.o + Object main.nef.p/src_overlay101_ov101_021D7E48.c.o + Object main.nef.p/src_overlay101_ov101_021D94D8.c.o +} + +Overlay overlay102 +{ + After main + Object main.nef.p/src_overlay102_ov102_021D0D80.c.o +} + +Overlay overlay103 +{ + After overlay63 + Object main.nef.p/src_overlay103_ov103_dummy.c.o +} + +Overlay overlay104 +{ + After overlay63 + Object main.nef.p/src_overlay104_ov104_0222DCE0.c.o + Object main.nef.p/src_overlay104_ov104_0222E63C.c.o + Object main.nef.p/src_overlay104_ov104_0222E930.c.o + Object main.nef.p/src_overlay104_ov104_0222EA90.c.o + Object main.nef.p/src_overlay104_ov104_0222ECE8.c.o + Object main.nef.p/src_overlay104_ov104_0222FBE4.c.o + Object main.nef.p/src_overlay104_ov104_02231F74.c.o + Object main.nef.p/src_overlay104_ov104_022332B4.c.o + Object main.nef.p/src_overlay104_ov104_022339B4.c.o + Object main.nef.p/src_overlay104_ov104_02234838.c.o + Object main.nef.p/src_overlay104_ov104_02234DB4.c.o + Object main.nef.p/src_overlay104_ov104_022358E8.c.o + Object main.nef.p/src_overlay104_ov104_022361B4.c.o + Object main.nef.p/src_overlay104_ov104_02237378.c.o + Object main.nef.p/src_overlay104_ov104_02237DD8.c.o + Object main.nef.p/src_overlay104_ov104_02239080.c.o + Object main.nef.p/src_overlay104_ov104_02239130.c.o + Object main.nef.p/src_overlay104_ov104_022394A4.c.o + Object main.nef.p/src_overlay104_ov104_022395F0.c.o + Object main.nef.p/src_overlay104_ov104_02239C58.c.o + Object main.nef.p/src_overlay104_ov104_0223A0C4.c.o + Object main.nef.p/src_overlay104_ov104_0223A7F4.c.o + Object main.nef.p/src_overlay104_ov104_0223AF58.c.o + Object main.nef.p/src_overlay104_ov104_0223B6F4.c.o + Object main.nef.p/src_overlay104_ov104_0223BCBC.c.o + Object main.nef.p/src_overlay104_ov104_0223C164.c.o + Object main.nef.p/src_overlay104_ov104_0223C2D4.c.o + Object main.nef.p/src_overlay104_ov104_0223D5D0.c.o + Object main.nef.p/src_overlay104_ov104_0223D768.c.o + Object main.nef.p/src_overlay104_ov104_0223D860.c.o + Object main.nef.p/src_overlay104_ov104_0223D9E4.c.o + Object main.nef.p/src_overlay104_ov104_0223DC7C.c.o + Object main.nef.p/src_overlay104_ov104_0223E894.c.o +} + +Overlay overlay105 +{ + After overlay104 + Object main.nef.p/src_overlay105_ov105_02241AE0.c.o + Object main.nef.p/src_overlay105_ov105_02245AAC.c.o + Object main.nef.p/src_overlay105_ov105_02245CD0.c.o + Object main.nef.p/src_overlay105_ov105_02245DC4.c.o + Object main.nef.p/src_overlay105_ov105_02245E54.c.o + Object main.nef.p/src_overlay105_ov105_02245FB8.c.o + Object main.nef.p/src_overlay105_ov105_02246214.c.o +} + +Overlay overlay106 +{ + After overlay104 + Object main.nef.p/src_overlay106_ov106_02241AE0.c.o + Object main.nef.p/src_overlay106_ov106_02243310.c.o + Object main.nef.p/src_overlay106_ov106_022435FC.c.o + Object main.nef.p/src_overlay106_ov106_022436E0.c.o +} + +Overlay overlay107 +{ + After overlay104 + Object main.nef.p/src_overlay107_ov107_02241AE0.c.o + Object main.nef.p/src_overlay107_ov107_02245EB0.c.o + Object main.nef.p/src_overlay107_ov107_02249604.c.o + Object main.nef.p/src_overlay107_ov107_02249B1C.c.o + Object main.nef.p/src_overlay107_ov107_02249C98.c.o + Object main.nef.p/src_overlay107_ov107_02249D14.c.o +} + +Overlay overlay108 +{ + After overlay104 + Object main.nef.p/src_overlay108_ov108_02241AE0.c.o + Object main.nef.p/src_overlay108_ov108_02243030.c.o + Object main.nef.p/src_overlay108_ov108_0224351C.c.o + Object main.nef.p/src_overlay108_ov108_02243630.c.o +} + +Overlay overlay109 +{ + After main + Object main.nef.p/src_overlay109_ov109_021D0D80.c.o + Object main.nef.p/src_overlay109_ov109_021D3D50.c.o +} + +Overlay overlay110 +{ + After main + Object main.nef.p/src_overlay110_ov110_021D0D80.c.o + Object main.nef.p/src_overlay110_ov110_021D2124.c.o +} + +Overlay overlay111 +{ + After main + Object main.nef.p/src_overlay111_ov111_021D0D80.c.o + Object main.nef.p/src_overlay111_ov111_021D2F80.c.o + Object main.nef.p/src_overlay111_ov111_021D33F4.c.o + Object main.nef.p/src_overlay111_ov111_021D3548.c.o +} + +Overlay overlay112 +{ + After overlay66 + Object main.nef.p/src_overlay112_ov112_0225C700.c.o +} + +Overlay overlay113 +{ + After overlay66 + Object main.nef.p/src_overlay113_ov113_0225C700.c.o + Object main.nef.p/src_overlay113_ov113_0225E368.c.o + Object main.nef.p/src_overlay113_ov113_02260620.c.o + Object main.nef.p/src_overlay113_ov113_022607D8.c.o +} + +Overlay overlay114 +{ + After overlay66 + Object main.nef.p/src_overlay114_ov114_0225C700.c.o + Object main.nef.p/src_overlay114_ov114_02260038.c.o + Object main.nef.p/src_overlay114_ov114_02260044.c.o +} + +Overlay overlay115 +{ + After overlay114 + Object main.nef.p/src_overlay115_ov115_02260440.c.o + Object main.nef.p/src_overlay115_ov115_02260BBC.c.o + Object main.nef.p/src_overlay115_ov115_02260CEC.c.o + Object main.nef.p/src_overlay115_ov115_02265A18.c.o + Object main.nef.p/src_overlay115_ov115_02265A24.c.o +} + +Overlay overlay116 +{ + After overlay114 + Object main.nef.p/src_overlay116_ov116_02260440.c.o + Object main.nef.p/src_overlay116_ov116_022604C4.c.o + Object main.nef.p/src_overlay116_ov116_02261870.c.o + Object main.nef.p/src_overlay116_ov116_02262A44.c.o + Object main.nef.p/src_overlay116_ov116_02262A8C.c.o + Object main.nef.p/src_overlay116_ov116_0226432C.c.o + Object main.nef.p/src_overlay116_ov116_02266FEC.c.o +} + +Overlay overlay117 +{ + After overlay114 + Object main.nef.p/src_overlay117_ov117_02260440.c.o + Object main.nef.p/src_overlay117_ov117_02260668.c.o + Object main.nef.p/src_overlay117_ov117_022626B0.c.o + Object main.nef.p/src_overlay117_ov117_02263AF0.c.o + Object main.nef.p/src_overlay117_ov117_02266498.c.o + Object main.nef.p/src_overlay117_ov117_022665FC.c.o + Object main.nef.p/src_overlay117_ov117_022666C0.c.o +} + +Overlay overlay118 +{ + After main + Object main.nef.p/src_overlay118_ov118_021D0D80.c.o +} + +Overlay overlay119 +{ + After main + Object main.nef.p/src_overlay119_ov119_021D0D80.c.o + Object main.nef.p/src_overlay119_ov119_021D191C.c.o +} + +Overlay overlay120 +{ + After main + Object main.nef.p/src_overlay120_ov120_021D0D80.c.o +} + +Overlay overlay121 +{ + After main + Object main.nef.p/src_overlay121_ov121_021D0D80.c.o +} + diff --git a/platinum.us/main.sha1 b/platinum.us/main.sha1 deleted file mode 100644 index 79803851b4..0000000000 --- a/platinum.us/main.sha1 +++ /dev/null @@ -1,123 +0,0 @@ -6b61f25c1542f05dbdab54cf2dfaad9914555d07 *build/platinum.us/main.sbin -de8a847bff8c343d69b853a215e6ee775ef2ef96 *build/platinum.us/overlay0.sbin -906b5d19e6478a795eda151c771ff3a47fb1a8d5 *build/platinum.us/overlay1.sbin -de8a847bff8c343d69b853a215e6ee775ef2ef96 *build/platinum.us/overlay2.sbin -de8a847bff8c343d69b853a215e6ee775ef2ef96 *build/platinum.us/overlay3.sbin -2527b3e0bbc7cf76e9125c8215043faf84ef0af2 *build/platinum.us/overlay4.sbin -0456f78ac3e294722f669c793fc9727b23b66fba *build/platinum.us/overlay5.sbin -6e5ed74d5bdb94d2ce78d8990c364b4766eab772 *build/platinum.us/overlay6.sbin -fef29cf33d4dfd1f068a7b67798e7b5950fce749 *build/platinum.us/overlay7.sbin -9d381061f1a7c6cccb731871aa8e7013848709cd *build/platinum.us/overlay8.sbin -ba1a20a286990d2d318af29cd6e8dad389d45504 *build/platinum.us/overlay9.sbin -05ab4e12c01211ce4305bde303e06ce11dda78af *build/platinum.us/overlay10.sbin -a6dc7a7e32c14081b5db5a0a5e1e5120bebe52a9 *build/platinum.us/overlay11.sbin -fa28629441497607e072a3aceebfb6d167457020 *build/platinum.us/overlay12.sbin -8b64b97469bff5dc372b5178baa4676f7b2bcfc2 *build/platinum.us/overlay13.sbin -d9b09c1e37088d6aaeb73143ecec98ab3327ec67 *build/platinum.us/overlay14.sbin -de8a847bff8c343d69b853a215e6ee775ef2ef96 *build/platinum.us/overlay15.sbin -b058a62fb8e4d646bb7508f5a21e406591f809c1 *build/platinum.us/overlay16.sbin -543c0afabc3d90310f1bc8d4902743461dfdc1e5 *build/platinum.us/overlay17.sbin -111fe69ca18026aa8574b8f79a6b94ef73715267 *build/platinum.us/overlay18.sbin -d414d37a9b80f1d346666ad9ef5ba635d5ebb552 *build/platinum.us/overlay19.sbin -7534ad61985affc27e8b121a6645b825ffae48c7 *build/platinum.us/overlay20.sbin -6dd9a720fe069aedd9107398c16ba93e57769c64 *build/platinum.us/overlay21.sbin -41ad74512da8c556fc28f8bf41ad77156d3d4cc9 *build/platinum.us/overlay22.sbin -2e8fcd133e2736d90dae6e23ac9a669cefc1a7c8 *build/platinum.us/overlay23.sbin -cc4bb361071632627532c48af9a0b37c1751670a *build/platinum.us/overlay24.sbin -0fbd0432432d42462b9c02f07e30634987708dc6 *build/platinum.us/overlay25.sbin -44e45c2b6ec6aa74142550f25f770954b8e0d555 *build/platinum.us/overlay26.sbin -3301af166bc328d4df4412dbf6c740635151867c *build/platinum.us/overlay27.sbin -98a048c770a311a3fd756ad725997964fdd14aa8 *build/platinum.us/overlay28.sbin -ca63341e12e782896fc58d5ce6fefa2170b5e921 *build/platinum.us/overlay29.sbin -d18ad1ad381bb674c840d1a0435ff39c17c5488f *build/platinum.us/overlay30.sbin -f6c50384fcfc828ccc29aaf89540b7529c981931 *build/platinum.us/overlay31.sbin -eac8d17d2e5301cd7b2d7ba507f2ecd1df9d59cd *build/platinum.us/overlay32.sbin -dfab77a2a03414852a047b45eabec7d3367fca58 *build/platinum.us/overlay33.sbin -cd5d643c3bf17d863db96640d7bfc100bda30b37 *build/platinum.us/overlay34.sbin -4410caba494af7c853ef7f1a4a2ac4d8243f5a18 *build/platinum.us/overlay35.sbin -09d6d7c195d109d31c8f890711f562ae2e219cfd *build/platinum.us/overlay36.sbin -212e5bc9a6036f4c0be02d65bbba5feed12c5d53 *build/platinum.us/overlay37.sbin -3f15b19c0ca694b9942077a9c8eda0855c25450c *build/platinum.us/overlay38.sbin -da2f09fdfc788b4a6e6ada88db5176fcdc23c924 *build/platinum.us/overlay39.sbin -f8a583401a3a614cc88ee6dc7f3b3cdbf00f22cb *build/platinum.us/overlay40.sbin -a5b13f54d5303140b3169c794db0fd04c9c2dc22 *build/platinum.us/overlay41.sbin -ba5baba0ff38e940d333dbea89e4c510b6998922 *build/platinum.us/overlay42.sbin -261b64d5fd09a304a5d7e78a18b44a6ecfe7ec93 *build/platinum.us/overlay43.sbin -5dd962600f238f162c0999dcb8a134c9df134293 *build/platinum.us/overlay44.sbin -e722ce81a98e1d78011e179f008a4cac37e20610 *build/platinum.us/overlay45.sbin -87cd3ac2574737177d399a8cf8a8374c9599e38b *build/platinum.us/overlay46.sbin -b38da9fe733a6a1213ff217f4e2788e3ae2011a4 *build/platinum.us/overlay47.sbin -70266035d948ee5a826b06a3a1b908a50af050c9 *build/platinum.us/overlay48.sbin -489ae29169ae71eb72909fdebdd0aa8bf8ca63f4 *build/platinum.us/overlay49.sbin -2c6a1fb46550bdb140c677e37ae06779b84e7c3e *build/platinum.us/overlay50.sbin -13069defd90d47eebe9eb4a48974e82369614fa7 *build/platinum.us/overlay51.sbin -4963a7d852a9691cdd9382f42c527d0c457fb520 *build/platinum.us/overlay52.sbin -26f0a9bd0e207a3260cb3a04e268a20b3d2c52d2 *build/platinum.us/overlay53.sbin -395bbb8597227e687f61cea574c2219c7c77d1d1 *build/platinum.us/overlay54.sbin -ea68f11d110d5929d18eeaad9cf3f1792986ab7f *build/platinum.us/overlay55.sbin -1b89fbbf7576f21608df1334606ed2e77f5e21ea *build/platinum.us/overlay56.sbin -88b06ba661770c8feef9ec96bcee6942819fbda4 *build/platinum.us/overlay57.sbin -9b7c8c69b165a8a4f1da4ff4fc73bdc0af52def8 *build/platinum.us/overlay58.sbin -43b9d869fc580cb7e6af6ef95cbbc015b5542d50 *build/platinum.us/overlay59.sbin -0a0cfedfb93a08ff8fd187d6e62a5c9a1e3056cc *build/platinum.us/overlay60.sbin -a5f5fb58639672291dc9328f8659fdea0a1329ee *build/platinum.us/overlay61.sbin -d073752e86af2a435978fed11ce5557c5dc3b3ac *build/platinum.us/overlay62.sbin -75595fd5704b4ffdce5e32160e35506e166d2122 *build/platinum.us/overlay63.sbin -d2a6ce95570f7eddb8cbfbe0fd8317d54c48cb1d *build/platinum.us/overlay64.sbin -974d51ed28bab8005a761ab10f0caf3232ca75b0 *build/platinum.us/overlay65.sbin -1dd7362a44183422c084958e4356c4c65b23ebbe *build/platinum.us/overlay66.sbin -3565015a195a71e06e0c56ef638f06116f27e597 *build/platinum.us/overlay67.sbin -6c90858a9f97833957e94da68513a90b7ea16dfa *build/platinum.us/overlay68.sbin -c655f6874e4e9897f3f0782af1140cedd97154da *build/platinum.us/overlay69.sbin -b80c7e652b63a37f2a30b9c0f14d6e5608185d05 *build/platinum.us/overlay70.sbin -cf86b18a15a2b011fd0e7c98379a9fa228c3fc4c *build/platinum.us/overlay71.sbin -39a79a31811cac6b1a90206e67624c0a3179bd46 *build/platinum.us/overlay72.sbin -deecf01a5608b25883804ef30c9d4c3d0c904ee5 *build/platinum.us/overlay73.sbin -21e3d2a2fb36d739f4fd16792719bf6fa7b7e6aa *build/platinum.us/overlay74.sbin -88ceed815cb9a2ef6e0d2dcedd2fc126e717c165 *build/platinum.us/overlay75.sbin -13777fa8b44e026c4eb960cce2309451c4594726 *build/platinum.us/overlay76.sbin -d7a304050d0049809b21cf75937e4d14aaf858c5 *build/platinum.us/overlay77.sbin -8571cf57764db093c9ce385586894659297b783e *build/platinum.us/overlay78.sbin -b8c85f32459d20b3a6cfde5a1e349215dd0157a0 *build/platinum.us/overlay79.sbin -0ba83af5f2cafb311dbc552d77cb1b6b4f45d34e *build/platinum.us/overlay80.sbin -1982ed52ba9469dd625dc5951277fd1c001b26af *build/platinum.us/overlay81.sbin -429a576c3e5a24f25167051957b22f194d2af781 *build/platinum.us/overlay82.sbin -1904a30bcfb722856130ab7b3d0e79fd0070520d *build/platinum.us/overlay83.sbin -8bd6a805631e2d661f9d5889e568a72e60f93a04 *build/platinum.us/overlay84.sbin -c197c9edb988d64dec0a56427dfc6960646dc1f7 *build/platinum.us/overlay85.sbin -a563e0430b460ee5a39442667561e0bd5428dcdb *build/platinum.us/overlay86.sbin -8c7f762ebf90f08b09b9efd49946176bb6ed1c69 *build/platinum.us/overlay87.sbin -ca9016bf18dc6efc3490bfb893f7cbf12920af00 *build/platinum.us/overlay88.sbin -de8a847bff8c343d69b853a215e6ee775ef2ef96 *build/platinum.us/overlay89.sbin -84ce4bc9949f697c12ae6598ef74a7e3f60b1531 *build/platinum.us/overlay90.sbin -2c26cf42ca34629dfc7cc491820e2a309e57eeeb *build/platinum.us/overlay91.sbin -87c3ffad8da5d31174a542832d80bf1855c3225c *build/platinum.us/overlay92.sbin -dabd69f841fce75c91c4236925757150990af289 *build/platinum.us/overlay93.sbin -d647dfde4cd10a41e590114f2538442ed8f2ef26 *build/platinum.us/overlay94.sbin -3410ea804433b4a797932d1999fbb2429611ae56 *build/platinum.us/overlay95.sbin -af7de8e345ff25de55130069f313b57e85d72a4f *build/platinum.us/overlay96.sbin -138a69ea796d35f244daa36a7e9962ea2d0322e0 *build/platinum.us/overlay97.sbin -7648d3a8ca287175a5e29aef623156f11c632d98 *build/platinum.us/overlay98.sbin -e93f9eb3382856feb76c8b0ba400b7d2593db5c5 *build/platinum.us/overlay99.sbin -0033be85ba8a9f1eac53e0d97090911298c7de82 *build/platinum.us/overlay100.sbin -31b95069ac95b7e75df9d29ab410dc72c14ea3b5 *build/platinum.us/overlay101.sbin -20e1299cf7365fe4e84445238d3fd3712279b1a3 *build/platinum.us/overlay102.sbin -de8a847bff8c343d69b853a215e6ee775ef2ef96 *build/platinum.us/overlay103.sbin -a3f4dcf6634992ff3367fe5a377825fb913a39f6 *build/platinum.us/overlay104.sbin -0e6e923a1a359b9482646b3dd0a7a2562e140672 *build/platinum.us/overlay105.sbin -c3a66997e55fb3e761d521136a42f07f4761f5da *build/platinum.us/overlay106.sbin -f8d3fd65261098ff45b3a31319c904b520814fa2 *build/platinum.us/overlay107.sbin -901f6afe6c1b0b54dc42af812f13560758814d2b *build/platinum.us/overlay108.sbin -5acaa19b61120f72d546a83e36c361b2e383c0bd *build/platinum.us/overlay109.sbin -1626b234bbd0915fc1bd57d0b67c59c86f1138bd *build/platinum.us/overlay110.sbin -eb9d61aa9d3ad877f55af30ff212ecc7094049c5 *build/platinum.us/overlay111.sbin -535bf2a3127064fc977a45611ff44e0473be597a *build/platinum.us/overlay112.sbin -0d92a7c86aa0582c60730ab45884ce4beed765d8 *build/platinum.us/overlay113.sbin -70f797e7e397da074be5a6fed5e2f79c4907d41c *build/platinum.us/overlay114.sbin -dd0e40ce15f9bc1eccf25bc29f481a1835098c7b *build/platinum.us/overlay115.sbin -248a912b8adc0cb4df962256b8b7b557bbd613af *build/platinum.us/overlay116.sbin -9a00f7bf15c8b90ba46dafe5ec5e924684b1d270 *build/platinum.us/overlay117.sbin -babc139fb62af0f7e4320b62089eaed7b2dfa3bb *build/platinum.us/overlay118.sbin -76b46eb4dd4d8b21665e7a2488cccf060911cc0a *build/platinum.us/overlay119.sbin -637cf7c59d68702453016a1bf2a1c0d101809912 *build/platinum.us/overlay120.sbin -67a01b02f9d9c8135e57bf274c6a75bf0c2c9be2 *build/platinum.us/overlay121.sbin diff --git a/platinum.us/meson.build b/platinum.us/meson.build new file mode 100644 index 0000000000..409f0358d2 --- /dev/null +++ b/platinum.us/meson.build @@ -0,0 +1,17 @@ +# Collect inputs for main.lcf +main_lsf = files('main.lsf') +main_lcf_template = subproject('NitroSDK').get_variable('main_lcf_template') + +# Generate main.lcf +main_lcf = custom_target('main.lcf', + output: 'main.lcf', + input: main_lsf + main_lcf_template, + command: [makelcf_exe, '@INPUT@','@OUTPUT@'] +) + +# Collect spec files for later use +banner_bnr = files('banner.bnr') +sbins_sha1 = files('sbins.sha1') +rom_header_template = files('rom_header_template.sbin') +rom_rsf = files('rom.rsf') +rom_sha1 = files('rom.sha1') diff --git a/platinum.us/rom.rsf b/platinum.us/rom.rsf new file mode 100644 index 0000000000..9834637403 --- /dev/null +++ b/platinum.us/rom.rsf @@ -0,0 +1,374 @@ +Arm9 +{ + Static main.sbin + OverlayDefs main_defs.sbin + OverlayTable main_table.sbin + Nef main.nef +} + +Arm7 +{ + Static "$(ARM7)" + OverlayDefs "$(ARM7_DEFS)" +} + +Property +{ + RomHeaderTemplate "$(HEADER_TEMPLATE)" + TitleName "$(TITLE_NAME)" + MakerCode "01" + RemasterVersion 0 + RomSpeedType 1TROM + RomSize 1G + RomFootPadding TRUE + BannerFile "$(BNR)" +} + +RomSpec +{ + Segment All + + Root / # Directory in rom + HostRoot res # Directory in source + + File data/UTF16.dat + File data/arealight.narc + File data/battle_win.NSCR + File data/btower_canm.resdat + File data/btower_celact.cldat + File data/btower_cell.resdat + File data/btower_chr.resdat + File data/btower_pal.resdat + File data/cell0.NCGR + File data/cell0.NCLR + File data/clact_default.NANR + File data/crystal.nsbmd + File data/demo_climax.narc + File data/dp_areawindow.NCGR + File data/dp_areawindow.NCLR + File data/dt_test_celact.txt + File data/dt_test_res_cell.txt + File data/dt_test_res_cellanm.txt + File data/dt_test_res_char.txt + File data/dt_test_res_multi.txt + File data/dt_test_res_multianm.txt + File data/dt_test_res_pltt.txt + File data/dun_sea.nsbtx + File data/eoo.dat + File data/exdata.dat + File data/field_cutin.narc + File data/fld_anime0.bin + File data/fld_anime1.bin + File data/fld_anime10.bin + File data/fld_anime2.bin + File data/fld_anime3.bin + File data/fld_anime4.bin + File data/fld_anime5.bin + File data/fld_anime6.bin + File data/fld_anime7.bin + File data/fld_anime8.bin + File data/fld_anime9.bin + File data/fldtanime.narc + File data/fs_kanban.nsbca + File data/ground0.NCGR + File data/ground0.NCLR + File data/ground0.NSCR + File data/guru2.narc + File data/kemu_itpconv.dat + File data/lake_anim.nsbtx + File data/miniasahamabe.nsbtx + File data/miniasasea.nsbtx + File data/minihamabe.nsbtx + File data/minimum.nsbtx + File data/minirhana.nsbtx + File data/namein.narc + File data/nfont.NCGR + File data/nfont.NCLR + File data/pc.nsbca + File data/pl_wifi.ncgr + File data/pl_wm.ncgr + File data/pl_wm.nclr + File data/plbr.dat + File data/plist_canm.resdat + File data/plist_cell.resdat + File data/plist_chr.resdat + File data/plist_h.cldat + File data/plist_pal.resdat + File data/porucase_canm.resdat + File data/porucase_celact.cldat + File data/porucase_cell.resdat + File data/porucase_chr.resdat + File data/porucase_pal.resdat + File data/pst_canm.resdat + File data/pst_cell.resdat + File data/pst_chr.resdat + File data/pst_h.cldat + File data/pst_pal.resdat + File data/shop_canm.resdat + File data/shop_cell.resdat + File data/shop_chr.resdat + File data/shop_h.cldat + File data/shop_pal.resdat + File data/slot.narc + File data/smptm_koori.NANR + File data/smptm_koori.NCER + File data/smptm_koori.NCGR + File data/smptm_koori.NCLR + File data/smptm_nemuri.NANR + File data/smptm_nemuri.NCER + File data/smptm_nemuri.NCGR + File data/smptm_nemuri.NCLR + File data/str2uni.bin + File data/t3_fl_b.nsbtx + File data/t3_fl_p.nsbtx + File data/t3_fl_r.nsbtx + File data/t3_fl_y.nsbtx + File data/test.atr + File data/tmap_block.dat + File data/tmap_flags.dat + File data/tmapn_canm.resdat + File data/tmapn_celact.cldat + File data/tmapn_celact.txt + File data/tmapn_cell.resdat + File data/tmapn_chr.resdat + File data/tmapn_pal.resdat + File data/tmapn_res_canm.txt + File data/tmapn_res_cell.txt + File data/tmapn_res_chr.txt + File data/tmapn_res_pal.txt + File data/tradelist.narc + File data/trapmark.narc + File data/tw_arc_etc.naix + File data/tw_arc_etc.narc + File data/ug_anim.narc + File data/ug_base_cur.nsbmd + File data/ug_boygirl.NCGR + File data/ug_boygirl.NCLR + File data/ug_fossil.narc + File data/ug_hero.NANR + File data/ug_hero.NCER + File data/ug_hole.NANR + File data/ug_hole.NCER + File data/ug_hole.NCGR + File data/ug_parts.narc + File data/ug_radar.narc + File data/ug_trap.narc + File data/ugeffect_obj_graphic.narc + File data/uground_cell.resdat + File data/uground_cellanm.resdat + File data/uground_char.resdat + File data/uground_char2.resdat + File data/uground_clact.cldat + File data/uground_pltt.resdat + File data/uground_pltt2.resdat + File data/ugroundeffect.naix + File data/ugroundeffect.narc + File data/underg_radar.narc + File data/utility.bin + File data/weather_sys.narc + File data/wifi.ncgr + File data/wifip2pmatch.narc + File data/wm.ncgr + File data/wm.nclr + File data/sound/sound_data.sdat + File data/sound/pl_sound_data.sdat + File msgdata/pl_msg.narc + File msgdata/msg.narc + File msgdata/scenario/scr_msg.narc + File poketool/pokegra/dp_height.narc + File poketool/pokegra/dp_height_o.narc + File poketool/pokegra/height.narc + File poketool/pokegra/height_o.narc + File poketool/pokegra/otherpoke.narc + File poketool/pokegra/pl_otherpoke.narc + File poketool/pokegra/pl_pokegra.narc + File poketool/pokegra/poke_shadow.narc + File poketool/pokegra/poke_shadow_ofx.narc + File poketool/pokegra/poke_yofs.narc + File poketool/pokegra/pokegra.narc + File poketool/trgra/trbgra.narc + File poketool/trgra/trfgra.narc + File poketool/personal/personal.narc + File poketool/personal/pl_personal.narc + File poketool/personal/evo.narc + File poketool/personal/growtbl.narc + File poketool/personal/pl_growtbl.narc + File poketool/personal/pms.narc + File poketool/personal/wotbl.narc + File poketool/trainer/trdata.narc + File poketool/trainer/trpoke.narc + File poketool/trmsg/trtbl.narc + File poketool/trmsg/trtblofs.narc + File battle/graphic/b_bag_gra.narc + File battle/graphic/b_plist_gra.narc + File battle/graphic/batt_bg.narc + File battle/graphic/batt_obj.narc + File battle/graphic/pl_b_plist_gra.narc + File battle/graphic/pl_batt_bg.narc + File battle/graphic/pl_batt_obj.narc + File battle/graphic/vs_demo_gra.narc + File wazaeffect/we.arc + File wazaeffect/we_sub.narc + File battle/skill/be_seq.narc + File battle/skill/sub_seq.narc + File battle/skill/waza_seq.narc + File wazaeffect/effectclact/wecell.narc + File wazaeffect/effectclact/wecellanm.narc + File wazaeffect/effectclact/wechar.narc + File wazaeffect/effectclact/wepltt.narc + File poketool/waza/pl_waza_tbl.narc + File poketool/waza/waza_tbl.narc + File fielddata/script/scr_seq.narc + File graphic/bag_gra.narc + File graphic/box.narc + File graphic/btower.narc + File graphic/bucket.narc + File graphic/config_gra.narc + File graphic/demo_trade.narc + File graphic/dendou_demo.narc + File graphic/dendou_pc.narc + File graphic/ending.narc + File graphic/ev_pokeselect.narc + File graphic/f_note_gra.narc + File graphic/field_board.narc + File graphic/field_encounteffect.narc + File graphic/fld_comact.narc + File graphic/font.narc + File graphic/fontoam.narc + File graphic/footprint_board.narc + File graphic/hiden_effect.narc + File graphic/imageclip.narc + File graphic/library_tv.narc + File graphic/lobby_news.narc + File graphic/mail_gra.narc + File graphic/menu_gra.narc + File graphic/mysign.narc + File graphic/mystery.narc + File graphic/ntag_gra.narc + File graphic/nutmixer.narc + File graphic/oekaki.narc + File graphic/opening.narc + File graphic/pl_bag_gra.narc + File graphic/pl_font.narc + File graphic/pl_plist_gra.narc + File graphic/pl_pst_gra.narc + File graphic/pl_wifinote.narc + File graphic/pl_winframe.narc + File graphic/plist_gra.narc + File graphic/pmsi.narc + File graphic/poketch.narc + File graphic/poru_gra.narc + File graphic/poruact.narc + File graphic/porudemo.narc + File graphic/pst_gra.narc + File graphic/ranking.narc + File graphic/record.narc + File graphic/shop_gra.narc + File graphic/tmap_gra.narc + File graphic/touch_subwindow.narc + File graphic/trainer_case.narc + File graphic/unionobj2d_onlyfront.narc + File graphic/unionroom.narc + File graphic/waza_oshie_gra.narc + File graphic/wifi2dchar.narc + File graphic/wifi_lobby.narc + File graphic/wifi_lobby_other.narc + File graphic/wifi_unionobj.narc + File graphic/winframe.narc + File graphic/worldtimer.narc + File graphic/worldtrade.narc + File itemtool/itemdata/item_data.narc + File itemtool/itemdata/item_icon.narc + File itemtool/itemdata/nuts_data.narc + File itemtool/itemdata/pl_item_data.narc + File poketool/icongra/pl_poke_icon.narc + File poketool/icongra/poke_icon.narc + File poketool/pokefoot/pokefoot.narc + File data/mmodel/mmodel.narc + File data/mmodel/fldeff.narc + File wazaeffect/effectdata/ball_particle.narc + File wazaeffect/effectdata/waza_particle.narc + File fielddata/eventdata/zone_event.narc + File fielddata/encountdata/d_enc_data.narc + File fielddata/encountdata/p_enc_data.narc + File fielddata/encountdata/pl_enc_data.narc + File fielddata/build_model/build_model.narc + File fielddata/build_model/build_model_matshp.dat + File fielddata/mapmatrix/map_matrix.narc + File fielddata/areadata/area_data.narc + File fielddata/areadata/area_build_model/area_build.narc + File fielddata/areadata/area_build_model/areabm_texset.narc + File fielddata/areadata/area_map_tex/map_tex_set.narc + File fielddata/areadata/area_move_model/move_model_list.narc + File fielddata/land_data/land_data.narc + File contest/data/contest_data.narc + File particledata/particledata.narc + File application/zukanlist/zkn_data/zukan_data.narc + File application/zukanlist/zkn_data/zukan_data_gira.narc + File application/wifi_earth/wifi_earth.narc + File application/wifi_earth/wifi_earth_place.narc + File application/custom_ball/data/cb_data.narc + File demo/egg/data/egg_data.narc + File demo/egg/data/particle/egg_demo_particle.narc + File fielddata/mm_list/move_model_list.narc + File pokeanime/poke_anm.narc + File pokeanime/pl_poke_anm.narc + File battle/tr_ai/tr_ai_seq.narc + File arc/area_win_gra.narc + File arc/balance_ball_gra.narc + File arc/bm_anime.narc + File arc/bm_anime_list.narc + File arc/codein_gra.narc + File arc/demo_tengan_gra.narc + File arc/email_gra.narc + File arc/encdata_ex.narc + File arc/manene.narc + File arc/plgym_ghost.narc + File arc/ppark.narc + File arc/ship_demo.narc + File arc/ship_demo_pl.narc + File arc/tv.narc + File fielddata/maptable/mapname.bin + File poketool/pokezukan.narc + File poketool/pl_pokezukan.narc + File poketool/shinzukan.narc + File poketool/pokeanm/pokeanm.narc + File poketool/pokeanm/pl_pokeanm.narc + File demo/shinka/data/particle/shinka_demo_particle.narc + File demo/intro/intro.narc + File demo/intro/intro_tv.narc + File demo/syoujyou/syoujyou.narc + File battle/b_tower/btdpm.narc + File battle/b_tower/btdtr.narc + File application/zukanlist/zkn_data/zukan_enc_diamond.narc + File application/zukanlist/zkn_data/zukan_enc_pearl.narc + File application/zukanlist/zkn_data/zukan_enc_platinum.narc + File poketool/poke_edit/pl_poke_data.narc + File debug/cb_edit/d_test.narc + File application/custom_ball/edit/pl_cb_data.narc + File frontier/script/fr_script.narc + File particledata/pl_frontier/frontier_particle.narc + File application/balloon/graphic/balloon_gra.narc + File application/wifi_lobby/map_conv/wflby_map.narc + File fielddata/tornworld/tw_arc.narc + File fielddata/tornworld/tw_arc_attr.narc + File particledata/pl_pokelist/pokelist_particle.narc + File battle/b_pl_stage/pl_bsdpm.narc + File battle/b_pl_tower/pl_btdpm.narc + File battle/b_pl_tower/pl_btdtr.narc + File application/bucket/ballslow_data.narc + File particledata/pl_etc/pl_etc_particle.narc + File contest/graphic/contest_bg.narc + File contest/graphic/contest_obj.narc + File demo/title/op_demo.narc + File demo/title/titledemo.narc + File fielddata/pokemon_trade/fld_trade.narc + File resource/eng/zukan/zukan.narc + File resource/eng/batt_rec/batt_rec_gra.narc + File resource/eng/wifi_lobby_minigame/wlmngm_tool.narc + File resource/eng/frontier_graphic/frontier_bg.narc + File resource/eng/frontier_graphic/frontier_obj.narc + File resource/eng/scratch/scratch.narc + File resource/eng/pms_aikotoba/pms_aikotoba.narc + File dwc/utility.bin +} diff --git a/platinum.us/rom.sha1 b/platinum.us/rom.sha1 index b55a6152a7..29de24dd18 100644 --- a/platinum.us/rom.sha1 +++ b/platinum.us/rom.sha1 @@ -1 +1 @@ -ce81046eda7d232513069519cb2085349896dec7 *build/platinum.us/pokeplatinum.us.nds +ce81046eda7d232513069519cb2085349896dec7 pokeplatinum.us.nds diff --git a/platinum.us/sbins.sha1 b/platinum.us/sbins.sha1 new file mode 100644 index 0000000000..def9472ec4 --- /dev/null +++ b/platinum.us/sbins.sha1 @@ -0,0 +1,123 @@ +6b61f25c1542f05dbdab54cf2dfaad9914555d07 main.sbin +de8a847bff8c343d69b853a215e6ee775ef2ef96 overlay0.sbin +906b5d19e6478a795eda151c771ff3a47fb1a8d5 overlay1.sbin +de8a847bff8c343d69b853a215e6ee775ef2ef96 overlay2.sbin +de8a847bff8c343d69b853a215e6ee775ef2ef96 overlay3.sbin +2527b3e0bbc7cf76e9125c8215043faf84ef0af2 overlay4.sbin +0456f78ac3e294722f669c793fc9727b23b66fba overlay5.sbin +6e5ed74d5bdb94d2ce78d8990c364b4766eab772 overlay6.sbin +fef29cf33d4dfd1f068a7b67798e7b5950fce749 overlay7.sbin +9d381061f1a7c6cccb731871aa8e7013848709cd overlay8.sbin +ba1a20a286990d2d318af29cd6e8dad389d45504 overlay9.sbin +05ab4e12c01211ce4305bde303e06ce11dda78af overlay10.sbin +a6dc7a7e32c14081b5db5a0a5e1e5120bebe52a9 overlay11.sbin +fa28629441497607e072a3aceebfb6d167457020 overlay12.sbin +8b64b97469bff5dc372b5178baa4676f7b2bcfc2 overlay13.sbin +d9b09c1e37088d6aaeb73143ecec98ab3327ec67 overlay14.sbin +de8a847bff8c343d69b853a215e6ee775ef2ef96 overlay15.sbin +b058a62fb8e4d646bb7508f5a21e406591f809c1 overlay16.sbin +543c0afabc3d90310f1bc8d4902743461dfdc1e5 overlay17.sbin +111fe69ca18026aa8574b8f79a6b94ef73715267 overlay18.sbin +d414d37a9b80f1d346666ad9ef5ba635d5ebb552 overlay19.sbin +7534ad61985affc27e8b121a6645b825ffae48c7 overlay20.sbin +6dd9a720fe069aedd9107398c16ba93e57769c64 overlay21.sbin +41ad74512da8c556fc28f8bf41ad77156d3d4cc9 overlay22.sbin +2e8fcd133e2736d90dae6e23ac9a669cefc1a7c8 overlay23.sbin +cc4bb361071632627532c48af9a0b37c1751670a overlay24.sbin +0fbd0432432d42462b9c02f07e30634987708dc6 overlay25.sbin +44e45c2b6ec6aa74142550f25f770954b8e0d555 overlay26.sbin +3301af166bc328d4df4412dbf6c740635151867c overlay27.sbin +98a048c770a311a3fd756ad725997964fdd14aa8 overlay28.sbin +ca63341e12e782896fc58d5ce6fefa2170b5e921 overlay29.sbin +d18ad1ad381bb674c840d1a0435ff39c17c5488f overlay30.sbin +f6c50384fcfc828ccc29aaf89540b7529c981931 overlay31.sbin +eac8d17d2e5301cd7b2d7ba507f2ecd1df9d59cd overlay32.sbin +dfab77a2a03414852a047b45eabec7d3367fca58 overlay33.sbin +cd5d643c3bf17d863db96640d7bfc100bda30b37 overlay34.sbin +4410caba494af7c853ef7f1a4a2ac4d8243f5a18 overlay35.sbin +09d6d7c195d109d31c8f890711f562ae2e219cfd overlay36.sbin +212e5bc9a6036f4c0be02d65bbba5feed12c5d53 overlay37.sbin +3f15b19c0ca694b9942077a9c8eda0855c25450c overlay38.sbin +da2f09fdfc788b4a6e6ada88db5176fcdc23c924 overlay39.sbin +f8a583401a3a614cc88ee6dc7f3b3cdbf00f22cb overlay40.sbin +a5b13f54d5303140b3169c794db0fd04c9c2dc22 overlay41.sbin +ba5baba0ff38e940d333dbea89e4c510b6998922 overlay42.sbin +261b64d5fd09a304a5d7e78a18b44a6ecfe7ec93 overlay43.sbin +5dd962600f238f162c0999dcb8a134c9df134293 overlay44.sbin +e722ce81a98e1d78011e179f008a4cac37e20610 overlay45.sbin +87cd3ac2574737177d399a8cf8a8374c9599e38b overlay46.sbin +b38da9fe733a6a1213ff217f4e2788e3ae2011a4 overlay47.sbin +70266035d948ee5a826b06a3a1b908a50af050c9 overlay48.sbin +489ae29169ae71eb72909fdebdd0aa8bf8ca63f4 overlay49.sbin +2c6a1fb46550bdb140c677e37ae06779b84e7c3e overlay50.sbin +13069defd90d47eebe9eb4a48974e82369614fa7 overlay51.sbin +4963a7d852a9691cdd9382f42c527d0c457fb520 overlay52.sbin +26f0a9bd0e207a3260cb3a04e268a20b3d2c52d2 overlay53.sbin +395bbb8597227e687f61cea574c2219c7c77d1d1 overlay54.sbin +ea68f11d110d5929d18eeaad9cf3f1792986ab7f overlay55.sbin +1b89fbbf7576f21608df1334606ed2e77f5e21ea overlay56.sbin +88b06ba661770c8feef9ec96bcee6942819fbda4 overlay57.sbin +9b7c8c69b165a8a4f1da4ff4fc73bdc0af52def8 overlay58.sbin +43b9d869fc580cb7e6af6ef95cbbc015b5542d50 overlay59.sbin +0a0cfedfb93a08ff8fd187d6e62a5c9a1e3056cc overlay60.sbin +a5f5fb58639672291dc9328f8659fdea0a1329ee overlay61.sbin +d073752e86af2a435978fed11ce5557c5dc3b3ac overlay62.sbin +75595fd5704b4ffdce5e32160e35506e166d2122 overlay63.sbin +d2a6ce95570f7eddb8cbfbe0fd8317d54c48cb1d overlay64.sbin +974d51ed28bab8005a761ab10f0caf3232ca75b0 overlay65.sbin +1dd7362a44183422c084958e4356c4c65b23ebbe overlay66.sbin +3565015a195a71e06e0c56ef638f06116f27e597 overlay67.sbin +6c90858a9f97833957e94da68513a90b7ea16dfa overlay68.sbin +c655f6874e4e9897f3f0782af1140cedd97154da overlay69.sbin +b80c7e652b63a37f2a30b9c0f14d6e5608185d05 overlay70.sbin +cf86b18a15a2b011fd0e7c98379a9fa228c3fc4c overlay71.sbin +39a79a31811cac6b1a90206e67624c0a3179bd46 overlay72.sbin +deecf01a5608b25883804ef30c9d4c3d0c904ee5 overlay73.sbin +21e3d2a2fb36d739f4fd16792719bf6fa7b7e6aa overlay74.sbin +88ceed815cb9a2ef6e0d2dcedd2fc126e717c165 overlay75.sbin +13777fa8b44e026c4eb960cce2309451c4594726 overlay76.sbin +d7a304050d0049809b21cf75937e4d14aaf858c5 overlay77.sbin +8571cf57764db093c9ce385586894659297b783e overlay78.sbin +b8c85f32459d20b3a6cfde5a1e349215dd0157a0 overlay79.sbin +0ba83af5f2cafb311dbc552d77cb1b6b4f45d34e overlay80.sbin +1982ed52ba9469dd625dc5951277fd1c001b26af overlay81.sbin +429a576c3e5a24f25167051957b22f194d2af781 overlay82.sbin +1904a30bcfb722856130ab7b3d0e79fd0070520d overlay83.sbin +8bd6a805631e2d661f9d5889e568a72e60f93a04 overlay84.sbin +c197c9edb988d64dec0a56427dfc6960646dc1f7 overlay85.sbin +a563e0430b460ee5a39442667561e0bd5428dcdb overlay86.sbin +8c7f762ebf90f08b09b9efd49946176bb6ed1c69 overlay87.sbin +ca9016bf18dc6efc3490bfb893f7cbf12920af00 overlay88.sbin +de8a847bff8c343d69b853a215e6ee775ef2ef96 overlay89.sbin +84ce4bc9949f697c12ae6598ef74a7e3f60b1531 overlay90.sbin +2c26cf42ca34629dfc7cc491820e2a309e57eeeb overlay91.sbin +87c3ffad8da5d31174a542832d80bf1855c3225c overlay92.sbin +dabd69f841fce75c91c4236925757150990af289 overlay93.sbin +d647dfde4cd10a41e590114f2538442ed8f2ef26 overlay94.sbin +3410ea804433b4a797932d1999fbb2429611ae56 overlay95.sbin +af7de8e345ff25de55130069f313b57e85d72a4f overlay96.sbin +138a69ea796d35f244daa36a7e9962ea2d0322e0 overlay97.sbin +7648d3a8ca287175a5e29aef623156f11c632d98 overlay98.sbin +e93f9eb3382856feb76c8b0ba400b7d2593db5c5 overlay99.sbin +0033be85ba8a9f1eac53e0d97090911298c7de82 overlay100.sbin +31b95069ac95b7e75df9d29ab410dc72c14ea3b5 overlay101.sbin +20e1299cf7365fe4e84445238d3fd3712279b1a3 overlay102.sbin +de8a847bff8c343d69b853a215e6ee775ef2ef96 overlay103.sbin +a3f4dcf6634992ff3367fe5a377825fb913a39f6 overlay104.sbin +0e6e923a1a359b9482646b3dd0a7a2562e140672 overlay105.sbin +c3a66997e55fb3e761d521136a42f07f4761f5da overlay106.sbin +f8d3fd65261098ff45b3a31319c904b520814fa2 overlay107.sbin +901f6afe6c1b0b54dc42af812f13560758814d2b overlay108.sbin +5acaa19b61120f72d546a83e36c361b2e383c0bd overlay109.sbin +1626b234bbd0915fc1bd57d0b67c59c86f1138bd overlay110.sbin +eb9d61aa9d3ad877f55af30ff212ecc7094049c5 overlay111.sbin +535bf2a3127064fc977a45611ff44e0473be597a overlay112.sbin +0d92a7c86aa0582c60730ab45884ce4beed765d8 overlay113.sbin +70f797e7e397da074be5a6fed5e2f79c4907d41c overlay114.sbin +dd0e40ce15f9bc1eccf25bc29f481a1835098c7b overlay115.sbin +248a912b8adc0cb4df962256b8b7b557bbd613af overlay116.sbin +9a00f7bf15c8b90ba46dafe5ec5e924684b1d270 overlay117.sbin +babc139fb62af0f7e4320b62089eaed7b2dfa3bb overlay118.sbin +76b46eb4dd4d8b21665e7a2488cccf060911cc0a overlay119.sbin +637cf7c59d68702453016a1bf2a1c0d101809912 overlay120.sbin +67a01b02f9d9c8135e57bf274c6a75bf0c2c9be2 overlay121.sbin diff --git a/replace.sh b/replace.sh old mode 100644 new mode 100755 diff --git a/files/application/balloon/graphic/balloon_gra.narc b/res/application/balloon/graphic/balloon_gra.narc similarity index 100% rename from files/application/balloon/graphic/balloon_gra.narc rename to res/application/balloon/graphic/balloon_gra.narc diff --git a/res/application/balloon/graphic/meson.build b/res/application/balloon/graphic/meson.build new file mode 100644 index 0000000000..aa33dc522b --- /dev/null +++ b/res/application/balloon/graphic/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'balloon_gra.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/application/balloon/meson.build b/res/application/balloon/meson.build new file mode 100644 index 0000000000..7831b1dc0e --- /dev/null +++ b/res/application/balloon/meson.build @@ -0,0 +1 @@ +subdir('graphic') diff --git a/files/application/bucket/ballslow_data.narc b/res/application/bucket/ballslow_data.narc similarity index 100% rename from files/application/bucket/ballslow_data.narc rename to res/application/bucket/ballslow_data.narc diff --git a/res/application/bucket/meson.build b/res/application/bucket/meson.build new file mode 100644 index 0000000000..a951be8704 --- /dev/null +++ b/res/application/bucket/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'ballslow_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/application/custom_ball/data/cb_data.narc b/res/application/custom_ball/data/cb_data.narc similarity index 100% rename from files/application/custom_ball/data/cb_data.narc rename to res/application/custom_ball/data/cb_data.narc diff --git a/res/application/custom_ball/data/meson.build b/res/application/custom_ball/data/meson.build new file mode 100644 index 0000000000..0490b020d8 --- /dev/null +++ b/res/application/custom_ball/data/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'cb_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/application/custom_ball/edit/meson.build b/res/application/custom_ball/edit/meson.build new file mode 100644 index 0000000000..2c5a58b6af --- /dev/null +++ b/res/application/custom_ball/edit/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'pl_cb_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/application/custom_ball/edit/pl_cb_data.narc b/res/application/custom_ball/edit/pl_cb_data.narc similarity index 100% rename from files/application/custom_ball/edit/pl_cb_data.narc rename to res/application/custom_ball/edit/pl_cb_data.narc diff --git a/res/application/custom_ball/meson.build b/res/application/custom_ball/meson.build new file mode 100644 index 0000000000..5ac7609c65 --- /dev/null +++ b/res/application/custom_ball/meson.build @@ -0,0 +1,2 @@ +subdir('data') +subdir('edit') \ No newline at end of file diff --git a/res/application/meson.build b/res/application/meson.build new file mode 100644 index 0000000000..384dd49f66 --- /dev/null +++ b/res/application/meson.build @@ -0,0 +1,6 @@ +subdir('balloon') +subdir('bucket') +subdir('custom_ball') +subdir('wifi_earth') +subdir('wifi_lobby') +subdir('zukanlist') \ No newline at end of file diff --git a/res/application/wifi_earth/meson.build b/res/application/wifi_earth/meson.build new file mode 100644 index 0000000000..ba2059ad9a --- /dev/null +++ b/res/application/wifi_earth/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'wifi_earth_place.narc', + 'wifi_earth.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/application/wifi_earth/wifi_earth.narc b/res/application/wifi_earth/wifi_earth.narc similarity index 100% rename from files/application/wifi_earth/wifi_earth.narc rename to res/application/wifi_earth/wifi_earth.narc diff --git a/files/application/wifi_earth/wifi_earth_place.narc b/res/application/wifi_earth/wifi_earth_place.narc similarity index 100% rename from files/application/wifi_earth/wifi_earth_place.narc rename to res/application/wifi_earth/wifi_earth_place.narc diff --git a/res/application/wifi_lobby/map_conv/meson.build b/res/application/wifi_lobby/map_conv/meson.build new file mode 100644 index 0000000000..9a157044b2 --- /dev/null +++ b/res/application/wifi_lobby/map_conv/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'wflby_map.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/application/wifi_lobby/map_conv/wflby_map.narc b/res/application/wifi_lobby/map_conv/wflby_map.narc similarity index 100% rename from files/application/wifi_lobby/map_conv/wflby_map.narc rename to res/application/wifi_lobby/map_conv/wflby_map.narc diff --git a/res/application/wifi_lobby/meson.build b/res/application/wifi_lobby/meson.build new file mode 100644 index 0000000000..efacc87bf6 --- /dev/null +++ b/res/application/wifi_lobby/meson.build @@ -0,0 +1 @@ +subdir('map_conv') \ No newline at end of file diff --git a/res/application/zukanlist/meson.build b/res/application/zukanlist/meson.build new file mode 100644 index 0000000000..a0536bb0b6 --- /dev/null +++ b/res/application/zukanlist/meson.build @@ -0,0 +1 @@ +subdir('zkn_data') \ No newline at end of file diff --git a/res/application/zukanlist/zkn_data/meson.build b/res/application/zukanlist/zkn_data/meson.build new file mode 100644 index 0000000000..af9430c3e7 --- /dev/null +++ b/res/application/zukanlist/zkn_data/meson.build @@ -0,0 +1,11 @@ +prebuilt_files = [ + 'zukan_data_gira.narc', + 'zukan_data.narc', + 'zukan_enc_diamond.narc', + 'zukan_enc_pearl.narc', + 'zukan_enc_platinum.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/application/zukanlist/zkn_data/zukan_data.narc b/res/application/zukanlist/zkn_data/zukan_data.narc similarity index 100% rename from files/application/zukanlist/zkn_data/zukan_data.narc rename to res/application/zukanlist/zkn_data/zukan_data.narc diff --git a/files/application/zukanlist/zkn_data/zukan_data_gira.narc b/res/application/zukanlist/zkn_data/zukan_data_gira.narc similarity index 100% rename from files/application/zukanlist/zkn_data/zukan_data_gira.narc rename to res/application/zukanlist/zkn_data/zukan_data_gira.narc diff --git a/files/application/zukanlist/zkn_data/zukan_enc_diamond.narc b/res/application/zukanlist/zkn_data/zukan_enc_diamond.narc similarity index 100% rename from files/application/zukanlist/zkn_data/zukan_enc_diamond.narc rename to res/application/zukanlist/zkn_data/zukan_enc_diamond.narc diff --git a/files/application/zukanlist/zkn_data/zukan_enc_pearl.narc b/res/application/zukanlist/zkn_data/zukan_enc_pearl.narc similarity index 100% rename from files/application/zukanlist/zkn_data/zukan_enc_pearl.narc rename to res/application/zukanlist/zkn_data/zukan_enc_pearl.narc diff --git a/files/application/zukanlist/zkn_data/zukan_enc_platinum.narc b/res/application/zukanlist/zkn_data/zukan_enc_platinum.narc similarity index 100% rename from files/application/zukanlist/zkn_data/zukan_enc_platinum.narc rename to res/application/zukanlist/zkn_data/zukan_enc_platinum.narc diff --git a/files/arc/area_win_gra.narc b/res/arc/area_win_gra.narc similarity index 100% rename from files/arc/area_win_gra.narc rename to res/arc/area_win_gra.narc diff --git a/files/arc/balance_ball_gra.narc b/res/arc/balance_ball_gra.narc similarity index 100% rename from files/arc/balance_ball_gra.narc rename to res/arc/balance_ball_gra.narc diff --git a/files/arc/bm_anime.narc b/res/arc/bm_anime.narc similarity index 100% rename from files/arc/bm_anime.narc rename to res/arc/bm_anime.narc diff --git a/files/arc/bm_anime_list.narc b/res/arc/bm_anime_list.narc similarity index 100% rename from files/arc/bm_anime_list.narc rename to res/arc/bm_anime_list.narc diff --git a/files/arc/codein_gra.narc b/res/arc/codein_gra.narc similarity index 100% rename from files/arc/codein_gra.narc rename to res/arc/codein_gra.narc diff --git a/files/arc/demo_tengan_gra.narc b/res/arc/demo_tengan_gra.narc similarity index 100% rename from files/arc/demo_tengan_gra.narc rename to res/arc/demo_tengan_gra.narc diff --git a/files/arc/email_gra.narc b/res/arc/email_gra.narc similarity index 100% rename from files/arc/email_gra.narc rename to res/arc/email_gra.narc diff --git a/files/arc/encdata_ex.narc b/res/arc/encdata_ex.narc similarity index 100% rename from files/arc/encdata_ex.narc rename to res/arc/encdata_ex.narc diff --git a/files/arc/manene.narc b/res/arc/manene.narc similarity index 100% rename from files/arc/manene.narc rename to res/arc/manene.narc diff --git a/res/arc/meson.build b/res/arc/meson.build new file mode 100644 index 0000000000..7de03be54f --- /dev/null +++ b/res/arc/meson.build @@ -0,0 +1,20 @@ +prebuilt_files = [ + 'area_win_gra.narc', + 'balance_ball_gra.narc', + 'bm_anime_list.narc', + 'bm_anime.narc', + 'codein_gra.narc', + 'demo_tengan_gra.narc', + 'email_gra.narc', + 'encdata_ex.narc', + 'manene.narc', + 'plgym_ghost.narc', + 'ppark.narc', + 'ship_demo_pl.narc', + 'ship_demo.narc', + 'tv.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/arc/plgym_ghost.narc b/res/arc/plgym_ghost.narc similarity index 100% rename from files/arc/plgym_ghost.narc rename to res/arc/plgym_ghost.narc diff --git a/files/arc/ppark.narc b/res/arc/ppark.narc similarity index 100% rename from files/arc/ppark.narc rename to res/arc/ppark.narc diff --git a/files/arc/ship_demo.narc b/res/arc/ship_demo.narc similarity index 100% rename from files/arc/ship_demo.narc rename to res/arc/ship_demo.narc diff --git a/files/arc/ship_demo_pl.narc b/res/arc/ship_demo_pl.narc similarity index 100% rename from files/arc/ship_demo_pl.narc rename to res/arc/ship_demo_pl.narc diff --git a/files/arc/tv.narc b/res/arc/tv.narc similarity index 100% rename from files/arc/tv.narc rename to res/arc/tv.narc diff --git a/res/battle/b_pl_stage/meson.build b/res/battle/b_pl_stage/meson.build new file mode 100644 index 0000000000..052ab8fcfc --- /dev/null +++ b/res/battle/b_pl_stage/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'pl_bsdpm.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/battle/b_pl_stage/pl_bsdpm.narc b/res/battle/b_pl_stage/pl_bsdpm.narc similarity index 100% rename from files/battle/b_pl_stage/pl_bsdpm.narc rename to res/battle/b_pl_stage/pl_bsdpm.narc diff --git a/res/battle/b_pl_tower/meson.build b/res/battle/b_pl_tower/meson.build new file mode 100644 index 0000000000..0d22bd4859 --- /dev/null +++ b/res/battle/b_pl_tower/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'pl_btdpm.narc', + 'pl_btdtr.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach diff --git a/files/battle/b_pl_tower/pl_btdpm.narc b/res/battle/b_pl_tower/pl_btdpm.narc similarity index 100% rename from files/battle/b_pl_tower/pl_btdpm.narc rename to res/battle/b_pl_tower/pl_btdpm.narc diff --git a/files/battle/b_pl_tower/pl_btdtr.narc b/res/battle/b_pl_tower/pl_btdtr.narc similarity index 100% rename from files/battle/b_pl_tower/pl_btdtr.narc rename to res/battle/b_pl_tower/pl_btdtr.narc diff --git a/files/battle/b_tower/btdpm.narc b/res/battle/b_tower/btdpm.narc similarity index 100% rename from files/battle/b_tower/btdpm.narc rename to res/battle/b_tower/btdpm.narc diff --git a/files/battle/b_tower/btdtr.narc b/res/battle/b_tower/btdtr.narc similarity index 100% rename from files/battle/b_tower/btdtr.narc rename to res/battle/b_tower/btdtr.narc diff --git a/res/battle/b_tower/meson.build b/res/battle/b_tower/meson.build new file mode 100644 index 0000000000..95c0a58144 --- /dev/null +++ b/res/battle/b_tower/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'btdpm.narc', + 'btdtr.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/battle/graphic/b_bag_gra.narc b/res/battle/graphic/b_bag_gra.narc similarity index 100% rename from files/battle/graphic/b_bag_gra.narc rename to res/battle/graphic/b_bag_gra.narc diff --git a/files/battle/graphic/b_plist_gra.narc b/res/battle/graphic/b_plist_gra.narc similarity index 100% rename from files/battle/graphic/b_plist_gra.narc rename to res/battle/graphic/b_plist_gra.narc diff --git a/files/battle/graphic/batt_bg.narc b/res/battle/graphic/batt_bg.narc similarity index 100% rename from files/battle/graphic/batt_bg.narc rename to res/battle/graphic/batt_bg.narc diff --git a/files/battle/graphic/batt_obj.narc b/res/battle/graphic/batt_obj.narc similarity index 100% rename from files/battle/graphic/batt_obj.narc rename to res/battle/graphic/batt_obj.narc diff --git a/res/battle/graphic/meson.build b/res/battle/graphic/meson.build new file mode 100644 index 0000000000..f44c61a99e --- /dev/null +++ b/res/battle/graphic/meson.build @@ -0,0 +1,14 @@ +prebuilt_files = [ + 'b_bag_gra.narc', + 'b_plist_gra.narc', + 'batt_bg.narc', + 'batt_obj.narc', + 'pl_b_plist_gra.narc', + 'pl_batt_bg.narc', + 'pl_batt_obj.narc', + 'vs_demo_gra.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach diff --git a/files/battle/graphic/pl_b_plist_gra.narc b/res/battle/graphic/pl_b_plist_gra.narc similarity index 100% rename from files/battle/graphic/pl_b_plist_gra.narc rename to res/battle/graphic/pl_b_plist_gra.narc diff --git a/files/battle/graphic/pl_batt_bg.narc b/res/battle/graphic/pl_batt_bg.narc similarity index 100% rename from files/battle/graphic/pl_batt_bg.narc rename to res/battle/graphic/pl_batt_bg.narc diff --git a/files/battle/graphic/pl_batt_obj.narc b/res/battle/graphic/pl_batt_obj.narc similarity index 100% rename from files/battle/graphic/pl_batt_obj.narc rename to res/battle/graphic/pl_batt_obj.narc diff --git a/files/battle/graphic/vs_demo_gra.narc b/res/battle/graphic/vs_demo_gra.narc similarity index 100% rename from files/battle/graphic/vs_demo_gra.narc rename to res/battle/graphic/vs_demo_gra.narc diff --git a/res/battle/meson.build b/res/battle/meson.build new file mode 100644 index 0000000000..916dad36fc --- /dev/null +++ b/res/battle/meson.build @@ -0,0 +1,6 @@ +subdir('b_pl_stage') +subdir('b_pl_tower') +subdir('b_tower') +subdir('graphic') +subdir('skill') +subdir('tr_ai') \ No newline at end of file diff --git a/files/battle/skill/be_seq.narc b/res/battle/skill/be_seq.narc similarity index 100% rename from files/battle/skill/be_seq.narc rename to res/battle/skill/be_seq.narc diff --git a/res/battle/skill/meson.build b/res/battle/skill/meson.build new file mode 100644 index 0000000000..f05ff3b453 --- /dev/null +++ b/res/battle/skill/meson.build @@ -0,0 +1,10 @@ +prebuilt_files = [ + 'be_seq.narc', + 'sub_seq.narc', + 'waza_seq.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach + diff --git a/files/battle/skill/sub_seq.narc b/res/battle/skill/sub_seq.narc similarity index 100% rename from files/battle/skill/sub_seq.narc rename to res/battle/skill/sub_seq.narc diff --git a/files/battle/skill/waza_seq.narc b/res/battle/skill/waza_seq.narc similarity index 100% rename from files/battle/skill/waza_seq.narc rename to res/battle/skill/waza_seq.narc diff --git a/res/battle/tr_ai/meson.build b/res/battle/tr_ai/meson.build new file mode 100644 index 0000000000..7f5faf3397 --- /dev/null +++ b/res/battle/tr_ai/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'tr_ai_seq.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach + diff --git a/files/battle/tr_ai/tr_ai_seq.narc b/res/battle/tr_ai/tr_ai_seq.narc similarity index 100% rename from files/battle/tr_ai/tr_ai_seq.narc rename to res/battle/tr_ai/tr_ai_seq.narc diff --git a/files/contest/data/contest_data.narc b/res/contest/data/contest_data.narc similarity index 100% rename from files/contest/data/contest_data.narc rename to res/contest/data/contest_data.narc diff --git a/res/contest/data/meson.build b/res/contest/data/meson.build new file mode 100644 index 0000000000..3dac046760 --- /dev/null +++ b/res/contest/data/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'contest_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/contest/graphic/contest_bg.narc b/res/contest/graphic/contest_bg.narc similarity index 100% rename from files/contest/graphic/contest_bg.narc rename to res/contest/graphic/contest_bg.narc diff --git a/files/contest/graphic/contest_obj.narc b/res/contest/graphic/contest_obj.narc similarity index 100% rename from files/contest/graphic/contest_obj.narc rename to res/contest/graphic/contest_obj.narc diff --git a/res/contest/graphic/meson.build b/res/contest/graphic/meson.build new file mode 100644 index 0000000000..7f2c6cf0d1 --- /dev/null +++ b/res/contest/graphic/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'contest_bg.narc', + 'contest_obj.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/contest/meson.build b/res/contest/meson.build new file mode 100644 index 0000000000..17874bacee --- /dev/null +++ b/res/contest/meson.build @@ -0,0 +1,2 @@ +subdir('data') +subdir('graphic') \ No newline at end of file diff --git a/files/data/UTF16.dat b/res/data/UTF16.dat similarity index 100% rename from files/data/UTF16.dat rename to res/data/UTF16.dat diff --git a/files/data/arealight.narc b/res/data/arealight.narc similarity index 100% rename from files/data/arealight.narc rename to res/data/arealight.narc diff --git a/files/data/battle_win.NSCR b/res/data/battle_win.NSCR similarity index 100% rename from files/data/battle_win.NSCR rename to res/data/battle_win.NSCR diff --git a/files/data/btower_canm.resdat b/res/data/btower_canm.resdat similarity index 100% rename from files/data/btower_canm.resdat rename to res/data/btower_canm.resdat diff --git a/files/data/btower_celact.cldat b/res/data/btower_celact.cldat similarity index 100% rename from files/data/btower_celact.cldat rename to res/data/btower_celact.cldat diff --git a/files/data/btower_cell.resdat b/res/data/btower_cell.resdat similarity index 100% rename from files/data/btower_cell.resdat rename to res/data/btower_cell.resdat diff --git a/files/data/btower_chr.resdat b/res/data/btower_chr.resdat similarity index 100% rename from files/data/btower_chr.resdat rename to res/data/btower_chr.resdat diff --git a/files/data/btower_pal.resdat b/res/data/btower_pal.resdat similarity index 100% rename from files/data/btower_pal.resdat rename to res/data/btower_pal.resdat diff --git a/files/data/cell0.NCGR b/res/data/cell0.NCGR similarity index 100% rename from files/data/cell0.NCGR rename to res/data/cell0.NCGR diff --git a/files/data/cell0.NCLR b/res/data/cell0.NCLR similarity index 100% rename from files/data/cell0.NCLR rename to res/data/cell0.NCLR diff --git a/files/data/clact_default.NANR b/res/data/clact_default.NANR similarity index 100% rename from files/data/clact_default.NANR rename to res/data/clact_default.NANR diff --git a/files/data/crystal.nsbmd b/res/data/crystal.nsbmd similarity index 100% rename from files/data/crystal.nsbmd rename to res/data/crystal.nsbmd diff --git a/files/data/demo_climax.narc b/res/data/demo_climax.narc similarity index 100% rename from files/data/demo_climax.narc rename to res/data/demo_climax.narc diff --git a/files/data/dp_areawindow.NCGR b/res/data/dp_areawindow.NCGR similarity index 100% rename from files/data/dp_areawindow.NCGR rename to res/data/dp_areawindow.NCGR diff --git a/files/data/dp_areawindow.NCLR b/res/data/dp_areawindow.NCLR similarity index 100% rename from files/data/dp_areawindow.NCLR rename to res/data/dp_areawindow.NCLR diff --git a/files/data/dt_test_celact.txt b/res/data/dt_test_celact.txt similarity index 100% rename from files/data/dt_test_celact.txt rename to res/data/dt_test_celact.txt diff --git a/files/data/dt_test_res_cell.txt b/res/data/dt_test_res_cell.txt similarity index 100% rename from files/data/dt_test_res_cell.txt rename to res/data/dt_test_res_cell.txt diff --git a/files/data/dt_test_res_cellanm.txt b/res/data/dt_test_res_cellanm.txt similarity index 100% rename from files/data/dt_test_res_cellanm.txt rename to res/data/dt_test_res_cellanm.txt diff --git a/files/data/dt_test_res_char.txt b/res/data/dt_test_res_char.txt similarity index 100% rename from files/data/dt_test_res_char.txt rename to res/data/dt_test_res_char.txt diff --git a/files/data/dt_test_res_multi.txt b/res/data/dt_test_res_multi.txt similarity index 100% rename from files/data/dt_test_res_multi.txt rename to res/data/dt_test_res_multi.txt diff --git a/files/data/dt_test_res_multianm.txt b/res/data/dt_test_res_multianm.txt similarity index 100% rename from files/data/dt_test_res_multianm.txt rename to res/data/dt_test_res_multianm.txt diff --git a/files/data/dt_test_res_pltt.txt b/res/data/dt_test_res_pltt.txt similarity index 100% rename from files/data/dt_test_res_pltt.txt rename to res/data/dt_test_res_pltt.txt diff --git a/files/data/dun_sea.nsbtx b/res/data/dun_sea.nsbtx similarity index 100% rename from files/data/dun_sea.nsbtx rename to res/data/dun_sea.nsbtx diff --git a/files/data/eoo.dat b/res/data/eoo.dat similarity index 100% rename from files/data/eoo.dat rename to res/data/eoo.dat diff --git a/files/data/exdata.dat b/res/data/exdata.dat similarity index 100% rename from files/data/exdata.dat rename to res/data/exdata.dat diff --git a/files/data/field_cutin.narc b/res/data/field_cutin.narc similarity index 100% rename from files/data/field_cutin.narc rename to res/data/field_cutin.narc diff --git a/files/data/fld_anime0.bin b/res/data/fld_anime0.bin similarity index 100% rename from files/data/fld_anime0.bin rename to res/data/fld_anime0.bin diff --git a/files/data/fld_anime1.bin b/res/data/fld_anime1.bin similarity index 100% rename from files/data/fld_anime1.bin rename to res/data/fld_anime1.bin diff --git a/files/data/fld_anime10.bin b/res/data/fld_anime10.bin similarity index 100% rename from files/data/fld_anime10.bin rename to res/data/fld_anime10.bin diff --git a/files/data/fld_anime2.bin b/res/data/fld_anime2.bin similarity index 100% rename from files/data/fld_anime2.bin rename to res/data/fld_anime2.bin diff --git a/files/data/fld_anime3.bin b/res/data/fld_anime3.bin similarity index 100% rename from files/data/fld_anime3.bin rename to res/data/fld_anime3.bin diff --git a/files/data/fld_anime4.bin b/res/data/fld_anime4.bin similarity index 100% rename from files/data/fld_anime4.bin rename to res/data/fld_anime4.bin diff --git a/files/data/fld_anime5.bin b/res/data/fld_anime5.bin similarity index 100% rename from files/data/fld_anime5.bin rename to res/data/fld_anime5.bin diff --git a/files/data/fld_anime6.bin b/res/data/fld_anime6.bin similarity index 100% rename from files/data/fld_anime6.bin rename to res/data/fld_anime6.bin diff --git a/files/data/fld_anime7.bin b/res/data/fld_anime7.bin similarity index 100% rename from files/data/fld_anime7.bin rename to res/data/fld_anime7.bin diff --git a/files/data/fld_anime8.bin b/res/data/fld_anime8.bin similarity index 100% rename from files/data/fld_anime8.bin rename to res/data/fld_anime8.bin diff --git a/files/data/fld_anime9.bin b/res/data/fld_anime9.bin similarity index 100% rename from files/data/fld_anime9.bin rename to res/data/fld_anime9.bin diff --git a/files/data/fldtanime.narc b/res/data/fldtanime.narc similarity index 100% rename from files/data/fldtanime.narc rename to res/data/fldtanime.narc diff --git a/files/data/fs_kanban.nsbca b/res/data/fs_kanban.nsbca similarity index 100% rename from files/data/fs_kanban.nsbca rename to res/data/fs_kanban.nsbca diff --git a/files/data/ground0.NCGR b/res/data/ground0.NCGR similarity index 100% rename from files/data/ground0.NCGR rename to res/data/ground0.NCGR diff --git a/files/data/ground0.NCLR b/res/data/ground0.NCLR similarity index 100% rename from files/data/ground0.NCLR rename to res/data/ground0.NCLR diff --git a/files/data/ground0.NSCR b/res/data/ground0.NSCR similarity index 100% rename from files/data/ground0.NSCR rename to res/data/ground0.NSCR diff --git a/files/data/guru2.narc b/res/data/guru2.narc similarity index 100% rename from files/data/guru2.narc rename to res/data/guru2.narc diff --git a/files/data/kemu_itpconv.dat b/res/data/kemu_itpconv.dat similarity index 100% rename from files/data/kemu_itpconv.dat rename to res/data/kemu_itpconv.dat diff --git a/files/data/lake_anim.nsbtx b/res/data/lake_anim.nsbtx similarity index 100% rename from files/data/lake_anim.nsbtx rename to res/data/lake_anim.nsbtx diff --git a/res/data/meson.build b/res/data/meson.build new file mode 100644 index 0000000000..f445a4a6d2 --- /dev/null +++ b/res/data/meson.build @@ -0,0 +1,148 @@ +subdir('mmodel') +subdir('sound') + +prebuilt_files = [ + 'arealight.narc', + 'battle_win.NSCR', + 'btower_canm.resdat', + 'btower_celact.cldat', + 'btower_cell.resdat', + 'btower_chr.resdat', + 'btower_pal.resdat', + 'cell0.NCGR', + 'cell0.NCLR', + 'clact_default.NANR', + 'crystal.nsbmd', + 'demo_climax.narc', + 'dp_areawindow.NCGR', + 'dp_areawindow.NCLR', + 'dt_test_celact.txt', + 'dt_test_res_cell.txt', + 'dt_test_res_cellanm.txt', + 'dt_test_res_char.txt', + 'dt_test_res_multi.txt', + 'dt_test_res_multianm.txt', + 'dt_test_res_pltt.txt', + 'dun_sea.nsbtx', + 'eoo.dat', + 'exdata.dat', + 'field_cutin.narc', + 'fld_anime0.bin', + 'fld_anime1.bin', + 'fld_anime10.bin', + 'fld_anime2.bin', + 'fld_anime3.bin', + 'fld_anime4.bin', + 'fld_anime5.bin', + 'fld_anime6.bin', + 'fld_anime7.bin', + 'fld_anime8.bin', + 'fld_anime9.bin', + 'fldtanime.narc', + 'fs_kanban.nsbca', + 'ground0.NCGR', + 'ground0.NCLR', + 'ground0.NSCR', + 'guru2.narc', + 'kemu_itpconv.dat', + 'lake_anim.nsbtx', + 'miniasahamabe.nsbtx', + 'miniasasea.nsbtx', + 'minihamabe.nsbtx', + 'minimum.nsbtx', + 'minirhana.nsbtx', + 'namein.narc', + 'nfont.NCGR', + 'nfont.NCLR', + 'pc.nsbca', + 'pl_wifi.ncgr', + 'pl_wm.ncgr', + 'pl_wm.nclr', + 'plbr.dat', + 'plist_canm.resdat', + 'plist_cell.resdat', + 'plist_chr.resdat', + 'plist_h.cldat', + 'plist_pal.resdat', + 'porucase_canm.resdat', + 'porucase_celact.cldat', + 'porucase_cell.resdat', + 'porucase_chr.resdat', + 'porucase_pal.resdat', + 'pst_canm.resdat', + 'pst_cell.resdat', + 'pst_chr.resdat', + 'pst_h.cldat', + 'pst_pal.resdat', + 'shop_canm.resdat', + 'shop_cell.resdat', + 'shop_chr.resdat', + 'shop_h.cldat', + 'shop_pal.resdat', + 'slot.narc', + 'smptm_koori.NANR', + 'smptm_koori.NCER', + 'smptm_koori.NCGR', + 'smptm_koori.NCLR', + 'smptm_nemuri.NANR', + 'smptm_nemuri.NCER', + 'smptm_nemuri.NCGR', + 'smptm_nemuri.NCLR', + 'str2uni.bin', + 't3_fl_b.nsbtx', + 't3_fl_p.nsbtx', + 't3_fl_r.nsbtx', + 't3_fl_y.nsbtx', + 'test.atr', + 'tmap_block.dat', + 'tmap_flags.dat', + 'tmapn_canm.resdat', + 'tmapn_celact.cldat', + 'tmapn_celact.txt', + 'tmapn_cell.resdat', + 'tmapn_chr.resdat', + 'tmapn_pal.resdat', + 'tmapn_res_canm.txt', + 'tmapn_res_cell.txt', + 'tmapn_res_chr.txt', + 'tmapn_res_pal.txt', + 'tradelist.narc', + 'trapmark.narc', + 'tw_arc_etc.naix', + 'tw_arc_etc.narc', + 'ug_anim.narc', + 'ug_base_cur.nsbmd', + 'ug_boygirl.NCGR', + 'ug_boygirl.NCLR', + 'ug_fossil.narc', + 'ug_hero.NANR', + 'ug_hero.NCER', + 'ug_hole.NANR', + 'ug_hole.NCER', + 'ug_hole.NCGR', + 'ug_parts.narc', + 'ug_radar.narc', + 'ug_trap.narc', + 'ugeffect_obj_graphic.narc', + 'uground_cell.resdat', + 'uground_cellanm.resdat', + 'uground_char.resdat', + 'uground_char2.resdat', + 'uground_clact.cldat', + 'uground_pltt.resdat', + 'uground_pltt2.resdat', + 'ugroundeffect.naix', + 'ugroundeffect.narc', + 'underg_radar.narc', + 'UTF16.dat', + 'utility.bin', + 'weather_sys.narc', + 'wifi.ncgr', + 'wifip2pmatch.narc', + 'wm.ncgr', + 'wm.nclr' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/data/miniasahamabe.nsbtx b/res/data/miniasahamabe.nsbtx similarity index 100% rename from files/data/miniasahamabe.nsbtx rename to res/data/miniasahamabe.nsbtx diff --git a/files/data/miniasasea.nsbtx b/res/data/miniasasea.nsbtx similarity index 100% rename from files/data/miniasasea.nsbtx rename to res/data/miniasasea.nsbtx diff --git a/files/data/minihamabe.nsbtx b/res/data/minihamabe.nsbtx similarity index 100% rename from files/data/minihamabe.nsbtx rename to res/data/minihamabe.nsbtx diff --git a/files/data/minimum.nsbtx b/res/data/minimum.nsbtx similarity index 100% rename from files/data/minimum.nsbtx rename to res/data/minimum.nsbtx diff --git a/files/data/minirhana.nsbtx b/res/data/minirhana.nsbtx similarity index 100% rename from files/data/minirhana.nsbtx rename to res/data/minirhana.nsbtx diff --git a/files/data/mmodel/fldeff.narc b/res/data/mmodel/fldeff.narc similarity index 100% rename from files/data/mmodel/fldeff.narc rename to res/data/mmodel/fldeff.narc diff --git a/res/data/mmodel/meson.build b/res/data/mmodel/meson.build new file mode 100644 index 0000000000..afe226a2ee --- /dev/null +++ b/res/data/mmodel/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'fldeff.narc', + 'mmodel.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/data/mmodel/mmodel.narc b/res/data/mmodel/mmodel.narc similarity index 100% rename from files/data/mmodel/mmodel.narc rename to res/data/mmodel/mmodel.narc diff --git a/files/data/namein.narc b/res/data/namein.narc similarity index 100% rename from files/data/namein.narc rename to res/data/namein.narc diff --git a/files/data/nfont.NCGR b/res/data/nfont.NCGR similarity index 100% rename from files/data/nfont.NCGR rename to res/data/nfont.NCGR diff --git a/files/data/nfont.NCLR b/res/data/nfont.NCLR similarity index 100% rename from files/data/nfont.NCLR rename to res/data/nfont.NCLR diff --git a/files/data/pc.nsbca b/res/data/pc.nsbca similarity index 100% rename from files/data/pc.nsbca rename to res/data/pc.nsbca diff --git a/files/data/pl_wifi.ncgr b/res/data/pl_wifi.ncgr similarity index 100% rename from files/data/pl_wifi.ncgr rename to res/data/pl_wifi.ncgr diff --git a/files/data/pl_wm.ncgr b/res/data/pl_wm.ncgr similarity index 100% rename from files/data/pl_wm.ncgr rename to res/data/pl_wm.ncgr diff --git a/files/data/pl_wm.nclr b/res/data/pl_wm.nclr similarity index 100% rename from files/data/pl_wm.nclr rename to res/data/pl_wm.nclr diff --git a/files/data/plbr.dat b/res/data/plbr.dat similarity index 100% rename from files/data/plbr.dat rename to res/data/plbr.dat diff --git a/files/data/plist_canm.resdat b/res/data/plist_canm.resdat similarity index 100% rename from files/data/plist_canm.resdat rename to res/data/plist_canm.resdat diff --git a/files/data/plist_cell.resdat b/res/data/plist_cell.resdat similarity index 100% rename from files/data/plist_cell.resdat rename to res/data/plist_cell.resdat diff --git a/files/data/plist_chr.resdat b/res/data/plist_chr.resdat similarity index 100% rename from files/data/plist_chr.resdat rename to res/data/plist_chr.resdat diff --git a/files/data/plist_h.cldat b/res/data/plist_h.cldat similarity index 100% rename from files/data/plist_h.cldat rename to res/data/plist_h.cldat diff --git a/files/data/plist_pal.resdat b/res/data/plist_pal.resdat similarity index 100% rename from files/data/plist_pal.resdat rename to res/data/plist_pal.resdat diff --git a/files/data/porucase_canm.resdat b/res/data/porucase_canm.resdat similarity index 100% rename from files/data/porucase_canm.resdat rename to res/data/porucase_canm.resdat diff --git a/files/data/porucase_celact.cldat b/res/data/porucase_celact.cldat similarity index 100% rename from files/data/porucase_celact.cldat rename to res/data/porucase_celact.cldat diff --git a/files/data/porucase_cell.resdat b/res/data/porucase_cell.resdat similarity index 100% rename from files/data/porucase_cell.resdat rename to res/data/porucase_cell.resdat diff --git a/files/data/porucase_chr.resdat b/res/data/porucase_chr.resdat similarity index 100% rename from files/data/porucase_chr.resdat rename to res/data/porucase_chr.resdat diff --git a/files/data/porucase_pal.resdat b/res/data/porucase_pal.resdat similarity index 100% rename from files/data/porucase_pal.resdat rename to res/data/porucase_pal.resdat diff --git a/files/data/pst_canm.resdat b/res/data/pst_canm.resdat similarity index 100% rename from files/data/pst_canm.resdat rename to res/data/pst_canm.resdat diff --git a/files/data/pst_cell.resdat b/res/data/pst_cell.resdat similarity index 100% rename from files/data/pst_cell.resdat rename to res/data/pst_cell.resdat diff --git a/files/data/pst_chr.resdat b/res/data/pst_chr.resdat similarity index 100% rename from files/data/pst_chr.resdat rename to res/data/pst_chr.resdat diff --git a/files/data/pst_h.cldat b/res/data/pst_h.cldat similarity index 100% rename from files/data/pst_h.cldat rename to res/data/pst_h.cldat diff --git a/files/data/pst_pal.resdat b/res/data/pst_pal.resdat similarity index 100% rename from files/data/pst_pal.resdat rename to res/data/pst_pal.resdat diff --git a/files/data/shop_canm.resdat b/res/data/shop_canm.resdat similarity index 100% rename from files/data/shop_canm.resdat rename to res/data/shop_canm.resdat diff --git a/files/data/shop_cell.resdat b/res/data/shop_cell.resdat similarity index 100% rename from files/data/shop_cell.resdat rename to res/data/shop_cell.resdat diff --git a/files/data/shop_chr.resdat b/res/data/shop_chr.resdat similarity index 100% rename from files/data/shop_chr.resdat rename to res/data/shop_chr.resdat diff --git a/files/data/shop_h.cldat b/res/data/shop_h.cldat similarity index 100% rename from files/data/shop_h.cldat rename to res/data/shop_h.cldat diff --git a/files/data/shop_pal.resdat b/res/data/shop_pal.resdat similarity index 100% rename from files/data/shop_pal.resdat rename to res/data/shop_pal.resdat diff --git a/files/data/slot.narc b/res/data/slot.narc similarity index 100% rename from files/data/slot.narc rename to res/data/slot.narc diff --git a/files/data/smptm_koori.NANR b/res/data/smptm_koori.NANR similarity index 100% rename from files/data/smptm_koori.NANR rename to res/data/smptm_koori.NANR diff --git a/files/data/smptm_koori.NCER b/res/data/smptm_koori.NCER similarity index 100% rename from files/data/smptm_koori.NCER rename to res/data/smptm_koori.NCER diff --git a/files/data/smptm_koori.NCGR b/res/data/smptm_koori.NCGR similarity index 100% rename from files/data/smptm_koori.NCGR rename to res/data/smptm_koori.NCGR diff --git a/files/data/smptm_koori.NCLR b/res/data/smptm_koori.NCLR similarity index 100% rename from files/data/smptm_koori.NCLR rename to res/data/smptm_koori.NCLR diff --git a/files/data/smptm_nemuri.NANR b/res/data/smptm_nemuri.NANR similarity index 100% rename from files/data/smptm_nemuri.NANR rename to res/data/smptm_nemuri.NANR diff --git a/files/data/smptm_nemuri.NCER b/res/data/smptm_nemuri.NCER similarity index 100% rename from files/data/smptm_nemuri.NCER rename to res/data/smptm_nemuri.NCER diff --git a/files/data/smptm_nemuri.NCGR b/res/data/smptm_nemuri.NCGR similarity index 100% rename from files/data/smptm_nemuri.NCGR rename to res/data/smptm_nemuri.NCGR diff --git a/files/data/smptm_nemuri.NCLR b/res/data/smptm_nemuri.NCLR similarity index 100% rename from files/data/smptm_nemuri.NCLR rename to res/data/smptm_nemuri.NCLR diff --git a/res/data/sound/meson.build b/res/data/sound/meson.build new file mode 100644 index 0000000000..5b7263071f --- /dev/null +++ b/res/data/sound/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'pl_sound_data.sdat', + 'sound_data.sdat' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/data/sound/pl_sound_data.sdat b/res/data/sound/pl_sound_data.sdat similarity index 100% rename from files/data/sound/pl_sound_data.sdat rename to res/data/sound/pl_sound_data.sdat diff --git a/files/data/sound/sound_data.sdat b/res/data/sound/sound_data.sdat similarity index 100% rename from files/data/sound/sound_data.sdat rename to res/data/sound/sound_data.sdat diff --git a/files/data/str2uni.bin b/res/data/str2uni.bin similarity index 100% rename from files/data/str2uni.bin rename to res/data/str2uni.bin diff --git a/files/data/t3_fl_b.nsbtx b/res/data/t3_fl_b.nsbtx similarity index 100% rename from files/data/t3_fl_b.nsbtx rename to res/data/t3_fl_b.nsbtx diff --git a/files/data/t3_fl_p.nsbtx b/res/data/t3_fl_p.nsbtx similarity index 100% rename from files/data/t3_fl_p.nsbtx rename to res/data/t3_fl_p.nsbtx diff --git a/files/data/t3_fl_r.nsbtx b/res/data/t3_fl_r.nsbtx similarity index 100% rename from files/data/t3_fl_r.nsbtx rename to res/data/t3_fl_r.nsbtx diff --git a/files/data/t3_fl_y.nsbtx b/res/data/t3_fl_y.nsbtx similarity index 100% rename from files/data/t3_fl_y.nsbtx rename to res/data/t3_fl_y.nsbtx diff --git a/files/data/test.atr b/res/data/test.atr similarity index 100% rename from files/data/test.atr rename to res/data/test.atr diff --git a/files/data/tmap_block.dat b/res/data/tmap_block.dat similarity index 100% rename from files/data/tmap_block.dat rename to res/data/tmap_block.dat diff --git a/files/data/tmap_flags.dat b/res/data/tmap_flags.dat similarity index 100% rename from files/data/tmap_flags.dat rename to res/data/tmap_flags.dat diff --git a/files/data/tmapn_canm.resdat b/res/data/tmapn_canm.resdat similarity index 100% rename from files/data/tmapn_canm.resdat rename to res/data/tmapn_canm.resdat diff --git a/files/data/tmapn_celact.cldat b/res/data/tmapn_celact.cldat similarity index 100% rename from files/data/tmapn_celact.cldat rename to res/data/tmapn_celact.cldat diff --git a/files/data/tmapn_celact.txt b/res/data/tmapn_celact.txt similarity index 100% rename from files/data/tmapn_celact.txt rename to res/data/tmapn_celact.txt diff --git a/files/data/tmapn_cell.resdat b/res/data/tmapn_cell.resdat similarity index 100% rename from files/data/tmapn_cell.resdat rename to res/data/tmapn_cell.resdat diff --git a/files/data/tmapn_chr.resdat b/res/data/tmapn_chr.resdat similarity index 100% rename from files/data/tmapn_chr.resdat rename to res/data/tmapn_chr.resdat diff --git a/files/data/tmapn_pal.resdat b/res/data/tmapn_pal.resdat similarity index 100% rename from files/data/tmapn_pal.resdat rename to res/data/tmapn_pal.resdat diff --git a/files/data/tmapn_res_canm.txt b/res/data/tmapn_res_canm.txt similarity index 100% rename from files/data/tmapn_res_canm.txt rename to res/data/tmapn_res_canm.txt diff --git a/files/data/tmapn_res_cell.txt b/res/data/tmapn_res_cell.txt similarity index 100% rename from files/data/tmapn_res_cell.txt rename to res/data/tmapn_res_cell.txt diff --git a/files/data/tmapn_res_chr.txt b/res/data/tmapn_res_chr.txt similarity index 100% rename from files/data/tmapn_res_chr.txt rename to res/data/tmapn_res_chr.txt diff --git a/files/data/tmapn_res_pal.txt b/res/data/tmapn_res_pal.txt similarity index 100% rename from files/data/tmapn_res_pal.txt rename to res/data/tmapn_res_pal.txt diff --git a/files/data/tradelist.narc b/res/data/tradelist.narc similarity index 100% rename from files/data/tradelist.narc rename to res/data/tradelist.narc diff --git a/files/data/trapmark.narc b/res/data/trapmark.narc similarity index 100% rename from files/data/trapmark.narc rename to res/data/trapmark.narc diff --git a/files/data/tw_arc_etc.naix b/res/data/tw_arc_etc.naix similarity index 100% rename from files/data/tw_arc_etc.naix rename to res/data/tw_arc_etc.naix diff --git a/files/data/tw_arc_etc.narc b/res/data/tw_arc_etc.narc similarity index 100% rename from files/data/tw_arc_etc.narc rename to res/data/tw_arc_etc.narc diff --git a/files/data/ug_anim.narc b/res/data/ug_anim.narc similarity index 100% rename from files/data/ug_anim.narc rename to res/data/ug_anim.narc diff --git a/files/data/ug_base_cur.nsbmd b/res/data/ug_base_cur.nsbmd similarity index 100% rename from files/data/ug_base_cur.nsbmd rename to res/data/ug_base_cur.nsbmd diff --git a/files/data/ug_boygirl.NCGR b/res/data/ug_boygirl.NCGR similarity index 100% rename from files/data/ug_boygirl.NCGR rename to res/data/ug_boygirl.NCGR diff --git a/files/data/ug_boygirl.NCLR b/res/data/ug_boygirl.NCLR similarity index 100% rename from files/data/ug_boygirl.NCLR rename to res/data/ug_boygirl.NCLR diff --git a/files/data/ug_fossil.narc b/res/data/ug_fossil.narc similarity index 100% rename from files/data/ug_fossil.narc rename to res/data/ug_fossil.narc diff --git a/files/data/ug_hero.NANR b/res/data/ug_hero.NANR similarity index 100% rename from files/data/ug_hero.NANR rename to res/data/ug_hero.NANR diff --git a/files/data/ug_hero.NCER b/res/data/ug_hero.NCER similarity index 100% rename from files/data/ug_hero.NCER rename to res/data/ug_hero.NCER diff --git a/files/data/ug_hole.NANR b/res/data/ug_hole.NANR similarity index 100% rename from files/data/ug_hole.NANR rename to res/data/ug_hole.NANR diff --git a/files/data/ug_hole.NCER b/res/data/ug_hole.NCER similarity index 100% rename from files/data/ug_hole.NCER rename to res/data/ug_hole.NCER diff --git a/files/data/ug_hole.NCGR b/res/data/ug_hole.NCGR similarity index 100% rename from files/data/ug_hole.NCGR rename to res/data/ug_hole.NCGR diff --git a/files/data/ug_parts.narc b/res/data/ug_parts.narc similarity index 100% rename from files/data/ug_parts.narc rename to res/data/ug_parts.narc diff --git a/files/data/ug_radar.narc b/res/data/ug_radar.narc similarity index 100% rename from files/data/ug_radar.narc rename to res/data/ug_radar.narc diff --git a/files/data/ug_trap.narc b/res/data/ug_trap.narc similarity index 100% rename from files/data/ug_trap.narc rename to res/data/ug_trap.narc diff --git a/files/data/ugeffect_obj_graphic.narc b/res/data/ugeffect_obj_graphic.narc similarity index 100% rename from files/data/ugeffect_obj_graphic.narc rename to res/data/ugeffect_obj_graphic.narc diff --git a/files/data/uground_cell.resdat b/res/data/uground_cell.resdat similarity index 100% rename from files/data/uground_cell.resdat rename to res/data/uground_cell.resdat diff --git a/files/data/uground_cellanm.resdat b/res/data/uground_cellanm.resdat similarity index 100% rename from files/data/uground_cellanm.resdat rename to res/data/uground_cellanm.resdat diff --git a/files/data/uground_char.resdat b/res/data/uground_char.resdat similarity index 100% rename from files/data/uground_char.resdat rename to res/data/uground_char.resdat diff --git a/files/data/uground_char2.resdat b/res/data/uground_char2.resdat similarity index 100% rename from files/data/uground_char2.resdat rename to res/data/uground_char2.resdat diff --git a/files/data/uground_clact.cldat b/res/data/uground_clact.cldat similarity index 100% rename from files/data/uground_clact.cldat rename to res/data/uground_clact.cldat diff --git a/files/data/uground_pltt.resdat b/res/data/uground_pltt.resdat similarity index 100% rename from files/data/uground_pltt.resdat rename to res/data/uground_pltt.resdat diff --git a/files/data/uground_pltt2.resdat b/res/data/uground_pltt2.resdat similarity index 100% rename from files/data/uground_pltt2.resdat rename to res/data/uground_pltt2.resdat diff --git a/files/data/ugroundeffect.naix b/res/data/ugroundeffect.naix similarity index 100% rename from files/data/ugroundeffect.naix rename to res/data/ugroundeffect.naix diff --git a/files/data/ugroundeffect.narc b/res/data/ugroundeffect.narc similarity index 100% rename from files/data/ugroundeffect.narc rename to res/data/ugroundeffect.narc diff --git a/files/data/underg_radar.narc b/res/data/underg_radar.narc similarity index 100% rename from files/data/underg_radar.narc rename to res/data/underg_radar.narc diff --git a/files/data/utility.bin b/res/data/utility.bin similarity index 100% rename from files/data/utility.bin rename to res/data/utility.bin diff --git a/files/data/weather_sys.narc b/res/data/weather_sys.narc similarity index 100% rename from files/data/weather_sys.narc rename to res/data/weather_sys.narc diff --git a/files/data/wifi.ncgr b/res/data/wifi.ncgr similarity index 100% rename from files/data/wifi.ncgr rename to res/data/wifi.ncgr diff --git a/files/data/wifip2pmatch.narc b/res/data/wifip2pmatch.narc similarity index 100% rename from files/data/wifip2pmatch.narc rename to res/data/wifip2pmatch.narc diff --git a/files/data/wm.ncgr b/res/data/wm.ncgr similarity index 100% rename from files/data/wm.ncgr rename to res/data/wm.ncgr diff --git a/files/data/wm.nclr b/res/data/wm.nclr similarity index 100% rename from files/data/wm.nclr rename to res/data/wm.nclr diff --git a/files/debug/cb_edit/d_test.narc b/res/debug/cb_edit/d_test.narc similarity index 100% rename from files/debug/cb_edit/d_test.narc rename to res/debug/cb_edit/d_test.narc diff --git a/res/debug/cb_edit/meson.build b/res/debug/cb_edit/meson.build new file mode 100644 index 0000000000..5063413ad6 --- /dev/null +++ b/res/debug/cb_edit/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'd_test.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/debug/meson.build b/res/debug/meson.build new file mode 100644 index 0000000000..8d2b9b62df --- /dev/null +++ b/res/debug/meson.build @@ -0,0 +1 @@ +subdir('cb_edit') \ No newline at end of file diff --git a/files/demo/egg/data/egg_data.narc b/res/demo/egg/data/egg_data.narc similarity index 100% rename from files/demo/egg/data/egg_data.narc rename to res/demo/egg/data/egg_data.narc diff --git a/res/demo/egg/data/meson.build b/res/demo/egg/data/meson.build new file mode 100644 index 0000000000..3e451bf71a --- /dev/null +++ b/res/demo/egg/data/meson.build @@ -0,0 +1,9 @@ +subdir('particle') + +prebuilt_files = [ + 'egg_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/demo/egg/data/particle/egg_demo_particle.narc b/res/demo/egg/data/particle/egg_demo_particle.narc similarity index 100% rename from files/demo/egg/data/particle/egg_demo_particle.narc rename to res/demo/egg/data/particle/egg_demo_particle.narc diff --git a/res/demo/egg/data/particle/meson.build b/res/demo/egg/data/particle/meson.build new file mode 100644 index 0000000000..3eef007290 --- /dev/null +++ b/res/demo/egg/data/particle/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'egg_demo_particle.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/demo/egg/meson.build b/res/demo/egg/meson.build new file mode 100644 index 0000000000..f8e8298066 --- /dev/null +++ b/res/demo/egg/meson.build @@ -0,0 +1 @@ +subdir('data') \ No newline at end of file diff --git a/files/demo/intro/intro.narc b/res/demo/intro/intro.narc similarity index 100% rename from files/demo/intro/intro.narc rename to res/demo/intro/intro.narc diff --git a/files/demo/intro/intro_tv.narc b/res/demo/intro/intro_tv.narc similarity index 100% rename from files/demo/intro/intro_tv.narc rename to res/demo/intro/intro_tv.narc diff --git a/res/demo/intro/meson.build b/res/demo/intro/meson.build new file mode 100644 index 0000000000..2831ea58cf --- /dev/null +++ b/res/demo/intro/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'intro_tv.narc', + 'intro.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/demo/meson.build b/res/demo/meson.build new file mode 100644 index 0000000000..5a56a85bf8 --- /dev/null +++ b/res/demo/meson.build @@ -0,0 +1,5 @@ +subdir('egg') +subdir('intro') +subdir('shinka') +subdir('syoujyou') +subdir('title') \ No newline at end of file diff --git a/res/demo/shinka/data/meson.build b/res/demo/shinka/data/meson.build new file mode 100644 index 0000000000..4b3b8f89e6 --- /dev/null +++ b/res/demo/shinka/data/meson.build @@ -0,0 +1 @@ +subdir('particle') \ No newline at end of file diff --git a/res/demo/shinka/data/particle/meson.build b/res/demo/shinka/data/particle/meson.build new file mode 100644 index 0000000000..32a44fbac0 --- /dev/null +++ b/res/demo/shinka/data/particle/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'shinka_demo_particle.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/demo/shinka/data/particle/shinka_demo_particle.narc b/res/demo/shinka/data/particle/shinka_demo_particle.narc similarity index 100% rename from files/demo/shinka/data/particle/shinka_demo_particle.narc rename to res/demo/shinka/data/particle/shinka_demo_particle.narc diff --git a/res/demo/shinka/meson.build b/res/demo/shinka/meson.build new file mode 100644 index 0000000000..f8e8298066 --- /dev/null +++ b/res/demo/shinka/meson.build @@ -0,0 +1 @@ +subdir('data') \ No newline at end of file diff --git a/res/demo/syoujyou/meson.build b/res/demo/syoujyou/meson.build new file mode 100644 index 0000000000..f4588beae1 --- /dev/null +++ b/res/demo/syoujyou/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'syoujyou.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/demo/syoujyou/syoujyou.narc b/res/demo/syoujyou/syoujyou.narc similarity index 100% rename from files/demo/syoujyou/syoujyou.narc rename to res/demo/syoujyou/syoujyou.narc diff --git a/res/demo/title/meson.build b/res/demo/title/meson.build new file mode 100644 index 0000000000..7a3c2974a3 --- /dev/null +++ b/res/demo/title/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'op_demo.narc', + 'titledemo.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/demo/title/op_demo.narc b/res/demo/title/op_demo.narc similarity index 100% rename from files/demo/title/op_demo.narc rename to res/demo/title/op_demo.narc diff --git a/files/demo/title/titledemo.narc b/res/demo/title/titledemo.narc similarity index 100% rename from files/demo/title/titledemo.narc rename to res/demo/title/titledemo.narc diff --git a/res/dwc/meson.build b/res/dwc/meson.build new file mode 100644 index 0000000000..ab0850e2b3 --- /dev/null +++ b/res/dwc/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'utility.bin' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/dwc/utility.bin b/res/dwc/utility.bin similarity index 100% rename from files/dwc/utility.bin rename to res/dwc/utility.bin diff --git a/files/fielddata/areadata/area_build_model/area_build.narc b/res/fielddata/areadata/area_build_model/area_build.narc similarity index 100% rename from files/fielddata/areadata/area_build_model/area_build.narc rename to res/fielddata/areadata/area_build_model/area_build.narc diff --git a/files/fielddata/areadata/area_build_model/areabm_texset.narc b/res/fielddata/areadata/area_build_model/areabm_texset.narc similarity index 100% rename from files/fielddata/areadata/area_build_model/areabm_texset.narc rename to res/fielddata/areadata/area_build_model/areabm_texset.narc diff --git a/res/fielddata/areadata/area_build_model/meson.build b/res/fielddata/areadata/area_build_model/meson.build new file mode 100644 index 0000000000..c7820f13a2 --- /dev/null +++ b/res/fielddata/areadata/area_build_model/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'area_build.narc', + 'areabm_texset.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/areadata/area_data.narc b/res/fielddata/areadata/area_data.narc similarity index 100% rename from files/fielddata/areadata/area_data.narc rename to res/fielddata/areadata/area_data.narc diff --git a/files/fielddata/areadata/area_map_tex/map_tex_set.narc b/res/fielddata/areadata/area_map_tex/map_tex_set.narc similarity index 100% rename from files/fielddata/areadata/area_map_tex/map_tex_set.narc rename to res/fielddata/areadata/area_map_tex/map_tex_set.narc diff --git a/res/fielddata/areadata/area_map_tex/meson.build b/res/fielddata/areadata/area_map_tex/meson.build new file mode 100644 index 0000000000..b9497cc685 --- /dev/null +++ b/res/fielddata/areadata/area_map_tex/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'map_tex_set.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/fielddata/areadata/area_move_model/meson.build b/res/fielddata/areadata/area_move_model/meson.build new file mode 100644 index 0000000000..67efe91bb6 --- /dev/null +++ b/res/fielddata/areadata/area_move_model/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'move_model_list.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/areadata/area_move_model/move_model_list.narc b/res/fielddata/areadata/area_move_model/move_model_list.narc similarity index 100% rename from files/fielddata/areadata/area_move_model/move_model_list.narc rename to res/fielddata/areadata/area_move_model/move_model_list.narc diff --git a/res/fielddata/areadata/meson.build b/res/fielddata/areadata/meson.build new file mode 100644 index 0000000000..59af19576a --- /dev/null +++ b/res/fielddata/areadata/meson.build @@ -0,0 +1,11 @@ +subdir('area_build_model') +subdir('area_map_tex') +subdir('area_move_model') + +prebuilt_files = [ + 'area_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach diff --git a/files/fielddata/build_model/build_model.narc b/res/fielddata/build_model/build_model.narc similarity index 100% rename from files/fielddata/build_model/build_model.narc rename to res/fielddata/build_model/build_model.narc diff --git a/files/fielddata/build_model/build_model_matshp.dat b/res/fielddata/build_model/build_model_matshp.dat similarity index 100% rename from files/fielddata/build_model/build_model_matshp.dat rename to res/fielddata/build_model/build_model_matshp.dat diff --git a/res/fielddata/build_model/meson.build b/res/fielddata/build_model/meson.build new file mode 100644 index 0000000000..efa8dffeda --- /dev/null +++ b/res/fielddata/build_model/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'build_model_matshp.dat', + 'build_model.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/encountdata/d_enc_data.narc b/res/fielddata/encountdata/d_enc_data.narc similarity index 100% rename from files/fielddata/encountdata/d_enc_data.narc rename to res/fielddata/encountdata/d_enc_data.narc diff --git a/res/fielddata/encountdata/meson.build b/res/fielddata/encountdata/meson.build new file mode 100644 index 0000000000..4d051c5640 --- /dev/null +++ b/res/fielddata/encountdata/meson.build @@ -0,0 +1,9 @@ +prebuilt_files = [ + 'd_enc_data.narc', + 'p_enc_data.narc', + 'pl_enc_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/encountdata/p_enc_data.narc b/res/fielddata/encountdata/p_enc_data.narc similarity index 100% rename from files/fielddata/encountdata/p_enc_data.narc rename to res/fielddata/encountdata/p_enc_data.narc diff --git a/files/fielddata/encountdata/pl_enc_data.narc b/res/fielddata/encountdata/pl_enc_data.narc similarity index 100% rename from files/fielddata/encountdata/pl_enc_data.narc rename to res/fielddata/encountdata/pl_enc_data.narc diff --git a/res/fielddata/eventdata/meson.build b/res/fielddata/eventdata/meson.build new file mode 100644 index 0000000000..b6b01a0428 --- /dev/null +++ b/res/fielddata/eventdata/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'zone_event.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/eventdata/zone_event.narc b/res/fielddata/eventdata/zone_event.narc similarity index 100% rename from files/fielddata/eventdata/zone_event.narc rename to res/fielddata/eventdata/zone_event.narc diff --git a/files/fielddata/land_data/land_data.narc b/res/fielddata/land_data/land_data.narc similarity index 100% rename from files/fielddata/land_data/land_data.narc rename to res/fielddata/land_data/land_data.narc diff --git a/res/fielddata/land_data/meson.build b/res/fielddata/land_data/meson.build new file mode 100644 index 0000000000..f792656577 --- /dev/null +++ b/res/fielddata/land_data/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'land_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/mapmatrix/map_matrix.narc b/res/fielddata/mapmatrix/map_matrix.narc similarity index 100% rename from files/fielddata/mapmatrix/map_matrix.narc rename to res/fielddata/mapmatrix/map_matrix.narc diff --git a/res/fielddata/mapmatrix/meson.build b/res/fielddata/mapmatrix/meson.build new file mode 100644 index 0000000000..641c52df8b --- /dev/null +++ b/res/fielddata/mapmatrix/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'map_matrix.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/maptable/mapname.bin b/res/fielddata/maptable/mapname.bin similarity index 100% rename from files/fielddata/maptable/mapname.bin rename to res/fielddata/maptable/mapname.bin diff --git a/res/fielddata/maptable/meson.build b/res/fielddata/maptable/meson.build new file mode 100644 index 0000000000..2041818fb1 --- /dev/null +++ b/res/fielddata/maptable/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'mapname.bin' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/fielddata/meson.build b/res/fielddata/meson.build new file mode 100644 index 0000000000..7aeff726d7 --- /dev/null +++ b/res/fielddata/meson.build @@ -0,0 +1,11 @@ +subdir('areadata') +subdir('build_model') +subdir('encountdata') +subdir('eventdata') +subdir('land_data') +subdir('mapmatrix') +subdir('maptable') +subdir('mm_list') +subdir('pokemon_trade') +subdir('script') +subdir('tornworld') \ No newline at end of file diff --git a/res/fielddata/mm_list/meson.build b/res/fielddata/mm_list/meson.build new file mode 100644 index 0000000000..67efe91bb6 --- /dev/null +++ b/res/fielddata/mm_list/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'move_model_list.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/mm_list/move_model_list.narc b/res/fielddata/mm_list/move_model_list.narc similarity index 100% rename from files/fielddata/mm_list/move_model_list.narc rename to res/fielddata/mm_list/move_model_list.narc diff --git a/files/fielddata/pokemon_trade/fld_trade.narc b/res/fielddata/pokemon_trade/fld_trade.narc similarity index 100% rename from files/fielddata/pokemon_trade/fld_trade.narc rename to res/fielddata/pokemon_trade/fld_trade.narc diff --git a/res/fielddata/pokemon_trade/meson.build b/res/fielddata/pokemon_trade/meson.build new file mode 100644 index 0000000000..40c71625f1 --- /dev/null +++ b/res/fielddata/pokemon_trade/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'fld_trade.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/fielddata/script/meson.build b/res/fielddata/script/meson.build new file mode 100644 index 0000000000..ce86cd546b --- /dev/null +++ b/res/fielddata/script/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'scr_seq.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/script/scr_seq.narc b/res/fielddata/script/scr_seq.narc similarity index 100% rename from files/fielddata/script/scr_seq.narc rename to res/fielddata/script/scr_seq.narc diff --git a/res/fielddata/tornworld/meson.build b/res/fielddata/tornworld/meson.build new file mode 100644 index 0000000000..845ed7271d --- /dev/null +++ b/res/fielddata/tornworld/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'tw_arc_attr.narc', + 'tw_arc.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/fielddata/tornworld/tw_arc.narc b/res/fielddata/tornworld/tw_arc.narc similarity index 100% rename from files/fielddata/tornworld/tw_arc.narc rename to res/fielddata/tornworld/tw_arc.narc diff --git a/files/fielddata/tornworld/tw_arc_attr.narc b/res/fielddata/tornworld/tw_arc_attr.narc similarity index 100% rename from files/fielddata/tornworld/tw_arc_attr.narc rename to res/fielddata/tornworld/tw_arc_attr.narc diff --git a/res/frontier/meson.build b/res/frontier/meson.build new file mode 100644 index 0000000000..40aad8d918 --- /dev/null +++ b/res/frontier/meson.build @@ -0,0 +1 @@ +subdir('script') diff --git a/files/frontier/script/fr_script.narc b/res/frontier/script/fr_script.narc similarity index 100% rename from files/frontier/script/fr_script.narc rename to res/frontier/script/fr_script.narc diff --git a/res/frontier/script/meson.build b/res/frontier/script/meson.build new file mode 100644 index 0000000000..63d3fdc957 --- /dev/null +++ b/res/frontier/script/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'fr_script.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/graphic/bag_gra.narc b/res/graphic/bag_gra.narc similarity index 100% rename from files/graphic/bag_gra.narc rename to res/graphic/bag_gra.narc diff --git a/files/graphic/box.narc b/res/graphic/box.narc similarity index 100% rename from files/graphic/box.narc rename to res/graphic/box.narc diff --git a/files/graphic/btower.narc b/res/graphic/btower.narc similarity index 100% rename from files/graphic/btower.narc rename to res/graphic/btower.narc diff --git a/files/graphic/bucket.narc b/res/graphic/bucket.narc similarity index 100% rename from files/graphic/bucket.narc rename to res/graphic/bucket.narc diff --git a/files/graphic/config_gra.narc b/res/graphic/config_gra.narc similarity index 100% rename from files/graphic/config_gra.narc rename to res/graphic/config_gra.narc diff --git a/files/graphic/demo_trade.narc b/res/graphic/demo_trade.narc similarity index 100% rename from files/graphic/demo_trade.narc rename to res/graphic/demo_trade.narc diff --git a/files/graphic/dendou_demo.narc b/res/graphic/dendou_demo.narc similarity index 100% rename from files/graphic/dendou_demo.narc rename to res/graphic/dendou_demo.narc diff --git a/files/graphic/dendou_pc.narc b/res/graphic/dendou_pc.narc similarity index 100% rename from files/graphic/dendou_pc.narc rename to res/graphic/dendou_pc.narc diff --git a/files/graphic/ending.narc b/res/graphic/ending.narc similarity index 100% rename from files/graphic/ending.narc rename to res/graphic/ending.narc diff --git a/files/graphic/ev_pokeselect.narc b/res/graphic/ev_pokeselect.narc similarity index 100% rename from files/graphic/ev_pokeselect.narc rename to res/graphic/ev_pokeselect.narc diff --git a/files/graphic/f_note_gra.narc b/res/graphic/f_note_gra.narc similarity index 100% rename from files/graphic/f_note_gra.narc rename to res/graphic/f_note_gra.narc diff --git a/files/graphic/field_board.narc b/res/graphic/field_board.narc similarity index 100% rename from files/graphic/field_board.narc rename to res/graphic/field_board.narc diff --git a/files/graphic/field_encounteffect.narc b/res/graphic/field_encounteffect.narc similarity index 100% rename from files/graphic/field_encounteffect.narc rename to res/graphic/field_encounteffect.narc diff --git a/files/graphic/fld_comact.narc b/res/graphic/fld_comact.narc similarity index 100% rename from files/graphic/fld_comact.narc rename to res/graphic/fld_comact.narc diff --git a/files/graphic/font.narc b/res/graphic/font.narc similarity index 100% rename from files/graphic/font.narc rename to res/graphic/font.narc diff --git a/files/graphic/fontoam.narc b/res/graphic/fontoam.narc similarity index 100% rename from files/graphic/fontoam.narc rename to res/graphic/fontoam.narc diff --git a/files/graphic/footprint_board.narc b/res/graphic/footprint_board.narc similarity index 100% rename from files/graphic/footprint_board.narc rename to res/graphic/footprint_board.narc diff --git a/files/graphic/hiden_effect.narc b/res/graphic/hiden_effect.narc similarity index 100% rename from files/graphic/hiden_effect.narc rename to res/graphic/hiden_effect.narc diff --git a/files/graphic/imageclip.narc b/res/graphic/imageclip.narc similarity index 100% rename from files/graphic/imageclip.narc rename to res/graphic/imageclip.narc diff --git a/files/graphic/library_tv.narc b/res/graphic/library_tv.narc similarity index 100% rename from files/graphic/library_tv.narc rename to res/graphic/library_tv.narc diff --git a/files/graphic/lobby_news.narc b/res/graphic/lobby_news.narc similarity index 100% rename from files/graphic/lobby_news.narc rename to res/graphic/lobby_news.narc diff --git a/files/graphic/mail_gra.narc b/res/graphic/mail_gra.narc similarity index 100% rename from files/graphic/mail_gra.narc rename to res/graphic/mail_gra.narc diff --git a/files/graphic/menu_gra.narc b/res/graphic/menu_gra.narc similarity index 100% rename from files/graphic/menu_gra.narc rename to res/graphic/menu_gra.narc diff --git a/res/graphic/meson.build b/res/graphic/meson.build new file mode 100644 index 0000000000..0c03f46224 --- /dev/null +++ b/res/graphic/meson.build @@ -0,0 +1,64 @@ +prebuilt_files = [ + 'bag_gra.narc', + 'box.narc', + 'btower.narc', + 'bucket.narc', + 'config_gra.narc', + 'demo_trade.narc', + 'dendou_demo.narc', + 'dendou_pc.narc', + 'ending.narc', + 'ev_pokeselect.narc', + 'f_note_gra.narc', + 'field_board.narc', + 'field_encounteffect.narc', + 'fld_comact.narc', + 'font.narc', + 'fontoam.narc', + 'footprint_board.narc', + 'hiden_effect.narc', + 'imageclip.narc', + 'library_tv.narc', + 'lobby_news.narc', + 'mail_gra.narc', + 'menu_gra.narc', + 'mysign.narc', + 'mystery.narc', + 'ntag_gra.narc', + 'nutmixer.narc', + 'oekaki.narc', + 'opening.narc', + 'pl_bag_gra.narc', + 'pl_font.narc', + 'pl_plist_gra.narc', + 'pl_pst_gra.narc', + 'pl_wifinote.narc', + 'pl_winframe.narc', + 'plist_gra.narc', + 'pmsi.narc', + 'poketch.narc', + 'poru_gra.narc', + 'poruact.narc', + 'porudemo.narc', + 'pst_gra.narc', + 'ranking.narc', + 'record.narc', + 'shop_gra.narc', + 'tmap_gra.narc', + 'touch_subwindow.narc', + 'trainer_case.narc', + 'unionobj2d_onlyfront.narc', + 'unionroom.narc', + 'waza_oshie_gra.narc', + 'wifi_lobby_other.narc', + 'wifi_lobby.narc', + 'wifi_unionobj.narc', + 'wifi2dchar.narc', + 'winframe.narc', + 'worldtimer.narc', + 'worldtrade.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach diff --git a/files/graphic/mysign.narc b/res/graphic/mysign.narc similarity index 100% rename from files/graphic/mysign.narc rename to res/graphic/mysign.narc diff --git a/files/graphic/mystery.narc b/res/graphic/mystery.narc similarity index 100% rename from files/graphic/mystery.narc rename to res/graphic/mystery.narc diff --git a/files/graphic/ntag_gra.narc b/res/graphic/ntag_gra.narc similarity index 100% rename from files/graphic/ntag_gra.narc rename to res/graphic/ntag_gra.narc diff --git a/files/graphic/nutmixer.narc b/res/graphic/nutmixer.narc similarity index 100% rename from files/graphic/nutmixer.narc rename to res/graphic/nutmixer.narc diff --git a/files/graphic/oekaki.narc b/res/graphic/oekaki.narc similarity index 100% rename from files/graphic/oekaki.narc rename to res/graphic/oekaki.narc diff --git a/files/graphic/opening.narc b/res/graphic/opening.narc similarity index 100% rename from files/graphic/opening.narc rename to res/graphic/opening.narc diff --git a/files/graphic/pl_bag_gra.narc b/res/graphic/pl_bag_gra.narc similarity index 100% rename from files/graphic/pl_bag_gra.narc rename to res/graphic/pl_bag_gra.narc diff --git a/files/graphic/pl_font.narc b/res/graphic/pl_font.narc similarity index 100% rename from files/graphic/pl_font.narc rename to res/graphic/pl_font.narc diff --git a/files/graphic/pl_plist_gra.narc b/res/graphic/pl_plist_gra.narc similarity index 100% rename from files/graphic/pl_plist_gra.narc rename to res/graphic/pl_plist_gra.narc diff --git a/files/graphic/pl_pst_gra.narc b/res/graphic/pl_pst_gra.narc similarity index 100% rename from files/graphic/pl_pst_gra.narc rename to res/graphic/pl_pst_gra.narc diff --git a/files/graphic/pl_wifinote.narc b/res/graphic/pl_wifinote.narc similarity index 100% rename from files/graphic/pl_wifinote.narc rename to res/graphic/pl_wifinote.narc diff --git a/files/graphic/pl_winframe.narc b/res/graphic/pl_winframe.narc similarity index 100% rename from files/graphic/pl_winframe.narc rename to res/graphic/pl_winframe.narc diff --git a/files/graphic/plist_gra.narc b/res/graphic/plist_gra.narc similarity index 100% rename from files/graphic/plist_gra.narc rename to res/graphic/plist_gra.narc diff --git a/files/graphic/pmsi.narc b/res/graphic/pmsi.narc similarity index 100% rename from files/graphic/pmsi.narc rename to res/graphic/pmsi.narc diff --git a/files/graphic/poketch.narc b/res/graphic/poketch.narc similarity index 100% rename from files/graphic/poketch.narc rename to res/graphic/poketch.narc diff --git a/files/graphic/poru_gra.narc b/res/graphic/poru_gra.narc similarity index 100% rename from files/graphic/poru_gra.narc rename to res/graphic/poru_gra.narc diff --git a/files/graphic/poruact.narc b/res/graphic/poruact.narc similarity index 100% rename from files/graphic/poruact.narc rename to res/graphic/poruact.narc diff --git a/files/graphic/porudemo.narc b/res/graphic/porudemo.narc similarity index 100% rename from files/graphic/porudemo.narc rename to res/graphic/porudemo.narc diff --git a/files/graphic/pst_gra.narc b/res/graphic/pst_gra.narc similarity index 100% rename from files/graphic/pst_gra.narc rename to res/graphic/pst_gra.narc diff --git a/files/graphic/ranking.narc b/res/graphic/ranking.narc similarity index 100% rename from files/graphic/ranking.narc rename to res/graphic/ranking.narc diff --git a/files/graphic/record.narc b/res/graphic/record.narc similarity index 100% rename from files/graphic/record.narc rename to res/graphic/record.narc diff --git a/files/graphic/shop_gra.narc b/res/graphic/shop_gra.narc similarity index 100% rename from files/graphic/shop_gra.narc rename to res/graphic/shop_gra.narc diff --git a/files/graphic/tmap_gra.narc b/res/graphic/tmap_gra.narc similarity index 100% rename from files/graphic/tmap_gra.narc rename to res/graphic/tmap_gra.narc diff --git a/files/graphic/touch_subwindow.narc b/res/graphic/touch_subwindow.narc similarity index 100% rename from files/graphic/touch_subwindow.narc rename to res/graphic/touch_subwindow.narc diff --git a/files/graphic/trainer_case.narc b/res/graphic/trainer_case.narc similarity index 100% rename from files/graphic/trainer_case.narc rename to res/graphic/trainer_case.narc diff --git a/files/graphic/unionobj2d_onlyfront.narc b/res/graphic/unionobj2d_onlyfront.narc similarity index 100% rename from files/graphic/unionobj2d_onlyfront.narc rename to res/graphic/unionobj2d_onlyfront.narc diff --git a/files/graphic/unionroom.narc b/res/graphic/unionroom.narc similarity index 100% rename from files/graphic/unionroom.narc rename to res/graphic/unionroom.narc diff --git a/files/graphic/waza_oshie_gra.narc b/res/graphic/waza_oshie_gra.narc similarity index 100% rename from files/graphic/waza_oshie_gra.narc rename to res/graphic/waza_oshie_gra.narc diff --git a/files/graphic/wifi2dchar.narc b/res/graphic/wifi2dchar.narc similarity index 100% rename from files/graphic/wifi2dchar.narc rename to res/graphic/wifi2dchar.narc diff --git a/files/graphic/wifi_lobby.narc b/res/graphic/wifi_lobby.narc similarity index 100% rename from files/graphic/wifi_lobby.narc rename to res/graphic/wifi_lobby.narc diff --git a/files/graphic/wifi_lobby_other.narc b/res/graphic/wifi_lobby_other.narc similarity index 100% rename from files/graphic/wifi_lobby_other.narc rename to res/graphic/wifi_lobby_other.narc diff --git a/files/graphic/wifi_unionobj.narc b/res/graphic/wifi_unionobj.narc similarity index 100% rename from files/graphic/wifi_unionobj.narc rename to res/graphic/wifi_unionobj.narc diff --git a/files/graphic/winframe.narc b/res/graphic/winframe.narc similarity index 100% rename from files/graphic/winframe.narc rename to res/graphic/winframe.narc diff --git a/files/graphic/worldtimer.narc b/res/graphic/worldtimer.narc similarity index 100% rename from files/graphic/worldtimer.narc rename to res/graphic/worldtimer.narc diff --git a/files/graphic/worldtrade.narc b/res/graphic/worldtrade.narc similarity index 100% rename from files/graphic/worldtrade.narc rename to res/graphic/worldtrade.narc diff --git a/files/itemtool/itemdata/item_data.narc b/res/itemtool/itemdata/item_data.narc similarity index 100% rename from files/itemtool/itemdata/item_data.narc rename to res/itemtool/itemdata/item_data.narc diff --git a/files/itemtool/itemdata/item_icon.narc b/res/itemtool/itemdata/item_icon.narc similarity index 100% rename from files/itemtool/itemdata/item_icon.narc rename to res/itemtool/itemdata/item_icon.narc diff --git a/res/itemtool/itemdata/meson.build b/res/itemtool/itemdata/meson.build new file mode 100644 index 0000000000..52fa66a8c6 --- /dev/null +++ b/res/itemtool/itemdata/meson.build @@ -0,0 +1,10 @@ +prebuilt_files = [ + 'item_data.narc', + 'item_icon.narc', + 'nuts_data.narc', + 'pl_item_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach diff --git a/files/itemtool/itemdata/nuts_data.narc b/res/itemtool/itemdata/nuts_data.narc similarity index 100% rename from files/itemtool/itemdata/nuts_data.narc rename to res/itemtool/itemdata/nuts_data.narc diff --git a/files/itemtool/itemdata/pl_item_data.narc b/res/itemtool/itemdata/pl_item_data.narc similarity index 100% rename from files/itemtool/itemdata/pl_item_data.narc rename to res/itemtool/itemdata/pl_item_data.narc diff --git a/res/itemtool/meson.build b/res/itemtool/meson.build new file mode 100644 index 0000000000..edeae6e049 --- /dev/null +++ b/res/itemtool/meson.build @@ -0,0 +1 @@ +subdir('itemdata') diff --git a/res/meson.build b/res/meson.build new file mode 100644 index 0000000000..359bb486ba --- /dev/null +++ b/res/meson.build @@ -0,0 +1,20 @@ +nitrofs_files = [] + +subdir('application') +subdir('arc') +subdir('battle') +subdir('contest') +subdir('data') +subdir('debug') +subdir('demo') +subdir('dwc') +subdir('fielddata') +subdir('frontier') +subdir('graphic') +subdir('itemtool') +subdir('msgdata') +subdir('particledata') +subdir('pokeanime') +subdir('poketool') +subdir('resource') +subdir('wazaeffect') diff --git a/res/msgdata/meson.build b/res/msgdata/meson.build new file mode 100644 index 0000000000..8886141926 --- /dev/null +++ b/res/msgdata/meson.build @@ -0,0 +1,10 @@ +subdir('scenario') + +prebuilt_files = [ + 'msg.narc', + 'pl_msg.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/msgdata/msg.narc b/res/msgdata/msg.narc similarity index 100% rename from files/msgdata/msg.narc rename to res/msgdata/msg.narc diff --git a/files/msgdata/pl_msg.narc b/res/msgdata/pl_msg.narc similarity index 100% rename from files/msgdata/pl_msg.narc rename to res/msgdata/pl_msg.narc diff --git a/res/msgdata/scenario/meson.build b/res/msgdata/scenario/meson.build new file mode 100644 index 0000000000..08e1405b88 --- /dev/null +++ b/res/msgdata/scenario/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'scr_msg.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/msgdata/scenario/scr_msg.narc b/res/msgdata/scenario/scr_msg.narc similarity index 100% rename from files/msgdata/scenario/scr_msg.narc rename to res/msgdata/scenario/scr_msg.narc diff --git a/res/particledata/meson.build b/res/particledata/meson.build new file mode 100644 index 0000000000..2107556e35 --- /dev/null +++ b/res/particledata/meson.build @@ -0,0 +1,11 @@ +subdir('pl_etc') +subdir('pl_frontier') +subdir('pl_pokelist') + +prebuilt_files = [ + 'particledata.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/particledata/particledata.narc b/res/particledata/particledata.narc similarity index 100% rename from files/particledata/particledata.narc rename to res/particledata/particledata.narc diff --git a/res/particledata/pl_etc/meson.build b/res/particledata/pl_etc/meson.build new file mode 100644 index 0000000000..00e959df83 --- /dev/null +++ b/res/particledata/pl_etc/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'pl_etc_particle.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/particledata/pl_etc/pl_etc_particle.narc b/res/particledata/pl_etc/pl_etc_particle.narc similarity index 100% rename from files/particledata/pl_etc/pl_etc_particle.narc rename to res/particledata/pl_etc/pl_etc_particle.narc diff --git a/files/particledata/pl_frontier/frontier_particle.narc b/res/particledata/pl_frontier/frontier_particle.narc similarity index 100% rename from files/particledata/pl_frontier/frontier_particle.narc rename to res/particledata/pl_frontier/frontier_particle.narc diff --git a/res/particledata/pl_frontier/meson.build b/res/particledata/pl_frontier/meson.build new file mode 100644 index 0000000000..e1cb4c1248 --- /dev/null +++ b/res/particledata/pl_frontier/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'frontier_particle.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/particledata/pl_pokelist/meson.build b/res/particledata/pl_pokelist/meson.build new file mode 100644 index 0000000000..9e690c953f --- /dev/null +++ b/res/particledata/pl_pokelist/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'pokelist_particle.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/particledata/pl_pokelist/pokelist_particle.narc b/res/particledata/pl_pokelist/pokelist_particle.narc similarity index 100% rename from files/particledata/pl_pokelist/pokelist_particle.narc rename to res/particledata/pl_pokelist/pokelist_particle.narc diff --git a/res/pokeanime/meson.build b/res/pokeanime/meson.build new file mode 100644 index 0000000000..797e813253 --- /dev/null +++ b/res/pokeanime/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'pl_poke_anm.narc', + 'poke_anm.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/pokeanime/pl_poke_anm.narc b/res/pokeanime/pl_poke_anm.narc similarity index 100% rename from files/pokeanime/pl_poke_anm.narc rename to res/pokeanime/pl_poke_anm.narc diff --git a/files/pokeanime/poke_anm.narc b/res/pokeanime/poke_anm.narc similarity index 100% rename from files/pokeanime/poke_anm.narc rename to res/pokeanime/poke_anm.narc diff --git a/res/poketool/icongra/meson.build b/res/poketool/icongra/meson.build new file mode 100644 index 0000000000..02ef5d648e --- /dev/null +++ b/res/poketool/icongra/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'pl_poke_icon.narc', + 'poke_icon.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/icongra/pl_poke_icon.narc b/res/poketool/icongra/pl_poke_icon.narc similarity index 100% rename from files/poketool/icongra/pl_poke_icon.narc rename to res/poketool/icongra/pl_poke_icon.narc diff --git a/files/poketool/icongra/poke_icon.narc b/res/poketool/icongra/poke_icon.narc similarity index 100% rename from files/poketool/icongra/poke_icon.narc rename to res/poketool/icongra/poke_icon.narc diff --git a/res/poketool/meson.build b/res/poketool/meson.build new file mode 100644 index 0000000000..4f3964a3d0 --- /dev/null +++ b/res/poketool/meson.build @@ -0,0 +1,20 @@ +subdir('icongra') +subdir('personal') +subdir('poke_edit') +subdir('pokeanm') +subdir('pokefoot') +subdir('pokegra') +subdir('trainer') +subdir('trgra') +subdir('trmsg') +subdir('waza') + +prebuilt_files = [ + 'pl_pokezukan.narc', + 'pokezukan.narc', + 'shinzukan.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/personal/evo.narc b/res/poketool/personal/evo.narc similarity index 100% rename from files/poketool/personal/evo.narc rename to res/poketool/personal/evo.narc diff --git a/files/poketool/personal/growtbl.narc b/res/poketool/personal/growtbl.narc similarity index 100% rename from files/poketool/personal/growtbl.narc rename to res/poketool/personal/growtbl.narc diff --git a/res/poketool/personal/meson.build b/res/poketool/personal/meson.build new file mode 100644 index 0000000000..7a8c5f7d54 --- /dev/null +++ b/res/poketool/personal/meson.build @@ -0,0 +1,13 @@ +prebuilt_files = [ + 'evo.narc', + 'growtbl.narc', + 'personal.narc', + 'pl_growtbl.narc', + 'pl_personal.narc', + 'pms.narc', + 'wotbl.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/personal/personal.narc b/res/poketool/personal/personal.narc similarity index 100% rename from files/poketool/personal/personal.narc rename to res/poketool/personal/personal.narc diff --git a/files/poketool/personal/pl_growtbl.narc b/res/poketool/personal/pl_growtbl.narc similarity index 100% rename from files/poketool/personal/pl_growtbl.narc rename to res/poketool/personal/pl_growtbl.narc diff --git a/files/poketool/personal/pl_personal.narc b/res/poketool/personal/pl_personal.narc similarity index 100% rename from files/poketool/personal/pl_personal.narc rename to res/poketool/personal/pl_personal.narc diff --git a/files/poketool/personal/pms.narc b/res/poketool/personal/pms.narc similarity index 100% rename from files/poketool/personal/pms.narc rename to res/poketool/personal/pms.narc diff --git a/files/poketool/personal/wotbl.narc b/res/poketool/personal/wotbl.narc similarity index 100% rename from files/poketool/personal/wotbl.narc rename to res/poketool/personal/wotbl.narc diff --git a/files/poketool/pl_pokezukan.narc b/res/poketool/pl_pokezukan.narc similarity index 100% rename from files/poketool/pl_pokezukan.narc rename to res/poketool/pl_pokezukan.narc diff --git a/res/poketool/poke_edit/meson.build b/res/poketool/poke_edit/meson.build new file mode 100644 index 0000000000..2a9d44f34b --- /dev/null +++ b/res/poketool/poke_edit/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'pl_poke_data.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/poke_edit/pl_poke_data.narc b/res/poketool/poke_edit/pl_poke_data.narc similarity index 100% rename from files/poketool/poke_edit/pl_poke_data.narc rename to res/poketool/poke_edit/pl_poke_data.narc diff --git a/res/poketool/pokeanm/meson.build b/res/poketool/pokeanm/meson.build new file mode 100644 index 0000000000..e5c7ecae4c --- /dev/null +++ b/res/poketool/pokeanm/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'pl_pokeanm.narc', + 'pokeanm.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/pokeanm/pl_pokeanm.narc b/res/poketool/pokeanm/pl_pokeanm.narc similarity index 100% rename from files/poketool/pokeanm/pl_pokeanm.narc rename to res/poketool/pokeanm/pl_pokeanm.narc diff --git a/files/poketool/pokeanm/pokeanm.narc b/res/poketool/pokeanm/pokeanm.narc similarity index 100% rename from files/poketool/pokeanm/pokeanm.narc rename to res/poketool/pokeanm/pokeanm.narc diff --git a/res/poketool/pokefoot/meson.build b/res/poketool/pokefoot/meson.build new file mode 100644 index 0000000000..23346960bc --- /dev/null +++ b/res/poketool/pokefoot/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'pokefoot.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/pokefoot/pokefoot.narc b/res/poketool/pokefoot/pokefoot.narc similarity index 100% rename from files/poketool/pokefoot/pokefoot.narc rename to res/poketool/pokefoot/pokefoot.narc diff --git a/files/poketool/pokegra/dp_height.narc b/res/poketool/pokegra/dp_height.narc similarity index 100% rename from files/poketool/pokegra/dp_height.narc rename to res/poketool/pokegra/dp_height.narc diff --git a/files/poketool/pokegra/dp_height_o.narc b/res/poketool/pokegra/dp_height_o.narc similarity index 100% rename from files/poketool/pokegra/dp_height_o.narc rename to res/poketool/pokegra/dp_height_o.narc diff --git a/files/poketool/pokegra/height.narc b/res/poketool/pokegra/height.narc similarity index 100% rename from files/poketool/pokegra/height.narc rename to res/poketool/pokegra/height.narc diff --git a/files/poketool/pokegra/height_o.narc b/res/poketool/pokegra/height_o.narc similarity index 100% rename from files/poketool/pokegra/height_o.narc rename to res/poketool/pokegra/height_o.narc diff --git a/res/poketool/pokegra/meson.build b/res/poketool/pokegra/meson.build new file mode 100644 index 0000000000..723a7a68c9 --- /dev/null +++ b/res/poketool/pokegra/meson.build @@ -0,0 +1,17 @@ +prebuilt_files = [ + 'dp_height_o.narc', + 'dp_height.narc', + 'height_o.narc', + 'height.narc', + 'otherpoke.narc', + 'pl_otherpoke.narc', + 'pl_pokegra.narc', + 'poke_shadow_ofx.narc', + 'poke_shadow.narc', + 'poke_yofs.narc', + 'pokegra.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/pokegra/otherpoke.narc b/res/poketool/pokegra/otherpoke.narc similarity index 100% rename from files/poketool/pokegra/otherpoke.narc rename to res/poketool/pokegra/otherpoke.narc diff --git a/files/poketool/pokegra/pl_otherpoke.narc b/res/poketool/pokegra/pl_otherpoke.narc similarity index 100% rename from files/poketool/pokegra/pl_otherpoke.narc rename to res/poketool/pokegra/pl_otherpoke.narc diff --git a/files/poketool/pokegra/pl_pokegra.narc b/res/poketool/pokegra/pl_pokegra.narc similarity index 100% rename from files/poketool/pokegra/pl_pokegra.narc rename to res/poketool/pokegra/pl_pokegra.narc diff --git a/files/poketool/pokegra/poke_shadow.narc b/res/poketool/pokegra/poke_shadow.narc similarity index 100% rename from files/poketool/pokegra/poke_shadow.narc rename to res/poketool/pokegra/poke_shadow.narc diff --git a/files/poketool/pokegra/poke_shadow_ofx.narc b/res/poketool/pokegra/poke_shadow_ofx.narc similarity index 100% rename from files/poketool/pokegra/poke_shadow_ofx.narc rename to res/poketool/pokegra/poke_shadow_ofx.narc diff --git a/files/poketool/pokegra/poke_yofs.narc b/res/poketool/pokegra/poke_yofs.narc similarity index 100% rename from files/poketool/pokegra/poke_yofs.narc rename to res/poketool/pokegra/poke_yofs.narc diff --git a/files/poketool/pokegra/pokegra.narc b/res/poketool/pokegra/pokegra.narc similarity index 100% rename from files/poketool/pokegra/pokegra.narc rename to res/poketool/pokegra/pokegra.narc diff --git a/files/poketool/pokezukan.narc b/res/poketool/pokezukan.narc similarity index 100% rename from files/poketool/pokezukan.narc rename to res/poketool/pokezukan.narc diff --git a/files/poketool/shinzukan.narc b/res/poketool/shinzukan.narc similarity index 100% rename from files/poketool/shinzukan.narc rename to res/poketool/shinzukan.narc diff --git a/res/poketool/trainer/meson.build b/res/poketool/trainer/meson.build new file mode 100644 index 0000000000..92eb9b9211 --- /dev/null +++ b/res/poketool/trainer/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'trdata.narc', + 'trpoke.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/trainer/trdata.narc b/res/poketool/trainer/trdata.narc similarity index 100% rename from files/poketool/trainer/trdata.narc rename to res/poketool/trainer/trdata.narc diff --git a/files/poketool/trainer/trpoke.narc b/res/poketool/trainer/trpoke.narc similarity index 100% rename from files/poketool/trainer/trpoke.narc rename to res/poketool/trainer/trpoke.narc diff --git a/res/poketool/trgra/meson.build b/res/poketool/trgra/meson.build new file mode 100644 index 0000000000..c0c774f9b1 --- /dev/null +++ b/res/poketool/trgra/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'trbgra.narc', + 'trfgra.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/trgra/trbgra.narc b/res/poketool/trgra/trbgra.narc similarity index 100% rename from files/poketool/trgra/trbgra.narc rename to res/poketool/trgra/trbgra.narc diff --git a/files/poketool/trgra/trfgra.narc b/res/poketool/trgra/trfgra.narc similarity index 100% rename from files/poketool/trgra/trfgra.narc rename to res/poketool/trgra/trfgra.narc diff --git a/res/poketool/trmsg/meson.build b/res/poketool/trmsg/meson.build new file mode 100644 index 0000000000..dbdcd818b5 --- /dev/null +++ b/res/poketool/trmsg/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'trtbl.narc', + 'trtblofs.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/trmsg/trtbl.narc b/res/poketool/trmsg/trtbl.narc similarity index 100% rename from files/poketool/trmsg/trtbl.narc rename to res/poketool/trmsg/trtbl.narc diff --git a/files/poketool/trmsg/trtblofs.narc b/res/poketool/trmsg/trtblofs.narc similarity index 100% rename from files/poketool/trmsg/trtblofs.narc rename to res/poketool/trmsg/trtblofs.narc diff --git a/res/poketool/waza/meson.build b/res/poketool/waza/meson.build new file mode 100644 index 0000000000..06e91adce9 --- /dev/null +++ b/res/poketool/waza/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'pl_waza_tbl.narc', + 'waza_tbl.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/poketool/waza/pl_waza_tbl.narc b/res/poketool/waza/pl_waza_tbl.narc similarity index 100% rename from files/poketool/waza/pl_waza_tbl.narc rename to res/poketool/waza/pl_waza_tbl.narc diff --git a/files/poketool/waza/waza_tbl.narc b/res/poketool/waza/waza_tbl.narc similarity index 100% rename from files/poketool/waza/waza_tbl.narc rename to res/poketool/waza/waza_tbl.narc diff --git a/files/resource/eng/batt_rec/batt_rec_gra.narc b/res/resource/eng/batt_rec/batt_rec_gra.narc similarity index 100% rename from files/resource/eng/batt_rec/batt_rec_gra.narc rename to res/resource/eng/batt_rec/batt_rec_gra.narc diff --git a/res/resource/eng/batt_rec/meson.build b/res/resource/eng/batt_rec/meson.build new file mode 100644 index 0000000000..1c77c8ae26 --- /dev/null +++ b/res/resource/eng/batt_rec/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'batt_rec_gra.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/resource/eng/frontier_graphic/frontier_bg.narc b/res/resource/eng/frontier_graphic/frontier_bg.narc similarity index 100% rename from files/resource/eng/frontier_graphic/frontier_bg.narc rename to res/resource/eng/frontier_graphic/frontier_bg.narc diff --git a/files/resource/eng/frontier_graphic/frontier_obj.narc b/res/resource/eng/frontier_graphic/frontier_obj.narc similarity index 100% rename from files/resource/eng/frontier_graphic/frontier_obj.narc rename to res/resource/eng/frontier_graphic/frontier_obj.narc diff --git a/res/resource/eng/frontier_graphic/meson.build b/res/resource/eng/frontier_graphic/meson.build new file mode 100644 index 0000000000..c6974b6e76 --- /dev/null +++ b/res/resource/eng/frontier_graphic/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'frontier_bg.narc', + 'frontier_obj.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/res/resource/eng/meson.build b/res/resource/eng/meson.build new file mode 100644 index 0000000000..c88081a62a --- /dev/null +++ b/res/resource/eng/meson.build @@ -0,0 +1,6 @@ +subdir('batt_rec') +subdir('frontier_graphic') +subdir('pms_aikotoba') +subdir('scratch') +subdir('wifi_lobby_minigame') +subdir('zukan') diff --git a/res/resource/eng/pms_aikotoba/meson.build b/res/resource/eng/pms_aikotoba/meson.build new file mode 100644 index 0000000000..ec41ab4925 --- /dev/null +++ b/res/resource/eng/pms_aikotoba/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'pms_aikotoba.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/resource/eng/pms_aikotoba/pms_aikotoba.narc b/res/resource/eng/pms_aikotoba/pms_aikotoba.narc similarity index 100% rename from files/resource/eng/pms_aikotoba/pms_aikotoba.narc rename to res/resource/eng/pms_aikotoba/pms_aikotoba.narc diff --git a/res/resource/eng/scratch/meson.build b/res/resource/eng/scratch/meson.build new file mode 100644 index 0000000000..3ceddbfc6d --- /dev/null +++ b/res/resource/eng/scratch/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'scratch.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/resource/eng/scratch/scratch.narc b/res/resource/eng/scratch/scratch.narc similarity index 100% rename from files/resource/eng/scratch/scratch.narc rename to res/resource/eng/scratch/scratch.narc diff --git a/res/resource/eng/wifi_lobby_minigame/meson.build b/res/resource/eng/wifi_lobby_minigame/meson.build new file mode 100644 index 0000000000..ce814cbef1 --- /dev/null +++ b/res/resource/eng/wifi_lobby_minigame/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'wlmngm_tool.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/resource/eng/wifi_lobby_minigame/wlmngm_tool.narc b/res/resource/eng/wifi_lobby_minigame/wlmngm_tool.narc similarity index 100% rename from files/resource/eng/wifi_lobby_minigame/wlmngm_tool.narc rename to res/resource/eng/wifi_lobby_minigame/wlmngm_tool.narc diff --git a/res/resource/eng/zukan/meson.build b/res/resource/eng/zukan/meson.build new file mode 100644 index 0000000000..847e5c0da6 --- /dev/null +++ b/res/resource/eng/zukan/meson.build @@ -0,0 +1,7 @@ +prebuilt_files = [ + 'zukan.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/resource/eng/zukan/zukan.narc b/res/resource/eng/zukan/zukan.narc similarity index 100% rename from files/resource/eng/zukan/zukan.narc rename to res/resource/eng/zukan/zukan.narc diff --git a/res/resource/meson.build b/res/resource/meson.build new file mode 100644 index 0000000000..d4ec8d6a98 --- /dev/null +++ b/res/resource/meson.build @@ -0,0 +1 @@ +subdir('eng') diff --git a/res/wazaeffect/effectclact/meson.build b/res/wazaeffect/effectclact/meson.build new file mode 100644 index 0000000000..6a09b6db04 --- /dev/null +++ b/res/wazaeffect/effectclact/meson.build @@ -0,0 +1,10 @@ +prebuilt_files = [ + 'wecell.narc', + 'wecellanm.narc', + 'wechar.narc', + 'wepltt.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/wazaeffect/effectclact/wecell.narc b/res/wazaeffect/effectclact/wecell.narc similarity index 100% rename from files/wazaeffect/effectclact/wecell.narc rename to res/wazaeffect/effectclact/wecell.narc diff --git a/files/wazaeffect/effectclact/wecellanm.narc b/res/wazaeffect/effectclact/wecellanm.narc similarity index 100% rename from files/wazaeffect/effectclact/wecellanm.narc rename to res/wazaeffect/effectclact/wecellanm.narc diff --git a/files/wazaeffect/effectclact/wechar.narc b/res/wazaeffect/effectclact/wechar.narc similarity index 100% rename from files/wazaeffect/effectclact/wechar.narc rename to res/wazaeffect/effectclact/wechar.narc diff --git a/files/wazaeffect/effectclact/wepltt.narc b/res/wazaeffect/effectclact/wepltt.narc similarity index 100% rename from files/wazaeffect/effectclact/wepltt.narc rename to res/wazaeffect/effectclact/wepltt.narc diff --git a/files/wazaeffect/effectdata/ball_particle.narc b/res/wazaeffect/effectdata/ball_particle.narc similarity index 100% rename from files/wazaeffect/effectdata/ball_particle.narc rename to res/wazaeffect/effectdata/ball_particle.narc diff --git a/res/wazaeffect/effectdata/meson.build b/res/wazaeffect/effectdata/meson.build new file mode 100644 index 0000000000..b0747c958f --- /dev/null +++ b/res/wazaeffect/effectdata/meson.build @@ -0,0 +1,8 @@ +prebuilt_files = [ + 'ball_particle.narc', + 'waza_particle.narc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/wazaeffect/effectdata/waza_particle.narc b/res/wazaeffect/effectdata/waza_particle.narc similarity index 100% rename from files/wazaeffect/effectdata/waza_particle.narc rename to res/wazaeffect/effectdata/waza_particle.narc diff --git a/res/wazaeffect/meson.build b/res/wazaeffect/meson.build new file mode 100644 index 0000000000..7441782fcb --- /dev/null +++ b/res/wazaeffect/meson.build @@ -0,0 +1,11 @@ +subdir('effectclact') +subdir('effectdata') + +prebuilt_files = [ + 'we_sub.narc', + 'we.arc' +] + +foreach f : prebuilt_files + nitrofs_files += fs.copyfile(f) +endforeach \ No newline at end of file diff --git a/files/wazaeffect/we.arc b/res/wazaeffect/we.arc similarity index 100% rename from files/wazaeffect/we.arc rename to res/wazaeffect/we.arc diff --git a/files/wazaeffect/we_sub.narc b/res/wazaeffect/we_sub.narc similarity index 100% rename from files/wazaeffect/we_sub.narc rename to res/wazaeffect/we_sub.narc diff --git a/rom.rsf b/rom.rsf deleted file mode 100644 index f547bf9a45..0000000000 --- a/rom.rsf +++ /dev/null @@ -1,32 +0,0 @@ -Arm9 -{ - Static $(BUILD_DIR)/main.sbin - OverlayDefs $(BUILD_DIR)/main_defs.sbin - OverlayTable $(BUILD_DIR)/main_table.sbin - Nef $(BUILD_DIR)/main.nef -} - -Arm7 -{ - Static sub/ichneumon_sub.sbin - OverlayDefs sub/ichneumon_sub_defs.sbin -} - -Property -{ - RomHeaderTemplate "$(HEADER_TEMPLATE)" - TitleName "$(TITLE_NAME)" - MakerCode "01" - RemasterVersion 0 - RomSpeedType 1TROM - RomSize 1G - RomFootPadding TRUE - BannerFile $(BNR) -} - -RomSpec -{ - Segment All - HostRoot files/ - File $(NITROFS_FILES) -} diff --git a/src/meson.build b/src/meson.build new file mode 100644 index 0000000000..48f57a4156 --- /dev/null +++ b/src/meson.build @@ -0,0 +1,1024 @@ +pokeplatinum_c = files( + 'coins.c', + 'enc_effects.c', + 'error_handling.c', + 'error_message_reset.c', + 'game_overlay.c', + 'game_version.c', + 'gx_layers.c', + 'heap.c', + 'item.c', + 'main.c', + 'map_header.c', + 'move_table.c', + 'narc.c', + 'party.c', + 'poffin.c', + 'strbuf.c', + 'unk_0200112C.c', + 'unk_02001AF4.c', + 'unk_020021B0.c', + 'unk_02002328.c', + 'unk_02002B7C.c', + 'unk_02002F38.c', + 'unk_02003B60.c', + 'unk_020041CC.c', + 'unk_02005474.c', + 'unk_02006224.c', + 'unk_0200679C.c', + 'unk_020067E8.c', + 'unk_02006E3C.c', + 'unk_0200762C.c', + 'unk_020093B4.c', + 'unk_02009714.c', + 'unk_0200A328.c', + 'unk_0200A784.c', + 'unk_0200A9DC.c', + 'unk_0200AC5C.c', + 'unk_0200B29C.c', + 'unk_0200B358.c', + 'unk_0200C440.c', + 'unk_0200C6E4.c', + 'unk_0200D9E8.c', + 'unk_0200DA60.c', + 'unk_0200F174.c', + 'unk_0200F85C.c', + 'unk_02012480.c', + 'unk_02012744.c', + 'unk_020131EC.c', + 'unk_0201378C.c', + 'unk_02013A04.c', + 'unk_02013B10.c', + 'unk_02014000.c', + 'unk_020149F0.c', + 'unk_02014A84.c', + 'unk_02014D38.c', + 'unk_02015064.c', + 'unk_0201567C.c', + 'unk_020158A8.c', + 'unk_02015920.c', + 'unk_02015F84.c', + 'unk_02017038.c', + 'unk_020170BC.c', + 'unk_02017428.c', + 'unk_02017498.c', + 'unk_02017728.c', + 'unk_02018340.c', + 'unk_0201C970.c', + 'unk_0201CCF0.c', + 'unk_0201CED8.c', + 'unk_0201D0C8.c', + 'unk_0201D15C.c', + 'unk_0201D670.c', + 'unk_0201DBEC.c', + 'unk_0201DD00.c', + 'unk_0201E010.c', + 'unk_0201E0A4.c', + 'unk_0201E190.c', + 'unk_0201E3BC.c', + 'unk_0201E3D8.c', + 'unk_0201E86C.c', + 'unk_0201F834.c', + 'unk_02020020.c', + 'unk_02020AEC.c', + 'unk_020218BC.c', + 'unk_02022594.c', + 'unk_02022844.c', + 'unk_0202298C.c', + 'unk_0202309C.c', + 'unk_020232E0.c', + 'unk_02023FCC.c', + 'unk_0202414C.c', + 'unk_0202419C.c', + 'unk_020241F0.c', + 'unk_02024220.c', + 'unk_02024358.c', + 'unk_0202440C.c', + 'unk_020244AC.c', + 'unk_02025CB0.c', + 'unk_02025E08.c', + 'unk_02025E68.c', + 'unk_0202602C.c', + 'unk_02026150.c', + 'unk_020261E4.c', + 'unk_0202631C.c', + 'unk_020277A4.c', + 'unk_020279FC.c', + 'unk_02027B70.c', + 'unk_02027F50.c', + 'unk_02027F84.c', + 'unk_02028124.c', + 'unk_0202854C.c', + 'unk_020298BC.c', + 'unk_0202ACE0.c', + 'unk_0202B37C.c', + 'unk_0202B604.c', + 'unk_0202C7FC.c', + 'unk_0202C858.c', + 'unk_0202C9F4.c', + 'unk_0202CBE4.c', + 'unk_0202CC64.c', + 'unk_0202CD50.c', + 'unk_0202D05C.c', + 'unk_0202D778.c', + 'unk_0202D7A8.c', + 'unk_0202DA40.c', + 'unk_0202DAB4.c', + 'unk_0202DF8C.c', + 'unk_0202E2CC.c', + 'unk_0202E840.c', + 'unk_0202EEC0.c', + 'unk_0202F108.c', + 'unk_0202F180.c', + 'unk_0202F1D4.c', + 'unk_0202FF4C.c', + 'unk_02030108.c', + 'unk_020302D0.c', + 'unk_02030494.c', + 'unk_0203061C.c', + 'unk_02030880.c', + 'unk_02030A80.c', + 'unk_02030CE8.c', + 'unk_02030EA4.c', + 'unk_02030EE0.c', + 'unk_02032188.c', + 'unk_020322D8.c', + 'unk_0203266C.c', + 'unk_02032798.c', + 'unk_020329E0.c', + 'unk_02033200.c', + 'unk_02034198.c', + 'unk_020363E8.c', + 'unk_020366A0.c', + 'unk_02038ED4.c', + 'unk_02038F8C.c', + 'unk_02038FFC.c', + 'unk_0203909C.c', + 'unk_020393C8.c', + 'unk_02039814.c', + 'unk_02039A58.c', + 'unk_02039A64.c', + 'unk_02039C80.c', + 'unk_0203A378.c', + 'unk_0203A6DC.c', + 'unk_0203A7D8.c', + 'unk_0203A944.c', + 'unk_0203A9C8.c', + 'unk_0203C954.c', + 'unk_0203CC84.c', + 'unk_0203D178.c', + 'unk_0203D1B8.c', + 'unk_0203E724.c', + 'unk_0203E880.c', + 'unk_0203F6C4.c', + 'unk_02046AD4.c', + 'unk_02046C7C.c', + 'unk_020474B8.c', + 'unk_020480A8.c', + 'unk_020482D4.c', + 'unk_02048614.c', + 'unk_02048BD0.c', + 'unk_02048DD8.c', + 'unk_020494DC.c', + 'unk_02049D08.c', + 'unk_0204AEE8.c', + 'unk_0204B64C.c', + 'unk_0204B830.c', + 'unk_0204C500.c', + 'unk_0204C6C8.c', + 'unk_0204C8F0.c', + 'unk_0204CA84.c', + 'unk_0204CDDC.c', + 'unk_0204CFFC.c', + 'unk_0204E240.c', + 'unk_0204E378.c', + 'unk_0204E3CC.c', + 'unk_0204E75C.c', + 'unk_0204E974.c', + 'unk_0204EDA4.c', + 'unk_0204F02C.c', + 'unk_0204F04C.c', + 'unk_0204F13C.c', + 'unk_0204FA34.c', + 'unk_0204FAB4.c', + 'unk_0205001C.c', + 'unk_0205003C.c', + 'unk_02050548.c', + 'unk_02050568.c', + 'unk_020507CC.c', + 'unk_020508D4.c', + 'unk_02050A74.c', + 'unk_02051D8C.c', + 'unk_020528D0.c', + 'unk_02052C6C.c', + 'unk_020530C8.c', + 'unk_02054884.c', + 'unk_02054BD0.c', + 'unk_02054D00.c', + 'unk_020553DC.c', + 'unk_020556C4.c', + 'unk_0205578C.c', + 'unk_02055808.c', + 'unk_020559DC.c', + 'unk_02055C50.c', + 'unk_020562F8.c', + 'unk_02056720.c', + 'unk_02056B30.c', + 'unk_020573FC.c', + 'unk_0205749C.c', + 'unk_02057518.c', + 'unk_0205964C.c', + 'unk_0205A0D8.c', + 'unk_0205B33C.c', + 'unk_0205C22C.c', + 'unk_0205C980.c', + 'unk_0205CA94.c', + 'unk_0205D8CC.c', + 'unk_0205DAC8.c', + 'unk_0205DFC4.c', + 'unk_0205E7D0.c', + 'unk_0205F180.c', + 'unk_02061804.c', + 'unk_02063400.c', + 'unk_0206450C.c', + 'unk_020655F4.c', + 'unk_020673B8.c', + 'unk_020677F4.c', + 'unk_02067A84.c', + 'unk_02068344.c', + 'unk_020683F4.c', + 'unk_0206940C.c', + 'unk_02069BE0.c', + 'unk_0206A780.c', + 'unk_0206A8DC.c', + 'unk_0206AFE0.c', + 'unk_0206B70C.c', + 'unk_0206B9D8.c', + 'unk_0206C0E8.c', + 'unk_0206C2D0.c', + 'unk_0206C33C.c', + 'unk_0206C660.c', + 'unk_0206C784.c', + 'unk_0206CCB0.c', + 'unk_0206F314.c', + 'unk_02070428.c', + 'unk_0207064C.c', + 'unk_0207070C.c', + 'unk_020711C8.c', + 'unk_020711EC.c', + 'unk_0207160C.c', + 'unk_02071B10.c', + 'unk_02071CD0.c', + 'unk_02071CFC.c', + 'unk_02071D40.c', + 'unk_020722AC.c', + 'unk_02073700.c', + 'unk_02073838.c', + 'unk_02073C2C.c', + 'unk_02079170.c', + 'unk_020797C8.c', + 'unk_02079D40.c', + 'unk_0207A274.c', + 'unk_0207A2A8.c', + 'unk_0207A6DC.c', + 'unk_0207AE68.c', + 'unk_0207C63C.c', + 'unk_0207C908.c', + 'unk_0207CB08.c', + 'unk_0207D3B8.c', + 'unk_0207DA28.c', + 'unk_0207DFAC.c', + 'unk_0207E060.c', + 'unk_0207E0B8.c', + 'unk_020819DC.c', + 'unk_02082C2C.c', + 'unk_02083370.c', + 'unk_02084B70.c', + 'unk_0208694C.c', + 'unk_020890F4.c', + 'unk_02089604.c', + 'unk_0208A3F4.c', + 'unk_0208B284.c', + 'unk_0208BA78.c', + 'unk_0208BEBC.c', + 'unk_0208C010.c', + 'unk_0208C098.c', + 'unk_0208C324.c', + 'unk_0208EA44.c', + 'unk_0208FCF8.c', + 'unk_020916B4.c', + 'unk_020920C0.c', + 'unk_020923C0.c', + 'unk_02092494.c', + 'unk_020933F8.c', + 'unk_02094EDC.c', + 'unk_02095AF0.c', + 'unk_02095CD4.c', + 'unk_02095E98.c', + 'unk_020961E8.c', + 'unk_02096420.c', + 'unk_020972FC.c', + 'unk_0209739C.c', + 'unk_0209747C.c', + 'unk_02097624.c', + 'unk_02097B18.c', + 'unk_02098218.c', + 'unk_020985E4.c', + 'unk_020986CC.c', + 'unk_02098700.c', + 'unk_02098988.c', + 'unk_020989DC.c', + 'unk_02098FFC.c', + 'unk_02099500.c', + 'unk_02099550.c', + 'unk_02099604.c', + 'unk_020996D0.c', + 'unk_020997B8.c', + 'unk_020998EC.c', + 'unk_02099D44.c', + 'unk_02099DFC.c', + 'unk_0209A2C4.c', + 'unk_0209A74C.c', + 'unk_0209AA74.c', + 'unk_0209AC14.c', + 'unk_0209ACBC.c', + 'unk_0209ACF4.c', + 'unk_0209B344.c', + 'unk_0209B6F8.c', + 'unk_0209BA18.c', + 'unk_0209BA80.c', + 'unk_0209BDF8.c', + 'unk_0209C194.c', + 'unk_0209C370.c', + 'unk_0209C390.c', + 'unk_020EDBAC.c', + 'unk_020F6824.c', + 'overlay000/ov0_dummy.c', + 'overlay001/ov1_021D0D80.c', + 'overlay002/ov2_dummy.c', + 'overlay003/ov3_dummy.c', + 'overlay004/ov4_021D0D80.c', + 'overlay004/ov4_021D2808.c', + 'overlay005/ov5_021D0D80.c', + 'overlay005/ov5_021D1A94.c', + 'overlay005/ov5_021D1C30.c', + 'overlay005/ov5_021D2F14.c', + 'overlay005/ov5_021D37AC.c', + 'overlay005/ov5_021D431C.c', + 'overlay005/ov5_021D521C.c', + 'overlay005/ov5_021D56BC.c', + 'overlay005/ov5_021D57BC.c', + 'overlay005/ov5_021D5878.c', + 'overlay005/ov5_021D5B40.c', + 'overlay005/ov5_021D5BC0.c', + 'overlay005/ov5_021D5CB0.c', + 'overlay005/ov5_021D5EB8.c', + 'overlay005/ov5_021DB888.c', + 'overlay005/ov5_021DC018.c', + 'overlay005/ov5_021DD42C.c', + 'overlay005/ov5_021DD6FC.c', + 'overlay005/ov5_021DDAE4.c', + 'overlay005/ov5_021DDBE8.c', + 'overlay005/ov5_021DF440.c', + 'overlay005/ov5_021DFB54.c', + 'overlay005/ov5_021E1154.c', + 'overlay005/ov5_021E135C.c', + 'overlay005/ov5_021E15F4.c', + 'overlay005/ov5_021E1B08.c', + 'overlay005/ov5_021E1D20.c', + 'overlay005/ov5_021E2098.c', + 'overlay005/ov5_021E22B0.c', + 'overlay005/ov5_021E2338.c', + 'overlay005/ov5_021E622C.c', + 'overlay005/ov5_021E779C.c', + 'overlay005/ov5_021EA714.c', + 'overlay005/ov5_021EA874.c', + 'overlay005/ov5_021EAFA4.c', + 'overlay005/ov5_021EB1A0.c', + 'overlay005/ov5_021ECA70.c', + 'overlay005/ov5_021ECC20.c', + 'overlay005/ov5_021ECE40.c', + 'overlay005/ov5_021EE75C.c', + 'overlay005/ov5_021EE7D4.c', + 'overlay005/ov5_021EEAC8.c', + 'overlay005/ov5_021EEC68.c', + 'overlay005/ov5_021EEF34.c', + 'overlay005/ov5_021EF250.c', + 'overlay005/ov5_021EF3A8.c', + 'overlay005/ov5_021EF4BC.c', + 'overlay005/ov5_021EF75C.c', + 'overlay005/ov5_021EFB0C.c', + 'overlay005/ov5_021F007C.c', + 'overlay005/ov5_021F067C.c', + 'overlay005/ov5_021F0824.c', + 'overlay005/ov5_021F08CC.c', + 'overlay005/ov5_021F0E84.c', + 'overlay005/ov5_021F0EB0.c', + 'overlay005/ov5_021F101C.c', + 'overlay005/ov5_021F10E8.c', + 'overlay005/ov5_021F134C.c', + 'overlay005/ov5_021F17B8.c', + 'overlay005/ov5_021F1CC8.c', + 'overlay005/ov5_021F204C.c', + 'overlay005/ov5_021F23D0.c', + 'overlay005/ov5_021F25C0.c', + 'overlay005/ov5_021F2850.c', + 'overlay005/ov5_021F2A7C.c', + 'overlay005/ov5_021F2BD0.c', + 'overlay005/ov5_021F2D20.c', + 'overlay005/ov5_021F3284.c', + 'overlay005/ov5_021F348C.c', + 'overlay005/ov5_021F37A8.c', + 'overlay005/ov5_021F3A50.c', + 'overlay005/ov5_021F3D00.c', + 'overlay005/ov5_021F3E74.c', + 'overlay005/ov5_021F4018.c', + 'overlay005/ov5_021F428C.c', + 'overlay005/ov5_021F47B0.c', + 'overlay005/ov5_021F4DAC.c', + 'overlay005/ov5_021F4E08.c', + 'overlay005/ov5_021F5060.c', + 'overlay005/ov5_021F50BC.c', + 'overlay005/ov5_021F5284.c', + 'overlay005/ov5_021F5428.c', + 'overlay005/ov5_021F55CC.c', + 'overlay005/ov5_021F575C.c', + 'overlay005/ov5_021F5894.c', + 'overlay005/ov5_021F5A10.c', + 'overlay005/ov5_021F600C.c', + 'overlay005/ov5_021F61BC.c', + 'overlay005/ov5_021F6454.c', + 'overlay005/ov5_021F77A8.c', + 'overlay005/ov5_021F8370.c', + 'overlay005/ov5_021F8560.c', + 'overlay005/ov5_021FAF40.c', + 'overlay005/ov5_021FF6B8.c', + 'overlay006/ov6_0223E140.c', + 'overlay006/ov6_02240C9C.c', + 'overlay006/ov6_022426AC.c', + 'overlay006/ov6_02242984.c', + 'overlay006/ov6_02242AF0.c', + 'overlay006/ov6_02242F74.c', + 'overlay006/ov6_02243004.c', + 'overlay006/ov6_022430C4.c', + 'overlay006/ov6_02243218.c', + 'overlay006/ov6_02243258.c', + 'overlay006/ov6_02246034.c', + 'overlay006/ov6_02246184.c', + 'overlay006/ov6_02246444.c', + 'overlay006/ov6_022465FC.c', + 'overlay006/ov6_02246A30.c', + 'overlay006/ov6_02246B74.c', + 'overlay006/ov6_02246BF4.c', + 'overlay006/ov6_02246C24.c', + 'overlay006/ov6_02246F00.c', + 'overlay006/ov6_02247078.c', + 'overlay006/ov6_02247100.c', + 'overlay006/ov6_022475B0.c', + 'overlay006/ov6_02247660.c', + 'overlay006/ov6_022477B8.c', + 'overlay006/ov6_02247830.c', + 'overlay006/ov6_02247A0C.c', + 'overlay006/ov6_02247D30.c', + 'overlay006/ov6_02247F5C.c', + 'overlay006/ov6_02248050.c', + 'overlay006/ov6_02248948.c', + 'overlay006/ov6_022489E4.c', + 'overlay007/ov7_02249960.c', + 'overlay007/ov7_0224B4E8.c', + 'overlay007/ov7_0224BE9C.c', + 'overlay007/ov7_0224CD28.c', + 'overlay008/ov8_02249960.c', + 'overlay009/ov9_02249960.c', + 'overlay010/ov10_0221F800.c', + 'overlay011/ov11_0221F800.c', + 'overlay011/ov11_0221F840.c', + 'overlay012/is_form_symmetrical.c', + 'overlay012/ov12_0221FC20.c', + 'overlay012/ov12_022237EC.c', + 'overlay012/ov12_0222389C.c', + 'overlay012/ov12_0222421C.c', + 'overlay012/ov12_02225104.c', + 'overlay012/ov12_02225640.c', + 'overlay012/ov12_02225864.c', + 'overlay012/ov12_02226998.c', + 'overlay012/ov12_022269C0.c', + 'overlay012/ov12_02226B84.c', + 'overlay012/ov12_0222AC70.c', + 'overlay012/ov12_0222D6B0.c', + 'overlay012/ov12_0222E784.c', + 'overlay012/ov12_0222E91C.c', + 'overlay012/ov12_0222F700.c', + 'overlay012/ov12_022346A4.c', + 'overlay012/ov12_02234E44.c', + 'overlay012/ov12_02235254.c', + 'overlay012/ov12_02235E94.c', + 'overlay012/ov12_02237E54.c', + 'overlay012/ov12_02237EFC.c', + 'overlay012/ov12_022380BC.c', + 'overlay013/ov13_0221FC20.c', + 'overlay013/ov13_02221A88.c', + 'overlay013/ov13_02224500.c', + 'overlay013/ov13_02225710.c', + 'overlay013/ov13_022264F4.c', + 'overlay013/ov13_02227288.c', + 'overlay013/ov13_02227A4C.c', + 'overlay013/ov13_02227BDC.c', + 'overlay013/ov13_02228128.c', + 'overlay013/ov13_02228A38.c', + 'overlay014/ov14_0221FC20.c', + 'overlay015/ov15_dummy.c', + 'overlay016/ov16_0223B140.c', + 'overlay016/ov16_0223DF00.c', + 'overlay016/ov16_022405FC.c', + 'overlay016/ov16_0224B940.c', + 'overlay016/ov16_0225177C.c', + 'overlay016/ov16_0225BFFC.c', + 'overlay016/ov16_0225CBB8.c', + 'overlay016/ov16_02264798.c', + 'overlay016/ov16_0226485C.c', + 'overlay016/ov16_02266F1C.c', + 'overlay016/ov16_02268520.c', + 'overlay016/ov16_0226871C.c', + 'overlay016/ov16_0226D094.c', + 'overlay016/ov16_0226DB7C.c', + 'overlay016/ov16_0226DE44.c', + 'overlay016/ov16_0226E148.c', + 'overlay017/ov17_0223B140.c', + 'overlay017/ov17_0223CB1C.c', + 'overlay017/ov17_0223DAD0.c', + 'overlay017/ov17_0223F118.c', + 'overlay017/ov17_0223F7E4.c', + 'overlay017/ov17_02241270.c', + 'overlay017/ov17_022413D8.c', + 'overlay017/ov17_02243AC4.c', + 'overlay017/ov17_02243C28.c', + 'overlay017/ov17_02245F14.c', + 'overlay017/ov17_02246ECC.c', + 'overlay017/ov17_022476F8.c', + 'overlay017/ov17_02247A48.c', + 'overlay017/ov17_022492DC.c', + 'overlay017/ov17_0224A0FC.c', + 'overlay017/ov17_0224CFB8.c', + 'overlay017/ov17_0224E930.c', + 'overlay017/ov17_0224F080.c', + 'overlay017/ov17_0224F18C.c', + 'overlay017/ov17_0224F4D4.c', + 'overlay017/ov17_02250744.c', + 'overlay017/ov17_02251D6C.c', + 'overlay017/ov17_02252A70.c', + 'overlay017/ov17_02252AB0.c', + 'overlay017/ov17_02252CEC.c', + 'overlay018/ov18_0221F800.c', + 'overlay019/ov19_021D0D80.c', + 'overlay019/ov19_021D603C.c', + 'overlay019/ov19_021D61B0.c', + 'overlay019/ov19_021D79F8.c', + 'overlay019/ov19_021D8B54.c', + 'overlay019/ov19_021DA270.c', + 'overlay019/ov19_021DA814.c', + 'overlay019/ov19_021DA92C.c', + 'overlay019/ov19_021DB2FC.c', + 'overlay019/ov19_021DB8E4.c', + 'overlay019/ov19_021DC5F0.c', + 'overlay019/ov19_021DCF88.c', + 'overlay019/ov19_021DE3E8.c', + 'overlay019/ov19_021DEC04.c', + 'overlay019/ov19_021DF964.c', + 'overlay020/ov20_021D0D80.c', + 'overlay020/ov20_021D2098.c', + 'overlay020/ov20_021D2EA4.c', + 'overlay020/ov20_021D3864.c', + 'overlay020/ov20_021D3A54.c', + 'overlay020/ov20_021D40E8.c', + 'overlay020/ov20_021D4728.c', + 'overlay020/ov20_021D4E38.c', + 'overlay020/ov20_021D5044.c', + 'overlay021/ov21_021D0D80.c', + 'overlay021/ov21_021D1F90.c', + 'overlay021/ov21_021D1FA4.c', + 'overlay021/ov21_021D3208.c', + 'overlay021/ov21_021D3FE0.c', + 'overlay021/ov21_021D423C.c', + 'overlay021/ov21_021D4340.c', + 'overlay021/ov21_021D4C0C.c', + 'overlay021/ov21_021D4EE4.c', + 'overlay021/ov21_021D517C.c', + 'overlay021/ov21_021D5600.c', + 'overlay021/ov21_021D57B4.c', + 'overlay021/ov21_021D5AEC.c', + 'overlay021/ov21_021D76B0.c', + 'overlay021/ov21_021D85B0.c', + 'overlay021/ov21_021D94BC.c', + 'overlay021/ov21_021DC9BC.c', + 'overlay021/ov21_021DDD2C.c', + 'overlay021/ov21_021DE668.c', + 'overlay021/ov21_021DF734.c', + 'overlay021/ov21_021E0C68.c', + 'overlay021/ov21_021E1924.c', + 'overlay021/ov21_021E29DC.c', + 'overlay021/ov21_021E3FFC.c', + 'overlay021/ov21_021E4CA4.c', + 'overlay021/ov21_021E6014.c', + 'overlay021/ov21_021E68F4.c', + 'overlay021/ov21_021E737C.c', + 'overlay021/ov21_021E8484.c', + 'overlay021/ov21_021E8D48.c', + 'overlay022/ov22_02254DE0.c', + 'overlay022/ov22_02255094.c', + 'overlay022/ov22_02255D44.c', + 'overlay022/ov22_022578F4.c', + 'overlay022/ov22_02257F50.c', + 'overlay022/ov22_022588F0.c', + 'overlay022/ov22_0225894C.c', + 'overlay022/ov22_022589E0.c', + 'overlay022/ov22_02259098.c', + 'overlay022/ov22_02259484.c', + 'overlay022/ov22_02259560.c', + 'overlay022/ov22_022597BC.c', + 'overlay022/ov22_02259C58.c', + 'overlay022/ov22_0225A428.c', + 'overlay022/ov22_0225AF44.c', + 'overlay022/ov22_0225AF8C.c', + 'overlay022/ov22_0225B660.c', + 'overlay023/ov23_0223E140.c', + 'overlay023/ov23_022416A8.c', + 'overlay023/ov23_02241F74.c', + 'overlay023/ov23_0224340C.c', + 'overlay023/ov23_02248C08.c', + 'overlay023/ov23_02248F1C.c', + 'overlay023/ov23_02249918.c', + 'overlay023/ov23_022499E4.c', + 'overlay023/ov23_0224A1D0.c', + 'overlay023/ov23_0224B05C.c', + 'overlay023/ov23_0224DC40.c', + 'overlay023/ov23_0224F294.c', + 'overlay023/ov23_0225128C.c', + 'overlay023/ov23_022521F0.c', + 'overlay023/ov23_02253598.c', + 'overlay023/ov23_02253D40.c', + 'overlay023/ov23_0225426C.c', + 'overlay023/ov23_0225429C.c', + 'overlay023/ov23_022542CC.c', + 'overlay023/ov23_02254A14.c', + 'overlay024/ov24_02253CE0.c', + 'overlay025/ov25_02253CE0.c', + 'overlay025/ov25_02254560.c', + 'overlay025/ov25_02255090.c', + 'overlay025/ov25_02255540.c', + 'overlay025/ov25_02255ACC.c', + 'overlay025/ov25_02255DBC.c', + 'overlay026/ov26_022561C0.c', + 'overlay026/ov26_02256404.c', + 'overlay027/ov27_022561C0.c', + 'overlay027/ov27_0225680C.c', + 'overlay028/ov28_022561C0.c', + 'overlay028/ov28_0225697C.c', + 'overlay028/ov28_02256E9C.c', + 'overlay029/ov29_022561C0.c', + 'overlay029/ov29_022566C8.c', + 'overlay030/ov30_022561C0.c', + 'overlay030/ov30_022563EC.c', + 'overlay031/ov31_022561C0.c', + 'overlay031/ov31_02256554.c', + 'overlay032/ov32_022561C0.c', + 'overlay032/ov32_02256470.c', + 'overlay033/ov33_022561C0.c', + 'overlay033/ov33_02256474.c', + 'overlay034/ov34_022561C0.c', + 'overlay034/ov34_02256540.c', + 'overlay035/ov35_022561C0.c', + 'overlay035/ov35_02256410.c', + 'overlay036/ov36_022561C0.c', + 'overlay036/ov36_02256404.c', + 'overlay037/ov37_022561C0.c', + 'overlay037/ov37_022563D4.c', + 'overlay038/ov38_022561C0.c', + 'overlay038/ov38_0225632C.c', + 'overlay039/ov39_022561C0.c', + 'overlay039/ov39_022563DC.c', + 'overlay040/ov40_022561C0.c', + 'overlay040/ov40_0225645C.c', + 'overlay041/ov41_022561C0.c', + 'overlay041/ov41_022567B0.c', + 'overlay042/ov42_022561C0.c', + 'overlay042/ov42_022563D4.c', + 'overlay043/ov43_022561C0.c', + 'overlay043/ov43_02256544.c', + 'overlay044/ov44_022561C0.c', + 'overlay044/ov44_022565BC.c', + 'overlay045/ov45_022561C0.c', + 'overlay045/ov45_022566EC.c', + 'overlay046/ov46_022561C0.c', + 'overlay046/ov46_02256BCC.c', + 'overlay047/ov47_022561C0.c', + 'overlay047/ov47_02256634.c', + 'overlay048/ov48_022561C0.c', + 'overlay048/ov48_0225650C.c', + 'overlay049/ov49_022561C0.c', + 'overlay049/ov49_022563D4.c', + 'overlay050/ov50_022561C0.c', + 'overlay050/ov50_02256510.c', + 'overlay051/ov51_022561C0.c', + 'overlay051/ov51_0225632C.c', + 'overlay052/ov52_022561C0.c', + 'overlay052/ov52_02256694.c', + 'overlay053/ov53_022561C0.c', + 'overlay053/ov53_02256420.c', + 'overlay054/ov54_022561C0.c', + 'overlay054/ov54_0225642C.c', + 'overlay055/ov55_022561C0.c', + 'overlay055/ov55_0225632C.c', + 'overlay056/ov56_022561C0.c', + 'overlay057/ov57_021D0D80.c', + 'overlay057/ov57_021D0F30.c', + 'overlay058/ov58_021D0D80.c', + 'overlay059/ov59_021D0D80.c', + 'overlay059/ov59_021D2A2C.c', + 'overlay059/ov59_021D2B44.c', + 'overlay059/ov59_021D2F88.c', + 'overlay060/ov60_0221F800.c', + 'overlay060/ov60_0221F968.c', + 'overlay061/ov61_0222AE60.c', + 'overlay061/ov61_0222B008.c', + 'overlay061/ov61_0222BC4C.c', + 'overlay061/ov61_0222BF44.c', + 'overlay062/ov62_0222F2C0.c', + 'overlay062/ov62_022300D8.c', + 'overlay062/ov62_02231690.c', + 'overlay062/ov62_02234A10.c', + 'overlay062/ov62_02235278.c', + 'overlay062/ov62_02235E64.c', + 'overlay062/ov62_02236CBC.c', + 'overlay062/ov62_02237D24.c', + 'overlay062/ov62_02239D60.c', + 'overlay062/ov62_0223CAEC.c', + 'overlay062/ov62_0223DFA8.c', + 'overlay062/ov62_0224112C.c', + 'overlay062/ov62_02241204.c', + 'overlay062/ov62_02246B00.c', + 'overlay062/ov62_02247D74.c', + 'overlay062/ov62_02248408.c', + 'overlay063/ov63_0222AE60.c', + 'overlay063/ov63_0222BCE8.c', + 'overlay063/ov63_0222BE18.c', + 'overlay063/ov63_0222CA88.c', + 'overlay063/ov63_0222CCE4.c', + 'overlay063/ov63_0222D160.c', + 'overlay063/ov63_0222D1C0.c', + 'overlay063/ov63_0222D77C.c', + 'overlay064/ov64_0222DCE0.c', + 'overlay065/ov65_0222DCE0.c', + 'overlay065/ov65_02235060.c', + 'overlay065/ov65_02236474.c', + 'overlay065/ov65_0223648C.c', + 'overlay066/ov66_0222DCE0.c', + 'overlay066/ov66_0222DDF0.c', + 'overlay066/ov66_02230C44.c', + 'overlay066/ov66_02231428.c', + 'overlay066/ov66_0223177C.c', + 'overlay066/ov66_022324F0.c', + 'overlay066/ov66_022343A8.c', + 'overlay066/ov66_02234EA8.c', + 'overlay067/ov67_0225C700.c', + 'overlay068/ov68_0225C700.c', + 'overlay069/ov69_0225C700.c', + 'overlay070/ov70_0225C700.c', + 'overlay070/ov70_0225C858.c', + 'overlay070/ov70_0225C9B4.c', + 'overlay070/ov70_0225D9A4.c', + 'overlay070/ov70_02260A70.c', + 'overlay070/ov70_02260B44.c', + 'overlay070/ov70_02261E10.c', + 'overlay070/ov70_02262DA8.c', + 'overlay070/ov70_022630A4.c', + 'overlay070/ov70_02265F38.c', + 'overlay070/ov70_02266E9C.c', + 'overlay070/ov70_02269190.c', + 'overlay070/ov70_0226C338.c', + 'overlay070/ov70_0226C60C.c', + 'overlay070/ov70_0226C8B4.c', + 'overlay070/ov70_0226CC74.c', + 'overlay070/ov70_0226CE54.c', + 'overlay071/ov71_0223B140.c', + 'overlay071/ov71_0223C69C.c', + 'overlay071/ov71_0223CF0C.c', + 'overlay071/ov71_0223D324.c', + 'overlay072/ov72_0223D7A0.c', + 'overlay073/ov73_021D0D80.c', + 'overlay073/ov73_021D3250.c', + 'overlay074/ov74_021D0D80.c', + 'overlay075/ov75_021D0D80.c', + 'overlay076/ov76_0223B140.c', + 'overlay076/ov76_0223B870.c', + 'overlay076/ov76_0223D338.c', + 'overlay077/ov77_021D0D80.c', + 'overlay077/ov77_021D25B0.c', + 'overlay077/ov77_021D54B0.c', + 'overlay077/ov77_021D6670.c', + 'overlay077/ov77_021D6C70.c', + 'overlay078/ov78_021D0D80.c', + 'overlay079/ov79_021D0D80.c', + 'overlay079/ov79_021D183C.c', + 'overlay079/ov79_021D20F4.c', + 'overlay079/ov79_021D2268.c', + 'overlay079/ov79_021D3768.c', + 'overlay080/ov80_021D0D80.c', + 'overlay080/ov80_021D1458.c', + 'overlay080/ov80_021D2A08.c', + 'overlay080/ov80_021D2AF4.c', + 'overlay081/ov81_021D0D80.c', + 'overlay081/ov81_021D1610.c', + 'overlay082/ov82_0223B140.c', + 'overlay082/ov82_0223B2E0.c', + 'overlay083/ov83_0223B5A0.c', + 'overlay083/ov83_0223C958.c', + 'overlay083/ov83_0223D144.c', + 'overlay083/ov83_0223D150.c', + 'overlay083/ov83_0223D4CC.c', + 'overlay083/ov83_0223D6A8.c', + 'overlay083/ov83_0223F7F4.c', + 'overlay084/ov84_0223B5A0.c', + 'overlay084/ov84_0223F040.c', + 'overlay084/ov84_022403F4.c', + 'overlay085/ov85_02241440.c', + 'overlay086/ov86_0223B140.c', + 'overlay087/ov87_021D0D80.c', + 'overlay087/ov87_021D106C.c', + 'overlay088/ov88_0223B140.c', + 'overlay088/ov88_0223E9C4.c', + 'overlay089/ov89_dummy.c', + 'overlay090/ov90_021D0D80.c', + 'overlay091/ov91_021D0D80.c', + 'overlay092/ov92_021D0D80.c', + 'overlay093/ov93_021D0D80.c', + 'overlay093/ov93_021D111C.c', + 'overlay094/ov94_0223B140.c', + 'overlay094/ov94_0223BCB0.c', + 'overlay094/ov94_0223C610.c', + 'overlay094/ov94_0223D0C4.c', + 'overlay094/ov94_0223DC04.c', + 'overlay094/ov94_0223E46C.c', + 'overlay094/ov94_0223FB48.c', + 'overlay094/ov94_022414B8.c', + 'overlay094/ov94_02242AD0.c', + 'overlay094/ov94_02243EF8.c', + 'overlay094/ov94_022443E0.c', + 'overlay094/ov94_022444C8.c', + 'overlay094/ov94_02244950.c', + 'overlay095/ov95_02246C20.c', + 'overlay095/ov95_022476F0.c', + 'overlay095/ov95_02247B6C.c', + 'overlay095/ov95_02248590.c', + 'overlay095/ov95_02249740.c', + 'overlay095/ov95_02249F90.c', + 'overlay095/ov95_0224A390.c', + 'overlay095/ov95_0224ABC0.c', + 'overlay095/ov95_0224B3D8.c', + 'overlay096/ov96_0223B140.c', + 'overlay096/ov96_0223B6A0.c', + 'overlay096/ov96_0223BCE0.c', + 'overlay097/ov97_0222AE60.c', + 'overlay097/ov97_0222C174.c', + 'overlay097/ov97_0222D04C.c', + 'overlay097/ov97_0222D2F8.c', + 'overlay097/ov97_0222D30C.c', + 'overlay097/ov97_02230410.c', + 'overlay097/ov97_02232054.c', + 'overlay097/ov97_02232200.c', + 'overlay097/ov97_02232DC8.c', + 'overlay097/ov97_02233408.c', + 'overlay097/ov97_022337FC.c', +'overlay097/ov97_02233814.c', + 'overlay097/ov97_02233B18.c', + 'overlay097/ov97_02235D18.c', + 'overlay097/ov97_0223635C.c', + 'overlay097/ov97_02236380.c', + 'overlay097/ov97_02237520.c', + 'overlay097/ov97_02237694.c', + 'overlay097/ov97_02238534.c', + 'overlay097/ov97_02238D74.c', + 'overlay097/ov97_022392E4.c', + 'overlay098/ov98_02246C20.c', + 'overlay098/ov98_022471C8.c', + 'overlay098/ov98_022499C8.c', + 'overlay099/ov99_021D0D80.c', + 'overlay099/ov99_021D1A54.c', + 'overlay099/ov99_021D2C08.c', + 'overlay099/ov99_021D2E28.c', + 'overlay099/ov99_021D340C.c', + 'overlay099/ov99_021D3A40.c', + 'overlay099/ov99_021D3C18.c', + 'overlay099/ov99_021D3DE0.c', + 'overlay099/ov99_021D3E78.c', + 'overlay099/ov99_021D4134.c', + 'overlay100/ov100_021D0D80.c', + 'overlay100/ov100_021D13E4.c', + 'overlay100/ov100_021D1C44.c', + 'overlay100/ov100_021D2F0C.c', + 'overlay100/ov100_021D400C.c', + 'overlay100/ov100_021D44C0.c', + 'overlay100/ov100_021D46C8.c', + 'overlay100/ov100_021D4E04.c', + 'overlay101/ov101_021D0D80.c', + 'overlay101/ov101_021D1A28.c', + 'overlay101/ov101_021D59AC.c', + 'overlay101/ov101_021D7E48.c', + 'overlay101/ov101_021D94D8.c', + 'overlay102/ov102_021D0D80.c', + 'overlay103/ov103_dummy.c', + 'overlay104/ov104_0222DCE0.c', + 'overlay104/ov104_0222E63C.c', + 'overlay104/ov104_0222E930.c', + 'overlay104/ov104_0222EA90.c', + 'overlay104/ov104_0222ECE8.c', + 'overlay104/ov104_0222FBE4.c', + 'overlay104/ov104_02231F74.c', + 'overlay104/ov104_022332B4.c', + 'overlay104/ov104_022339B4.c', + 'overlay104/ov104_02234838.c', + 'overlay104/ov104_02234DB4.c', + 'overlay104/ov104_022358E8.c', + 'overlay104/ov104_022361B4.c', + 'overlay104/ov104_02237378.c', + 'overlay104/ov104_02237DD8.c', + 'overlay104/ov104_02239080.c', + 'overlay104/ov104_02239130.c', + 'overlay104/ov104_022394A4.c', + 'overlay104/ov104_022395F0.c', + 'overlay104/ov104_02239C58.c', + 'overlay104/ov104_0223A0C4.c', + 'overlay104/ov104_0223A7F4.c', + 'overlay104/ov104_0223AF58.c', + 'overlay104/ov104_0223B6F4.c', + 'overlay104/ov104_0223BCBC.c', + 'overlay104/ov104_0223C164.c', + 'overlay104/ov104_0223C2D4.c', + 'overlay104/ov104_0223D5D0.c', + 'overlay104/ov104_0223D768.c', + 'overlay104/ov104_0223D860.c', + 'overlay104/ov104_0223D9E4.c', + 'overlay104/ov104_0223DC7C.c', + 'overlay104/ov104_0223E894.c', + 'overlay105/ov105_02241AE0.c', + 'overlay105/ov105_02245AAC.c', + 'overlay105/ov105_02245CD0.c', + 'overlay105/ov105_02245DC4.c', + 'overlay105/ov105_02245E54.c', + 'overlay105/ov105_02245FB8.c', + 'overlay105/ov105_02246214.c', + 'overlay106/ov106_02241AE0.c', + 'overlay106/ov106_02243310.c', + 'overlay106/ov106_022435FC.c', + 'overlay106/ov106_022436E0.c', + 'overlay107/ov107_02241AE0.c', + 'overlay107/ov107_02245EB0.c', + 'overlay107/ov107_02249604.c', + 'overlay107/ov107_02249B1C.c', + 'overlay107/ov107_02249C98.c', + 'overlay107/ov107_02249D14.c', + 'overlay108/ov108_02241AE0.c', + 'overlay108/ov108_02243030.c', + 'overlay108/ov108_0224351C.c', + 'overlay108/ov108_02243630.c', + 'overlay109/ov109_021D0D80.c', + 'overlay109/ov109_021D3D50.c', + 'overlay110/ov110_021D0D80.c', + 'overlay110/ov110_021D2124.c', + 'overlay111/ov111_021D0D80.c', + 'overlay111/ov111_021D2F80.c', + 'overlay111/ov111_021D33F4.c', + 'overlay111/ov111_021D3548.c', + 'overlay112/ov112_0225C700.c', + 'overlay113/ov113_0225C700.c', + 'overlay113/ov113_0225E368.c', + 'overlay113/ov113_02260620.c', + 'overlay113/ov113_022607D8.c', + 'overlay114/ov114_0225C700.c', + 'overlay114/ov114_02260038.c', + 'overlay114/ov114_02260044.c', + 'overlay115/ov115_02260440.c', + 'overlay115/ov115_02260BBC.c', + 'overlay115/ov115_02260CEC.c', + 'overlay115/ov115_02265A18.c', + 'overlay115/ov115_02265A24.c', + 'overlay116/ov116_02260440.c', + 'overlay116/ov116_022604C4.c', + 'overlay116/ov116_02261870.c', + 'overlay116/ov116_02262A44.c', + 'overlay116/ov116_02262A8C.c', + 'overlay116/ov116_0226432C.c', + 'overlay116/ov116_02266FEC.c', + 'overlay117/ov117_02260440.c', + 'overlay117/ov117_02260668.c', + 'overlay117/ov117_022626B0.c', + 'overlay117/ov117_02263AF0.c', + 'overlay117/ov117_02266498.c', + 'overlay117/ov117_022665FC.c', + 'overlay117/ov117_022666C0.c', + 'overlay118/ov118_021D0D80.c', + 'overlay119/ov119_021D0D80.c', + 'overlay119/ov119_021D191C.c', + 'overlay120/ov120_021D0D80.c', + 'overlay121/ov121_021D0D80.c' +) \ No newline at end of file diff --git a/src/overlay012/ov12_0221FC20.c b/src/overlay012/ov12_0221FC20.c index 8fb036de3a..3a33a5ee3e 100644 --- a/src/overlay012/ov12_0221FC20.c +++ b/src/overlay012/ov12_0221FC20.c @@ -32,7 +32,7 @@ #include "overlay104/struct_ov104_0223F9E0.h" #include "overlay104/struct_ov104_02241308.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02002F38.h" #include "unk_02005474.h" diff --git a/src/overlay012/ov12_022237EC.c b/src/overlay012/ov12_022237EC.c index 80c6f71c54..501e77f742 100644 --- a/src/overlay012/ov12_022237EC.c +++ b/src/overlay012/ov12_022237EC.c @@ -6,7 +6,7 @@ #include "functypes/funcptr_020146F4.h" -#include "library/spl.h" +#include "spl.h" #include "narc.h" #include "unk_02014000.h" diff --git a/src/overlay012/ov12_0222389C.c b/src/overlay012/ov12_0222389C.c index 9b1ab69464..12746f1d80 100644 --- a/src/overlay012/ov12_0222389C.c +++ b/src/overlay012/ov12_0222389C.c @@ -7,7 +7,7 @@ #include "overlay115/struct_ov115_0226527C.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02014000.h" #include "unk_02020020.h" diff --git a/src/overlay012/ov12_0222421C.c b/src/overlay012/ov12_0222421C.c index 8a705c8669..96e4ab0c91 100644 --- a/src/overlay012/ov12_0222421C.c +++ b/src/overlay012/ov12_0222421C.c @@ -8,7 +8,7 @@ #include "overlay012/struct_ov12_02225640.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02014000.h" #include "heap.h" diff --git a/src/overlay012/ov12_02225104.c b/src/overlay012/ov12_02225104.c index cf922b53bd..3095e25527 100644 --- a/src/overlay012/ov12_02225104.c +++ b/src/overlay012/ov12_02225104.c @@ -3,7 +3,7 @@ #include "overlay012/struct_ov12_02225640.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02014000.h" #include "overlay012/ov12_0221FC20.h" diff --git a/src/overlay012/ov12_02225640.c b/src/overlay012/ov12_02225640.c index 76786761e0..d365eadfb7 100644 --- a/src/overlay012/ov12_02225640.c +++ b/src/overlay012/ov12_02225640.c @@ -6,7 +6,7 @@ #include "overlay012/struct_ov12_02225640.h" #include "overlay115/struct_ov115_0226527C.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02014000.h" #include "unk_02020020.h" diff --git a/src/overlay012/ov12_02226B84.c b/src/overlay012/ov12_02226B84.c index 8ba43e6abe..da0ffb8dea 100644 --- a/src/overlay012/ov12_02226B84.c +++ b/src/overlay012/ov12_02226B84.c @@ -23,7 +23,7 @@ #include "overlay012/struct_ov12_0223595C.h" #include "overlay012/struct_ov12_02235998.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02002F38.h" #include "unk_02006E3C.h" diff --git a/src/overlay012/ov12_02235E94.c b/src/overlay012/ov12_02235E94.c index 2124bab3a4..7a4b26f9cb 100644 --- a/src/overlay012/ov12_02235E94.c +++ b/src/overlay012/ov12_02235E94.c @@ -20,7 +20,7 @@ #include "overlay104/struct_ov104_0223F9E0.h" #include "overlay104/struct_ov104_02241308.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02002F38.h" #include "unk_02005474.h" diff --git a/src/overlay012/ov12_02237EFC.c b/src/overlay012/ov12_02237EFC.c index b759e8c2fa..8fe94e0877 100644 --- a/src/overlay012/ov12_02237EFC.c +++ b/src/overlay012/ov12_02237EFC.c @@ -8,7 +8,7 @@ #include "overlay012/struct_ov12_02237EFC.h" #include "overlay012/struct_ov12_02237F38.h" -#include "library/spl.h" +#include "spl.h" #include "unk_0200D9E8.h" #include "unk_02014000.h" diff --git a/src/overlay017/ov17_02247A48.c b/src/overlay017/ov17_02247A48.c index 020771fb3f..635906b281 100644 --- a/src/overlay017/ov17_02247A48.c +++ b/src/overlay017/ov17_02247A48.c @@ -32,7 +32,7 @@ #include "overlay017/struct_ov17_022539E4.h" #include "overlay022/struct_ov22_0225AF8C.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02002F38.h" #include "unk_02005474.h" diff --git a/src/overlay017/ov17_0224A0FC.c b/src/overlay017/ov17_0224A0FC.c index f0af8e9a09..0d06329916 100644 --- a/src/overlay017/ov17_0224A0FC.c +++ b/src/overlay017/ov17_0224A0FC.c @@ -37,7 +37,7 @@ #include "overlay022/struct_ov22_0225AF8C.h" #include "overlay104/struct_ov104_0223F9E0.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02002F38.h" #include "unk_02005474.h" diff --git a/src/overlay061/ov61_0222B008.c b/src/overlay061/ov61_0222B008.c index df2f05fb13..e3b02b2692 100644 --- a/src/overlay061/ov61_0222B008.c +++ b/src/overlay061/ov61_0222B008.c @@ -36,7 +36,7 @@ #include "overlay061/ov61_0222B008.h" #include "overlay061/ov61_0222BC4C.h" #include "overlay062/ov62_02248408.h" -#include "library/global_terminal.h" +#include "gds.h" typedef int (* UnkFuncPtr_ov61_0222E48C)(UnkStruct_ov62_022349A8 *, UnkStruct_ov61_0222B138 *); diff --git a/src/overlay061/ov61_0222BC4C.c b/src/overlay061/ov61_0222BC4C.c index fdd8f1a391..a1ccc4b2e8 100644 --- a/src/overlay061/ov61_0222BC4C.c +++ b/src/overlay061/ov61_0222BC4C.c @@ -28,7 +28,7 @@ #include "unk_020244AC.h" #include "overlay061/ov61_0222BC4C.h" -#include "library/global_terminal.h" +#include "gds.h" int ov61_0222BC4C (UnkStruct_ov62_022349A8 * param0, UnkStruct_ov61_0222B960 * param1) { diff --git a/src/overlay073/ov73_021D0D80.c b/src/overlay073/ov73_021D0D80.c index 922e737b37..1c1c1a20e5 100644 --- a/src/overlay073/ov73_021D0D80.c +++ b/src/overlay073/ov73_021D0D80.c @@ -129,7 +129,7 @@ int ov73_021D3250(UnkStruct_020067E8 * param0, int * param1); int ov73_021D3280(UnkStruct_020067E8 * param0, int * param1); int ov73_021D3404(UnkStruct_020067E8 * param0, int * param1); -const UnkStruct_0208BE5C dummy = { +const UnkStruct_0208BE5C dummy_UnkStruct_0208BE5C = { ov73_021D0D80, ov73_021D0E20, ov73_021D0F7C, diff --git a/src/overlay077/ov77_021D6C70.c b/src/overlay077/ov77_021D6C70.c index 84a962d8b4..2297a4146c 100644 --- a/src/overlay077/ov77_021D6C70.c +++ b/src/overlay077/ov77_021D6C70.c @@ -8,7 +8,7 @@ #include "struct_defs/struct_02008A90.h" -#include "library/spl.h" +#include "spl.h" #include "unk_0200762C.h" #include "unk_0201378C.h" diff --git a/src/overlay097/ov97_0222D30C.c b/src/overlay097/ov97_0222D30C.c index 382d6127af..77a70ef6fe 100644 --- a/src/overlay097/ov97_0222D30C.c +++ b/src/overlay097/ov97_0222D30C.c @@ -183,7 +183,7 @@ UnkStruct_ov97_0223E5B8 Unk_ov97_0223E568[] = { {0x13, (u32)ov97_0222D75C} }; -UnkStruct_ov97_0223E5B8 dummy[] = { +UnkStruct_ov97_0223E5B8 dummy_UnkStruct_ov97_0223E5B8[] = { {0x12, (u32)ov97_0222D4D8}, {0x13, (u32)NULL} }; diff --git a/src/overlay097/ov97_02237520.c b/src/overlay097/ov97_02237520.c index fec4587cdc..4bc29776a6 100644 --- a/src/overlay097/ov97_02237520.c +++ b/src/overlay097/ov97_02237520.c @@ -4,7 +4,7 @@ #include "heap.h" #include "overlay097/ov97_02237520.h" -#include "library/crypto.h" +#include "crypto.h" void * ov97_0223752C(u32 param0); diff --git a/src/overlay097/ov97_02237694.c b/src/overlay097/ov97_02237694.c index 3fb3bf3e4e..a2a02f5859 100644 --- a/src/overlay097/ov97_02237694.c +++ b/src/overlay097/ov97_02237694.c @@ -1,7 +1,7 @@ #include #include -#include "library/crypto.h" +#include "crypto.h" #include "assert.h" #include "struct_decls/struct_0200112C_decl.h" diff --git a/src/overlay097/ov97_02238534.c b/src/overlay097/ov97_02238534.c index 62463fedd6..ab6ceeecd0 100644 --- a/src/overlay097/ov97_02238534.c +++ b/src/overlay097/ov97_02238534.c @@ -3,7 +3,7 @@ #include #include -#include "library/crypto.h" +#include "crypto.h" #include "overlay097/funcptr_ov97_02238A4C.h" diff --git a/src/overlay100/ov100_021D4E04.c b/src/overlay100/ov100_021D4E04.c index 04916d82e1..5494c869d6 100644 --- a/src/overlay100/ov100_021D4E04.c +++ b/src/overlay100/ov100_021D4E04.c @@ -98,120 +98,6 @@ void ov100_021D4E70 (UnkStruct_ov100_021D4E3C * param0, u8 param1, u8 param2, u1 } } -static void inline_ov104_0223F1B4_sub (UnkStruct_0201CD38 * param0, void * param1) -{ - UnkStruct_ov104_0223F174_sub1 * v0 = param1; - - if (v0->unk_08) { - v0->unk_0C = 1; - v0->unk_10(v0->unk_18); - } else { - sub_02013BA8(); - } -} - -static void inline_ov104_0223F1B4_sub_1 (UnkStruct_0201CD38 * param0, void * param1) -{ - UnkStruct_ov104_0223F174_sub1 * v0 = param1; - - if (v0->unk_08 && v0->unk_0C) { - v0->unk_14(v0->unk_18); - v0->unk_0C = 0; - } -} - -static void inline_ov104_0223F1B4 (UnkStruct_ov104_0223F174_sub1 * param0, void * param1, UnkFuncPtr_ov104_0223F174 param2, UnkFuncPtr_ov104_0223F174 param3) -{ - GF_ASSERT(param0); - - param0->unk_08 = 1; - param0->unk_0C = 0; - param0->unk_18 = param1; - param0->unk_10 = param2; - param0->unk_14 = param3; - param0->unk_04 = sub_0200DA3C(inline_ov104_0223F1B4_sub, param0, 0); - param0->unk_00 = sub_0200DA04(inline_ov104_0223F1B4_sub_1, param0, 0); -} - -static void inline_ov104_0223F258 (UnkStruct_ov104_0223F174_sub1 * param0) -{ - GF_ASSERT(param0); - - if (param0->unk_04 != NULL) { - sub_0200DA58(param0->unk_04); - } - - if (param0->unk_00 != NULL) { - sub_0200DA58(param0->unk_00); - } - - sub_02013BA8(); -} - -static void inline_ov104_0223F1B4_1_sub (UnkStruct_ov104_0223F174 * param0) -{ - const void * v0; - - v0 = sub_02013B68(param0->unk_1C); - - sub_02013BA8(); - sub_02013BB8(v0, (void *)param0->unk_620, 4, 1); -} - -static void inline_ov104_0223F1B4_1 (void * param0) -{ - UnkStruct_ov104_0223F174 * v0 = param0; - - sub_02013B94(v0->unk_1C); - inline_ov104_0223F1B4_1_sub(v0); -} - -static void inline_ov104_0223F1B4_2 (void * param0) -{ - UnkStruct_ov104_0223F174 * v0 = param0; - inline_ov104_0223F1B4_1_sub(v0); -} -/* - UnkStruct_ov104_0223F174 * ov104_0223F1B4 (u32 param0, u32 param1, int param2) - { - UnkStruct_ov104_0223F174 * v0; - - v0 = Heap_AllocFromHeap(param2, sizeof(UnkStruct_ov104_0223F174)); - memset(v0, 0, sizeof(UnkStruct_ov104_0223F174)); - GF_ASSERT(v0); - - v0->unk_1C = sub_02013B10(param2, v0->unk_20, v0->unk_320); - GF_ASSERT(v0->unk_1C); - v0->unk_620 = param0; - - MI_CpuFill32(v0->unk_20, param1, sizeof(u32) * 192); - MI_CpuFill32(v0->unk_320, param1, sizeof(u32) * 192); - - inline_ov104_0223F1B4(&v0->unk_00, v0, inline_ov104_0223F1B4_1, inline_ov104_0223F1B4_2); - - return v0; - }*/ - -void ov104_0223F258 (UnkStruct_ov104_0223F174 * param0) -{ - GF_ASSERT(param0); - - inline_ov104_0223F258(¶m0->unk_00); - - if (param0->unk_1C != NULL) { - sub_02013B40(param0->unk_1C); - } - - Heap_FreeToHeap(param0); -} - -void * ov104_0223F27C (const UnkStruct_ov104_0223F174 * param0) -{ - GF_ASSERT(param0); - - return sub_02013B54(param0->unk_1C); -} - UnkStruct_ov100_021D4F9C * ov100_021D4EBC (UnkStruct_ov100_021D4EBC * param0) { UnkStruct_0201CD38 * v0; diff --git a/src/overlay104/ov104_02237378.c b/src/overlay104/ov104_02237378.c index 7acf854b43..0b0e855797 100644 --- a/src/overlay104/ov104_02237378.c +++ b/src/overlay104/ov104_02237378.c @@ -23,7 +23,7 @@ #include "overlay104/struct_ov104_0223C4CC.h" #include "overlay104/struct_ov104_0223C634.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02002F38.h" #include "unk_0200B358.h" diff --git a/src/overlay118/ov118_021D0D80.c b/src/overlay118/ov118_021D0D80.c index 3d4d711038..79540eb507 100644 --- a/src/overlay118/ov118_021D0D80.c +++ b/src/overlay118/ov118_021D0D80.c @@ -10,7 +10,7 @@ #include "struct_defs/struct_0207F248.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02005474.h" #include "unk_0200AC5C.h" diff --git a/src/overlay119/ov119_021D0D80.c b/src/overlay119/ov119_021D0D80.c index ddd49c21d0..823abeacc4 100644 --- a/src/overlay119/ov119_021D0D80.c +++ b/src/overlay119/ov119_021D0D80.c @@ -31,7 +31,7 @@ #include "overlay119/struct_ov119_021D17B8.h" #include "overlay119/struct_ov119_021D1930.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02001AF4.h" #include "unk_02002F38.h" diff --git a/src/unk_02000C88.c b/src/unk_02000C88.c deleted file mode 100644 index 9e3de48dc1..0000000000 --- a/src/unk_02000C88.c +++ /dev/null @@ -1,375 +0,0 @@ -#include -#include -#include - -#include "data_021BF67C.h" - -#include "struct_decls/struct_020067E8_decl.h" - -#include "overlay077/const_ov77_021D742C.h" -#include "overlay057/const_ov57_021D0F70.h" - -#include "struct_defs/struct_0203CC84.h" -#include "struct_defs/struct_0208BE5C.h" - -#include "unk_02000C88.h" -#include "unk_02002B7C.h" -#include "unk_02003B60.h" -#include "game_overlay.h" -#include "unk_020067E8.h" -#include "unk_0200A9DC.h" -#include "unk_0200F174.h" -#include "unk_0201378C.h" -#include "unk_02017428.h" -#include "unk_02017728.h" -#include "unk_0201CCF0.h" -#include "unk_0201D15C.h" -#include "unk_0201E3D8.h" -#include "unk_02022844.h" -#include "unk_0202419C.h" -#include "unk_020244AC.h" -#include "unk_02025E08.h" -#include "unk_0202CC64.h" -#include "unk_02034198.h" -#include "unk_020366A0.h" -#include "unk_02038FFC.h" -#include "unk_02039814.h" -#include "unk_02039A64.h" -#include "unk_0209A74C.h" - -FS_EXTERN_OVERLAY(overlay57); -FS_EXTERN_OVERLAY(overlay77); - -typedef struct { - FSOverlayID unk_00; - UnkStruct_020067E8 * unk_04; - FSOverlayID unk_08; - const UnkStruct_0208BE5C * unk_0C; - UnkStruct_0203CC84 unk_10; -} UnkStruct_02101D28; - -static void sub_02000E3C(void); -static void sub_02000E54(void); -static void sub_02000EE4(void); -static void sub_02000F10(int param0); -static void sub_02000F60(int param0); -static void sub_02000F94(int param0, int param1); -static void sub_02000F30(void); - -static UnkStruct_02101D28 Unk_02101D28; -static PMBackLightSwitch Unk_02101D20; -BOOL Unk_02101D24; -extern const UnkStruct_0208BE5C Unk_ov77_021D788C; - -void NitroMain (void) -{ - sub_0201789C(); - sub_020179E4(); - sub_02017AF4(); - - sub_02017B70(0); - PM_GetBackLight(&Unk_02101D20, NULL); - sub_0202419C(); - sub_0201378C(); - sub_02000E3C(); - sub_02002B7C(); - - sub_02002BB8(0, 3); - sub_02002BB8(1, 3); - sub_02002BB8(3, 3); - - Unk_02101D28.unk_10.unk_00 = -1; - Unk_02101D28.unk_10.unk_08 = sub_020244AC(); - - sub_02003B60(sub_0202CC98(Unk_02101D28.unk_10.unk_08), sub_02025E44(Unk_02101D28.unk_10.unk_08)); - sub_02022844(); - - if (sub_02038FFC(3) == DWC_INIT_RESULT_DESTROY_OTHER_SETTING) { - sub_02039A64(3, 0); - } - - if (sub_020247B8(Unk_02101D28.unk_10.unk_08) == 0) { - sub_0209A74C(0); - } else { - switch (OS_GetResetParameter()) { - case 0: - Unk_02101D28.unk_10.unk_04 = 0; - sub_02000EC4(FS_OVERLAY_ID(overlay77), &Unk_ov77_021D788C); - break; - case 1: - sub_0200F344(0, 0x0); - sub_0200F344(1, 0x0); - Unk_02101D28.unk_10.unk_04 = 1; - sub_02000EC4(FS_OVERLAY_ID(overlay57), &Unk_ov57_021D0F70); - break; - default: - GF_ASSERT(0); - } - } - - Unk_021BF67C.unk_6C = 1; - Unk_021BF67C.unk_30 = 0; - - sub_02001028(); - sub_0200AB84(); - sub_02017428(); - - Unk_02101D24 = FALSE; - - while (TRUE) { - sub_02000F30(); - sub_0200106C(); - sub_02017B9C(); - - if ((Unk_021BF67C.unk_38 & (PAD_BUTTON_START | PAD_BUTTON_SELECT | PAD_BUTTON_L | PAD_BUTTON_R)) == (PAD_BUTTON_START | PAD_BUTTON_SELECT | PAD_BUTTON_L | PAD_BUTTON_R)) { - if (Unk_021BF67C.unk_68 == 0) { - sub_02000F60(0); - } - } - - if (sub_020349EC()) { - sub_02000F30(); - sub_02000E54(); - sub_0201CDD4(Unk_021BF67C.unk_18); - sub_0201CDD4(Unk_021BF67C.unk_24); - - if (!Unk_021BF67C.unk_30) { - OS_WaitIrq(1, OS_IE_V_BLANK); - Unk_021BF67C.unk_2C++; - } - } - - sub_020137C4(); - sub_02017458(); - sub_020241CC(); - sub_0201CDD4(Unk_021BF67C.unk_24); - - OS_WaitIrq(1, OS_IE_V_BLANK); - - Unk_021BF67C.unk_2C++; - Unk_021BF67C.unk_30 = 0; - - sub_0200ABF0(); - sub_0200F27C(); - - if (Unk_021BF67C.unk_00 != NULL) { - Unk_021BF67C.unk_00(Unk_021BF67C.unk_04); - } - - sub_02003BD8(); - sub_0201CDD4(Unk_021BF67C.unk_20); - } -} - -static void sub_02000E3C (void) -{ - Unk_02101D28.unk_00 = 0xffffffff; - Unk_02101D28.unk_04 = NULL; - Unk_02101D28.unk_08 = 0xffffffff; - Unk_02101D28.unk_0C = NULL; -} - -static void sub_02000E54 (void) -{ - BOOL v0; - - if (Unk_02101D28.unk_04 == NULL) { - if (Unk_02101D28.unk_0C == NULL) { - return; - } - - if (Unk_02101D28.unk_08 != 0xffffffff) { - Overlay_LoadByID(Unk_02101D28.unk_08, 0); - } - - Unk_02101D28.unk_00 = Unk_02101D28.unk_08; - Unk_02101D28.unk_04 = sub_020067E8(Unk_02101D28.unk_0C, &Unk_02101D28.unk_10, 0); - Unk_02101D28.unk_08 = 0xffffffff; - Unk_02101D28.unk_0C = NULL; - } - - v0 = sub_02006844(Unk_02101D28.unk_04); - - if (v0) { - sub_02006814(Unk_02101D28.unk_04); - Unk_02101D28.unk_04 = NULL; - - if (Unk_02101D28.unk_00 != 0xffffffff) { - Overlay_UnloadByID(Unk_02101D28.unk_00); - } - } -} - -void sub_02000EC4 (FSOverlayID param0, const UnkStruct_0208BE5C * param1) -{ - GF_ASSERT(Unk_02101D28.unk_0C == NULL); - - Unk_02101D28.unk_08 = param0; - Unk_02101D28.unk_0C = param1; -} - -static void sub_02000EE4 (void) -{ - sub_020349EC(); - - OS_WaitIrq(1, OS_IE_V_BLANK); - - Unk_021BF67C.unk_2C++; - Unk_021BF67C.unk_30 = 0; - - if (Unk_021BF67C.unk_00 != NULL) { - Unk_021BF67C.unk_00(Unk_021BF67C.unk_04); - } -} - -static void sub_02000F10 (int param0) -{ - if (sub_02038AB8()) { - if (CARD_TryWaitBackupAsync() == TRUE) { - OS_ResetSystem(param0); - } - } - - sub_02000EE4(); -} - -static void sub_02000F30 (void) -{ - int v0 = sub_020389D8(); - - switch (v0) { - case 1: - sub_02000F94(1, v0); - break; - case 2: - sub_02000F94(0, v0); - break; - case 3: - sub_02000F94(1, v0); - break; - } -} - -static void sub_02000F60 (int param0) -{ - sub_0200F344(0, 0x7fff); - sub_0200F344(1, 0x7fff); - - if (sub_02037DB0()) { - sub_02024850(sub_020245A4()); - } - - while (TRUE) { - sub_0200106C(); - sub_02000F10(param0); - } -} - -static void sub_02000F94 (int param0, int param1) -{ - int v0; - BOOL v1; - - if (param1 == 3) { - sub_02039834(0, 3, 0); - } else if (0 == param0) { - if (sub_020389B8() == TRUE) { - sub_02039834(0, 6, 0); - } else { - sub_02039834(0, 2, 0); - } - } else { - if (sub_020389B8() == TRUE) { - sub_02039834(0, 5, 0); - } else { - sub_02039834(0, 0, 0); - } - } - - sub_02037DB0(); - sub_02000EE4(); - sub_02003BD8(); - - v0 = 0; - - while (TRUE) { - sub_0200106C(); - sub_02017B9C(); - - if (v0 >= 30) { - if (Unk_021BF67C.unk_48 & PAD_BUTTON_A) { - break; - } - } - - sub_02000EE4(); - - if (v0 < 30) { - v0++; - } - } - - sub_02000F60(param0); -} - -void sub_02001028 (void) -{ - RTCDate v0; - RTCTime v1; - u32 v2; - - sub_0201384C(&v0, &v1); - - v2 = v0.year + v0.month * 0x100 * v0.day * 0x10000 + v1.hour * 0x10000 + (v1.minute + v1.second) * 0x1000000 + Unk_021BF67C.unk_2C; - - sub_0201D318(v2); - sub_0201D2DC(v2); -} - -void sub_0200106C (void) -{ - PMBackLightSwitch v0, v1; - PMWakeUpTrigger v2; - - if (PAD_DetectFold()) { - if (Unk_021BF67C.unk_67 == 0) { - sub_0201E630(); - - if (CTRDG_IsPulledOut() == TRUE) { - Unk_02101D24 = TRUE; - } - -GOTOLABEL: - v2 = PM_TRIGGER_COVER_OPEN | PM_TRIGGER_CARD; - - if (Unk_021BF67C.unk_66 && (Unk_02101D24 == FALSE)) { - v2 |= PM_TRIGGER_CARTRIDGE; - } - - PM_GoSleepMode(v2, 0, 0); - - if (CARD_IsPulledOut()) { - PM_ForceToPowerOff(); - } else { - if (PAD_DetectFold()) { - Unk_02101D24 = TRUE; - goto GOTOLABEL; - } - } - - sub_0201E5FC(); - } else { - PM_GetBackLight(&v0, &v1); - - if (PM_BACKLIGHT_ON == v0) { - PM_SetBackLight(PM_LCD_ALL, PM_BACKLIGHT_OFF); - } - } - } else { - PM_GetBackLight(&v0, &v1); - - if (PM_BACKLIGHT_OFF == v0) { - PM_SetBackLight(PM_LCD_ALL, Unk_02101D20); - } - } -} diff --git a/src/unk_02014000.c b/src/unk_02014000.c index 3895205019..4f7968459e 100644 --- a/src/unk_02014000.c +++ b/src/unk_02014000.c @@ -13,7 +13,7 @@ #include "struct_defs/struct_02014910.h" #include "struct_defs/struct_02014970.h" -#include "library/spl.h" +#include "spl.h" #include "narc.h" #include "unk_0200D9E8.h" diff --git a/src/unk_0207C63C.c b/src/unk_0207C63C.c index d074d591d8..1f67c9494d 100644 --- a/src/unk_0207C63C.c +++ b/src/unk_0207C63C.c @@ -9,7 +9,7 @@ #include "struct_defs/struct_0207C894.h" #include "struct_defs/struct_0207C8C4.h" -#include "library/spl.h" +#include "spl.h" #include "unk_02014000.h" #include "heap.h" diff --git a/tools/asmdiff/Makefile b/tools/asmdiff/Makefile deleted file mode 100644 index eed8194b01..0000000000 --- a/tools/asmdiff/Makefile +++ /dev/null @@ -1,17 +0,0 @@ -CC := gcc -CFLAGS := -O2 -g -Wno-unused-result - -ifneq ($(DEBUG),1) -CFLAGS += -DNDEBUG -endif - -programs := ntrextractfile ntruncompbw - -all: $(programs) - @: - -clean: - $(RM) $(programs) - -%: %.c - $(CC) $(CFLAGS) -o $@ $< diff --git a/tools/cw/2.0/sp2/ELFIO.dll b/tools/cw/2.0/sp2/ELFIO.dll new file mode 100644 index 0000000000..c84adf0e18 Binary files /dev/null and b/tools/cw/2.0/sp2/ELFIO.dll differ diff --git a/tools/cw/2.0/sp2/MSL_All-DLL80_x86.dll b/tools/cw/2.0/sp2/MSL_All-DLL80_x86.dll new file mode 100644 index 0000000000..a733bbb982 Binary files /dev/null and b/tools/cw/2.0/sp2/MSL_All-DLL80_x86.dll differ diff --git a/tools/cw/2.0/sp2/lmgr8c.dll b/tools/cw/2.0/sp2/lmgr8c.dll new file mode 100644 index 0000000000..35bc6be4a8 Binary files /dev/null and b/tools/cw/2.0/sp2/lmgr8c.dll differ diff --git a/tools/cw/2.0/sp2/mwasmarm.exe b/tools/cw/2.0/sp2/mwasmarm.exe new file mode 100644 index 0000000000..8797554d89 Binary files /dev/null and b/tools/cw/2.0/sp2/mwasmarm.exe differ diff --git a/tools/cw/2.0/sp2/mwccarm.exe b/tools/cw/2.0/sp2/mwccarm.exe new file mode 100644 index 0000000000..b2159431db Binary files /dev/null and b/tools/cw/2.0/sp2/mwccarm.exe differ diff --git a/tools/cw/2.0/sp2/mwldarm.exe b/tools/cw/2.0/sp2/mwldarm.exe new file mode 100644 index 0000000000..8608e71aa6 Binary files /dev/null and b/tools/cw/2.0/sp2/mwldarm.exe differ diff --git a/tools/cw/2.0/sp2p2/ELFIO.dll b/tools/cw/2.0/sp2p2/ELFIO.dll new file mode 100644 index 0000000000..c84adf0e18 Binary files /dev/null and b/tools/cw/2.0/sp2p2/ELFIO.dll differ diff --git a/tools/cw/2.0/sp2p2/MSL_All-DLL80_x86.dll b/tools/cw/2.0/sp2p2/MSL_All-DLL80_x86.dll new file mode 100644 index 0000000000..a733bbb982 Binary files /dev/null and b/tools/cw/2.0/sp2p2/MSL_All-DLL80_x86.dll differ diff --git a/tools/cw/2.0/sp2p2/lmgr8c.dll b/tools/cw/2.0/sp2p2/lmgr8c.dll new file mode 100644 index 0000000000..35bc6be4a8 Binary files /dev/null and b/tools/cw/2.0/sp2p2/lmgr8c.dll differ diff --git a/tools/cw/2.0/sp2p2/mwasmarm.exe b/tools/cw/2.0/sp2p2/mwasmarm.exe new file mode 100644 index 0000000000..65aea82eee Binary files /dev/null and b/tools/cw/2.0/sp2p2/mwasmarm.exe differ diff --git a/tools/cw/2.0/sp2p2/mwccarm.exe b/tools/cw/2.0/sp2p2/mwccarm.exe new file mode 100644 index 0000000000..8454b8a32d Binary files /dev/null and b/tools/cw/2.0/sp2p2/mwccarm.exe differ diff --git a/tools/cw/2.0/sp2p2/mwldarm.exe b/tools/cw/2.0/sp2p2/mwldarm.exe new file mode 100644 index 0000000000..8608e71aa6 Binary files /dev/null and b/tools/cw/2.0/sp2p2/mwldarm.exe differ diff --git a/tools/cw/license.dat b/tools/cw/license.dat new file mode 100644 index 0000000000..02d416c700 --- /dev/null +++ b/tools/cw/license.dat @@ -0,0 +1,12 @@ +############################################################### +# CodeWarrior Development Studio for Nintendo DS v1.1 # +############################################################### + +FEATURE Win32_CWIDE_Unlimited metrowks 5.5 permanent uncounted \ + D683F3FF3C1E HOSTID=ANY TS_OK +FEATURE Win32_Plugins_ARM metrowks 2.0 permanent uncounted \ + 5DDA68DFE129 HOSTID=ANY TS_OK +FEATURE Win32_Plugins_ARM_Nitro metrowks 1.0 permanent uncounted \ + 0CF6F6A5792E HOSTID=ANY TS_OK +FEATURE Win32_Plugins_ARM_DBG metrowks 2.0 permanent uncounted \ + C81996650D7D HOSTID=ANY TS_OK diff --git a/tools/cw/meson.build b/tools/cw/meson.build new file mode 100644 index 0000000000..ff392fe2e5 --- /dev/null +++ b/tools/cw/meson.build @@ -0,0 +1,18 @@ +project('metrowerks', ['c', 'cpp'], + default_options : ['warning_level=2']) + +if host_machine.system() == 'windows' + winflags = [ + '-mconsole', + '-municode' + ] + add_project_arguments(winflags, language : ['c', 'cpp']) + add_project_link_arguments(winflags, language : ['c', 'cpp']) + add_project_arguments( + '-DUNICODE', + '-D_UNICODE', + '-D_CRT_SECURE_NO_WARNINGS', + language : ['c', 'cpp']) +endif + +executable('mwrap', 'mwrap.c') diff --git a/tools/cw/mwrap.c b/tools/cw/mwrap.c new file mode 100644 index 0000000000..1b2d335106 --- /dev/null +++ b/tools/cw/mwrap.c @@ -0,0 +1,546 @@ +#include +#include +#include +#include + +#ifdef _WIN32 +#include +#include +#include +#else +#include +#include +extern char **environ; +#endif + +#define PROGRAM_NAME "mwrap" + +#define DEFAULT_VER "2.0/sp2p2" +#define DEFAULT_CFG_FILE ".mwconfig" +#define VER_CFG 0 + +#ifdef _UNICODE +#define FMT_TS "%ls" +#else +#define FMT_TS "%s" +#endif + +// POSIX-compatibility +#ifndef _WIN32 +typedef char _TCHAR; +#define _tmain main +#define _T(...) __VA_ARGS__ +#define _ftprintf(...) fprintf(__VA_ARGS__) +#define _sntprintf(...) snprintf(__VA_ARGS__) +#define _tcscat(...) strcat(__VA_ARGS__) +#define _tcscmp(...) strcmp(__VA_ARGS__) +#define _tcscspn(...) strcspn(__VA_ARGS__) +#define _tcsdup(...) strdup(__VA_ARGS__) +#define _tcslen(...) strlen(__VA_ARGS__) +#define _tcsrchr(...) strrchr(__VA_ARGS__) +#define _tfopen(...) fopen(__VA_ARGS__) +#define _tgetenv(...) getenv(__VA_ARGS__) +#endif + +struct args { + _TCHAR *o; + _TCHAR *precompile; + bool M; + bool MD; + + bool wrap_dbg; + _TCHAR *wrap_ver; +}; + +struct args parse_args(int argc, _TCHAR *argv[], int *out_argc, _TCHAR ***out_argv) +{ + struct args args = { + .o = NULL, + .precompile = NULL, + .M = false, + .MD = false, + .wrap_dbg = false, + .wrap_ver = NULL + }; + + int new_argc = 0; + _TCHAR **new_argv = malloc(sizeof(_TCHAR *) * (argc + 2)); + new_argv[new_argc++] = NULL; + + while (argc >= 1) { + int skip = 0; + int copy = 0; + + if (_tcscmp(argv[0], _T("-o")) == 0 && + argc >= 2) { + args.o = argv[1]; + copy = 2; + } else if (_tcscmp(argv[0], _T("-precompile")) == 0 && + argc >= 2) { + args.precompile = argv[1]; + copy = 2; + } else if (_tcscmp(argv[0], _T("-M")) == 0) { + args.M = true; + copy = 1; + } else if (_tcscmp(argv[0], _T("-MD")) == 0) { + args.MD = true; + copy = 1; + } else if (_tcscmp(argv[0], _T("-wrap:dbg")) == 0) { + args.wrap_dbg = true; + skip = 1; + } else if (_tcscmp(argv[0], _T("-wrap:ver")) == 0 && + argc >= 2) { + args.wrap_ver = argv[1]; + skip = 2; + } else { + copy = 1; + } + + argc -= skip + copy; + while (skip--) argv++; + while (copy--) new_argv[new_argc++] = *argv++; + } + new_argv[new_argc] = NULL; + + *out_argc = new_argc; + *out_argv = new_argv; + return args; +} + +char *file_read(const _TCHAR *fname, size_t *size) +{ + FILE *f = _tfopen(fname, _T("rb")); + if (!f) return NULL; + fseek(f, 0, SEEK_END); + *size = ftell(f); + char *file = malloc(*size); + rewind(f); + fread(file, *size, 1, f); + fclose(f); + return file; +} + +char *tctoutf(const _TCHAR *str) +{ + if (!str) return NULL; +#ifdef _UNICODE + size_t size = WideCharToMultiByte(CP_UTF8, 0, str, -1, NULL, 0, NULL, NULL); + if (!size) return NULL; + char *res = malloc(size); + if (!res) return NULL; + WideCharToMultiByte(CP_UTF8, 0, str, -1, res, size, NULL, NULL); + return res; +#else + return strdup(str); +#endif +} + +_TCHAR *utftotc(const char *str) +{ + if (!str) return NULL; +#ifdef _UNICODE + size_t size = MultiByteToWideChar(CP_UTF8, 0, str, -1, NULL, 0); + if (!size) return NULL; + _TCHAR *res = malloc(size); + if (!res) return NULL; + MultiByteToWideChar(CP_UTF8, 0, str, -1, res, size); + return res; +#else + return strdup(str); +#endif +} + +struct config { + char *wine; + char *path_unx; + char *path_win; +}; + +const _TCHAR *cfg_file(void) +{ + const _TCHAR *path = _tgetenv(_T("MWCONFIG")); + if (!path) path = _T(DEFAULT_CFG_FILE); + return path; +} + +void cfg_save_writestr(FILE *f, const char *str) +{ + if (str) fputs(str, f); + fputc('\0', f); +} + +void cfg_save(struct config cfg) +{ + FILE *f = _tfopen(cfg_file(), _T("wb")); + if (!f) { + fprintf(stderr, PROGRAM_NAME ": cfg_save: Failed to write config\n"); + exit(EXIT_FAILURE); + } + + const char head[] = {'M', 'W', 'R', VER_CFG}; + fwrite(head, sizeof(head), 1, f); + cfg_save_writestr(f, cfg.wine); + cfg_save_writestr(f, cfg.path_unx); + cfg_save_writestr(f, cfg.path_win); + fclose(f); +} + +char *cfg_load_readstr(char *file, size_t *pos, size_t len) +{ + // Check if a string is present + if (len < *pos + 1) return NULL; + if (file[*pos] == '\0') { + // Treat empty string as empty + (*pos)++; + return NULL; + } + + // Look for the null byte + size_t readlen = strnlen(file + *pos, len - *pos); + if (len - *pos <= readlen) return NULL; + + // If found, we can safely read it + char *readstr = strdup(file + *pos); + *pos += readlen + 1; + return readstr; +} + +struct config cfg_load(void) +{ + struct config cfg; + cfg.wine = NULL; + cfg.path_unx = NULL; + cfg.path_win = NULL; + + size_t file_len = 0; + char *file = file_read(cfg_file(), &file_len); + if (!file) return cfg; + size_t file_pos = 0; + + const char head[] = {'M', 'W', 'R', VER_CFG}; + if (file_len < file_pos + sizeof(head)) return cfg; + if (memcmp(file + file_pos, head, sizeof(head)) != 0) return cfg; + file_pos += sizeof(head); + + cfg.wine = cfg_load_readstr(file, &file_pos, file_len); + cfg.path_unx = cfg_load_readstr(file, &file_pos, file_len); + cfg.path_win = cfg_load_readstr(file, &file_pos, file_len); + + free(file); + return cfg; +} + +void cfg_free(struct config cfg) +{ + free(cfg.path_win); + free(cfg.path_unx); + free(cfg.wine); +} + +void configure(int argc, _TCHAR *argv[]) +{ + _TCHAR *wine = NULL; + _TCHAR *path_unx = NULL; + _TCHAR *path_win = NULL; + + while (argc >= 1) { + if (_tcscmp(argv[0], _T("-wine")) == 0) { + wine = argv[1]; + argv += 2; argc -= 2; + } else if (_tcscmp(argv[0], _T("-path_unx")) == 0) { + path_unx = argv[1]; + argv += 2; argc -= 2; + } else if (_tcscmp(argv[0], _T("-path_win")) == 0) { + path_win = argv[1]; + argv += 2; argc -= 2; + } else { + fprintf(stderr, + PROGRAM_NAME ": configure: Invalid argument: " FMT_TS "\n", + *argv); + exit(EXIT_FAILURE); + } + } + + struct config cfg; + cfg.wine = tctoutf(wine); + cfg.path_unx = tctoutf(path_unx); + cfg.path_win = tctoutf(path_win); + if ((wine && !cfg.wine) || + (path_unx && !cfg.path_unx) || + (path_win && !cfg.path_win)) { + fprintf(stderr, PROGRAM_NAME ": configure: Conversion failed\n"); + exit(EXIT_FAILURE); + } + cfg_save(cfg); + cfg_free(cfg); +} + +_TCHAR *my_dirname(const _TCHAR *str) +{ + _TCHAR *dir = _tcsdup(str); + size_t sep = _tcslen(dir); + while (sep > 0) { + if (dir[sep] == '/') goto found; +#ifdef _WIN32 + if (dir[sep] == '\\') goto found; +#endif + sep--; + } + // Indicate current dir if no slash was found + dir[0] = '.'; + sep = 1; +found: + dir = realloc(dir, sizeof(*dir) * (sep + 1)); + dir[sep] = '\0'; + return dir; +} + +void str_resize(_TCHAR **str, size_t *max, size_t req) +{ + if (*max < req) { + while (*max < req) *max += 1024; + *str = realloc(*str, sizeof(**str) * *max); + } +} + +// Windows argv[] strings are passed as a whole, instead of being split up into +// an array. This means that *we* have to make sure to quote our arguments, and +// for some reason nobody every thought to make a library for this. +_TCHAR *win_argv_build(const _TCHAR *const *argv) +{ + size_t args_max = 1024; + size_t args_pos = 0; + _TCHAR *args = malloc(sizeof(_TCHAR) * args_max); + + bool first = true; + + while (*argv) { + const _TCHAR *arg = *argv; + + // Add a space between arguments + if (!first) { + str_resize(&args, &args_max, args_pos + 1); + args[args_pos++] = ' '; + } + first = false; + + // If it doesn't contain any special chars, copy as-is + size_t arg_len = _tcslen(arg); + if (_tcscspn(arg, _T(" \t\n\r")) == arg_len) { + str_resize(&args, &args_max, args_pos + arg_len); + memcpy(args + args_pos, arg, sizeof(_TCHAR) * arg_len); + args_pos += arg_len; + argv++; + continue; + } + + // Quote the argument + int backslashes = 0; + str_resize(&args, &args_max, args_pos + 1); + args[args_pos++] = '"'; + while (*arg) { + if (*arg == '\\') { + backslashes++; + } else if (*arg == '"') { + // Add extra backslashes to escape the quote + backslashes++; + str_resize(&args, &args_max, args_pos + backslashes); + while (backslashes--) args[args_pos++] = '\\'; + backslashes = 0; + } else { + backslashes = 0; + } + + str_resize(&args, &args_max, args_pos + 1); + args[args_pos++] = *arg; + + arg++; + } + // Add extra backslashes to avoid escaping the final quote + if (backslashes) { + str_resize(&args, &args_max, args_pos + backslashes); + while (backslashes--) args[args_pos++] = '\\'; + } + str_resize(&args, &args_max, args_pos + 1); + args[args_pos++] = '"'; + + argv++; + } + + args = realloc(args, sizeof(*args) * (args_pos + 1)); + args[args_pos] = '\0'; + + return args; +} + +void fix_depfile(_TCHAR *fname, const char *path_unx, const char *path_win) +{ + size_t file_size; + char *file = file_read(fname, &file_size); + if (!file) return; + + FILE *f = _tfopen(fname, _T("wb")); + if (!f) { + free(file); + return; + } + + size_t size_win = strlen(path_win); + bool blankline = false; + + // Replace any instances of path_win at the beginning of a line with + // path_unx, and backslashes with forward slashes. + for (size_t x = 0; x < file_size;) { + if (blankline && file_size - x > size_win && + memcmp(file + x, path_win, size_win) == 0) { + fputs(path_unx, f); + x += size_win; + } else if (file_size - x > 2 && file[x] == '\\' && + file[x + 1] != '\r' && file[x + 1] != '\n') { + fputc('/', f); + x++; + } else { + if (blankline && file[x] != ' ' && file[x] != '\t') { + blankline = false; + } + if (file[x] == '\n') blankline = true; + fputc(file[x++], f); + } + } + + fclose(f); + free(file); +} + +int _tmain(int argc, _TCHAR *argv[]) +{ + if (argc < 2) { + fprintf(stderr, PROGRAM_NAME ": Too few arguments\n"); + return EXIT_FAILURE; + } + + if (_tcscmp(argv[1], _T("-test")) == 0) return EXIT_SUCCESS; + if (_tcscmp(argv[1], _T("-conf")) == 0) { + configure(argc - 2, argv + 2); + return EXIT_SUCCESS; + } + + struct config cfg = cfg_load(); + + _TCHAR *tool_dir = my_dirname(argv[0]); + const _TCHAR *tool_ver = _T(DEFAULT_VER); + const _TCHAR *tool_bin = argv[1]; + + int new_argc; + _TCHAR **new_argv; + struct args args = parse_args(argc - 2, argv + 2, &new_argc, &new_argv); + + if (args.wrap_ver) tool_ver = args.wrap_ver; + + // Make a path of the chosen tool + size_t tool_size = _tcslen(tool_dir) + 1 + _tcslen(tool_ver) + 1 + + _tcslen(tool_bin) + 5; + _TCHAR *tool = malloc(sizeof(_TCHAR) * tool_size); + _sntprintf(tool, tool_size, _T(FMT_TS "/" FMT_TS "/" FMT_TS ".exe"), + tool_dir, tool_ver, tool_bin); + new_argv[0] = tool; + + // Add the wine command if requested + _TCHAR *wine = utftotc(cfg.wine); + if (wine) { + new_argc += 1; + new_argv = realloc(new_argv, sizeof(*new_argv) * (new_argc + 1)); + memmove(new_argv + 1, new_argv, sizeof(*new_argv) * new_argc); + new_argv[0] = wine; + } + +#ifdef _WIN32 + // Set up the environment + SetEnvironmentVariable(_T("MWLibraries"), _T(";")); + + // Execute the tool + _TCHAR *argv_quoted = win_argv_build((const _TCHAR **)new_argv); + if (args.wrap_dbg) fprintf(stderr, FMT_TS "\n", argv_quoted); + STARTUPINFO si; + PROCESS_INFORMATION pi; + DWORD exitcode; + ZeroMemory(&si, sizeof(si)); + ZeroMemory(&pi, sizeof(pi)); + si.cb = sizeof(si); + if (!CreateProcess(new_argv[0], argv_quoted, NULL, NULL, FALSE, 0, + NULL, NULL, &si, &pi)) { + fprintf(stderr, PROGRAM_NAME ": CreateProcess failed\n"); + exit(EXIT_FAILURE); + } + WaitForSingleObject(pi.hProcess, INFINITE); + GetExitCodeProcess(pi.hProcess, &exitcode); + CloseHandle(pi.hProcess); + CloseHandle(pi.hThread); + if (exitcode) return exitcode; + free(argv_quoted); +#else + // Set up the environment + setenv("MWLibraries", ";", true); + + // Execute the tool + if (args.wrap_dbg) { + for (int x = 0; x < new_argc; x++) { + printf(x ? " %s" : "%s", new_argv[x]); + } + printf("\n"); + } + pid_t pid; + if (posix_spawn(&pid, new_argv[0], NULL, NULL, new_argv, environ) != 0) { + perror(PROGRAM_NAME ": posix_spawn"); + exit(EXIT_FAILURE); + } + int exitcode; + waitpid(pid, &exitcode, 0); + if (exitcode) return exitcode; +#endif + + if (wine) free(wine); + free(tool); + free(new_argv); + free(tool_dir); + + // Fix dependency file if generated + if (cfg.path_unx && cfg.path_win) { + _TCHAR *depfile = NULL; + if (args.M) { + // Only generated a depfile + depfile = _tcsdup(args.o); + } else if (args.MD) { + // Generating a depfile as a side-effect of compilation + _TCHAR *out = NULL; + if (args.o) out = args.o; + if (args.precompile) out = args.precompile; + + // Replace filename extension with .d + if (out) { + out = _tcsdup(out); + _TCHAR *dot = _tcsrchr(out, '.'); + if (!dot) dot = _tcsrchr(out, '\0'); + *dot = '\0'; + + size_t len = dot - out + 3; + out = realloc(out, sizeof(*out) * len); + _tcscat(out, _T(".d")); + } + depfile = out; + } + + if (depfile) { + if (args.wrap_dbg) { + fprintf(stderr, "dep: " FMT_TS "\n", depfile); + fprintf(stderr, "path_unx: %s\n", cfg.path_unx); + fprintf(stderr, "path_win: %s\n", cfg.path_win); + } + fix_depfile(depfile, cfg.path_unx, cfg.path_win); + free(depfile); + } + } + + cfg_free(cfg); + return EXIT_SUCCESS; +} diff --git a/tools/fixrom/.gitignore b/tools/fixrom/.gitignore deleted file mode 100644 index 8ab48d98f9..0000000000 --- a/tools/fixrom/.gitignore +++ /dev/null @@ -1 +0,0 @@ -fixrom diff --git a/tools/fixrom/Makefile b/tools/fixrom/Makefile deleted file mode 100644 index 7a3b5e0da9..0000000000 --- a/tools/fixrom/Makefile +++ /dev/null @@ -1,13 +0,0 @@ -CC := gcc -CFLAGS := -O3 - -.PHONY: all clean - -all: fixrom - @: - -fixrom: fixrom.c - $(CC) $(CFLAGS) -o $@ $^ - -clean: - $(RM) fixrom fixrom.exe diff --git a/tools/fixrom/fixrom.c b/tools/fixrom/fixrom.c index 6c5f5da12e..51606d4b40 100644 --- a/tools/fixrom/fixrom.c +++ b/tools/fixrom/fixrom.c @@ -95,7 +95,7 @@ static uint16_t Calc_CRC16(uint8_t * data, size_t length, uint16_t crc) crc >>= 4; crc ^= y; y = CrcTable[(x >> bit) & 15]; - crc ^= y; + crc ^= y; bit += 4; if (bit == 16) { diff --git a/tools/fixrom/meson.build b/tools/fixrom/meson.build new file mode 100644 index 0000000000..4227fe29d0 --- /dev/null +++ b/tools/fixrom/meson.build @@ -0,0 +1 @@ +fixrom_exe = executable('fixrom', 'fixrom.c', native: true) \ No newline at end of file diff --git a/tools/gen_fx_consts/.gitignore b/tools/gen_fx_consts/.gitignore deleted file mode 100644 index d091085c0e..0000000000 --- a/tools/gen_fx_consts/.gitignore +++ /dev/null @@ -1 +0,0 @@ -gen_fx_consts diff --git a/tools/gen_fx_consts/Makefile b/tools/gen_fx_consts/Makefile deleted file mode 100644 index 9c9d3f4ef8..0000000000 --- a/tools/gen_fx_consts/Makefile +++ /dev/null @@ -1,31 +0,0 @@ -CC = gcc -CFLAGS := -O3 -g -DNDEBUG -DSOURCE_DIR="\"$(CURDIR)\"" - -SRCS := main.c fx_encode.c fx_data.c -OBJS := $(SRCS:%.c=%.o) - -prog := gen_fx_consts - -.PHONY: all clean - -DEPDIR := .deps -DEPFLAGS = -MT $@ -MMD -MP -MF $(DEPDIR)/$*.d - -all: $(prog) - @: - -clean: ; $(RM) -r $(DEPDIR) $(OBJS) $(prog) $(prog).exe - -$(prog): $(OBJS) - $(CC) $(LDFLAGS) -o $@ $^ - -$(OBJS): %.o: %.c -$(OBJS): %.o: %.c $(DEPDIR)/%.d | $(DEPDIR) - $(CC) $(CFLAGS) $(DEPFLAGS) -c -o $@ $< - -$(DEPDIR): ; mkdir -p $@ - -DEPFILES := $(SRCS:%.c=$(DEPDIR)/%.d) -$(DEPFILES): - -include $(wildcard $(DEPFILES)) diff --git a/tools/gen_fx_consts/fx.h b/tools/gen_fx_consts/fx.h deleted file mode 100644 index 93984e02d0..0000000000 --- a/tools/gen_fx_consts/fx.h +++ /dev/null @@ -1,31 +0,0 @@ -#ifndef GUARD_FX_H -#define GUARD_FX_H - -#include - -struct FxSpec { - const char *name; - int intpart; - int fracpart; -}; - -struct FxConst { - char *name; - const struct FxSpec *fxtype; - double value; -}; - -extern struct FxConst *gFxConstTable; -extern size_t gNFxConstTable; - -// Init and delete the above two objects -void FxConstTableInit(void); -void FxConstTableEnd(void); - -// Generates the integer value of the fixed-point value represented by FxConst* -long long MakeFix(const struct FxConst *constdef); - -// For FxSpec*, get the width in bits. -int GetFxWidth(const struct FxSpec *fxtype); - -#endif //GUARD_FX_H diff --git a/tools/gen_fx_consts/fx_data.c b/tools/gen_fx_consts/fx_data.c deleted file mode 100644 index a6f94bb78e..0000000000 --- a/tools/gen_fx_consts/fx_data.c +++ /dev/null @@ -1,128 +0,0 @@ -#include -#include -#include "fx.h" -#include "global.h" - -const struct FxSpec fx32 = {"fx32", 19, 12}; -const struct FxSpec fx64 = {"fx64", 51, 12}; -const struct FxSpec fx64c = {"fx64c", 31, 32}; -const struct FxSpec fx16 = {"fx16", 3, 12}; - -const struct FxSpec *const sFxSpecPtrs[] = { - &fx32, - &fx64, - &fx64c, - &fx16, -}; - -struct FxConst *gFxConstTable = NULL; -size_t gNFxConstTable = 0; - -void FxConstTableInit(void) { - FILE *file; - char *contents; - char *ptr; - char *linetok; - char *linetok_r; - char *commatok; - char *commatok_r; - char *_realpath; - int i, j, k; - long fsize; - long readsz; - static const char filename[] = SOURCE_DIR "/fx_const.csv"; - - atexit(FxConstTableEnd); - - file = fopen(filename, "r"); - if (file == NULL) { - fatal_error("Unable to open file '%s' for reading", filename); - } - fseek(file, 0, SEEK_END); - fsize = ftell(file); - fseek(file, 0, SEEK_SET); - contents = malloc(fsize + 1); - if (contents == NULL) { - fclose(file); - fatal_error("Unable to allocate CSV read buffer"); - } - readsz = fread(contents, 1, fsize, file); - fclose(file); - if (readsz != fsize) { - free(contents); - fatal_error("Read error"); - } - contents[fsize] = 0; - ptr = contents - 1; - gNFxConstTable = 0; - do { - ptr++; - gNFxConstTable += (*ptr != '#' && *ptr != '\n'); - ptr = strchr(ptr, '\n'); - } while (ptr != NULL); - if (gNFxConstTable == 0) { - free(contents); - fatal_error("Malformatted CSV file"); - } - gFxConstTable = malloc(gNFxConstTable * sizeof(struct FxConst)); - if (gFxConstTable == NULL) { - free(contents); - fatal_error("Unable to allocate gFxConstTable"); - } - ptr = contents; - for (i = 0; i < gNFxConstTable; i++) { - linetok = strtok_r(ptr, "\n", &linetok_r); - ptr = NULL; - if (linetok == NULL) { - gNFxConstTable = i; - break; - } - if (*linetok == '#') { - i--; - continue; - } - for (j = 0; j < 3; j++) { - commatok = strtok_r(linetok, ",", &commatok_r); - linetok = NULL; - if (commatok == NULL) { - free(contents); - fatal_error("Malformatted CSV file at line %d col %d", i, j); - } - switch (j) { - case 0: - gFxConstTable[i].name = strdup(commatok); - break; - case 1: - for (k = 0; k < len(sFxSpecPtrs); k++) { - if (strcmp(commatok, sFxSpecPtrs[k]->name) == 0) { - break; - } - } - if (k == len(sFxSpecPtrs)) { - free(contents); - fatal_error("Invalid fx type %s", commatok); - } - gFxConstTable[i].fxtype = sFxSpecPtrs[k]; - break; - case 2: - gFxConstTable[i].value = strtod(commatok, NULL); - break; - } - } - } - free(contents); -} - -void FxConstTableEnd(void) { - int i; - if (gFxConstTable != NULL) { - for (i = 0; i < gNFxConstTable; i++) { - if (gFxConstTable[i].name != NULL) { - free(gFxConstTable[i].name); - } - } - free(gFxConstTable); - gFxConstTable = NULL; - } - gNFxConstTable = 0; -} diff --git a/tools/gen_fx_consts/fx_encode.c b/tools/gen_fx_consts/fx_encode.c deleted file mode 100644 index 8110753d78..0000000000 --- a/tools/gen_fx_consts/fx_encode.c +++ /dev/null @@ -1,28 +0,0 @@ -#include -#include "fx.h" - -long long MakeFix(const struct FxConst *constdef) { - double ret_di, ret_df, value_abs; - long long ret_ii, ret_if, ret_val; - - if (constdef->value == 0) { - return 0LL; - } - - value_abs = constdef->value < 0 ? -constdef->value : constdef->value; - ret_di = floor(value_abs); - ret_df = value_abs - ret_di; - ret_ii = (long long)value_abs * (1LL << constdef->fxtype->fracpart); - ret_if = (long long)(ret_df * (double)(1LL << constdef->fxtype->fracpart) + 0.5); - ret_ii &= ~((1LL << constdef->fxtype->fracpart) - 1); - ret_if &= (1LL << constdef->fxtype->fracpart) - 1; - ret_val = ret_ii + ret_if; - if (constdef->value < 0) { - ret_val = -ret_val; - } - return ret_val; -} - -int GetFxWidth(const struct FxSpec *fxtype) { - return fxtype->fracpart + fxtype->intpart + 1; -} diff --git a/tools/gen_fx_consts/global.h b/tools/gen_fx_consts/global.h deleted file mode 100644 index b4509536fe..0000000000 --- a/tools/gen_fx_consts/global.h +++ /dev/null @@ -1,27 +0,0 @@ -#ifndef GUARD_GLOBAL_H -#define GUARD_GLOBAL_H - -#include -#include -#include -#include - -#define len(a) ((sizeof(a))/(sizeof(*(a)))) - -static inline noreturn __attribute__((format(printf, 1, 2))) void fatal_error(const char *fmt, ...) { - va_list va_args; - va_start(va_args, fmt); - vfprintf(stderr, fmt, va_args); - va_end(va_args); - fputc('\n', stderr); - exit(1); -} - -#ifndef __clang__ -#undef strlcat -#define strlcat(d,s,n) strncat(d,s,(n)-strlen(d)-1) -#undef strlcpy -#define strlcpy(d,s,n) strncpy(d,s,(n)-1) -#endif //__clang__ - -#endif //GUARD_GLOBAL_H diff --git a/tools/gen_fx_consts/main.c b/tools/gen_fx_consts/main.c deleted file mode 100644 index 19787ced2a..0000000000 --- a/tools/gen_fx_consts/main.c +++ /dev/null @@ -1,86 +0,0 @@ -#include -#include -#include "fx.h" -#include "global.h" - -#define NAMEBUF_SIZ 32 - -static inline void usage(FILE *dest) { - fprintf(dest, "USAGE: gen_fx_consts FILENAME\n\n" - "FILENAME Path to write C header. Guard will be generated\n" - " automatically from the path.\n"); -} - -int main(int argc, char ** argv) { - int i; - char namebuf[NAMEBUF_SIZ] = ""; - char *header_guard; - FILE *outfile; - - FxConstTableInit(); - if (argc < 2) { - outfile = stdout; - header_guard = "NITRO_FX_FX_CONST_H_"; - } else { - outfile = fopen(argv[1], "w"); - if (outfile == NULL) { - fatal_error("Unable to open file '%s' for writing", argv[1]); - } - header_guard = strdup(argv[1]); - if (header_guard == NULL) { - fclose(outfile); - fatal_error("Unable to allocate temp buffer for header guard"); - } - for (i = 0; header_guard[i]; i++) { - switch (header_guard[i]) { - case '.': - case '/': - header_guard[i] = '_'; - break; - default: - header_guard[i] = toupper(header_guard[i]); - break; - } - } - } - fprintf(outfile, "#ifndef %s_\n" - "#define %s_\n\n", header_guard, header_guard); - for (i = 0; i < gNFxConstTable; i++) { - long long value; - int nbyte; - char *suffix; - char *fmtstr; - int j; - value = MakeFix(&gFxConstTable[i]); - nbyte = GetFxWidth(gFxConstTable[i].fxtype) / 8; - switch (nbyte) { - case 2: - suffix = ""; - fmtstr = "#define %-32s ((%s) 0x%04hx%s) // %.12f\n"; - value &= 0xFFFFLL; - break; - case 4: - suffix = "L"; - fmtstr = "#define %-32s ((%s) 0x%08lx%s) // %.12f\n"; - value &= 0xFFFFFFFFLL; - break; - case 8: - suffix = "LL"; - fmtstr = "#define %-32s ((%s) 0x%016llx%s) // %.12f\n"; - break; - default: - fatal_error("invalid integer width: %d", nbyte); - } - snprintf(namebuf, NAMEBUF_SIZ, "%s_%s", gFxConstTable[i].fxtype->name, gFxConstTable[i].name); - for (j = 0; j < NAMEBUF_SIZ && namebuf[j]; j++) { - namebuf[j] = toupper(namebuf[j]); - } - fprintf(outfile, fmtstr, namebuf, gFxConstTable[i].fxtype->name, value, suffix, gFxConstTable[i].value); - } - fprintf(outfile, "\n#endif //%s_\n", header_guard); - if (argc >= 2) { - fclose(outfile); - free(header_guard); - } - return 0; -} diff --git a/tools/maketools/makebanner.exe b/tools/maketools/makebanner.exe new file mode 100644 index 0000000000..ea38ce4310 Binary files /dev/null and b/tools/maketools/makebanner.exe differ diff --git a/tools/maketools/makelcf.exe b/tools/maketools/makelcf.exe new file mode 100644 index 0000000000..a5e812a048 Binary files /dev/null and b/tools/maketools/makelcf.exe differ diff --git a/tools/maketools/makerom.exe b/tools/maketools/makerom.exe new file mode 100644 index 0000000000..a58d3a5e04 Binary files /dev/null and b/tools/maketools/makerom.exe differ diff --git a/tools/meson.build b/tools/meson.build new file mode 100644 index 0000000000..39d55ee1fc --- /dev/null +++ b/tools/meson.build @@ -0,0 +1,8 @@ +# Native tools +subdir('fixrom') +subdir('postconf') + +# Prebuilt tools +makebanner_exe = find_program('makebanner', native: true) +makelcf_exe = find_program('makelcf', native: true) +makerom_exe = find_program('makerom', native: true) diff --git a/tools/mwasmarm_patcher/.gitignore b/tools/mwasmarm_patcher/.gitignore deleted file mode 100644 index c9b889c594..0000000000 --- a/tools/mwasmarm_patcher/.gitignore +++ /dev/null @@ -1 +0,0 @@ -mwasmarm_patcher diff --git a/tools/mwasmarm_patcher/Makefile b/tools/mwasmarm_patcher/Makefile deleted file mode 100644 index ffdf82d980..0000000000 --- a/tools/mwasmarm_patcher/Makefile +++ /dev/null @@ -1,14 +0,0 @@ -.PHONY: all clean - -CC := gcc -CFLAGS := -O3 - -.PHONY: all clean - -all: mwasmarm_patcher - @: - -clean: ; $(RM) mwasmarm_patcher$(EXE) - -mwasmarm_patcher: mwasmarm_patcher.c - $(CC) $(CFLAGS) -o $@ $< diff --git a/tools/mwasmarm_patcher/mwasmarm_patcher.c b/tools/mwasmarm_patcher/mwasmarm_patcher.c deleted file mode 100644 index 1d7aa2044f..0000000000 --- a/tools/mwasmarm_patcher/mwasmarm_patcher.c +++ /dev/null @@ -1,254 +0,0 @@ -#include -#include -#include -#include -#include - -// mwasmarm patcher v1.2 -// Patches the Metrowerk C compiler assembler to stop the line ending bug and the 0x400 incbin bug. - -// Changelog: -// v1.1: Added patch definitions and looped over them to find the matching -// definition as well as the version. -// v1.2: Switched to array system for applying multiple patches for compiler -// versions and added 0x400 incbin fix for each version. - -struct PatchPair { - int offsetPatch; - int newByte; -}; - -struct PatchDef { - char *version; - char *sha1before; - char *sha1after; - struct PatchPair *patches; -}; - -// Patch definitions for each of the respective assembler versions. -struct PatchPair g12BasePatches[] = { - { 0x57614, 0x5 }, - { 0xD47, 0x8D }, - {0} -}; - -struct PatchPair g20BasePatches[] = { - { 0x57644, 0x5 }, - { 0xD47, 0x8D }, - {0} -}; - -struct PatchPair g20sp2p4Patches[] = { - { 0x57834, 0x5 }, - { 0xD47, 0x8D }, - {0} -}; - -// Table of definitions for each assembler version -struct PatchDef gPatchDefs[] = { - // mwasmarm 1.2/base definition - { - "mwasmarm 1.2/base", - "87f942cc0a0e90e73550d8d6f3fffcdeb5f69fa5", - "3395ac5decf49135d892e93a3e6dd38676025983", - g12BasePatches - }, - // mwasmarm 2.0/base definition - { - "mwasmarm 2.0/base", - "9d63877c776245129b4727b41d3e9e63cfc9cd28", - "ef75c3fb9f8d90cb4881386c41d8dc3ab4de7153", - g20BasePatches - }, - // mwasmarm 2.0/sp2p4 definition - { - "mwasmarm 2.0/sp2p4", - "448cb0c7f1ace4393e9a9562f819f7a9f049be83", - "caa84dd90b1987ab7b42749bd5c9dcfdcfef59f3", - g20sp2p4Patches - }, - {0} -}; - -// --------------------------------------------------------- -// Credit to ax6 for implementation of sha1 hash functions -// --------------------------------------------------------- - -void sha1_process_block (const unsigned char * block, uint32_t * state); - -unsigned char * calculate_sha1 (const void * data, unsigned length) { - uint32_t state[5] = {0x67452301, 0xefcdab89, 0x98badcfe, 0x10325476, 0xc3d2e1f0}; - const char * current; - unsigned remaining; - for (current = data, remaining = length; remaining >= 64; current += 64, remaining -= 64) sha1_process_block((const uint8_t *)current, state); - // technically only {0} is necessary, but better safe than sorry - unsigned char last_block[64] = {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}; - memcpy(last_block, current, remaining); - last_block[remaining] = 0x80; - if (remaining >= 56) { - sha1_process_block(last_block, state); - memset(last_block, 0, 64); - } - unsigned long long bit_length = ((unsigned long long) length) << 3; - for (remaining = 5; remaining; remaining --) { - last_block[58 + remaining] = bit_length; - bit_length >>= 8; - } - sha1_process_block(last_block, state); - unsigned char * result = malloc(20); - for (remaining = 0; remaining < 20; remaining ++) result[remaining] = state[remaining >> 2] >> ((~remaining & 3) << 3); - return result; -} - -static inline unsigned sha1_rotate (unsigned value, unsigned count) { - return (value << count) | (value >> (32 - count)); -} - -void sha1_process_block (const unsigned char * block, uint32_t * state) { - uint32_t words[80]; - unsigned pos, temp, count, a, b, c, d, e; - // constants used by SHA-1; they are actually simply the square roots of 2, 3, 5 and 10 as a fixed-point number (2.30 format) - const uint32_t hash_constants[4] = {0x5a827999, 0x6ed9eba1, 0x8f1bbcdc, 0xca62c1d6}; - memset(words, 0, 16 * sizeof(uint32_t)); - for (pos = 0; pos < 64; pos ++) words[pos >> 2] = (words[pos >> 2] << 8) | block[pos]; - for (pos = 16; pos < 80; pos ++) words[pos] = sha1_rotate(words[pos - 3] ^ words[pos - 8] ^ words[pos - 14] ^ words[pos - 16], 1); - a = *state; - b = state[1]; - c = state[2]; - d = state[3]; - e = state[4]; - for (pos = 0; pos < 4; pos ++) for (count = 0; count < 20; count ++) { - temp = sha1_rotate(a, 5) + e + words[pos * 20 + count] + hash_constants[pos]; - switch (pos) { - case 0: - temp += (b & c) | (~b & d); - break; - case 2: - temp += (b & c) | (b & d) | (c & d); - break; - default: - temp += b ^ c ^ d; - } - e = d; - d = c; - c = sha1_rotate(b, 30); - b = a; - a = temp; - } - *state += a; - state[1] += b; - state[2] += c; - state[3] += d; - state[4] += e; -} - -// --------------------------------------------------------- -// ax6 code end -// --------------------------------------------------------- - -__attribute__((format(printf, 1, 2))) -void fatal_printf(char *str, ...) { - va_list args; - va_start(args, str); - vprintf(str, args); - va_end(args); - exit(1); -} - -// return size in bytes -int get_file_size (FILE * fp) { - int curpos = ftell(fp); - fseek(fp, 0, SEEK_END); - int result = ftell(fp); - fseek(fp, curpos, SEEK_SET); - return result; -} - -#define SHA_DIGEST_LENGTH 20 - -void print_help(void) { - printf("Usage:\n" - "\tmwasmarm_patcher [OPTIONS] FILENAME\n\n" - "Arguments:\n" - "\tFILENAME: path to MWASMARM.exe program\n\n" - "OPTIONS:\n" - "\t-q/--quietly: Suppress verbose output\n" - "\t-h/--help: Print this message and exit\n"); -} - -int main(int argc, char *argv[]) { - int quietly = 0; - char* filename = NULL; - for (int i = 1; i < argc; i++) - { - if (argv[i][0] == '-') { - if (strcmp(argv[i], "-q") == 0 || strcmp(argv[i], "--quietly") == 0) - quietly = 1; - else if (strcmp(argv[i], "-h") == 0 || strcmp(argv[i], "--help") == 0) { - print_help(); - exit(0); - } - else - { - print_help(); - fatal_printf("Unrecognized option: %s\n", argv[i]); - } - } else if (filename != NULL) { - print_help(); - fatal_printf("Excess filename supplied\n"); - } - else - filename = argv[i]; - } - if (filename == NULL) { - print_help(); - fatal_printf("Missing required argument: filename\n"); - } else { - // Open the file and read it's sha1 hash. - FILE *f = fopen(filename, "rb+"); - if (f == NULL) { - fatal_printf("ERROR: No file detected\n"); - } - int fsize = get_file_size(f); - unsigned char *string = malloc(fsize + 1); - if (string == NULL) { - fatal_printf("ERROR: Failed to allocate string variable\n"); - } - int readvar = fread(string, 1, fsize, f); // var to surpress warning - - // Check if sha1 matches either known assembler hashes. - unsigned char *sha1 = calculate_sha1(string, fsize); - if (sha1 == NULL) { - fatal_printf("ERROR: Failed to retrieve sha1 hash\n"); - } - free(string); - - char buf[(SHA_DIGEST_LENGTH*2)+1]; - for (int i=0; i < SHA_DIGEST_LENGTH; i++) { - sprintf(&(buf[i*2]), "%02x", sha1[i]); - } - free(sha1); - - // loop over each patch definition to attempt to locate a supported version and, if - // needed, apply the patch definitions. - for (int i = 0; gPatchDefs[i].sha1before != NULL; i++) { - // check if already patched for the current loop. - if (!strcmp(buf, gPatchDefs[i].sha1after)) { - if (!quietly) printf("Supported patched version detected (%s): no action needed\n", gPatchDefs[i].version); - return 0; - } else if(!strcmp(buf, gPatchDefs[i].sha1before)) { - // we found an unpatched version: apply the patches. - for (int j = 0; gPatchDefs[i].patches[j].offsetPatch != 0; j++) { - fseek(f, gPatchDefs[i].patches[j].offsetPatch, SEEK_SET); - fputc(gPatchDefs[i].patches[j].newByte, f); - } - if (!quietly) printf("Supported unpatched version detected (%s): assembler patched\n", gPatchDefs[i].version); - return 0; - } - } - // Unable to locate supported version, quitting - fatal_printf("ERROR: Unsupported mwasmarm.exe version\n"); - } - return 0; -} diff --git a/tools/postconf/meson.build b/tools/postconf/meson.build new file mode 100644 index 0000000000..eea6eb8635 --- /dev/null +++ b/tools/postconf/meson.build @@ -0,0 +1 @@ +postconf_py = find_program('postconf.py', native: true) \ No newline at end of file diff --git a/tools/postconf/postconf.py b/tools/postconf/postconf.py new file mode 100644 index 0000000000..96666c015e --- /dev/null +++ b/tools/postconf/postconf.py @@ -0,0 +1,61 @@ +#!/usr/bin/env python3 + +import os +import platform +import re + +BUILD_DIRECTORY = os.environ["MESON_BUILD_ROOT"] +SOURCE_DIRECTORY = os.environ["MESON_SOURCE_ROOT"] +COMPILER_RULE_PATTERN = r'rule c_COMPILER[\r\n]+(?:\s\w+ =.+[\r\n]+){4}' + + +def backslash_to_forward_slash(fileString: str) -> str: + return fileString.replace('\\\\', '/') + + +def fix_static_libs(fileString: str) -> str: + '''Replace single quotes around linked libraries with double quotes''' + return fileString.replace("'lib", '"lib').replace(".a'", '.a"') + + +def is_wsl_accessing_windows() -> bool: + return ("microsoft" in platform.uname()[2].lower() and os.path.realpath(os.path.abspath(__file__)).startswith("/mnt/")) + + +def main(): + BUILD_NINJA = f'{BUILD_DIRECTORY}/build.ninja' + COMPILE_COMMANDS = f'{BUILD_DIRECTORY}/compile_commands.json' + + with open(BUILD_NINJA, 'r') as build_ninja_in, open(COMPILE_COMMANDS, 'r') as compile_commands_in: + build_ninja_string = build_ninja_in.read() + compile_commands_string = compile_commands_in.read() + + # build.ninja edits + build_ninja_string = backslash_to_forward_slash(build_ninja_string) + build_ninja_string = fix_static_libs(build_ninja_string) + build_ninja_string = nasm_to_asm(build_ninja_string) + + # compile_commands.json edits + compile_commands_string = backslash_to_forward_slash(compile_commands_string) + + # For WSL accessing Windows, paths to PCH input files must be relative + if is_wsl_accessing_windows(): + build_ninja_string = relativize_pch_paths(build_ninja_string) + compile_commands_string = relativize_pch_paths(compile_commands_string) + + with open(BUILD_NINJA, 'w') as build_ninja_out, open(COMPILE_COMMANDS, 'w') as compile_commands_out: + build_ninja_out.write(build_ninja_string) + compile_commands_out.write(compile_commands_string) + + +def nasm_to_asm(fileString: str) -> str: + return fileString.replace('Nasm', 'ASM') + + +def relativize_pch_paths(fileString: str) -> str: + '''Make paths to headers to be precompiled relative (for WSL)''' + return re.sub(r'c_PCH [\w/]+?lib', r'c_PCH ../lib', fileString) + + +if __name__ == '__main__': + main()