water111
56625bb0ee
Make buttons a bitfield and fix let bug ( #399 )
...
* make pad buttons bitfields
* fix stupid let bug
* update tests
2021-04-29 20:25:45 -04:00
water111
70d93354eb
[Decompile] file-io, loader-h, texture-h, level-h, math-camera-h ( #397 )
...
* file-io and loader-h
* add test for level-h
* math camera-h
2021-04-28 20:51:17 -04:00
water111
14028b90bc
[Decompile] vector.gc (finally) ( #394 )
...
* support psubw
* do half of vector
* rest of vector
* add test
* format
2021-04-28 17:14:54 -04:00
water111
53a70d8e43
clean up display-h ( #392 )
2021-04-27 19:40:14 -04:00
water111
3d2ca71fe3
[Decompile] pad and gs ( #389 )
...
* update stuff
* gs reference added
* update config
2021-04-26 21:40:08 -04:00
ManDude
8619e6df19
Fix gs-bgcolor and display-frame + decompiler types ( #390 )
2021-04-26 08:44:13 -04:00
water111
2002db359a
[Decompiler] WIP: Stack Spills ( #382 )
...
* set up types
* cleaned up type analysis and got things working through atomic ops
* expression working, need types
* improved types and names
* getting close
* finish up dma-disasm
* fix
2021-04-25 14:48:54 -04:00
water111
fa122356ec
[Decompiler] Fixes for dma-disasm ( #377 )
...
* small tweaks
* fix up some more dma stuff
2021-04-23 20:29:15 -04:00
water111
060b125324
[Compiler/Decompiler] Better support for Bitfield and Enum types ( #374 )
...
* compiler fixes, a decent amount of decompiler stuff is working too
* more support in decompiler, fix some casts
* decompile static data too
2021-04-22 19:08:58 -04:00
ManDude
26accb8714
Fix +1 macros to 1+ and update some timer types ( #375 )
...
* Correct `+1` macros to `1+`
* update some `timer-h` types
2021-04-22 18:31:54 -04:00
ManDude
0560136f08
Allow enum names to serve as types (using the enum's type) ( #372 )
...
* Allow enum names to serve as types (using the enum's type)
* Formatting
* add doc to `get_enum_type_name`
* Ban enum forward-declaring, and remove unneeded checks
2021-04-19 20:29:38 -04:00
water111
c09e18f3a7
Fix stack new and add size-of to compiler ( #370 )
...
* make decompiler output stack-no-clear
* add size-of
2021-04-18 19:51:15 -04:00
water111
7737817ac7
[Decomp] Fix bitfields in dma-bucket ( #367 )
...
* fix bitfields in dma-bucket
* fix dma-bucket
2021-04-18 12:08:08 -04:00
water111
9867155e7c
[Decompiler] More support for bitfields ( #363 )
...
* temp
* initial support for dynamic bitfields
* some more progress on display
* dma-buffer good
* small fixes
2021-04-17 18:35:50 -04:00
ManDude
9fbbe1a79c
prepare for decompiling display ( #359 )
...
* prepare for decompiling display
Needs some work on the decompiler (mostly bitfield stuff) before a more proper decomp can be done
* make `(profile-bar draw)`, `set-display-gs-state-offset` and `set-display-env` decompile
decompiler should now support unsigned divide
* fill in some dma-h types
* Fill in a few VIF bitfields + other minor fixes
* Update all-types.gc
* Fix stupid mistake in `vif-mask`
* update dma-h reference
* this uint32 is actually a `vif-tag` (oops)
2021-04-16 18:36:19 -04:00
ManDude
8b62de35ea
[texture-h] fixes ( #356 )
...
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* [texture-h] fixes
* [display-h] use bitfield types
2021-04-13 20:22:34 -04:00
ManDude
fcbf5b60ff
[gs] fill in most of the register types ( #355 )
...
* [gs] fill in most of the register types
that was kinda boring to do
* [display-h] minor decompiler fixes
* Update all-types.gc
2021-04-13 00:36:05 -04:00
water111
e5f0fecf17
[Decompiler] bitfield support and clean up of DMA ( #350 )
...
* get to vif
* support basic bitfield access
* make bitfields in dma work
* clean up dma
* fix merge conflict
2021-04-11 16:07:01 -04:00
ManDude
64ae2d6d39
[decomp] sync-info 1 ( #351 )
...
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* [dynamics-h] clean-up
* make things neat
* update surface-h
* [sync-info] decomp 1
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* [sync-info] update decomp
* Update gravity-h.gc
* [windows] separate scripts for runtime w/ or w/o display
* Update dynamics-h.gc
* Add offline test for sync-info
* clang
2021-04-10 21:17:36 -04:00
water111
9969445cf7
[Decomp] Math library: transform and quaternion ( #344 )
...
* decompile transform
* types for quaternion
* part of quaternion
* finish quaternion
* fix offline test reference
* wip fix to let issue
* fix
2021-04-02 11:35:14 -04:00
ManDude
7867de8fd7
update some physics code ( #347 )
...
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
* scripts to annoy me less
* [dynamics-h] clean-up
* make things neat
* more cleanup
* update surface-h
* fix error
* fix typo
* Spoonfeed the compiler
* [surface-h] rename sqrt to sqrtf
2021-03-29 18:30:58 -04:00
water111
0a76e6e157
[Decompiler] Make matrix decompile ( #341 )
...
* small fixes
* update
* add instructions
* finish matrix
* add matrix test cases
2021-03-28 20:26:30 -04:00
water111
64c35ca453
[Decompiler] Stack Variables ( #338 )
...
* clean up type analysis
* get everything set up
* basic stack variables working
* partial load fix
* most of matrix
* add offline tests
2021-03-27 15:18:59 -04:00
water111
7fac11ddf5
Support 128-bit variables ( #336 )
...
* wip 128 bit support
* add a few more files to offline test
2021-03-25 16:02:48 -04:00
water111
99683c0dac
[decompiler] Add tests and fixes for vector-h and math ( #333 )
...
* before messing with ssa stuff
* fix ash
* bounding box
2021-03-24 19:16:31 -04:00
water111
9ffc6014e1
fix printing and add gstate ( #330 )
2021-03-22 20:04:00 -04:00
water111
123f3b509d
[Decompiler] Fix let bug ( #328 )
...
* fix let definition bug
* remove debug prints and add test
2021-03-22 16:46:02 -04:00
ManDude
8e1c147ad8
move commonly used scripts to specific folders ( #325 )
...
* move commonly used scripts to specific folders
* fixes
* Update test.sh
* Update test.sh
* Fix file permission
2021-03-18 16:43:37 -04:00
water111
4262145c99
fix set! missing typecast ( #324 )
2021-03-17 19:26:35 -04:00
water111
d60d9b639a
support anonymous functions ( #323 )
2021-03-14 19:06:51 -04:00
water111
e93d97dd07
[decompiler] gkernel offline test ( #321 )
...
* working on pointer math
* bug fixes
* gkernel passing with no anon functions
* update tests
2021-03-14 16:11:42 -04:00
water111
814480f9e5
[Decompiler] Replace type hint system and improve variable types. ( #320 )
...
* get gkernel and gkernel-h at least somewhat working in the offline tests
* strip comments from json
* switch hints to casts. online tests passing, offline passing up to gkernel
* variable retyping is added
* fix up casts in lets
* update
2021-03-13 16:10:39 -05:00
water111
9074a35b9b
[Decompiler] Fix printing of lets ( #314 )
...
* fix let prints and windows warnings
* missing include for windows
* windows again
2021-03-07 12:01:59 -05:00
water111
d8a82eeca1
[Decompiler] Fix up pretty printing and other small changes ( #311 )
...
* fix up pretty printing
* wip
* fix pointer cast signed vs unsigned issue
2021-03-06 20:16:48 -05:00
water111
0bf189f582
make decompiler at least unpack jak 2 and jak 3 files again ( #313 )
2021-03-06 19:06:45 -05:00
water111
26da66b29c
move dgo decompression to common utils and support it in the dgo unpacker ( #312 )
2021-03-06 16:06:08 -05:00
Tyler Wilding
f123bf368a
decomp - vector.gc - Decompile vector.gc ( #289 )
...
* temp: commit what i have so far
decomp: Fix nonempty_intersection impl for MSVC Debugging use-case
docs: Add info on getting ASan builds running on Visual Studio w/o exceptions
* decomp: initial rlet implementation
* decomp: cleanup pass of vector-rewrite stage
* decomp: Commit in-progress vector.gc, shortcomings are TODO commented
* decomp: More cleanup, rename from being `vector` instr specific
Fundamentally, this process can be used for re-writing ANY inline-asm instruction
* decomp: Support 4th arg ACC instructions
* decomp: Final pass of vector.gc before implementing last instructions
* decomp: Better warnings when hitting unimplemented instructs
* compiler: Implement inverse-sqrt and mov.vf
* decomp: Final manual pass over vector.gc, documented gaps
* decomp: Finish decompiling what currently is possible in vector.gc
* decomp: Fix Variable -> RegisterAccess conflict
* decomp: codacy lint
* Address review feedback
* Address feedback part 2
* Resolve build failures
2021-03-06 10:46:26 -05:00
water111
b352dcefa9
recognize dotimes ( #310 )
2021-03-05 21:46:39 -05:00
water111
65ffe83468
[Decompiler] Decompile let ( #309 )
...
* test
* fix bug
* fix tests for let
* missing formatting fix
2021-03-05 18:48:01 -05:00
ManDude
e77478e2e6
[decompiler] Print floats as neatly as possible ( #307 )
...
* [decompiler] Print floats as neatly as possible
* style fixes
* more
* Update test.bat
* Add and fix tests
* Jesus christ fine
2021-03-04 00:47:46 -05:00
water111
d9aa535dd0
[Decompiler] Fix issues in gcommon ( #305 )
...
* fix several issues
* small fixes
2021-03-03 20:52:25 -05:00
water111
413c1f5c74
[Decompiler] Add offline tests ( #303 )
...
* add offline test for gcommon as an example.
* fix test
* unused var
2021-03-03 15:42:55 -05:00
water111
8f68d35cbb
[Decomp] Some more collision header files and speed up tests ( #296 )
...
* some more
* faster tests
* on by default
2021-03-01 11:15:24 -05:00
water111
b0686b1ea7
fix decompiler crash ( #294 )
2021-02-28 19:22:53 -05:00
water111
9d3b056b7a
Fix asize bug, decompile a few files ( #293 )
...
* fix bug in asize of basic
* more decomp
2021-02-28 18:05:07 -05:00
water111
c15c163333
[Decomp] Add SSA based check for expression building ( #292 )
...
* wip
* tests pass
* fix warnings
2021-02-28 12:38:29 -05:00
water111
57eca1dee9
[Decomp] Decompile more files. ( #290 )
...
* decompile ocean trans tables
* more
* exclude tables from decomp progress
* format'
2021-02-27 14:40:18 -05:00
Tyler Wilding
049489c85b
Fix a small regression impacting MSVC debug builds ( #285 )
...
* decomp: Fix nonempty_intersection impl for MSVC Debugging use-case
* docs: Add info on getting ASan builds running on Visual Studio w/o exceptions
2021-02-27 13:38:04 -05:00
water111
b7f040986e
[Decomp] Decompile connect.gc ( #288 )
...
* decompile connect
* decompile lots of types
2021-02-26 22:22:54 -05:00
water111
d6d5203695
[Decomp] Minor fixes plus some math camera decomp ( #287 )
...
* make some progress on math camera
* minor fixes plus start of decomp of math camera
2021-02-26 15:27:13 -05:00