* Decompiled, some commands still unnamed
* Use full weekevent reg names
* Fix func_8094E69C
* Fix Player_GetMask
* Eventinf, mask worn, and item action argument formatting
* decimal rupees
* Times (day, hours, minutes) as decimal
* msgEventScriptPos
* Callbacks
* Name final commands
* Enum
* Arrays
* functions
* Small cleanups
* Clean up actors
* Remove event from some variable names to make them shorter
* Some more function renames
* newline
* Missed a few unks in commands
* Update functions.txt
* PlayerMask
* MSGMODE_PAUSED
* Script time macros
* EnSob1_GetWelcome default
* Whole bunch of renames
* Format
* Add CMD to commands
* Update code_functions
* structs for size
* z64scripts.h
* MsgEventCallback -> MsgScriptCallback
* format
* MsgEvent_RunScript stop
* Remove cmd handler comment
* cmd -> script in MsgEvent_RunScript
---------
Co-authored-by: Thar0 <17233964+Thar0@users.noreply.github.com>
* 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>
* OK
* Initial documentation pass
* Pass 2. Add script by Tharo
* Renamed source file
* Documentation cleanup
* Update to latest master
* Feedback
* Bad merge
* Permissions
* Clang format
* Feedback
* format
* Use calculation instead of constant
* Rename as per suggestions
* Fix bss ordering and minor merge conflicts (from Maide)
* Update to current codebase and address feedback
* Fixup names to match new enums
* Format
* Fix duplicate include
* BSS shenanigans
* migrated data and bss for z_kaleido_manager, renamed ovl_Player_Actor to ovl_player_actor to make it work with the data
* z_kaleido_manager OK
* add to functions.h variables.h and variables.txt
* init
* rename parameters in func_80163700
* rename func_80163700 to KaleidoManager_FaultAddrConvFunc
* change u32 casts to uintptr_t casts in z_kaleido_manager. (u8 *) casts must stay, they are the only casts that match
* ran format, uintptr_t
* made suggested changes
* Fix actor_symbols.py
* Temporary fix to rename_sym.sh
* Fix the few Type1 cylinders
* Rename main -> Main
* chmod rename_global_asm, fix asm in rename_syms
* Format
* Improve match in EnFirefly_Draw
* Vestigial fishing files, add enums
* Improve scripts, add ColChkInfo one
* Some minor actor cleanup (static etc)
* C file for Fishing, remove some local vars from variables.h
* Remove comma and format
* Newline
* Review suggestions
* Fix colchkinfoinit, add damage_table
* DMG macros, format existing DamageTables
* Convert preset damage tables to new format
* Minor tweak to colchkinfoinit output
* Manually add Fishing data and Syokudai struct vars
* Automatically import data
* Fix to use #if 0
* Format
* Name cylinders in obj_syokudai.h
* correct some ichains
* Fix top-of-file comments
* Redo files to include externs
* Fix Fishing
* #if(0) -> #if 0
* Fix mysteriously wiped actors (I blame VSCode)
* Improve match in EnFirefly_Draw
* Vestigial fishing files, add enums
* Improve scripts, add ColChkInfo one
* Some minor actor cleanup (static etc)
* C file for Fishing, remove some local vars from variables.h
* Remove comma and format
* Newline
* Review suggestions
* Fix colchkinfoinit, add damage_table
* DMG macros, format existing DamageTables
* Convert preset damage tables to new format
* Improve match in EnFirefly_Draw
* Vestigial fishing files, add enums
* Improve scripts, add ColChkInfo one
* Some minor actor cleanup (static etc)
* C file for Fishing, remove some local vars from variables.h
* Remove comma and format
* Newline
* Review suggestions
* Added data_parser.py to assist in moving data over to c files more easily.
* Update data_parser.py
Added UNK_TYPE to extern
Added newline at end of file
* Small env fixes: for git submodules & python3
Using `/usr/bin/env python3` is preferred over `/usr/bin/python3`
because it is compatible with virtualenvs, etc. It picks the version of
`python3` currently on the `PATH`, rather than the system-wide default.
For the git submodules, I had two issues:
The ZAPD repo is currently pointing at a commit not on the master
branch, which has to be specifically fetched. Adding `--remote` to the
update command fixes this.
The decomp-permuter has primary branch `main` not `master` like this
repo, so this has to be specified in `.gitmodules` when using `--remote`.
* Rework `git submodule update...` part of Makefile