xenoblade/docs
Amber Brault 1db79b5458 Initial commit
Add base files

Move code.s

Create README.md

Fixed section names

Update README.md

OK

Update README.md

Start removing incbins

Add .gitignore

Update .gitignore

Remove .DS_Store files

Update

All incbins gone

Delete ldscript.ld

Update README.md

Update README.md

Start splitting .init

Update

Remove hardcoded section sizes

Start splitting text.s

Decompile __start.s

Delete __start.s

Split out OSInterrupt.s

The dol is no longer required

Update README.md

Split out printf.s

Start splitting out nw4r

Start decompiling main.s

splitting silliness

Split dvd files

Split some of OS

More splitting

Update doldisasm.py

Update Makefile

Label functions at beginning of text.s

main.c update

match main.s

Squashed commit of the following:

commit 1a25682859
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Fri Apr 22 20:17:47 2022 -0400

    Label functions at beginning of text.s

commit 81887c0e58
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Fri Apr 22 20:05:45 2022 -0400

    Update Makefile

Add progress script

Fix conflicted file

Split g3d

Split out snd

Update Makefile

Decompile code_802AEB74.s

Improve main.c

Decompile more functions used in main

Split lyt and CriWare

Delete text_7.s

Split ut

Dump non-English strings

text_5_1 defeated

More splitting/reorganization

Fix tabs in obj_files.mk

More Wii SDK splitting

More splitting

Fix OS folder name

More main.c cleanup

Document more Shift-JIS strings

Split enc

Fix a bunch of strings that weren't properly dumped

Update rodata.s

Fix more strings

Update rodata.s

More string fixing

Update

Remove some hardcoded pointers

Split C++ code according to ctors

Finish most of the splitting

Nuke all the data pointers

Kill almost all of the hardcoded pointers

Finished removing hardcoded pointers (hopefully)

There's a small chance there may be a few left, but I'm almost certain there aren't.

Update Makefile

Removed garbage strings

Rename folders according to debug strings

Fix the rest of the lwzu pairs

Dump some common floats

Fix more instruction issues

Fix more instructions with hardcoded lower 16 bits of addresses

Fix yet more lower half address instructions

Fix more instructions

Update __exception.s

More instruction fixing

Finish most of the main splitting

Separate O file list into separate groups for each part of the code

Fix a few more hardcoded address instructions

Fix function labels

Update doldisasm.py

Some more splitting

Replace .4byte with balign for functions

Add balign to all functions in the Wii SDK + others

Remove extra baligns

Fixed another hardcoded pointer instruction

It should be completely shiftable, but it'll still have to be tested by playing back a TAS or a full game playthrough.

Update README.md

Fix comments

Label enc code and remove extra baligns

Update README.md

Update README.md

Update README.md

Update README.md

Update README.md

Split more files

More library splitting

Finish splitting library code

Fix some function names

-Fix most of the labels for switch case code blocks (the first one of many of them isn't fixed due to the way it was done, need to fix those later)

Match most of the fdlibm math files

Update README.md

Match the last 3 math files

Update e_rem_pio2.c

Relabel more labels that aren't functions

Update

dispatch.c OK

Decomp a few more files

Change targsupp.c back to the asm file

Update

Did a bunch of stuff, including beginning to split up the data files into the asm code files

Update README.md

Finish labeling bte

Label misc SDK functions

Misc labeling + reorganize Metrowerks code

More labeling

Fix some labels and more labeling

More labeling

Finally figured out the __start.c mystery, it was actually meant to be in the os folder in the sdk :p

Finish labeling most of the sdk files

Finish labeling ut

Almost finish labelling g3d

Nearing the end of nw4r labeling

:)

Finished labelling almost all of nw4r

Some things can't be labelled rn, but like 99% of it is labelled, so I'm happy for now.

Label a bit of CriWare

The journey starts

Split/label SFX and SUD

Organise CriWare asm files into folders

Also label some of MFCI

More CriWare splitting/labeling

Split adxt

Label rtti stuff

Split a bit of the game code

Note for future self: alot of the file boundaries are guesses and may not be right. some of the files may also exist in other places.

Split part of the data sections

arc.c OK

PPCArch.c OK

Split data sections for bte

NdevExi2A mostly matched

DBInitInterrupts doesn't match with the GC 3.0 compiler for some reason, so it's included as asm/nonmatching for now.

Fix shiftability issue

Rename MFCI.s to mfci.s

Rename wud.s to WUD.s

Rename LSC.s to lsc.s

