water111
4f8403d8e6
support type-ref ( #613 )
2021-06-20 12:59:39 -04:00
ManDude
adcb9fad55
Fix console scrolling issues on windows ( #609 )
...
* Fix console scrolling issues on windows
* Add super extremely important spaces
2021-06-19 22:46:36 -04:00
water111
06ae38d464
[decomp] clean up type def formatting and remove all-forward-definitions.gc ( #608 )
...
* clean up
* fix test
2021-06-19 15:50:52 -04:00
water111
bc87c4426f
[decompiler] Fix deref bug and add some more new type pass stuff ( #606 )
...
* add copy on write and clean up some register stuff
* fix bug in multiple field lookup
* format
2021-06-18 21:10:00 -04:00
water111
409c1f5a7d
[Decompiler] WIP new type analysis tools ( #601 )
...
* add multi-lookup
* use multi-lookup
2021-06-17 21:50:36 -04:00
water111
d79937fb62
Improve forward declaring types ( #596 )
...
* improve forward declare type
* display type differences
* make codacy happy
2021-06-15 21:03:55 -04:00
water111
fac4364aa4
fix pretty printer bug and add some documentation on states ( #590 )
2021-06-13 19:44:24 -04:00
Tyler Wilding
506b5d8ceb
Decompile: prototype
| video
| vol-h
| air-h
| nav-enemy-h
| rigid-body-h
( #575 )
...
* decomp: `prototype` done
* tests/ref: Update all reference tests
* decomp: `video` done
* decomp: Add `video` to src
* decomp: `vol-h` done
* tests/ref: Update reference tests again
* decomp: Add `vol-h` to ref tests, leave `entity` in process as a `basic` for now!
* decomp: `air-h` done, compiler issue though
* decomp: `nav-enemy-h` done, compiler issue though
* decomp: `rigid-body-h` done, compiler issue though
* Address feedback and fix the failing to compile files
* linting
* finish `video` off
2021-06-12 21:52:55 -04:00
water111
8faded6400
[decompiler] bitfield support for sound-name
( #582 )
...
* fix 64-bit fields in 128-bit bitfields
* support sound-name
* fix merge
* support some more sound stuff in overlord
2021-06-12 12:55:38 -04:00
water111
2851cae13b
[decompile] fact-h ( #556 )
...
* decompile fact-h
* fix unused var
* codacy again
2021-06-05 11:15:34 -04:00
water111
542edfb164
[compiler/decompiler] Take the address of a variable ( #554 )
...
* support taking the address of variables
* partially working stack variables
* implement type cast stuff
* remove final
2021-06-04 13:43:19 -04:00
water111
c4f44e265f
[decompiler] Better support for non-virtual methods ( #543 )
...
* fix up nonvirtual method calls and stack new method calls
* look at final in compiler too
2021-05-30 22:52:40 -04:00
water111
b1a76b2291
[decomp] Small fixes ( #541 )
...
* fix a few bugs
* fix local vars missing in top level
* more small fixes
* support missing inline array access case
* one more fix
2021-05-30 19:57:11 -04:00
water111
0f0902eabf
add config option for changing cond splitting behavior ( #522 )
2021-05-24 19:52:19 -04:00
water111
663b5c7899
[OpenGOAL] Support for 128-bit arguments and return values (WIP) ( #510 )
...
* xmm call and return working, needs some careful double checking and tests
* clean up and test
2021-05-20 20:12:49 -04:00
Tyler Wilding
9e2b49abaa
Automatically watch PCSX2 savestate directory and analyze the EE Memory ( #507 )
...
* add elzip library (doesn't require zlib)
* Can analyze directly from a PCSX2 save-state now
* Add scaffolding to auto-watch for new save-states
* .gitattributes fix
2021-05-20 14:18:28 -04:00
water111
a6258f3654
[compiler] support 128-bit bitfields ( #500 )
...
* support setting and accessing fields of a 128-bit bitfield
* remove print
* rework static constants
* support 128-bit bitfields as part of static structures
* dynamic construction
2021-05-18 21:25:29 -04:00
water111
79d10979da
[decomp] math-camera
( #491 )
...
* decompile math camera
* missing line
2021-05-15 20:08:08 -04:00
water111
d9f9d36f37
[OpenGOAL] make multiplication/divsion like GOAL and support in decompiler ( #483 )
...
* support in compiler
* multiplication in the decompiler
* update divisions
2021-05-14 18:43:12 -04:00
water111
60c670df3a
Use dragonbox to print floats ( #481 )
...
* add new float printer
* more includes
* compare as floats
2021-05-13 21:05:05 -04:00
water111
0ab916e122
fix quote issue and decompile level-info ( #474 )
2021-05-12 21:57:19 -04:00
water111
223adeeb0c
Automatically get float label type in most cases ( #463 )
...
* automatically get float type in most cases
* try harder to print json errors
* fix test
2021-05-11 21:57:05 -04:00
water111
433993074a
Clean up some errors/crashes in decompiler ( #452 )
...
* fix offline tests, clean up some warnings
* clean up warnings during decomp
* fix remaining crash issues
2021-05-11 16:43:13 -04:00
Tyler Wilding
4c788b7f50
Decompilation: shadow-h
and target-h
( #428 )
...
* decomp: `target-h`
* decomp: `shadow-h`
* decomp: Add reference / source files
* Use `define-perm` in goal_src file
2021-05-11 00:01:37 -04:00
ManDude
fef9b139d7
Force-enable assert
on release mode Windows build ( #440 )
2021-05-10 23:03:56 -04:00
water111
62dfa1bf07
[TypeSystem] add heap-base property to types ( #431 )
...
* support heap base in the type system
* lock around modification of status
2021-05-09 19:40:36 -04:00
water111
21fefa0aaa
[decompiler] small fixes for methods and more reference tests ( #419 )
...
* clean up method stuff, fix a few small bugs, and add references for easy -h files
* more small fixes and reference tests
2021-05-06 00:42:49 -04:00
water111
0a6602e320
[Decompile] connect, text-h, settings-h, capture, memory-usage-h ( #410 )
...
* decompile stuff
* temp
* temp2
* fix
* temp
* preparing for merge
* working
* fix stupid format
* fix codacy
2021-05-05 17:38:16 -04:00
ManDude
8d99bee88c
[decompile] decomp time-of-day-h
, fix mood-h
, update sky-h
, make art-h
almost work ( #415 )
...
* [decompiler] make certain floats decompile to constants
* update various types in `mood-h`, `time-of-day-h` and `art-h`
* fix `time-of-day-context`
* add some offline tests
* make `new-dynamic-structure` decompile at least
* formatting
* Update all-types.gc
* Update all-types.gc
2021-05-04 21:36:22 -04:00
ManDude
7cb04c6cd5
[decomp] font-h, fix a vector type, minor decompiler fixes ( #411 )
...
* Make `:do-not-decompile` work on field lookup as well
* decompile `font-h` and update a vector type + minor fixes
* fix some types
* fix font-h
* fix font-h (again)
* update a script
* fixes
* Fix segfault
* Fix `PROT_NONE` page protection on windows
2021-05-01 21:09:48 -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
ManDude
54ccc9db97
Increment enum entry values if no value's supplied ( #385 )
2021-04-24 23:51:47 -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
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
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
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
17b05a9e40
[FileUtil] windows directories fix ( #352 )
2021-04-10 21:17:12 -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
d60d9b639a
support anonymous functions ( #323 )
2021-03-14 19:06:51 -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
fe336b7b5f
[compiler] fix warnings in repl lib and add macros to autocomplete ( #317 )
...
* fix warnings in repl lib and add macros to autocomplete
* fix crash on ctrl-c, build runtime as static lib and make goos prompt look fancier
* some tweaks for linux build
2021-03-11 12:54:16 -05:00
Tyler Wilding
8bba3d7fd7
REPL: Add clear-screen / auto-complete / basic hints and syntax highlighting ( #316 )
...
* swap to replxx from linenoise
* repl: Implement form auto-tab-completion
* repl: color coordinate the prompts
* repl: Add some basic syntax highlighting, bracket pairs and forms (all one color)
* repl: A more consistent starting screen for the repl
* repl: bug fix for auto-complete
* debug linux
* linting
2021-03-07 23:41:21 -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
26da66b29c
move dgo decompression to common utils and support it in the dgo unpacker ( #312 )
2021-03-06 16:06:08 -05:00
water111
9168f03289
[Compiler] Add get-info
( #306 )
...
* wip symbol info
* finish implementation
2021-03-04 10:33:59 -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