1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-11-25 09:45:02 +00:00
Commit graph

323 commits

Author SHA1 Message Date
cadmic
7c2e0383f3
In fix_bss.py, really always use BSS section start from map file (#2085) 2024-08-25 16:43:07 +02:00
Dragorn421
7056423e5b
[ntsc-1.2] Decompile cic6105.c, main.c (#2068)
* decompile-OK Main, cic6105.c

* names cleanup / minimal doc

* match versions

* fix bad disasm metadata format

* bss

* bss

* review 1

* review 2

* review 3

* review 4

* cleanup

* bss

* add some sizes to disasm metadata symbols
2024-08-25 16:00:10 +02:00
cadmic
22a00b46fb
Have fix_bss.py deal with symbols referenced in .data or .rodata (#2072) 2024-08-25 10:26:18 +02:00
Dragorn421
b40e51d8c8
[ntsc-1.2] Match kaleido_collect.c, kaleido_scope.c (#2070)
* Match kaleido_{collect,scope}

* review
2024-08-24 00:44:16 -04:00
Dragorn421
bdfa56e72d
Pause docs: page backgrounds vertices and quads (#2065)
* Pause docs: page backgrounds vertices and quads

* update disasm metadata
2024-08-22 08:46:28 -04:00
cadmic
253fac4670
Grab bag of fix_bss.py fixes (#2066) 2024-08-22 01:06:09 -04:00
cadmic
5a08f14449
Fix memmove file splits (#2063) 2024-08-20 22:43:33 -04:00
Dragorn421
942df45892
Match n64dd text in code (#2058)
* match n64dd text

* format

* fixups

* add n64dd segment using baserom

* cleanup syms 1

* cleanup symbols 2

* cleanup D_800FF4B0

* fix declaration usage and linking for D_800FF4B0
2024-08-20 19:20:11 -04:00
cadmic
ec70295357
Move non-libultra libc functions to src/libc/ (#2055)
* Move non-libultra libc functions to src/libc/

* Add explicit nops in delay slots

* Don't rely on CPP expanding undefined macros to 0

* Delete old Makefile rules

* Fix type of memset()
2024-08-20 01:15:24 -04:00
Dragorn421
ebbc820ef6
Add "disasm sym_info.py" script (#2054)
* Add "disasm sym_info.py" script for investigating the expected memory layout

* review

* add friendly error if context.csv is missing

* rom as hexadecimal

* require spimdisasm 1.28.1 (technically not *required* but may as well)

* some fixups on symbol lookup logic
2024-08-19 23:58:41 +02:00
Dragorn421
6bc6cedaf8
[ntsc-1.2] Match boot_main.c, logutils.c, z_locale.c (text) (#2053)
* Match boot_main.c, logutils.c, z_locale.c (text)

* review

* review 2
2024-08-19 16:17:41 -04:00
cadmic
f5fd8daffb
Use incremental link for z_message/z_game_over data shenanigans (#2051)
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
2024-08-19 18:16:04 +02:00
cadmic
aed15faaf4
Use BSS section start from map file in fix_bss.py instead of guessing (#2045)
* Use BSS section start from map file

* Expand comment about section start heuristic

* Reword
2024-08-18 22:12:02 +02:00
Tharo
ba5574be6d
[Audio 5/?] Build the Samplebank Table (#2044) 2024-08-17 17:42:15 -04:00
cadmic
b82f54bb95
Decompile N64 anti-piracy checks in overlays (#2042)
* Decompile N64 anti-piracy checks in overlays

* Fix BSS splits (I think)

* Use physical address and comment on meaning

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

---------

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
2024-08-15 23:44:05 -04:00
Tharo
d3b9ba17da
[Audio 4/?] Build Samplebanks, match Audiotable (#2032)
* [Audio 4/?] Build Samplebanks, match Audiotable

* Fix some makefile formatting

* Add missing scope in MARK chunk handling

* Add comment to generate asm file when buffer bug data is emitted, remove duplicate CC4 definition

* Adjust comment

* SBCFLAGS

* Remove unnecessary comments on notes_lut

* Split build directories creation command into several to avoid it becoming too long

* objcopy -j -> --only-section

* Fix mkdir warning when extracted/VERSION/assets doesn't exist
2024-08-14 20:54:31 -04:00
Dragorn421
c8ec6042e1
checksums for ntsc 1.2 JP and US, accept both as baserom (#2030) 2024-08-14 18:53:39 -04:00
Dragorn421
137e0d2a10
fix preprocess_pragmas and add tests (#2038) 2024-08-14 19:53:55 +02:00
cadmic
ab1701b57a
Fix a few function names in disassembly (#2036)
* Fix z_message.c function names in disassembly

* Fix more functions
2024-08-14 04:42:22 -04:00
Dragorn421
91a534cbc9
Rewrite preprocess.py with bash and C (#2035)
* add C preprocess_pragmas and Bash preprocess

* "line return" -> newline

* align tools sources

* fix: handle files that are not newline-terminated

* use a temp directory with a same-basename file instead of a temp file

* macos compat

* remove debug code
2024-08-14 04:05:36 -04:00
cadmic
f6338bab1f
Fix tools/ido_block_numbers.py (#2037) 2024-08-12 14:17:04 -04:00
cadmic
8366b8731e
Set up build system and disassembly for ntsc-1.2 (#2021)
* Set up build system for ntsc-1.2

* Set up disassembly for ntsc-1.2

* Add all unnamed functions to functions.txt

* Update docs/retail_versions.md for ntsc-1.2

* Format

* Update docs/retail_versions.md

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Remove mention of US

* OOT_N64 -> PLATFORM_N64, OOT_GC -> PLATFORM_GC

* Move mtxutil to libultra/gu

* Fix libultra/io bss splits

* Fix merge

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-08-11 06:20:43 -04:00
cadmic
d495436190
Match remaining GC retail versions (#2019)
* Match the remaining GC retail versions

* Fix BSS ordering for existing versions

* Disable clang-format for #pragma increment_block_number

* sramResetCode -> sSramResetCode

* Replace 0xFF3F with or-ing all buttons together

* Revert "Disable clang-format for #pragma increment_block_number"

This reverts commit 406b6d26c9.

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-08-09 20:58:46 -04:00
Dragorn421
cd2264f018
Handle multiline #pragma increment_block_number (#2023)
* Handle multiline #pragma increment_block_number

* fix: align all continuation characters vertically

* simplify continuation line character alignment

* Update tools/fix_bss.py

Co-authored-by: cadmic <cadmic24@gmail.com>

---------

Co-authored-by: cadmic <cadmic24@gmail.com>
2024-08-09 20:13:59 -04:00
Tharo
ef329e633a
[Audio 2/?] Extract audio samples to wav (#2020)
* [Audio 2/?] Extract audio samples to wav

Co-authored-by: zelda2774 <69368340+zelda2774@users.noreply.github.com>

* How

* Hopefully fix warning I don't get locally

* Pad default sample filenames, comment on the vadpcm frame encoder functions, other suggested changes

* Small tweaks to above

* Remove some obsolete code

---------

Co-authored-by: zelda2774 <69368340+zelda2774@users.noreply.github.com>
2024-08-08 22:39:18 -04:00
cadmic
1021c482af
gc-us OK (#2018)
Match BSS order and delete disassembly data
2024-08-08 03:26:48 -04:00
cadmic
feac688313
Match NTSC file select (#1998)
* Match NTSC file select

Co-authored-by: inspectredc <inspectredc@gmail.com>

* nes -> eng in macros

* Duplicate more code but use less #ifs

* Format

---------

Co-authored-by: inspectredc <inspectredc@gmail.com>
2024-08-08 00:27:02 -04:00
Tharo
29acf96db2
[Audio 1/?] Extract Samplebanks and Soundfonts to XML (#2008)
* [Audio 1/?] Extract Samplebanks and Soundfonts to XML

* Remove config.py and use the version yamls for addresses, other suggested changes

* Adjust setup-audio

* Remove some commented out dead code (MM review)
2024-08-08 00:11:39 -04:00
cadmic
0da402b9de
Automate fixing BSS ordering (#2009)
* Automate fixing BSS ordering

* Typo

* Some cleanups

* Move pragma check after printing BSS info

* Some proofreading

* multiprocessing, require version, some colors

* Tweak output

* Black + mypy

* Move logging and sys.exit out of helper functions

* Use stdout instead of stderr in fix_bss.py

* Add suggestion to conflicting offsets error

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Remove var = list[T]()

* Improve error handling

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Add error if no pointers to BSS

* Add comment about process_file_worker

* Only print updates if stdout is a tty

* Use new binary-search-esque candidate generation algorithm

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Add Wikipedia link

* More comment tweaks

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-08-02 20:31:15 -04:00
cadmic
5515aa1705
Configure incbins in version config instead of using the Debug ROM (#2005)
* Run CPP for data/*.s

* Configure incbins in version config instead of using the Debug ROM
2024-07-28 00:24:13 -04:00
cadmic
294da9e355
Detect shifted .bss sections in check_ordering.py (#1992)
* Restrict check_ordering.py to .bss sections by default

* Detect shifted .bss sections in check_ordering.py
2024-07-27 22:29:15 -04:00
cadmic
47fd023238
Match NTSC z_kanfont.c and z_message.c (#1997)
* Match NTSC z_kanfont.c and z_message.c

Co-authored-by: inspectredc <inspectredc@gmail.com>

* Apply suggestions from code review

Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>

* Remove now-unnecessary padding

* Remove msgBufDecoded comment

* Use == NULL for fake match

* Rename Message_DrawText{JPN,NES} -> Message_DrawText[Wide]

* Font_LoadKanji -> Font_LoadCharWide

* Restore FONT_MESSAGE_OFFSET/FONT_MESSAGE_LENGTH

---------

Co-authored-by: inspectredc <inspectredc@gmail.com>
Co-authored-by: Tharo <17233964+Thar0@users.noreply.github.com>
2024-07-21 21:50:20 -04:00
Dragorn421
a1c7937dba
make format.py clean up extra whitespace, also in .h files (#1991)
* make format.py clean up extra whitespace, also in .h files

* fixup

* cleanup whitespace msg

* Update check_format.py to also check non-src files touched by format.py

* format
2024-07-17 19:32:55 -04:00
cadmic
a6438f0533
Handle messages with different box types/positions between JPN/NES (#1984)
* Handle messages with different box types/positions between JPN/NES

* Remove redundant case

* More asserts

* Be a bit more Pythonic
2024-07-17 17:56:00 -04:00
cadmic
bf3339a16d
Set up build system and disassembly for gc-us (#1982)
* Build gc-us

* Set up gc-us disassembly

* Don't disasm unchanged overlays

* Fix gc-eu-mq BSS

* romalign link_animetion for NTSC

* Explicitly set CPP defines to 0/1

* Add #ifs to segment_symbols.h

* Add sButtonTextures now

* Fix message _SHIFTL usage

* Don't ifdef LANGUAGE_MAX
2024-07-06 21:38:31 +02:00
Tharo
baf1e8c174
Reworked text extraction + add JP text extraction (#1980)
* Reworked text extraction + add JP text extraction

* Format

* Suggested changes

* Correct address for gc-us sJpnMessageEntryTable

Co-authored-by: cadmic <cadmic24@gmail.com>

---------

Co-authored-by: cadmic <cadmic24@gmail.com>
2024-07-02 22:42:52 -04:00
cadmic
1b0e35c89a
Extract NTSC assets for gc-us (#1973)
* Extract NTSC assets for gc-us

* Extract kanji

https://github.com/zeldaret/mm/pull/1536

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: emilybrooks <emilybrooksemilybrooks@gmail.com>

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: emilybrooks <emilybrooksemilybrooks@gmail.com>
2024-06-26 06:22:26 -04:00
cadmic
9def6f4d0d
Set up multiversion assets with ZAPD and match gc-eu (#1967)
* Add ZAPD hack to deal with extracted/VERSION/ in include paths

* Extract assets to extracted/VERSION

* Add ZAPD flags to override virtual address / start offset / end offset

* Configure offsets for code and overlay assets

* Reorganize ZAPD configs

* Match gc-eu-mq

* Match gc-eu

* Remove old asset dirs during distclean

* Revert "Remove old asset dirs during distclean"

This reverts commit fc8027a75f.

* make zapd addresses globals int64_t so they can store uint32_t addresses and -1

* slight cleanup extract_assets.py

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "0285e11f0"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "0285e11f0"
git-subrepo:
  version:  "0.4.6"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-06-24 15:22:39 +02:00
cadmic
b2d80568b9
Automatically find end of staff message table (#1970) 2024-06-22 09:20:49 -04:00
cadmic
0ddd64fd6c
Introduce version-specific YAML config (#1957) 2024-06-20 22:26:32 -04:00
Dragorn421
adcc1cecb1
Fix check_ordering.py checking for shifted/nonmatching-besides-relocs (#1961) 2024-06-19 00:16:02 -04:00
cadmic
7332e8ee76
Delete unused yaz0tool (#1959) 2024-06-18 20:53:19 -04:00
cadmic
44ca32168a
Check buffers segment in check_ordering.py (#1960) 2024-06-18 20:40:28 -04:00
cadmic
eb660765b1
Change linker script so gGameOverTimer can be in z_game_over.c (#1939)
* Change linker script so gGameOverTimer can be in z_game_over.c

* gGameOverTimer -> sGameOverTimer

* include_data_only_with_rodata -> include_data_only_within_rodata
2024-06-10 10:07:51 -04:00
cadmic
ff52c90928
Check baserom hash before decompression (#1952) 2024-05-05 18:45:45 -04:00
cadmic
681f276f8a
Delete disassembly data for gc-eu-mq (#1942) 2024-04-17 09:48:12 -04:00
cadmic
d59ca6cea2
Set up gc-eu and match all code (#1938)
* Set up gc-eu and match all code

* Format

* Mark gc-eu-mq as WIP until it builds OK

* Move original/MQ map mark data to separate files

* Add #includes to .inc.c files to help out VS Code

* Use #if in spec instead of .inc.c files
2024-04-15 13:36:29 -04:00
fig02
295a8669b8
Player: Document "WaitForPutAway" (#1936)
* document put away delay

* functions.txt

* add a note on delaying indefinitely

* format

* typo

* delay -> wait for put away

* revert unintended formatting change

* add comment to struct member

* format

* fix functions.txt
2024-04-15 13:02:43 -04:00
cadmic
f643499462
Match retail BSS ordering (#1927)
* Match retail BSS ordering

* Revert moving some global variables to headers

* Adjust block numbers after header changes

* Fix debug build

* Overlay bss ordering

* Fix BSS ordering after header changes

* gc-eu-mq OK

* Implement preprocessor for #pragma increment_block_number

* Transfer usage comment from reencode.sh

* Use temporary directory instead of temporary file

* Move ColChkMassType back
2024-04-14 23:51:32 +02:00
cadmic
731fe6da82
Line up code segment for gc-eu-mq (#1918) 2024-03-29 11:11:45 -04:00
cadmic
39de6ce293
Extract unused scene headers (#1930)
* Extract unused scene headers

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "1300a4f36"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "1300a4f36"
git-subrepo:
  version:  "0.4.6"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "110b9eb"

* Add more unused arguments to CS_LIGHT_SETTING
2024-03-23 12:38:05 -04:00
fig02
bd0941405d
Document Player's Face and z_actor FaceChange functions (#1928)
* create some enums

* gonna try struct instead of array

* struct works. add docs too

* inline function comments

* fix function comment

* name faces, move enums

* rename textures

* outnames

* remove comments

* change comment slightly

* fixup face comments

* review

* offset comments

* add and use PLAYER_FACE_MAX

* typo

* more comment on blinkDuration

* another change to the comment
2024-03-23 12:21:45 -04:00
Dragorn421
5834c335e6
git subrepo pull --force tools/fado (#1924)
subrepo:
  subdir:   "tools/fado"
  merged:   "7fad57f83"
upstream:
  origin:   "git@github.com:EllipticEllipsis/fado.git"
  branch:   "master"
  commit:   "7fad57f83"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "110b9eb"
2024-03-13 12:33:58 -04:00
cadmic
17d683780d
Make BSS ordering script check ordering for all sections (#1920)
* Rename bss_reordering.py -> check_ordering.py

* Check all segments for ordering issues, not just bss

* Reword error message

* mapfile_segments -> source_code_segments

* Remove redundant vram check
2024-03-09 17:28:46 -05:00
Tharo
0159d43352
mkldscript: Capture more special rodata sections for GCC (#1919) 2024-03-09 16:54:42 +01:00
Dragorn421
68a86d2d00
Colliders: change "touch, bump" to AT and AC (elems) (#1637)
* toucherFlags, bumperFlags -> atElemFlags, acElemFlags

* TOUCH_ -> ATELEM_

* BUMP_ -> ACELEM_

* ColliderElementTouch,Bump -> ColliderElementDamageInfoAT,AC

* toucher,bumper -> atDmgInfo,acDmgInfo

* Update docs and zcolchk funcs names

* run formatter

* remove the last mentions of "bump" for colliders

* Update renamed functions in disasm
2024-03-04 19:33:08 -05:00
cadmic
bf37ad1368
Move baserom segments to extracted/ (#1916)
* Move baserom segments to extracted/

* Add old baserom segments dir back to .gitignore

* Rename segments/ -> baserom/
2024-03-04 19:06:26 -05:00
cadmic
9a5b4f3845
Add script to report BSS reordering (#1914)
* Write script to report BSS reordering

* Pin pyelftools version

* Fail on unknown relocation types

* Add sanity check for shifted ROM

* segment -> mapfile_segment

* Fix inconsistent offset/address naming

* Format negative addends

* Don't attempt to find relocs in .bss sections

* Compare build_value to mapfile VRAM
2024-03-04 18:58:36 +01:00
cadmic
9c09dcd4cd
Match retail z_fishing.c (#1905) 2024-03-04 17:57:16 +01:00
cadmic
01a5fa9a45
Remove 0xFF padding from uncompressed ROMs (#1910)
* Remove 0xFF padding from uncompressed ROMs

* Add comment about overdump contents

* Update checksum in README

* Reword comment
2024-03-04 11:39:16 -05:00
cadmic
0407594107
Hacks for building nes_font_static and nes_message_data_static with gc-eu-mq (#1721)
* Hack nes_font_static and nes_message_data_static

* Make hardcoded config a bit more consistent

* Put debug ROM first

* Reword comment

* Move nes_font_static hack to spec

* Restore extracted/gc-eu-mq
2024-03-02 16:05:15 -05:00
Dragorn421
a6f646dc65
Introduce extracted/VERSION, with text extracted there (#1730)
* Introduce assets/_extracted/VERSION, with text extracted there

* move to `extracted/text/`

* Update gitignore s

* rework args for msgenc.py

* put mkdir with others, until theyre all moved at once

* move 0xFFFC back to being extracted, making it use specific macro `DEFINE_MESSAGE_NES` to handle its special behavior

* prettier gitignore

* Move messages 0xFFFC, 0xFFFD to committed message_data.h
2024-03-01 22:09:57 -05:00
cadmic
ca45c543f6
Add script to print block numbers for BSS ordering (#1707)
* Write script to print block numbers for BSS ordering

* Rename to ido_block_numbers.py

* Update ido_block_numbers.py for reencode.sh
2024-03-01 16:40:27 -05:00
Dragorn421
bdee3d33b4
No longer use asm-processor (#1824)
* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "b3bfa14cf"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "b3bfa14cf"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "110b9eb"

* use CS_FLOAT

* update csdis

* update committed csdata

* finish updating csdis.py

* add script to reextract committed csdata

* dont use asm-processor, use iconv for reencoding utf8 to eucjp

* remove asm-processor csdata usage remnants

* --cs-float hex

* delete tempfile at end of reencode.sh (may want to rm even if compilation fails though?)

* comment reencode.sh

* comment CMD_F

* do not break permuter guessing compile command, by not reencode.sh-wrapping compilation under PERMUTER (thanks anghelo)

* fix the permuter fix

* pad -> sBssDummyNeg1

* reencode.sh: rm tempfile on script exit (including on error)

* renumber sBssDummy vars in zcolchk from 0

* Revert "--cs-float hex"

This reverts commit 85267dc348.

* Revert BSS changes

* Add linemarker to reencoded files for better error message

* fix audio/general.c bss

* make reencode.sh work on macOS

* touch up csdis, csdis_re

---------

Co-authored-by: cadmic <cadmic24@gmail.com>
2024-03-01 16:12:22 -05:00
Tharo
c521f1f8ae
Remove gSystemHeap and use _buffersSegmentEnd instead, make buffer alignments explicit for gcc (#1901)
* Remove gSystemHeap and use _buffersSegmentEnd instead, make buffer alignments explicit for gcc

* ALIGNEDn -> ALIGNED(n), reposition alignment attribute for PreNmiBuff

* Correct positioning of ALIGNED for filter data in audio/lib/data.c

* Add ALIGNED to TypenameMacros

* ALIGNED(4) on same line for PreNmiBuff

* Revert audio load.c change, to be submitted separately
2024-02-27 19:01:47 -05:00
Tharo
7f64ace8f0
RNG doc (#1892)
* RNG doc

* Add some missing note qualifiers in comments

* code_800FD970 -> rand in Makefile and disasm CSVs
2024-02-26 22:21:25 -05:00
cadmic
57ae8ae1dd
Mostly match retail bosses, part 2 (#1894)
* Bosses part 2

* Remove newline
2024-02-26 22:16:38 -05:00
cadmic
1da87b1e7f
Match En actors D-G (#1889)
* Match entity actors D-G

* Remove SET_EN_GOROIWA_SPEED

* Actually match z_en_elf.c

* GET_EN_GOROIWA_SPEED -> EN_GOROIWA_SPEED
2024-02-26 21:55:30 -05:00
cadmic
10bae68937
Match En actors A-C, and a few more (#1890) 2024-02-24 13:00:37 -05:00
Dragorn421
5c3a722aca
Fixup permuter_settings (#1746)
* fix how permuter imports PRINTF macros wrt the ido-has-no-variadic-macros hack

* more permuter_settings fixups
2024-02-20 07:38:58 -05:00
Dragorn421
1ba2d6d0f9
Rework disassembly: out of makefile, separate sections, relocs (#1728)
* Rework disassembly: out of makefile, separate sections, relocs

* another nice print

* fix type hints for python 3.8 dinosaurs

* reencode from utf-8 to euc-jp (iconv) before assemble

* Add "include guards" to macro.inc

* For producing the expected file object files, assemble sections together instead of linking together the individually assembled sections

* review

* fixup

* require spimdisasm >=1.21.0

* remove assembling sections individually (for now)

* uppercase encoding names (standard)
2024-02-12 20:20:25 -05:00
Derek Hensley
0ac4448d99
Syms DMA Entries Extraction Support (#1708)
* Archive compression support + small cleanups

* UNSET spec and PR comment

* UNSET -> SYMS

* Syms comment

* PR review

* remove stderr

* Format

* format2

* Remove trailing ,s
2024-02-12 20:10:20 -05:00
Dragorn421
9da4e17c8f
Split msgdis from extract_assets (#1723)
* split msgdis from extract_assets

* move import
2024-02-05 20:40:31 -05:00
cadmic
54ffd50fa2
Extract ROM segments from gc-eu-mq (take 2) (#1709)
* Extract ROM segments from gc-eu-mq (take 2)

* Apply suggestions from code review

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Typo

* dma_{start,names} -> dmadata_{start,names}

* Restore dest

* Don't assume rom location == vrom location

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-02-04 22:59:09 -05:00
cadmic
d674dad3da
Match compression for gc-eu-mq (#1704)
* Improve compression

* Format

* Typo

* Use Python assignment expression in tools/dmadata.py

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Review decompress_baserom.py

* Replace DEFINE_DEBUG_SCENE with CPP defines

* Pass is_zlib_compressed instead of version

* Reword NOLOAD comment in write_compress_ranges

* Remove redundant comment

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-02-03 23:59:19 +01:00
Derek Hensley
5785c7adfb
Move roms to build folder (#1651)
* Move built roms to build directory, along with rename map and linker script

* PR review

* sym_info fix

* Revert docs/tutorial/data.md change
2024-02-02 16:34:20 -05:00
Tharo
5e8e01f110
z_view.c gc-eu-mq OK (#1681)
* z_view.c retail

* Replace PERSPECTIVE_EDITOR_ACTIVE, adjust PRINTF selection condition

* Macro-ify View_ErrorCheckEyePosition
2024-01-31 20:09:16 -05:00
Derek Hensley
06379c3109
Gamealloc, Graph, and Graphalloc retail OK (#1675)
* Gamealloc OK

* Graph + Graphalloc OK

* PR review

* gfxalloc

* new lines

* Remove imposter
2024-01-31 19:07:12 -05:00
engineer124
a0d31dba68
Document Audio Thread Commands (#1399)
* begin docs

* cleanup

* copy over progress

* cleanup

* small cleanup

* more docs, fill out cmds

* small touchup

* pan weight ganon comment

* fix specId

* seqcmd cleanup

* format

* small cleanup

* one more thing

* small feedback from MM

* partial PR

* some PR Suggestions

* small adjustments

* ticks, seqticks, frames, updates: term cleanup

* small fix

* PR Review

* PR Review

* PR Review

* rm param

* adjust comment

* update renamed functions

* format

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-01-31 18:25:23 -05:00
Dragorn421
d65fb6ed28
Check format: only check modified files, v2 (#1680)
* Check format: only check modified files, v2

* cheeky z_play edit

* format

* rename z_play.c -> z_play_.c

* Revert "rename z_play.c -> z_play_.c"

This reverts commit 9da9e76309.

* rm z_moji.c

* Revert "rm z_moji.c"

This reverts commit bd2d5acb5a.
2024-01-31 18:05:33 -05:00
Dragorn421
44408ce219
Only check formatting on modified files (#1673)
* only check formatting on modified files (attempt 1)

* foreshadow maximum command string length being an issue and pass files list using a file

* rm temp file list otherwise it shows in git status and counts as a "formatting diff"...

* cheeky z_play modif

* format
2024-01-30 22:25:24 -05:00
Dragorn421
17f08788aa
subrepo and update asm-differ (#1664)
* git subrepo clone git@github.com:simonlindholm/asm-differ.git tools/asm-differ

subrepo:
  subdir:   "tools/asm-differ"
  merged:   "11eee5916"
upstream:
  origin:   "git@github.com:simonlindholm/asm-differ.git"
  branch:   "main"
  commit:   "11eee5916"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "110b9eb"

* ln -s ./tools/asm-differ/diff.py diff.py
2024-01-30 15:25:15 -05:00
cadmic
be731f8a35
Move __osPfsInodeCache and __osPfsPifRam (#1654)
* Move __osPfsInodeCache to pfsgetstatus.c

* Move __osPfsInodeCache to contfps.c and __osPfsPifRam to pfsisplug.c
2024-01-29 07:30:29 -05:00
cadmic
6e0d67f9ec
Check formatting in CI (#1652)
* Check formatting in CI

* Move deleteDir() to cleanup section

* Revert "Move deleteDir() to cleanup section"

This reverts commit 4b0dd80cac.

* Give up on check_format.txt

* Fix formatting
2024-01-29 07:25:58 -05:00
Tharo
f893a83d15
Add file split for epidma.s in gc-eu-mq disassembly (#1648) 2024-01-28 15:34:00 -05:00
cadmic
98a3238822
Set up disassembly for gc-eu-mq (#1613)
* Disassemble gc-eu-mq

* Add script to report progress with matching

* Fix whitespace

* Change T|None to typing.Optional[T]

* Use typing.List

* More type annotations fixes for old Python versions

* Fix type errors

* More type annotations

* Use typing.Iterator

* Use $(PYTHON) for disassembly

* Don't use grouped targets to support very old Make versions

* Docs: suggest checking MM, mention virtualenv, clarify about expected/

* Update sym_info.py

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>

* Sync functions.txt

* Start banned symbol range at 0x10000000

* Also ban symbols from 0xC0000000-0xFFFFFFFF

* Unban IPL symbols

* Fix first_diff.py

* Sync z_collision_check functions.txt

* Ban 0xA0 symbols too

* Touch .disasm sentinel file

* Copy -jN comment in docs

* diff.py flags: remove -3, add -s

* Update docs/retail_versions.md

Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>

* Comment that segments are still from the Debug ROM

* Revert "diff.py flags: remove -3, add -s"

This reverts commit bfaae66c1d.

* Apply suggestions from code review

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Remove #ifdef example

* Reformat Python files with black

* Add copyright notice to new Python files

* Add TODOs to Makefile

---------

Co-authored-by: Derek Hensley <hensley.derek58@gmail.com>
Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-01-28 18:09:03 +01:00
Dragorn421
111c2e84ae
Fix mkdmadaata usage (#1617) 2024-01-24 13:34:34 -05:00
Anghelo Carvajal
3d9db8d34d
Setup rom decompression and compression (#1614)
* decompress baserom

* cleanup

* specific hash check

* rename baserom

* git subrepo clone (merge) --branch=5da3132606e4fd427a8d72b8428e4f921cd6e56f git@github.com:z64tools/z64compress.git tools/z64compress

subrepo:
  subdir:   "tools/z64compress"
  merged:   "5da313260"
upstream:
  origin:   "git@github.com:z64tools/z64compress.git"
  branch:   "5da3132606e4fd427a8d72b8428e4f921cd6e56f"
  commit:   "5da313260"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

* setup compression

* Add all compressed segments to the spec

* Update md5 files

* readme instructions

* cleanup

* Setup python dependencies on Jenkinsfile

* Update Makefile

Co-authored-by: cadmic <cadmic24@gmail.com>

* review

* . .venv/bin/activate

* update readme

* whoops

* Yeet other versions from decompress_baserom.py

* my bad

* Move everything to baseroms/VERSION/

* Active venv on each command

* jenkinsfile: use multiline syntax

* Put the correct path on the jenkinsfile

* Forgot to call per_version_fixes

* CC0

* Update readme

* Change where baserom segments are put into

* Update Makefile

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update crunch64

* Label compressed instead of uncompressed

* Update README.md

Co-authored-by: fig02 <fig02srl@gmail.com>

* Fix

* `make rom`

* baserom-uncompressed

* Update README.md

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update README.md

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update README.md

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update README.md

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* Update README.md

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

* review

* baserom-decompressed.z64

* ignore baseroms

* rm -rf tools/z64compress

* wip crunch64-based compress.py

* OK compress

* use ipl3checksum sum directly for cic update on compressed rom

* multithreading

* "docs"

* fix MT: move set_sigint_ignored to global level for pickling

* license compress.py

* rm junk

* Fix (or at least sort out) compress_ranges.txt dependencies

* Update tools/overlayhelpers/damage_table.py

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>

---------

Co-authored-by: cadmic <cadmic24@gmail.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
Co-authored-by: fig02 <fig02srl@gmail.com>
2024-01-24 13:00:10 -05:00
adaliaramon
6eb3bf401c
Removed unused imports and other minor improvements (#1602)
* Removed unused imports and other minor improvements

* revert tools/ZAPD/ZAPD/genbuildinfo.py

* revert diff.py

* Update sym_info.py

* revert asm_processor/

---------

Co-authored-by: fig02 <fig02srl@gmail.com>
Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-01-11 11:04:53 -05:00
louist103
c1a499c3ae
ZAPD Update (#1605)
* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "2b6f459b9"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "2b6f459b9"
git-subrepo:
  version:  "0.4.6"
  origin:   "???"
  commit:   "???"

* Update ZAPD

Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>

---------

Co-authored-by: Yanis42 <35189056+Yanis42@users.noreply.github.com>
2024-01-07 17:52:45 -05:00
cadmic
25ff0a27de
Create separate build directories based on version (#1591)
* Create separate build directories based on version

* Fix find_unused_asm.sh

* Remove find_unused_asm.sh from Jenkinsfile

* Revert diff.py

* Clarify that gc-eu-mq is not "supported" yet

* Revert xmlcreate.py (to be deleted)

* Remove gc-eu-mq for now

* Add version flags to diff_settings.py and sym_info.py

* --version -> --oot-version

* Fix --oot-version

* Revert adding version flags to tools

* Delete find_unused_asm.sh

* Revert changes to first_diff.py output in tutorial

* Factor out sed usages for spec
2024-01-05 23:27:19 +01:00
cadmic
b2f596faca
Delete old bootstrap tools (#1590)
* Delete old bootstrap tools

* Restore find_unused_asm.sh
2023-12-10 19:05:37 -05:00
fig02
836adb83ea
Rename "ITEM_LAST_USED" (#1572)
* rename

* format

* remove formatter changes

* change model group comments
2023-11-07 14:11:59 -05:00
Dragorn421
4e55168eaa
Update ZAPD (#1569)
* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "094e79734"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "094e79734"
git-subrepo:
  version:  "0.4.6"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "110b9eb"

* Add EnumData.xml where some names are now externalized

* Remove legacy typedefs for zapd, no longer needed!
2023-10-24 21:36:10 -04:00
Tharo
dadd1f8493
Add missing DWARF 5 debug sections and .pdr to linker script (#1530) 2023-08-29 11:25:12 -04:00
Derek Hensley
63606af10d
Mapfile Parser (#1518)
* mapfile parser

* Fix copy error

* PR reveiw

* Package versioning

* Fix install message
2023-07-31 22:30:26 -04:00
Derek Hensley
477f193db9
Recomp v0.6 (#1507) 2023-07-03 09:12:17 -04:00
Dragorn421
5086939880
Fixup assets extraction (#1513) 2023-05-06 23:31:30 +02:00
Dragorn421
d4a6b21d46
git subrepo pull (merge) tools/fado (#1501)
subrepo:
  subdir:   "tools/fado"
  merged:   "8d896ee97"
upstream:
  origin:   "git@github.com:EllipticEllipsis/fado.git"
  branch:   "master"
  commit:   "8d896ee97"
git-subrepo:
  version:  "0.4.5"
  origin:   "git@github.com:ingydotnet/git-subrepo.git"
  commit:   "dbb99be"
2023-02-26 14:04:00 -05:00
playerskel
9f0b7bb8a3
another round of trailing whitespaces (#1495) 2023-02-26 17:26:07 +01:00