github action finally works (#3)

* yml attempts

dingus

dag nabbit

heck this yml

better makefile probably

workflow

* please work

* pretty please work?

* Rename wud.s to WUD.s

* Rename LSC.s to lsc.s

* Update mfci.s

* Revert "Fix shiftability issue"

This reverts commit 19543ba30e.

Co-authored-by: Amber Brault <celestialamber1@gmail.com>

play nice with mac shasum

Update README.md

Squashed commit of the following:

commit cf5060bc48d9b1f010515a522a67ecf25cb020dc
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Tue Dec 6 07:13:10 2022 -0500

    かも知れない

commit 0971ab94479d308008f7028659d432dc28b955db
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Tue Dec 6 07:09:30 2022 -0500

    Maybe

commit 5ac07eec356e31dada9b5915ba3181c5904a881d
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Tue Dec 6 07:05:49 2022 -0500

    Try to fix yml file

commit 558b01328a272c38889793211333c337da32a39b
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Tue Dec 6 07:03:57 2022 -0500

    Fix indentation

commit ae3d87979bb3cba05f1ad9d2ce0da0b378d5c3e1
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Tue Dec 6 07:01:49 2022 -0500

    Update build.yml

commit 1a15ef5ed48fc9a0d1a8d73337926905ba38807d
Author: Amber Brault <celestialamber1@gmail.com>
Date:   Tue Dec 6 06:59:04 2022 -0500

    Readd shiftability fix

CXSecureUncompression.c OK

Update sdata2_3.s

Split/label more of Criware

Oops

More CriWare splitting/labeling

Finish splitting CriWare

There may be 1 or 2 files that are inside others, but CriWare is for the most part fully split now :)

Onto the last leg of CriWare labelling

Little bit more labelling

Clean up RTTI info

Start rough splitting of Monolithlib

Splits are very much WIP, several of them are probably wrong.

Thanks to kiwi for helping with a few files from Monolithlib

First splitting pass for game code

Beginning of a long odyssey

Organize files based on XC3D debug strings and some splitting cleanup

CERandomizerSimple.cpp matched

The surrounding code still needs to be decompiled (including CERandomizer) and the data sections need to be split out for the files before it can be linked.

Lots of data splitting

Finished splitting data for monolithlib

am dumb

CERandomizer/CERandomizerSimple progress

Cleanup

More cleanup

Port symbols from XCDE

Move code at start of monolithlib to separate lib

According to XCDE symbols, the code at the start of monolithlib is actually part of the library mm, which makes more sense.

Refactor CERand

Typo

Forgot private access modifier

Make CERand statics public for now, remove `m` member prefix

Cleanup CERand

Start decompiling MTRand.cpp

Stupid

Match nextMt

Move header files for C++ sections to src

Move global mm math constants to C++

Attempt to fix ctors/dtors

Split extabindex and fix ctors/dtors issues

Preliminary extab splitting

extab is dead

The repository still won't link unfortunately.

Update

Port over some changes to the main branch

Split all data except for sdk

Label some startup functions

Delete main_new.cpp

data.s and bss.s are dead

End of the long splitting adventure

Temporarily change gitignore to push vscode settings

Port changes from dtk1 branch

am dumb

Dump some floats

Update settings.json

Why monolithsoft why

Dump most double values

Fix cvs folder case

Add dtk script

Dump more floats

Create dtk_version

Update gitignore

Misc fixes

-Remove fake switch labels
-Split a few more files

Revert main.s back to a single file + misc extab stuff

Add redisasm branch

Deduplicate labels & fix some alignment

Update asm

Fix linking issues

Style changes

Style changes part 2

Port main branch files to encounter's new disassembly

*NDevExi2A needs to be linked again

Rename cvs folder

やれやれだぜ、このコンパイラはくそ

Sync build script to pikmin 2

dumb

stupid

Update build.yml

Make git keep the mwcc_compiler folder

Update rest of functions to use macro

Start trying to separate code into libs

The repo builds now (doesn't match)

Finally get it to match again

Relink Ndev

__mem.c OK

Decompile memset and __fill_mem

MSL header organization, start CPackItem.cpp

Remove gcc dependency

Thanks again to epoch/pikmin 2 peeps

More splitting

Combine Kizuna classes into CKizunagram file

Name the vm code according to XCDE symbols

Start working on yvm.c

Initial documentation/analysis for now
Also some general improvements including removing +0x pointers in extab and labelling some more ctors

Start working on a contribution/style guide

Update CONTRIBUTING.md

Update CONTRIBUTING.md

Fix dumb typo

Properly match main.cpp

Label jump tables and destructors

Label some dtors

Update Ndev/sdk files to latest version from open_rvl

Fix compilations issues with ai.c

ai.c OK

TPL.c OK

Label IWorkEvent functions

derp

Match a few more metrowerks files

Match more of Metrowerks

Decomp more MSL, almost match ansi_fp.c

Hopefully fix float constant defines

More labelling

Delete kpad.s

Start working on CBattery

Combine more files into single files

Based on string pools

Switch to using pragma once for monolithsoft code

Also matched a few more metrosucks files :3

Almost match MWRTTI.cpp

Only stupid RTTI issues and variable issues left

Split metrowerks and sdk into sublibs

Add newlines to the end of all makefiles

Reorganize metrowerks code + nubinit OK

Update build system to upload progress to the progress website

Split Criware into sublibs

Also match two more TRK files

Update CONTRIBUTING.md

Label most of Wii SDK vars

Pain

Split nw4r into sublibs and label all variables

Finish most of lib variable labeling

bloody hell

More label cleanup

Sync build script to pikmin

scatman

dockerfiles are mid

Match some more metrodumb files

i forgor

Clean up asm

Ensure files end in a newline.

recycled format-files.py solely to fix the missing newlines

Match more sdk stuff

1% :)

