mirror of
https://github.com/open-goal/jak-project
synced 2026-08-21 23:00:45 -04:00
A lot of fixes (game is 100%'able!) (#1118)
* a crapton of fixes * Update cavecrystal-light.gc * damn you * fix bunnies * change codegen for int -> float cast (just add sign extension now) * fix test * this file is tagged anyway * fix some stack types * remove bad camera debug funcs * add more heap bars and entity pick menu * finish entity menu and make `music-flava` enum * fix some `process-taskable` fields * citadel sage crash fix * fix citadel drop plats * fix tests * fix some casts * update refs * finish `village3-obs` and `snow-ball` * Update README.md * fix sidekick too * fix issue? * more entity inspect hardcoded checks * more * use `*display-actor-anim*` for something! * CRAP * also clear actor anim when deselecting entity * *display-actor-anim* already renders this! * do not display `path` tag info * entity debug inspect tool * one more * make debug string even larger * missing res tag types * more polish and more known tags * last few
This commit is contained in:
@@ -300,7 +300,7 @@ std::vector<BacktraceFrame> Debugger::get_backtrace(u64 rip, u64 rsp) {
|
||||
found = true;
|
||||
}
|
||||
} else*/
|
||||
if (fails > 50) {
|
||||
if (fails > 70) {
|
||||
fmt::print(
|
||||
"Backtrace was too long. Exception might have happened outside GOAL code, or the "
|
||||
"stack frame is too long.\n");
|
||||
@@ -578,14 +578,18 @@ void Debugger::read_symbol_table() {
|
||||
bytes_read += 128;
|
||||
// just in case
|
||||
str_buff[127] = '\0';
|
||||
assert(strlen(str_buff) < 50);
|
||||
std::string str(str_buff);
|
||||
|
||||
// GOAL sym - s7
|
||||
auto sym_offset = s32(offset + st_base + BASIC_OFFSET) - s32(m_debug_context.s7);
|
||||
assert(sym_offset >= INT16_MIN);
|
||||
assert(sym_offset <= INT16_MAX);
|
||||
|
||||
std::string str(str_buff);
|
||||
if (str.length() >= 50) {
|
||||
fmt::print("Invalid symbol #x{:x}!\n", sym_offset);
|
||||
continue;
|
||||
}
|
||||
|
||||
// update maps
|
||||
if (m_symbol_name_to_offset_map.find(str) != m_symbol_name_to_offset_map.end()) {
|
||||
if (str == "asize-of-basic-func") {
|
||||
@@ -596,7 +600,8 @@ void Debugger::read_symbol_table() {
|
||||
str += "-hack-copy";
|
||||
} else {
|
||||
fmt::print("Symbol {} (#x{:x}) appears multiple times!\n", str, sym_offset);
|
||||
assert(false);
|
||||
continue;
|
||||
// assert(false);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user