1
0
Fork 0
mirror of https://github.com/zeldaret/oot.git synced 2024-11-15 14:09:35 +00:00
Commit graph

1845 commits

Author SHA1 Message Date
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
39d4217ecf
Match retail BossFd2_UpdateMane (#1908) 2024-03-04 12:35:48 -05:00
cadmic
b9d1fe50cc
Make distclean delete build artifacts for all versions (#1909) 2024-03-04 18:26:04 +01:00
cadmic
63a95da5db
Match retail BossMo_DrawCore (#1907) 2024-03-04 18:22:23 +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
e7b1868d84
Match retail BossFd_DrawBody (#1915) 2024-03-03 17:07:51 -05:00
cadmic
9e5df5ba79
Remove reference to Cutscene_DrawDebugInfo in retail (#1913) 2024-03-02 16:14:48 -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
feb64e6ad8
Match retail text for some actors ❤️ (#1912)
* Match retail text for some of my dear actors

* Fix fake `EnDoor_SetupType` match, ty cadmic
2024-03-02 15:36:38 -05:00
Dragorn421
ff81e2a891
Build fixups: build gc-eu-mq with extracted/dbg, remove asmproc pragmas (#1911)
* Remove asmproc recurse (somehow these two survived)

* Use `extracted/gc-eu-mq-dbg` anyway for gc-eu-mq
2024-03-02 12:47:10 -05:00
cadmic
6b9a2433ab
Match retail EnNiw_Update (#1906) 2024-03-01 22:20:05 -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
cadmic
c9e97a3055
Mostly match retail bosses, part 1 (#1898)
* Retail bosses part 1

* Use GameState* local variable in BossGanon/BossGanon2 draw helper functions
2024-03-01 12:43:02 -05:00
Tharo
3670a48aee
Some GCC flags improvements (#1903)
* Some GCC flags improvements

* Move -fno-reorder-blocks -fno-zero-initialized-in-bss to assets only

* Add -fno-PIC since some gcc versions use -fPIC as default

* Enable builtin functions on gcc, with appropriate changes to missing_gcc_functions.c
  and ultra64/libc.h

* Move -fno-merge-constants -mno-explicit-relocs -mno-split-addresses to overlays only
  as they are only needed there for reloc reasons

* Remove unneeded casts in missing_gcc_functions.c

* Change gcc assets flags handling
2024-02-29 15:11:54 -05:00
Derek Hensley
1b60dcf6dd
Use Romfile in place of vromStart and vromEnd in structs (#1742)
* KaleidoMgrOverlay

* GameStateOverlay

* ActorOverlay

* EffectSsOverlay

* MapMarkDataOverlay

* Missed DEFINE_ACTOR_UNSET

* ROM_FILE_UNSET

* DEFINE_OBJECT_EMPTY

* DmaEntry

* ACTOR_UNSET

* romfile.h

* newline

* Format
2024-02-29 14:15:04 +01:00
Tharo
7a2c46d4eb
AVOID_UB for out-of-bounds access in AudioLoad_Init (#1902) 2024-02-28 09:06:03 -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
6e2ea18154
Add proper bug comment for gSaveContext.save.dayTime getting cleared as s32 when it is u16 (#1900)
* Add proper bug comment for gSaveContext.save.dayTime getting cleared as s32 when it is u16

* Formatting?
2024-02-27 17:48:22 -05:00
cadmic
350b82c675
Restore terminal colors in retail, except in __osMalloc.c (#1899) 2024-02-27 14:08:20 -05:00
Tharo
dcf61174e9
Filename & line number args cleanup (#1891)
* Filename & line number args cleanup

* Use int for line number args over s32/u32

* Add missing const qualifiers from filename args

* Fix gcc warning in game.c

* Add comment to weird assignments in GameState_Init
2024-02-27 02:37:33 -05:00
cadmic
a32221c36e
Match retail z_en_ds.c, z_en_horse.c, z_en_fhg_fire.c (#1897)
* Actually match z_en_ds.c

* Match z_en_horse.c

* Match z_en_fhg_fire.c
2024-02-27 02:30:42 -05:00
cadmic
c6e3ef4570
Match retail code data sizes (#1741)
* Match retail audio data

* Fix various small code data problems

* Disable terminal colors in debug builds

* Match z_actor_dlftbls.c .rodata

* Use _3 for unused nameString macro parameter

* Move sDebugCutsceneScriptBuf to be in-function static

* Comment on actor name being NULL

* Split out padding the fault_drawer.bss.s
2024-02-27 02:23:19 -05:00
cadmic
c3faefc061
Fix some retail boot data (#1668)
* Fix is_debug.c bss

* Fix stackcheck.c rodata

* Poke jenkins

* Don't introduce new variable
2024-02-27 01:53:10 -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
c86bf5011b
Match entity actors O-T (#1826) 2024-02-26 21:39:44 -05:00
cadmic
cdd24f2ac6
Match retail En actors V-Z (#1825)
* Entity actors starting with Z

* Use CS_STATE_IDLE

* z -> playerPosZ

* Remove comment
2024-02-26 21:29:40 -05:00
cadmic
769986874c
Finish player (#1895) 2024-02-26 14:24:14 -05:00
cadmic
10bae68937
Match En actors A-C, and a few more (#1890) 2024-02-24 13:00:37 -05:00
cadmic
7d128adf83
Match more of player for retail (#1893) 2024-02-24 12:47:17 -05:00
cadmic
93295a842b
Match some entity actors H-N (#1827) 2024-02-22 09:08:40 -05:00
cadmic
33d8044e45
Match retail demo actors (#1745)
* Match GetCue functions

* Match retail demo actors

* Add redundant parentheses around kREG(X) == Y in z_demo_gt.c

* Remove goto in DemoEffect_DrawLightEffect

* Rename "dl"

* Comment on possible array

* Use the word "fake"

* Remove redundant return
2024-02-20 15:15:52 -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
cadmic
cd98f991b5
Suggest explorer.exe in README.md (#1747)
* Suggest explorer.exe in README.md

* Fix typo and put on separate line
2024-02-20 07:27:24 -05:00
cadmic
5c31e686f6
More bg actors (#1743) 2024-02-20 07:00:55 -05:00
Anghelo Carvajal
59017f201e
update mapfile_parser (#1744) 2024-02-15 12:21:03 -05:00
cadmic
b32d0a91ed
Match even more retail actors (#1720)
* Match even more actors

* Add macro for DebugDisplay_AddObject

* Prefer OOT_DEBUG &&

* Better EnReeba_Stunned match

* Revert "Add macro for DebugDisplay_AddObject"

This reverts commit 8197823abb.

* Prefer OOT_DEBUG && some more

* Reformatting

* Add fake match comment
2024-02-13 09:10:28 -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
cadmic
6c405b6ea3
Match retail PreRender_DivotFilter (#1740) 2024-02-10 11:38:04 -05:00
cadmic
097db907ca
Match the rest of z_onepointdemo.c (#1739) 2024-02-09 13:26:20 -05:00
cadmic
ea17b9619e
Match OnePointCutscene_Init by inlining static data (#1738)
* Match OnePointCutscene_Init by inlining static data

* Inline what's left of z_onepointdemo_data.inc.c
2024-02-09 13:17:24 -05:00
cadmic
10ebdf9ff5
Match retail z_message_PAL.c (#1736) 2024-02-09 13:08:28 -05:00
cadmic
d2a1abf8df
Diff .data size, .bss size, and .rodata contents in retail_progress.py (#1706)
* Use iconv to convert strings to EUC-JP for reassembly

* Compare .data size, .bss size, and .rodata contents in retail_progress.py

* Show data diffs in summary for humans

* Use multiprocessing to very significantly speed up retail_progress.py summary

* Remove intermediate function

* Make sigint less jank

* Hide the evidence

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

* add --not-ok to only print not-OK files in summary

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
2024-02-09 08:30:32 -05:00
fig02
f492c04186
match function (#1737) 2024-02-08 17:23:22 -05:00
engineer124
488b0e7783
Retail kankyo OK (#1735)
* only Environment_Update plus 1 fake match

* more WIP

* remove fake matches

* Environment_Update OK

* void

* add fake comment

* better match for update

* cleanup

* fix fake match

* more fixes

* add comment
2024-02-08 08:57:06 -05:00