only took 11 months

More cleanup

Script plugin work

:p

third time's the charm

Pad.c OK

Match some mm files

Match more mm files

Match more of mm

Update README.md

Decompile some data files

Combine math mm headers into a single file

Oops

Oops 2

Match a few OS files

Match some more of OS

Match a few more sdk files

asm cleanup, match a few more files

Match more of OS + label some ctors

Match more of OS

2% :3

Update Makefile

oops uwu

Revert "Merge branch 'main' of https://github.com/xbret/xenoblade"

This reverts commit 444dc91fbb, reversing
changes made to d4253a9271.

Match more misc sdk stuff + add some unused functions

OS.c OK

Thanks to kiwi and others

Update progress.csv

Add most unused functions to existing C files

Match more of metrohurts

Match more of metropain

wprintf.c and runtime.c OK

Match most of nw4r ut

printf.c OK

3% 🎉

Move libraries to libs folder

Move libraries to libs folder

Fully match MSL_C

Also finally fix the progress script

Update ansi_files.c

Match snd_adpcm.c

Thanks sware :3

cc_gdev.c and CircleBuffer.c OK

Match some sdk stuffs

Move mm and monolithlib to libs

Cleanup metrowerks code

More cleanup

Use mnemonics/labels for mfspr/mtspr

MWRTTI.cp OK

Match more stuff

More decomp

Thanks to SwareJonge for usb.c :3

General cleanup

mem_TRK.c OK

Thanks sware again uwu

mslsupp.c and serpoll.c OK

Fix newlines

Cleanup

dolphin_trk.c OK

Update trk.h

dolphin_trk_glue.c OK

Cleanup MetroTRK

2nd metrowerks cleanup pass

Oopsie

More cleanup

Work on TRK

msghndlr.c OK

3 more TRK files to go

Update serpoll.c

msgbuf.c OK

2 left

Fix more function names/add missing unused funcs

More TRK header organizing, fix global/locals

More TRK work

Account for struct padding

CERand.cpp and support.c OK

Finish Metrowerks

🎆🎉🎊

Cleanup MetroTRK

Port esp euart and dvd from Petari

Thanks shibbo uwu

Update

match all but two funcs in chain combo

set asm to src in makefile for the data to be correct

WIP ninja setup

still working on configure.py. this is to push progress

finish scaffolding configure.py

it's up to @CelestialAmber now

ninja tools/ignore

exception.s plays nice

Make building with ninja work

Fix compilers path in build script

Turn on verbose temporarily

Add Thaddeus' changes

Make sure devkitpro folder is setup beforehand for make

I hate my existence (and devkitpro)

Update build.yml

slash n

missed .hpp

Separate MW version and console in configure.py

Fix compiler download script

i am very dumb and silly oomfie

Create .gitkeep

I am very dumb and deserve a million bonks

Account for dkp file names on Linux

Oomfie

help me

banana

i need to stop being a baka

Fix TU alignment

Fix bss for adx files

Fix some symbol sizes

Handle fixing prefixes for binutils in download script

Actually update the old file variable :p

Monolithlib/MetroTRK cleanup first pass

Update download_ppc.py

plugin_math.cpp OK

Match more plugin files

Revamp config file

Update readme and tools

Thanks pikmin 2 :3

pluginPad.cpp OK

Fix vtable/RTTI symbol names

code_80296898 OK

Add static UnkClass

Renamed class

Delete code_80296898.s

Start mangling vtable funcs

CBattery.cpp OK

Thank you sware for matching the last function ^w^

pluginVoice.cpp OK

sj_crs.c OK

Clean up CriWare more

-Fix local/global
-Label more unlabeled functions
-Give unlabeled functions a unique label

I am a silly willy

very silly willy

Work on CGame.cpp

Update vscode stuff/work on CfObject headers

CDeviceSC.cpp OK

Thanks sware again ;-;

CDeviceClock.cpp progress

CDevice progress

i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab i hate extab

work on CDeviceVI more

Update build.yml

v4 to kill deprecation warning

CDevice work

More CDeviceGX work

CDeviceGX.cpp OK

Work on CMsgParam class, other misc improvements

Why monolithsoft why

Why can't you just use the new operator like normal programmers

ErrMesData.cpp OK

*Made up name, bc no symbols :p

Change encoding for ErrMesData.cpp to UTF8

Temporary fix for encoding woes

blehhh :p

Fixup asm/parity with dtk branch

Update compiler versions

Missed some :p

Cleanup object stuff in configure file to match dtk

Split objects from configure file, improve Makefiles

Fix remaining makefile issues

blehhh 🐈

i'm silly :p

Remove make support

Port metrowerks changes to main

i hate shift jis

Replace main branch with dtk changes
2024-11-03 14:02:06 -05:00
..
CONTRIBUTING.md Initial commit 2024-11-03 14:02:06 -05:00