Commit Graph

264 Commits

Author SHA1 Message Date
AnonymousRandomPerson
d40d2e55a3 Decomped IsTargetStraightAhead() 2021-12-28 21:38:42 -06:00
AnonymousRandomPerson
4bf154654b Decomped TargetThrownItem() 2021-12-28 21:38:39 -06:00
Seth Barberee
f0ef6ae481 decomp some more 2021-12-24 17:45:49 -06:00
mid-kid
99a038284b Translate all .include to #include
This decision was made to reduce the complexity of using .include whilst
juggling with tools/scaninc and tools/preproc:
- tools/scaninc doesn't apply the proper search rules for .include (it
  assumes #include behavior). In particular, it doesn't consider paths
  starting from $PWD, and doesn't scan the included files as a result.
- .include had to be processed before #include by preproc in many cases,
  as code was being included that had to be preprocessed by CPP (think
  of #define). This contradicts standard GCC behavior.

To make include paths consistent across the asm/ data/ and src/
directories, the following files were moved:
- constants/ → include/asm/constants/
- asm/macros/ → include/asm/macros/
- asm/macros.inc → include/asm/macros.inc
- include/macros/m4a.inc → include/asm/macros/m4a.inc

As part of the necessary changes for this to work, the scaninc method in
the makefile was improved to generate .d files that don't choke when
files are missing.
2021-12-20 16:29:12 +01:00
AnonymousRandomPerson
0369264407 Decomped GetMapTileAtPosition() 2021-12-18 00:22:03 -05:00
AnonymousRandomPerson
b1fc911965 Decomped InSameRoom_2() 2021-12-17 23:38:06 -05:00
AnonymousRandomPerson
da8fcb2ac8 Decomped CanSee() 2021-12-14 23:26:56 -05:00
AnonymousRandomPerson
cd9a8c5a38 Decomped CanTarget() 2021-12-14 22:54:03 -05:00
mid-kid
087405b9d9 Dump and document status sprites 2021-12-13 10:44:48 -06:00
mid-kid
ca10fd795e Dump unidentified tables 2021-12-13 10:44:48 -06:00
mid-kid
2fcfbc2266 Finish de-incbinning data.s 2021-12-13 10:44:48 -06:00
Cheng Hann Gan
c53bdc35f8
Dungeon random/AI decomp + converted positions to structs (#83)
* Decomped RollPercentChance()

* Decomped DungeonRandomCapped()

* Decomped DungeonRandom()

* Decomped FindRockItemTargets()

-Added position struct.
2021-12-12 12:52:06 -08:00
Cheng Hann Gan
a34c9ab91b
AI decomp + type cleanup (#82)
* Decomped SetAction()

* Changed MapTile.tileType to u16 bit field

* Decomped FindStraightThrowableTargets()

* Cleaned up CannotAttack()

* Cleaned up some externs

* Converted dungeon action to substruct
2021-12-09 10:56:12 -08:00
Seth Barberee
4fc272fea6
No wifi + 2 days on train = more decomp (#80)
* No wifi + 2 days on train = more decomp

* layin some more

* one func, one file
2021-12-01 14:33:06 -08:00
Seth Barberee
fd8720b75c
Label all entities in Boss Fight Cutscenes (#78)
* label all entities in cutscenes

* remove commented func.. wasn't matching anyway

* Skarmony -> Skarmory
2021-11-22 12:14:58 -06:00
Cheng Hann Gan
938a88551f
Labeled more symbols (#77)
* Labeled more symbols

* Fixed comment typo

* Renamed some functions
2021-11-20 08:47:46 -08:00
Seth Barberee
bfaa55f2fe
Label and doc iq skills and tactics info (#75)
* label/doc iq skills/tactics info

* decomp a few more dungeon_util and label some funcs

* doc the IQSkills field
2021-11-15 11:02:26 -08:00
Cheng Hann Gan
0ea22237c9
Decomped DecideUseItem (#73) 2021-11-13 16:59:20 -08:00
Seth Barberee
561ea52847
Luminous cave (#72)
* fully decomp luminous cave

* remove header file. this one isn't ready yet

* doc few fields and func

* doc more of luminous cave
2021-11-10 08:43:51 -08:00
Seth Barberee
3a1db3dfac Moves and some friend_area_action_menu 2021-11-02 16:31:16 -07:00
mid-kid
412a2d1dbe Extract shop dialogue 2021-11-03 00:08:22 +01:00
Cheng Hann Gan
dd128d78c6
Decomped more dungeon AI (#67)
* Decomped IsMovingClient()

* Fixed typos in boss dialogue

* Fixed spelling of Pelipper

* Decomped CannotUseItems

* Decomped ShouldAvoidEnemies()

* Decomped HasAbility()

* Decomped HasTactic()

* Decomped CannotMove

* Decomped CannotAct() and IsCharging()
2021-10-28 09:01:07 -07:00
Cheng Hann Gan
c98fb2c112
Decomped DecideAction() (#66)
* Decomped DecideAction()

* Defined dungeon Pokémon array sizes
2021-10-22 10:20:01 -07:00
Seth Barberee
3e5dd1d047
Death by 74 files (#65)
* death by 74 files

* 20% reached

* doc move stuff in pokemon

* fix undef reference

* doc more and plumb a few more constanst for num party members and num moves

* that struct is def PokemonMove.. clean up all code with it
2021-10-22 10:01:07 -07:00
Cheng Hann Gan
3f7ee3a806
Decomped entityExists() (#64) 2021-10-15 15:30:33 -07:00
FieryMewtwo
18726d97cf
More text cleanup (#62)
* Update build.yml

temporarily so that I can edit without having to try to figure out why my Git client keeps crashing

* Fix references to the old save.inc text labels

* Labels 

welp here we go again

* Give Wonder Mail client 'thanks' text more descriptive function label names

* Change back the workflow
2021-10-11 09:04:44 -07:00
Seth Barberee
25794a39c3
Finish main menu decomp (#59)
* decomp rest of main_menu

* move some main menu data over

* decomp some more wonder mail

* decomp the dungeon dialogue scene switches

* more wonder mail

* consolidate struct_802F204

* another wonder mail func

* more wonder mail

* slight cleanup
2021-10-11 09:03:17 -07:00
FieryMewtwo
fb7a3a03e7
Update Luminous Cave text to use more descriptive labels (#61)
* Update luminous_cave.inc

* Fix pointers

* Fix pointers

again

* Fix pointers

finally done
2021-10-08 13:24:23 -07:00
Seth Barberee
0d3b11e81a
Data work and decomp some mail/pelipper board (#54)
* data work and decomp some mail/pelipper board

* resuce -> rescue

* label more data
2021-09-24 00:49:43 -05:00
Cheng Hann Gan
8237e29a16
Defined more in-dungeon structs and enums (#53)
* Defined DungeonEntity

* Rename EntityType enums

* Revert EntityType rename

* Defined more in-dungeon structs and enums

* Added more dungeon global structs/enums

* Prefixed dungeonGlobalData with g

* Fixed compile errors

* Removed some CRLFs

* Fixed compile after merge

* Revert Makefile

* Rename DungeonEntityData.entityType

Co-authored-by: Seth Barberee <seth.barberee@gmail.com>

* Renamed symbols per PR comments

Co-authored-by: Cheng Hann Gan <chenghann_gan@ultimatesoftware.com>
Co-authored-by: Seth Barberee <seth.barberee@gmail.com>
2021-09-09 16:22:48 -07:00
Seth Barberee
4eff188244
Thank You Mail and minor DungeonEnitity Work (#52)
* Thank You Mail: split out code into own file w/ data

* use constant for facingDir
2021-09-08 21:32:59 -07:00
Seth Barberee
db05ce306f
More PMD grind (#50)
* more sese grind

* match sub_802ABF8

* some more work
2021-09-01 18:05:30 -07:00
Seth Barberee
459171cf48
Decomp most of friend_rescue (#49)
* decomp most of friend_rescue

* dump corresponding data

* more data dumping and name some personality test funcs

* dump more text
2021-08-20 22:10:15 -05:00
Seth Barberee
d988394595
More data dumping and some code cleaning (#46)
* more data dumping and some code cleaning

* split out cutscene scripts

* initial start at script conversion

* more script work

* use correct type

* clearer up struct field names

* split known scripts into seperate files

* no need to preproc pure ascii strings in debug

* more cutscene work

* split out personality test scripts

* solidify text macros and doc some dungeon fields

* more scripting work
2021-08-12 17:26:01 -07:00
Dennis
26e5708818
More pokemon related decomp (#48)
* add struct names

* decompile SaveRecruitedPokemon

* decompile ReadRecruitedPokemon

* decomp anotha one

* some renaming

* another save function

* more backup functions

* sub_808E400

* only one function left in pokemon_2.s

* decomp one more function

* merge 2 structs
2021-08-01 12:09:13 -07:00
Dennis
645c45431b
Pokemon related decomp (#47)
* decompile last function in pokemon_1.s

* some pokemon related decomp

* more decomp

* decomp another function

* decompile function

* another one

* decompile GetPokemonLevelData

* decompile more

* more decomp

* more structure and decomp

* decomp another function (need to do some renaming)

* rename some stuff

* I cant do anything without committing these 2 files
2021-07-25 21:11:01 -07:00
Dennis
bad7f7f688
More item related decomp (#45)
* decompile sub_80918EC

* some more item related functions

* more item functions

* more decomp, fix types in other places

* more small functions

* more item related decomp

* one more weird branching item function

* fix global.h includes

* figured out branch pattern

* decompile sub_8090F58

* make temporary struct for function

* 🦀 items.s is gone 🦀

* some renaming

* rename some obvious item related constants

* fix spelling error
2021-07-17 09:45:13 -07:00
Dennis
da7b30612f
More work on item related functions (#44)
* decompile sub_8091290

* decompile sub_80912c8

* rename functions / struct field

* more names

* decompile 80913A0

* decompile GetItemMove

* decompile sub_80913E0

* rename function

* decompile CanSellItem function

* rename inventory struct

* add some item check functions

* fix renaming stuff

* this file shouldnt have been here

* forgot merge conflict

* decompile more item functions

* rename some stuff

* fix HM/TM naming

* Update src/code_801AFA4.c

Use enum value for USED_TM

* Fix incorrect value

* decompile sub_80915F4

* decompile HasGummiItem

* decompiled another function and renamed stuff

* decompile 2 smaller functions

* more functions

* more decompiling and renaming

* redo change that was undone in the merge
2021-07-12 14:10:32 -05:00
Dennis
92a8e55fdd
Decompiled some item related functions (#42)
* decompile sub_8091290

* decompile sub_80912c8

* rename functions / struct field

* more names

* decompile 80913A0

* decompile GetItemMove

* decompile sub_80913E0

* rename function

* decompile CanSellItem function

* rename inventory struct

* add some item check functions

* fix renaming stuff

* this file shouldnt have been here

* forgot merge conflict

* decompile more item functions

* rename some stuff

* fix HM/TM naming

* Update src/code_801AFA4.c

Use enum value for USED_TM

* Fix incorrect value

Co-authored-by: Seth Barberee <seth.barberee@gmail.com>
2021-07-10 11:23:20 -05:00
Seth Barberee
386299d1f4
Makefile and Install.md Revamp (#41)
* Makefile: move over to gcc for preproc and ditch cpp

* INSTALL: rewrite INSTALL

* README: add CI badge

* Makefile: make tools build before anything else
2021-07-09 19:35:12 -05:00
Seth Barberee
6aa475c631 Sese's vacation work 2021-07-07 11:39:34 -05:00
Seth Barberee
f308c79eba 15% pog 2021-06-28 14:28:21 -05:00
Seth Barberee
d168537968 Finish out game options and FatalError
Some data cleanup as well. Thanks pika for the noreturn tip for
FatalError.
2021-06-23 17:35:37 -05:00
Seth Barberee
f1fdcc2b0a more splitting and labeling with some decomp 2021-06-18 17:56:20 -05:00
Seth Barberee
e806b05526 splitting more files and decomp a little more 2021-06-10 20:12:48 -05:00
Seth Barberee
31b46b0782 MedichamResuceDialogue => MedichamRescueDialogue
Thanks Kermalis
2021-06-10 12:03:43 -05:00
Seth Barberee
377bd14ea6
Dungeon pokemon/Floor ID JSON Part 1 (#39)
* move Thunderwave and Tiny Woods pokemon to json

* rule tweaking to actually build tool before parsing JSON

* delete .inc pokemon for tiny Woods and Thunderwave

* silence git complaining about br_ips and ips_patch

* use defines for species and pass the header file for species

* convert sinister woods

* convert MtThunderPeak

* convert silent chasm

* add trial floor_id w/ tiny woods

* change make rule name to fix compile

* MtSteel converted and bugfix

* convert few floor headers and great canyon pokemon

* code cleanup

* unify unkData into UnkTextStruct2

* more code cleanup and some text decomp

* doc more funcs and decomp/split some stuff

* document more save stuff

* more save work and move some data

* pika sniped UpdateNatureTotal

* decomp a litle and convert a few more dungeons

* better scanning for json files

* mt freeze and peak
2021-06-09 22:54:21 -05:00
Seth Barberee
eaa141c612
Keep on keepin on (#38)
* end of may dump of work

* move save text to src

* decomp a little more
2021-05-23 16:19:35 -05:00
Seth Barberee
f402e46cd3
Sese's April/May Dump (#37)
* splitting lots of pokemon square and labeling lots of other things

* actually commit this stuff

* more moving data and things

* more screen work

* split out some pokemon dungeon data

* lots of data work

* push more data work

* split kecleon, decomp another kanghaskhan func, and try to doc UpdateBGControl more

* lots of item work

* label more item things

* subtype -> category and doc types/category
2021-05-15 18:59:55 -05:00
Seth Barberee
f65dee5a14
Wonder mail and some boss dialogues (#36)
* more wonder mail and main menu work

* Lots of things.. doc'ing, decomping, and other things

* continue decomping boss scenes

* up to Suicune

* up to Mewtwo dialogue

* up to Raquaza

* fix spelling error on Rayquaza and decomp a few more

* up to groudon

* divide > shift
2021-04-19 23:55:40 -05:00
Seth Barberee
d316d1e359
Preproc all the data (#35)
* actually put C files in preproc and use it for formatted type names. Cleaned up makefile like pokeemerald

* finish adding all colors and text macros to charmap

* preproc all the data and use text macros

* move all of wonder_mail_1 to src

* unify wonder_mail and wonder_mail_mid

* small code cleanup

* name two more exclusive pokemon funcs

* decomp a few more wonder mail funcs

* clean up MemoryFill call

* doc more of wonder mail in main menu
2021-04-05 22:05:09 -05:00
Seth Barberee
22fec43f18
More menu work (#33)
* split adventure log menu out and decompile

* add most adventure log matchings w/ 2 nonmatchings and move some relevant data

* more work on other menus

* fully decomp debug stuff around 203B3F0

* more debug menu work

* fix CreatePartnerSelectionMenu nonmatch

* move more data and clean some data up
2021-04-03 20:44:48 -05:00
Seth Barberee
a2d206665c
Move some data and Splitting (#32)
* move friend area settings to src

* split out playtime into different C file and decomp a few more funcs

* time -> play_time

* fix include

* split out more wonder mail stuff

* unify 203B2C0 and unkDungeon structs. snuck in a decomp func too

* split out more menu screens

* work some more on trade items

* doc a few more things

* add a close nonmatch and decomp nullsub and small func

* rollback struct attempt since it causes nonmatchings

* only one func left in asm

* death to trade_item asm and unify into one C file

* more docing and cleanup

* label main menu and trade items menu global menu struct

* doc itemMode
2021-03-30 13:11:51 -05:00
Seth Barberee
2fd4f339b4
Miscellaneous Work (Again) (#31)
* move some personality data from asm to C

* combine personality_test files and add my close attempt at RedrawPartnerSelectionMenu

* decomp some more wonder mail funcs and label some more data

* lots of data splitting and move some to src

* split out more dungeon data

* continue splitting out more dungeon data

* doc rescue team rank/pts funcs/data and exclusive pokemon ewram

* doc more sound things and decomp a func

* decomp LoadTeamRankBadge and label some data members

* split out rescue team and text util stuff

* forgot a constant

* match a few funcs and clean up a few

* cleaned up sub_80A28B4
2021-03-23 12:11:10 -05:00
Seth Barberee
7b142311a7
Miscellaneous Work (Again) (#30)
* work on debug menu and document that and main menu

* split, decomp, label more funcs

* split exclusive pokemon data out into C

* macro-ize exlusive pokemon data

* decomp 2 more funcs

* decomp a few more

* finally match PromptNewQuestion

* woot 7% aka more debug menu stuff
2021-03-12 15:39:07 -06:00
Seth Barberee
d72e17b5f5
Miscellaneous decomp/labeling/splitting (#29)
* lots of wonder mail work, credits and label some stuff

* nonmatch one intr func, match another, and label unused intr func

* seperate credits out

* split out debug menu and other stuff that isn't main menu

* label another func

* label some more funcs
2021-02-27 12:16:45 -06:00
Seth Barberee
7fa4f1a92b
Fully decomp save.s (#28)
* some work on decomping more save stuff

* code cleanup and decomp another save func

* fully decomp save and combine split save c files

* fix two nonmatchings
2021-02-21 13:13:55 -06:00
Seth Barberee
c754c2a046
Decomp more of personality_test (#27)
* decomp most of personality_test

* just gonna move the funcs to src in assembly for now so I can combine stuff

* label another func and some cleanup

* one func of personality test left in asm

* small cleanups and labeling of funcs
2021-02-19 18:01:53 -06:00
Seth Barberee
8dfd044ef3
Some Personality and data (#26)
* decomp few personality funcs and clean up some pointers in the dungeon data

* de-pointer-ify friend area dialogue

* clean pointers on a personality test question

* decomp a few more main menu funcs and dump some more data

* label some funcs
2021-02-07 21:10:12 -06:00
Seth Barberee
74daf03fd7
Main Menu and Scripts (#25)
* label more funcs, dump scripts/text, and decomp main menu

* decomp vram func and dump more data

* add forgotten file

* get rid of goto in UpdateMenu
2021-01-31 19:07:31 -06:00
Seth Barberee
4886c9f7dc decomp, label, doc, repeat 2021-01-28 09:24:55 -06:00
Seth Barberee
cb77386b65 more headway on Pokemon funcs and labeled in asm 2021-01-22 10:39:42 -06:00
Seth Barberee
d010378f72 mass doc'ing of symbols and some tiny decomp work 2021-01-20 16:02:26 -06:00
Seth Barberee
ec192a8fa8 5% wooo 2021-01-09 10:33:29 -06:00
Seth Barberee
469212f7ee
CPU and GPU Reg Funcs Decomp (#16)
* decomp/doc cpu funcs and gpu reg funcs

* use Cpu32 macro funcs

* address review comments

* decomp SetBGOBJEnableFlags
2021-01-04 13:40:33 -06:00
Seth Barberee
87cd9885a9
Friend Area Decomp Work (#15)
split out and work on friend area stuff
2020-12-31 18:30:16 -06:00
Mateusz Naściszewski
2acfd6ed0f Decompile xxx_update_stuff 2020-12-28 20:13:22 -06:00
Mateusz Naściszewski
1d43c0efeb Decompile GameLoop and lots of renames 2020-12-28 20:13:22 -06:00
Mateusz Naściszewski
372d737a12 Label funcs and globals 2020-12-28 20:13:22 -06:00
Mateusz Naściszewski
6362345b04 Decompile UpdateInput
and some other minor stuff.
2020-12-28 20:13:22 -06:00
Seth Barberee
f90f3affeb
Wonder mail Pt. 1 (#11)
Some work on decomping/labeling wonder mail. Renamed corresponding assembly/C files. Labeled a few strings in data too.
2020-12-15 16:28:03 -06:00
Mateusz Naściszewski
75b09a819a
Finish translating code_800AAA0 to C! 2020-12-15 02:37:00 +01:00
Mateusz Naściszewski
efdaf621cb
Translating Decompression
Hopefully part one of many, some NONMATCHINGs in the larger functions, sadly.
2020-12-15 00:51:45 +01:00
Mateusz Naściszewski
c0ae9ddc9e
Continue dumping and documenting strings 2020-12-13 00:30:31 +01:00
Seth Barberee
448de33aef dump/label more data from data_800D090 2020-12-12 14:12:37 -06:00
Mateusz Naściszewski
7e2c662672
data_80F4278.s dumping (#4)
* Dumping menu text, part 1

* Continuing to dump text

* Renamed actions array according to suggestion
2020-12-11 12:28:28 -06:00
Seth Barberee
72aa91c7f8 code_80A26CC: fix nonmatching and decomp a few more 2020-12-08 13:17:08 -06:00
Seth Barberee
195eb49aa8 more decomping of funcs 2020-12-04 15:05:07 -06:00
Seth Barberee
90891b5da7 split a little and decomped a few more funcs 2020-12-03 14:19:07 -06:00
Seth Barberee
2582d7a868 isemi-identified VRAM and split personality test funcs 2020-11-23 15:22:16 -06:00
Seth Barberee
fc7f14ab66 random assortment of decomp work and fix of nonmatchings 2020-11-22 17:37:48 -06:00
Seth Barberee
0c3daaaabd some more data dump work 2020-11-21 20:09:25 -06:00
Seth Barberee
db6ed3e526 some more work on decomping funcs 2020-11-20 18:57:36 -06:00
Seth Barberee
cbfab08a06 finish docing PlayTime and fix function - Kermalis 2020-11-20 10:33:21 -06:00
Seth Barberee
5f8105180b combining and doc'ing of playtime things 2020-11-19 11:27:18 -06:00
Seth Barberee
578522b3d3 match another function and fix nonmatching 2020-11-18 00:44:35 -06:00
Seth Barberee
1b46057bb8 doc a music function 2020-11-17 22:57:16 -06:00
Seth Barberee
6e33dcb937 more work on music functions 2020-11-17 22:20:28 -06:00
Seth Barberee
0f6b5a1649 data dumping and doc'ing 2020-11-17 13:10:13 -06:00
Seth Barberee
3b75b10bbb more decomping and some data dumping 2020-11-14 17:44:04 -06:00
Seth Barberee
9237db777e 3% decompiled woo 2020-11-12 18:26:02 -06:00
Seth Barberee
0578f4a062 more work on music.c and few more funcs 2020-11-10 13:54:27 -06:00
Seth Barberee
bfceb5d709 add sound macros from pokeemerald since pmd-red is basically same 2020-11-08 17:53:37 -06:00
Seth Barberee
b426b333f7 used m4a2s from ipatix to do an initial dump of audio and started working on audio part of pmd 2020-11-08 15:27:37 -06:00
Seth Barberee
df9385ed9e continue my slow pace 2020-11-07 17:29:46 -06:00
Seth Barberee
9df5bb1bcb more decomp work on some funcs 2020-11-05 22:27:43 -06:00
Seth Barberee
799fa82c1a finally figured out fatal error func and another func 2020-11-05 18:11:47 -06:00
Seth Barberee
65720e556d some work on fatal system decomping 2020-11-02 11:15:37 -06:00
Seth Barberee
9d383609e2 some splitting and sync'ing declarations/vars 2020-11-01 23:23:32 -06:00
Seth Barberee
22f19f8d55 more work on funcs 2020-11-01 12:27:21 -06:00