Commit graph

100 commits

Author SHA1 Message Date
bb010g 2436a8a541
Nixpkgs support (#228)
* Use env shebangs

* CMake cleanup, install() invocations, & CTest

`ctest` & the `test` target work now

* Nixpkgs support
2021-02-03 21:29:46 -05:00
water111 51f70b6f4b
[Tools] Add DGO packer and unpacker (#219)
* add dgo tools

* make codacy happy
2021-01-27 20:46:58 -05:00
water111 3331e9cd00
Replace spdlog (#185)
* remove spdlog

* clang format and fix windows

* add format shared

* windows sucks
2021-01-06 12:16:39 -05:00
Tyler Wilding 69f7f46477
Add Address Sanitizer support to MSVC and CMake (#182)
* msvc: Add Address Sanitizer

https://devblogs.microsoft.com/cppblog/addresssanitizer-asan-for-windows-with-msvc/

* cmake: Add Address Sanitizer

* docs: Update ReadME

* see if we can replicate the test failure

* windows fixes maybe

* cmake: Compile with gcc and clang (only coverage on

* hacky try again

* clean up

* fix clang issues

* linting

Co-authored-by: water <awaterford111445@gmail.com>
2021-01-04 23:32:51 -05:00
water111 95c81b675a
add asan build (#179) 2021-01-03 12:31:42 -05:00
water111 25301a8bbc
[Decompiler, Game] Run type prop on gstring (#168)
* run type prop on gstring

* add types-h

* new settings

* cmake switch

* down to 4 failing functions

* clang format
2020-12-26 11:09:59 -05:00
water111 5cb6368b9a
Clean up asm for format (#164)
* clean up asm for format

* fix windows

* remove rpc-call hack

* revert cmake version change

* clang format

* asm fix for windows
2020-12-23 11:15:41 -05:00
water111 ea479bee98
Add enums and some cleanup (#148)
* support enums

* better compiler warnings

* tweaks to build with clang
2020-12-02 19:51:42 -05:00
water111 660ef41136
Update documentation and clean up (#129)
* cleanup

* clean up file layout
2020-11-21 12:52:38 -05:00
water111 c09541fa98
Add some debugger memory utilities (#109)
* add some memory utilities

* run waitpid in a separate thread and support very simple breakpoints

* fix breakpoints

* add missing windows stub function

* fix error message on exit
2020-11-06 13:59:39 -05:00
water111 566dc6070f
add zydis library and a simple test (#108) 2020-10-31 14:31:13 -04:00
water111 0451a06d76
Set up the compiler to ptrace the runtime (#107)
* set up the compiler to ptrace the runtime

* clang format

* move debugger state to a separate Debugger class

* support registers and break and continue

* documentation and fix windows

* make listener part of compiler, not a separate library

* implement memory read and write

* fix for windows
2020-10-31 14:07:43 -04:00
water 3d7ca5fb50 fix cmake setting for spdlog 2020-10-28 20:15:31 -04:00
water b1759dbd13 Merge branch 'doctashay-logging2' 2020-10-11 19:12:14 -04:00
water 651579c4bb Merge branch 'logging' of https://github.com/doctashay/jak-project into doctashay-logging2 2020-10-11 19:07:50 -04:00
water f7abe9c5f8 clean up some warnings and add some extra integer tests 2020-10-09 21:28:41 -04:00
Tyler Wilding 6e1dea4a65 Disable -Wshadow, also flakey test, or linux issue? 2020-10-09 20:23:31 -04:00
Tyler Wilding 76bede157d Merge remote-tracking branch 'water111/master' into generative-tests 2020-10-09 13:31:08 -04:00
Shay 0f916ed81e More minor fixes
spdlog now builds as a library with nasm workaround
2020-10-08 22:39:12 -06:00
water111 a64dd6c90b
Add CFG to IR decompiler pass (#60)
* add some more cfg ir stuff

* add cond with else

* add type of recognition

* add cond to compare conversion

* finally all conds are passing

* started sc recognize, but ash min and max should be recognized first

* fix ash showing up as sc

* add abs

* fix merge issues

* try building goos with optimizations on

* sc mostly working, still need to fix right aligned nesting

* ands and ors are converting correctly now

* clean up
2020-10-06 18:14:27 -04:00
doctashay 953e7c1ad5 Temp fix for spdlog + initial log to file implementation
Reduces verbose output by logging additional information to logs/game.log.
2020-10-06 16:03:33 -06:00
water 0fbffcd409 add cond to compare conversion 2020-10-03 18:36:02 -04:00
Tyler Wilding 663453769c Final polish on the integer tests, time to start converting the rest 2020-10-03 18:32:01 -04:00
water111 d03080c463
Build spdlog as a shared library (#59)
* change build settings for spdlog

* fix typo

* trying with j4 now

* try as a shared library

* add shadow warning back
2020-10-03 10:33:20 -04:00
doctashay c2cb053a5d
spdlog implementation (#58)
* Commit new spdlog implementation 

Hopefully resolves Linux build dependency errors

* clang formatting

* Fix Linux-only definition

Found the culprit!

* More Linux fixes

Linus Torvalds have mercy on my soul

* Replace printf logging with spdlog equivalent

Preserve previous printfs in comments for now. Spdlog needs to be configured to be thread-safe. Few additional printfs to convert later. No changes have been made to GOAL's internal printing system

* clang-format stuff

* ugh more clang-format

why

* Another shot

* CMakeLists.txt update

Fix issues related to spdlog version targeting

* Remove old prints + fix log types

Up next is the transition to a git submodule, should be simple enough

* spdlog is now a git submodule

* adapted for project

* Linux fix

* More fixes

Yikes

* Update for linux

I should really fix my WSL environment

* Update workflow.yaml

Hopefully will resolve issues with GitHub Actions on Linux
2020-10-03 09:39:04 -04:00
water111 abcd444a3b
Add deftype (#48)
* initial deftype implementation

* fix library setup for windows

* implement deftype

* fix memory bug

* fix formatting
2020-09-17 21:47:52 -04:00
Tyler Wilding 345b8e30d8 Resolve a good chunk of windows compiler warnings
Mostly revolved around the new MSVC check for functions that don't cover all paths (ie. a switch statement without a default case).  It appears to not see an assert as a valid default case.

I switched assert(false) to exceptions in these cases.  I believe this should also abort the program, but will also provide a hopefully useful message?  Hopefully this is an improvement.

Resolves #32
2020-09-13 22:02:27 -04:00
water111 90a7e9b4b9
Add addition and subtraction for integers, build macros, dgo building, and build/load test (#35)
* see if math works on windows

* add dgo

* windows debug

* windows debug 2

* one more debug try

* add extra debug print and change logic for slashes

* update

* again

* try again

* remove build game

* remove build game

* add back build-game

* remove runtime from test

* test

* reduce number of files

* go to c++ 14

* big stacks

* increase stack size again

* clean up cmake files
2020-09-12 20:41:12 -04:00
blahpy 89e8ec40ed
Merge branch 'master' into master 2020-09-11 09:18:12 +12:00
water a1474d3318 Merge branch 'master' of https://github.com/water111/jak-project into w/ir 2020-09-09 17:37:12 -04:00
water 83b6db9f33 update to c++17 2020-09-09 17:00:46 -04:00
blahpy eb886d0c45 Upload new files 2020-09-09 16:54:16 +12:00
water d52ec34a22 Merge branch 'master' of https://github.com/water111/jak-project into w/ir 2020-09-08 21:05:22 -04:00
water111 e756e3559c
Merge pull request #15 from xTVaser/ci/codecov
Add Coveralls.io
2020-09-08 21:04:30 -04:00
water f0328dcc92 Merge branch 'master' of https://github.com/water111/jak-project into w/ir 2020-09-08 19:39:39 -04:00
water c9e99b8ebe add a separate cmake configuration for code coverage builds 2020-09-08 19:15:38 -04:00
Tyler Wilding 699270c00c Add coverage flags to everything we compile 2020-09-08 16:19:05 -04:00
Tyler Wilding 8f1ddca825 Add Coveralls.io 2020-09-08 15:47:25 -04:00
Tyler Wilding 84e0bee6f4 Use shim in Listener/Deci2Server 2020-09-07 19:59:44 -04:00
water d49b01e310 working return integer tests as part of gtest 2020-09-06 16:58:25 -04:00
Tyler Wilding 6187b31f2c Changes needed to get build passing 2020-09-04 23:24:16 -04:00
Tyler Wilding 39eb3a90ea Fix for cmake 2020-09-03 22:42:04 -04:00
Tyler Wilding ef09eb12c8 Add a bunch of #ifdefs to keep things working as expected on linux 2020-09-03 22:24:50 -04:00
Tyler Wilding fbf4309eb8 Fix unit-tests, this is important!
https://trac.osgeo.org/mapserver/ticket/1642
2020-08-29 17:09:35 -04:00
doctaweed 311e025fe9 Update CMakeLists.txt
Quick fix to resolve missing dependency issue. Will compile on the fly.

Next task is threading system
2020-08-26 21:45:52 -06:00
Tyler Wilding 51c23aaede A whole bunch of cmake fixes 2020-08-26 22:23:16 -04:00
Tyler Wilding 6e54bd61b1 Format and start adding Windows steps 2020-08-26 19:46:14 -04:00
water c65d4c51e6 add fmt library 2020-08-23 23:43:11 -04:00
water ba3c3af43e add json and minilzo libraries 2020-08-22 23:16:48 -04:00
water acf086a3d2 check in existing work 2020-08-22 22:30:12 -04:00