Commit Graph

29 Commits

Author SHA1 Message Date
Derek Hensley
eee5762a55
Clean up gitignores (#1715)
* Clean up gitignores

* c m2c file
2024-10-18 17:45:18 -07:00
Derek Hensley
d925976c82
Small Misc Tooling (#1668)
* Move .extracted_assets.json to extracted folder

* .options.mk

* Move extract assets to tools folder

* .make_options.mk

* gitignore as well

* Remove duplicate import
2024-09-06 13:01:55 -04:00
Derek Hensley
471d86f530
Build Sync (#1600)
* Rename outputs

* Makefile target renames

* Add run target

* yeet z64compress

* venv

* baserom_uncompressed -> baserom-decompressed

* input rom name to baserom.z64

* Add BUILD_DIR makefile variable

* Move built roms to build dir

* Move baserom to baseroms folder

* Add version to map file name

* Makefile cleanup

* Rename ldscript to include version

* Multiversion build

* n64-us version name

* Remove venv as dependency of setup

* Readme wording

* extract_baserom.py suggestion

* Readd checksums

* Make .venv work with windows

* missed an endif

* Cleaner windows venv implementation

* Remove duplciate process

* Build process steps

* Move make_options back

* Fix schedule build directory

* Fix schedule includes

* Makefile NON_MATCHING check -> != 0

* OOT 1704 changes

* Small cleanups

* Missed 1 thing

* UNSET -> SYMS

* Update extract_baserom.py

* dmadata.py

* Small cleanup

* dmadata_start

* Format

* dmadata files

* Fix makefile comment

* Jenkins report fix

* extracted dir

* Python dependencies order in readme
2024-04-06 11:07:58 -07:00
Anghelo Carvajal
5db52cfd39
A higher level language for schedule scripts (#1462)
* schedule script

* start something

* tokenize

* make a tree

* start to emit macros

* start to handle args

* handle branch targets

* cleanup a bit

* script to convert the current schedule scripts to the new language

* Add schedule compilation to Makefile

* Fix bug on compiler if the script doesn't have an extra empty line

* Allow to have `else`s without braces

* convert a lot of schedules

* door

* en_tk

* fix some checks being the wrong way around

* borkens

* door borken schedules

* kafei schedule

* postman schedule

* Implement `if_since_time_*` command

* Allow `if`s to not have an `else`

* Implement some debugging options

* fix another one from door

* D_808675D0

* door D_8086775C

* don't print else if there isn't one

* start supporting labels

* rewrite comment handling

* add branch support

* emit debugging information

* postman and one door

* the remaining scripts

* add tokens for the non _s/_l versions

* meh

* Add built schedules

* Remove _s/_l suffixes from almost every command

* TokenProperties

* Move macros and length into TokenProperties

* move short and long to TokenType

* rename member

* some cleanups

* fatalError

* Write various notes on the compiler

* more errors and comments

* debug flags

* Move the built schedules to the build folder

* manually cleanup control flow of many schedule scripts

* cleanup postman schedule

* start write up

* write more stuff

* write a little more

* Start writing about the commands

* 2 more commands

* more

* almost everything, except returns

* hopefully finish documenting the commands

* cleanup

* formal grammar

* Table of contents

* typo

* Rename schc.py

* remove todo

* Warn if a if_before_time/if_since_time is negated

* Add colors to warnings and errors

* delete rebuild schedules script

* version

* Apply suggestions from code review

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

* suggestions on md file

* compiler review

* invented is invented

* ScheduleScript typedef

* fix

* Convert Anju's schedule to the new format

* simplify anju's schedule

* forgot to remove `_s`/`_l`

* bss

* Rework schc to allow multiple scripts per file

* Migrate all the schedules to the new format

* update language specification

* Update docs/schedule_scripting_language.md

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

* Update docs/schedule_scripting_language.md

Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>

---------

Co-authored-by: Dragorn421 <Dragorn421@users.noreply.github.com>
Co-authored-by: engineer124 <47598039+engineer124@users.noreply.github.com>
2024-02-01 09:50:32 -03:00
Parker
f2347000b0
Update README with python venv instructions (#1372)
This change updates the README to include instructions for setting up
a python virtual environment.
2023-11-10 09:18:34 +11:00
EllipticEllipsis
6d1bc6e34b
Ignore other rom extensions (#1218) 2023-03-21 10:28:24 -03:00
Derek Hensley
f1d1d83206
Makefile Changes (#727)
* Change makefile so rom doesn't need to match by default for compression, also change JenkinsFile to split off compression step from building

* Swap uncompressed and compressed in all target

* Forgot to change check warnings stage name

* Intentionally produce non_matching

* Fix

* Add assets target

* Jenkins assets

* Update update_current_warnings

* .make_options config file

* Change comment at top

* Add toggle options for CC_CHECK and OBJDUMP

* Small cleanup

* Whitespace

* More

* bin dumping

* Whitespace

* Review

* Fix comment
2022-05-25 22:15:28 -04:00
EllipticEllipsis
0582c636b8
Contributing docs refresh (#793)
* Contributing docs refresh

* Apply suggestions from code review

Co-authored-by: LtPeriwinkle <62761190+LtPeriwinkle@users.noreply.github.com>

* Link MM tutorial

* Add link to XML spec

* Review

Co-authored-by: LtPeriwinkle <62761190+LtPeriwinkle@users.noreply.github.com>
2022-05-25 22:06:21 -04:00
mzxrules
f1560614d6
z_object_switch OK (#527)
* z_obj_switch all functions attempted

* z_obj_switch OK

* Document z_obj_switch

* update gameplay_dangeon_keep references

* pr changes implemented

* fix warnings

* pr suggestions, name all functions
2022-03-10 05:49:11 -05:00
EllipticEllipsis
96eff2a4fd
Building on Macs (#513)
* Building on Macs

* Add Mac building documentation

* Review

* Update for new z64compress

* Review

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "155a463a5"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "155a463a5"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

* Fix some obvious warnings

* Rewrite docs

* -;

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "fd5a7f434"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "fd5a7f434"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo.git"
  commit:   "2f68596"

Co-authored-by: Anghelo Carvajal <angheloalf95@gmail.com>
2021-12-28 01:07:41 +00:00
EllipticEllipsis
d5b71bd0f5
Tutorial (#362)
* ObjTree OK, data imported

* EnMs OK, data imported

* And the spec

* OK

* Some minor edits

* A lot of preliminary stuff

* Mostly complete beginning

* First draft of other functions doc

* Whoops, forgot the GlobalContext pad

* Draw functions (minus colour), create Data

* Data

* gitignore, some progress on documenting

* Review comments, continue documenting

* spec

* Finish off documentation

* undefined_syms

* Add a couple of todos

* One more

* At least add tools for object decomp

* Start conversion table stuff

* Document ObjTree

* Document EnMs

* Add more tables to conversions

* Maide's review

* Review

* Review

* Typos and incomplete thoughts

* Update vscode.md

* Correct function/variable names

* Review suggestions

* Format

* Missed one

* Rename functions and format

* Fix ObjTree

* Update actorfixer.py, fix some variable names

* Some review

* Review suggestions

* More review

* Hopefully fix all the thisx references

* Missed one
2021-12-16 18:47:18 -05:00
Parker Burnett
a6cd0e4427
Adding tools.md (#344)
* Filling in what I could

* Organise, add most of the other tools, etc.

* removing redundant file and filling in TOC

* addressing comments

* Merge branch 'master' into contributing_update_tools

* hopefully adding pngs and missing tools

* quick fix

* applying feedback

* adding clarity to the sheet section

* Update docs/tools.md

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Update tools.md

* Update docs/tools.md

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

Co-authored-by: Elliptic Ellipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-12-16 04:56:38 +00:00
Anghelo Carvajal
c018e83d36
Remove decomp-permuter (#447)
* Nuke decomp permuter

* Add decomp permuter and mips2c to gitignore
2021-11-11 12:46:18 -03:00
Anghelo Carvajal
38fc110f99
actorfixer.py hotfix (#374)
* actorfixer.py hotfix

* add missing stuff

* add zeldaarena

* add skelAnime fields

* add comment
2021-10-28 22:38:46 -04:00
rylieb
1362615cc6
Add ctags "tags" files to .gitignore for vim users (#328) 2021-09-27 17:41:36 -04:00
Tharo
7743e5a2c4
Overhaul the build system (#234)
* wip

* fix

* add disassembler

* Disasm builds OK

* Variable addends

* More wip

* Rodata migration implemented

* Cleanup old tools

* Try fix submodule -> subrepo merge

* git subrepo pull --force --remote=https://github.com/zeldaret/ZAPD.git tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "602e609"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "602e609"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* Builds again but assets are totally broken

* git subrepo pull --force tools/asm-processor

subrepo:
  subdir:   "tools/asm-processor"
  merged:   "1ffdb08a"
upstream:
  origin:   "https://github.com/simonlindholm/asm-processor.git"
  branch:   "master"
  commit:   "1ffdb08a"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* More cleanup, move functions.txt and variables.txt to tools/disasm and rm tables

* rm z64compress in preparation for subrepo

* git subrepo clone (merge) https://github.com/z64me/z64compress.git tools/z64compress

subrepo:
  subdir:   "tools/z64compress"
  merged:   "eb11085c"
upstream:
  origin:   "https://github.com/z64me/z64compress.git"
  branch:   "main"
  commit:   "eb11085c"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* Fix asset extraction

* Fix diff-init make rule

* Split code bss

* Split assumed linker bug padding from assembly files

* add filelists for mm.us.rev1

* Maybe working, but I'm not sure

* add overlays to spec

* Add rodata to actos

* Everything compiles

* Make a lot of C files for code

* Add almost every file in code to spec

* whoops

* 3 code files left

* add scenes to spec

* More progress on progress.py

* Fix skelanime in spec

* audio files!

* Fix merge issues

* Fix some C files in code

* Fix remaining code files

* Use existing O1 C files in spec

* reorder boot order in spec

* update spec

* fault.c

* Convert relocs on completed actors, fixbaserom uses current rom name

* more boot files

* Add VT macros and script

* finish already existing boot files

* most of  libultra

* fix 64bits libultra files

* Use C files for libultra, wrap some functions in NON_MATCHING

* Remove duplicate of OS_CLOCK_RATE from fault.c

* C files for fbdemos

* delete dumb files

* bootstrap C files, still need to add them to the spec

* update fixbaserom

* boot OK?

* I forgot to commit the spec

* C for gamestates

* C for kaleido

* Change all includes to ""

* copy actor sizes script from oot

* I forgot to delete those files

* Basic C files for effects

* Add effects initvars names

* Remove mislabelled boot functions from header/txt

* Begin porting bootstrap_fx, some sizes

* Fix <>

* Fix enum

* Fix diff.py

* fix libultra stuff

* update regconvert

* update setup warnings

* add some missing ;

* Fix some makefile stuff and other fixes on some non_matching functions

* add executable flag in extract_baserom and fixbaserom

* fix relative path

* copy assist from oot

* fix map path

* another assist path fix

* Delete C files for handwritten files

* add code_801A51F0 to spec

* add gfxbuffers to spec

* Move rodata to top of each file when possible

* UNK_TYPEs for func_801A51F0

* Remove kaleido rodata from spec

* Update spec and undefined_syms for recent merge

* GCC warnings and fix errors in nonmatchings,

* round percentage numbers

* progress script: format changes

* progress: error on non-existing files

* fix warning in z_scene_table

* Match 2 nonmatchings in z_actor

* Warnings in lightswitch and invadepoh

* Fix warning in z_actor_dlftbls

* I though I fixed this one

* whoops

* Comment out CC_CHECK

* Removed redundant ultra64.h includes

* Update asm_processor, sorted boot_O1 into other folders, completed the fbdemo bootstrap, cleaned up undefined_syms

* Completed gamestates bootstrap

* Split kaleido_scope

* Remove section.h and segment.h, move keep object externs to a common location in variables.h

* Completed effects bootstrap

* Segmented address externs for effects, fbdemos, gamestates and kaleido

* Move actor data externs out of the if 0

* Segmented address externs for actors

* Prepare actionfunc detection

* fix script, how did it even work before

* Fix actionfunc script again, re-introduce some more intermediate prints to the disassembler

* Automated actionFunc detection in actors

* Segmented addresses from player .text

* rm old segment addrs script and fix build

* Move sizes folder to tools

* Make build.py executable

* New Jenkinsfile Prayge

* Remove numpy dependencies

* Add warnings_disasm_current.txt

* my bad

* Update spec and undefined_syms

* Add z_eff_ss_hahen to pametfrog

* git subrepo pull (merge) --force tools/z64compress

subrepo:
  subdir:   "tools/z64compress"
  merged:   "163ca2af"
upstream:
  origin:   "https://github.com/z64me/z64compress.git"
  branch:   "main"
  commit:   "163ca2af"
git-subrepo:
  version:  "0.4.3"
  origin:   "https://github.com/ingydotnet/git-subrepo"
  commit:   "2f68596"

* Make z64compress print to stdout

* sneeky commit to update warnings tooling

* test

* Another test

* Mark fixing overlay reloc generating as a TODO

* Update warnings stuff

* Communicate the return code from running z64compress back to the Makefile through the wrapper

* Run formatter, remove extra commented copy of function

* Re-fix some includes

* Convert atan to hex to conform to decided style

* Some tidying up, remove c for fp and the other two handwritten code files

* BSS in z_collision_check & z_scene_proc

* add static back in

* Fix timerintr bss, add file to spec, some cleanup

* Remove externs

* Newline

* Readd enums

* Typo

* Colours

* Comments for hitmark enum values

Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>

* Improvements and suggestions

* Organize and remove unused imports and use env for python3 scripts, delete unused overlay.py

Co-authored-by: angie <angheloalf95@gmail.com>
Co-authored-by: Elliptic Ellipsis <elliptic.ellipsis@gmail.com>
Co-authored-by: engineer124 <engineer124engineer124@gmail.com>
Co-authored-by: EllipticEllipsis <73679967+EllipticEllipsis@users.noreply.github.com>
2021-08-03 23:21:31 -04:00
Anghelo Carvajal
b292647ea2
ZAPD update: Gotta go fast! (#226)
* update extract_assets script

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "820678b4"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "820678b4"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

* fixes and rgba16 format change

* git subrepo pull --force tools/ZAPD

subrepo:
  subdir:   "tools/ZAPD"
  merged:   "6be9af65d"
upstream:
  origin:   "https://github.com/zeldaret/ZAPD.git"
  branch:   "master"
  commit:   "6be9af65d"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"

* Update warning counts
2021-07-28 21:55:02 -04:00
Anghelo Carvajal
7f14659919
diff.py symlink and graphovl.py (#151)
* Add `diff.py` symlink

* Add graphovl.py

* remove graphovl

* add graphovl subrepo

* git subrepo pull --force tools/graphovl

subrepo:
  subdir:   "tools/graphovl"
  merged:   "577e7159"
upstream:
  origin:   "https://github.com/AngheloAlf/graphovl.git"
  branch:   "master"
  commit:   "577e7159"
git-subrepo:
  version:  "0.4.3"
  origin:   "???"
  commit:   "???"
2021-05-18 22:21:14 -04:00
Anghelo Carvajal
86bdadf4da
Extract assets in make setup, don't extract them to assets/src/ and build them in make (#132)
* extract assets in setup and build them in make

* Add assetclean
2021-05-13 21:00:38 -04:00
Parker Burnett
d61d236a04
En_jc_mato matching (#119)
* starting actor

* close to being done

* updating txt files

* z_en_jc_mato OK

* Merge branch 'master' into en_jc_mato

* fixing some suggestions

* adding names

* changing name to movement
2021-05-04 22:03:41 -04:00
Kenix3
48aa632eb6 Flags ido_recomp as binary. 2021-02-24 01:06:20 -05:00
Rozelette
ec912054da
Update tools (#16)
* Clean up .gitignore

* Set exec bit on all python and shell scripts

* Delete unused files

* Add decomp-permuter repo

* Update submodules
2020-09-13 21:09:13 -04:00
MMDecomp
8e8d99e6fd Improve Drag & Drop support for IDO Tools
- Add optional default for QEMU_IRIX to Makefile
- Add tools/qemu-mips to .gitignore
-  `make clean` should not fail if rom.z64 doesnt exist
2020-05-04 22:51:31 +02:00
rozlette
5037e2da8d Set up diff script 2020-03-02 00:21:16 -06:00
rozlette
e45d0ef673 Normalize line endings 2020-02-19 11:18:03 -06:00
rozlette
45d820041c Add README.md. Minor makefile cleanup. 2019-12-15 23:06:39 -06:00
rozlette
5fcbe0a483 Add slightly better diffing tool 2018-11-08 20:58:39 -06:00
rozlette
21b019c010 Add a few already decompiled files 2018-10-25 23:16:12 -05:00
rozlette
d3a5a2f29d initial commit 2018-10-25 21:25:09 -05:00