jakx: get rid of all the copy-pasted type casts, likely useless

This commit is contained in:
Tyler Wilding
2026-04-19 15:31:19 -04:00
parent a63cb1d212
commit 174057791e
19 changed files with 0 additions and 74081 deletions
File diff suppressed because it is too large Load Diff
@@ -1,5 +1,2 @@
{
// "gkernel": [
// [17, "(function process symbol)"]
// ]
}
File diff suppressed because one or more lines are too long
@@ -9,47 +9,14 @@
// remap names for states and behaviors of these types
"type_remap": {
// "target": "jakb-ag",
// "sidekick": "daxter-ag",
// "wings": "jakb-ag",
// "lightjak-shield": "jakb-ag",
// "freeze-screen": "collectables-ag",
// "red-3-sphere": "gun-ag",
// "gun-dark-3-sphere": "gun-ag",
// "marauder": "marauder-male-ag",
// "glider-ring": "des-glider-ring-ag",
// "flut-racer": "flut-wild-ag",
// "was-pre-heart": "neo-satellite-heart-ag",
// "was-pre-beam": "neo-satellite-game-ring-ag",
// "was-pre-bubble": "neo-satellite-ps-symbols-ag",
// "maker": "dm-robot-ag",
// "mh-wasp": "neo-wasp-ag",
// "factory-boss": "errol-lowres-ag",
// "fac-robotank-turret": "fac-robotank-ag",
// "neo-sat-shield": "neo-satellite-shield-ag",
// "neo-sat": "neo-satellite-ag",
// "power-game-switcher": "switcher-ag",
// "power-game-player": "daxter-pac-man-ag",
// "power-game-glyph": "cipher-ag",
// "power-game-rings": "pow-rings-ag",
// "power-game-chaser": "flitter-ag",
// "power-game-zapper": "grunt-head-ag",
// "gungame-door": "fort-entry-gate-ag",
// "bt-mh-flyer": "bt-wasp-ag",
// "gunship-exploder": "kg-robot-transport-break",
// "gunship-engine": "kg-robot-transport-bomb",
// "protect-gunship": "kg-robot-transport",
// "gunship-missile": "cty-homing-missile"
},
// remap names for types in an entire file (higher priority)
"file_override": {
// "target-indax": { "target": "daxter-ag" } // in target-indax.gc, the remap for 'target' will be set to 'daxter-ag'
},
// some art groups (like robotboss-ag) have a name for their model that differs
// from the usual ag-name + "-lod0". you can add those exceptions here.
"joint_node_hacks": {
// "robotboss-ag": "robotboss-basic"
}
}
@@ -4,7 +4,6 @@
////////////////////////////
"types_with_bad_inspect_methods": [
// "game-task-event"
],
"no_type_analysis_functions_by_name": [],
@@ -13,13 +12,11 @@
// the second argument is the name of the first condition in the cond. Use print_cfg to find it out.
// The third argument is the number of cases. If you set it too small it may fail to build the CFG.
"cond_with_else_max_lengths": [
// ["(method 20 res-lump)", "b0", 2],
],
// if a cond with an else case is being used a value in a place where it looks wrong
// you can add the function name to this list and it will more aggressively reject this rewrite.
"aggressively_reject_cond_to_value_rewrite": [
// "(method 10 res-lump)",
],
// this provides a hint to the decompiler that these functions will have a lot of inline assembly.
@@ -27,13 +24,11 @@
"hint_inline_assembly_functions": [],
"asm_functions_by_name": [
// "name=",
],
// these functions use pairs and the decompiler
// will be less picky about types related to pairs.
"pair_functions_by_name": [
// "ref",
],
// If format is used with the wrong number of arguments,
@@ -41,11 +36,9 @@
// that they used the correct number. This will override the decompiler's
// automatic detection.
"bad_format_strings": {
// "~170h~5d~220h~5d~280h~5,,2f": 3,
},
"blocks_ending_in_asm_branch": {
// "light-merge!": [1, 2, 3, 5, 7],
},
// Sometimes the game might use format strings that are fetched dynamically,
@@ -54,11 +47,9 @@
// e.g. "function-name":[[op, argc], [op, argc], ...]
// where "op" is the op number for the call to format.
"dynamic_format_arg_counts": {
// "auto-save-post": [[182, 1]],
},
"mips2c_functions_by_name": [
// "collide-do-primitives",
],
"mips2c_jump_table_functions": {},
@@ -66,7 +57,6 @@
// there are some missing textures. I don't know what the game actually does here.
// the format for entries is [level, tpage, index]
"missing_textures": [
// ["wasintro", 0, 0],
],
// some object files have garbage pad data at the end which makes the decompiler
File diff suppressed because one or more lines are too long
@@ -1,6 +1,2 @@
{
// "math": [
// ["L108", "(pointer float)", 32],
// ["L109", "(pointer float)", 32]
// ],
}
File diff suppressed because one or more lines are too long
@@ -1,4 +1,3 @@
// This overrides the stack size for calls to stack-size-set! in given functions.
{
// "(method 29 target)": 2048,
}
@@ -1,3 +1,2 @@
{
// "quaternion-smooth-seek!": [[16, ["inline-array", "quaternion", 2]]],
}
File diff suppressed because one or more lines are too long
@@ -1,18 +1,2 @@
{
// "(method 2 array)": [
// [23, "gp", "(array int32)"],
// [43, "gp", "(array uint32)"],
// [63, "gp", "(array int64)"],
// [83, "gp", "(array uint64)"],
// [102, "gp", "(array int8)"],
// [121, "gp", "(array uint8)"],
// [141, "gp", "(array int16)"],
// [161, "gp", "(array uint16)"],
// [186, "gp", "(array uint128)"],
// [204, "gp", "(array int32)"],
// [223, "gp", "(array float)"],
// [232, "gp", "(array float)"],
// [249, "gp", "(array basic)"],
// [258, "gp", "(array basic)"]
// ],
}
@@ -1,5 +1,2 @@
{
// "(method 0 inline-array-class)": {
// "args": ["allocation", "type-to-make", "count"]
// },
}
@@ -1,901 +0,0 @@
{
// NOTE: almost all of these were just copy pasted from jak2
// so it's impossible to know which are actually needed for jakx...
// commenting out incase there's something here actually needed
"gkernel": [
[17, "(function process symbol)"],
[24, "(function process symbol)"],
[26, "(function process symbol)"],
[29, "(function process symbol)"],
[32, "(function process symbol)"],
[34, "(function process symbol)"],
[36, "(function process symbol)"]
],
"profile": [[3, "(function profile-segment-array profile-collapse none)"]],
"surface-h": [
[0, "(function none)"],
[1, "(function none)"],
[2, "(function none)"]
],
"gsound": [
[1, "(function none)"],
[3, "(function none)"],
[5, "(function none)"]
],
"joint-mod": [[21, "(function cspace transformq none)"]],
"level-info": [
[0, "(function int)"],
[1, "(function int)"],
[2, "(function int)"]
],
"game-info": [
[11, "(function string none :behavior process)"],
[17, "(function symbol symbol int none :behavior process)"],
[
22,
"(function symbol symbol continue-point game-save resetter-spec none :behavior process)"
]
],
"game-task": [
[0, "(function symbol)"],
[1, "(function symbol)"],
[2, "(function symbol)"],
[3, "(function symbol)"]
],
"settings": [
[6, "(function engine-pers connection-pers object object symbol)"]
],
"generic-obs": [[51, "(function symbol :behavior touch-tracker)"]],
"target-util": [
[2, "(function none :behavior target)"],
[3, "(function none :behavior target)"],
[4, "(function none :behavior manipy)"],
[5, "(function none :behavior manipy)"],
[6, "(function none :behavior target)"]
],
"logic-target": [
[0, "(function external-art-buffer none)"],
[1, "(function external-art-buffer none)"]
],
"sidekick": [[6, "(function object vector int string :behavior sidekick)"]],
"target-handler": [
[10, "(function handle none :behavior target)"],
[14, "(function none :behavior target)"]
],
"target-anim": [
[3, "(function none :behavior target)"],
[4, "(function none :behavior target)"],
[7, "(function none :behavior target)"],
[8, "(function none :behavior target)"],
[13, "(function (pointer time-frame) none :behavior target)"],
[14, "(function none :behavior target)"],
[15, "(function none :behavior target)"],
[16, "(function none :behavior target)"],
[17, "(function none :behavior target)"]
],
"target": [
[1, "(function object :behavior target)"],
[7, "(function object :behavior target)"],
[18, "(function process-focusable object :behavior target)"],
[29, "(function surface surface surface int object :behavior target)"],
[35, "(function surface surface surface int object :behavior target)"],
[45, "(function surface surface surface int object :behavior target)"],
[46, "(function surface surface surface int object :behavior target)"],
[77, "(function surface surface surface int object :behavior target)"]
],
"target2": [
[12, "(function vector time-frame float object :behavior process)"],
[15, "(function object :behavior target)"],
[23, "(function object :behavior target)"],
[64, "(function symbol :behavior target)"]
],
"target-lightjak": [[68, "(function symbol object :behavior target)"]],
"target-invisible": [[10, "(function object :behavior target)"]],
"target-death": [
[1, "(function object :behavior target)"],
[2, "(function object :behavior target)"],
[3, "(function symbol object :behavior target)"],
[4, "(function object :behavior target)"],
[9, "(function handle object :behavior target)"],
[10, "(function object :behavior target)"],
[14, "(function process-drawable object)"],
[25, "(function surface surface surface int object :behavior target)"],
[26, "(function surface surface surface int object :behavior target)"],
[28, "(function continue-point object)"],
[34, "(function process symbol)"],
[35, "(function process symbol)"],
[36, "(function process symbol)"],
[37, "(function process symbol)"],
[38, "(function process symbol)"]
],
"target-gun": [
[15, "(function pickup-type pickup-type none :behavior target)"],
[16, "(function pickup-type none :behavior target)"],
[25, "(function surface surface surface int object :behavior target)"]
],
"target-board": [
[30, "(function surface surface surface int object :behavior target)"],
[31, "(function surface surface surface int object :behavior target)"],
[32, "(function surface surface surface int object :behavior target)"],
[33, "(function surface surface surface int object :behavior target)"],
[34, "(function surface surface surface int object :behavior target)"]
],
"vent": [
[26, "(function vent symbol)"],
[27, "(function vent symbol)"],
[28, "(function vent symbol)"],
[29, "(function vent symbol)"]
],
"crates": [[35, "(function process symbol)"]],
"collectables": [
[77, "(function part-tracker vector)"],
[78, "(function part-tracker vector)"]
],
"trajectory": [[15, "(function trajectory none)"]],
"progress": [[3, "(function int none :behavior process)"]],
"level": [
[25, "(function level-group int symbol)"],
[7, "(function none)"],
[4, "(function load-state sound-bank-state symbol)"]
],
"main": [
[11, "(function int none)"],
[9, "(function none)"],
[8, "(function none)"],
[7, "(function none)"],
[3, "(function symbol :behavior process)"]
],
"scene": [[4, "(function symbol :behavior scene-player)"]],
"pov-camera": [
[
7,
"(function process int symbol event-message-block object :behavior pov-camera)"
]
],
"airlock": [
[7, "(function object :behavior com-airlock)"],
[11, "(function object :behavior com-airlock)"],
[12, "(function object :behavior com-airlock)"]
],
"default-menu": [
[3, "(function object)"],
[4, "(function object)"],
[5, "(function object)"],
[6, "(function object)"],
[7, "(function int debug-menu-msg object)"],
[8, "(function object)"],
[9, "(function object)"],
[10, "(function object)"],
[11, "(function object)"],
[12, "(function object)"],
[13, "(function object)"],
[14, "(function object)"],
[15, "(function object)"],
[16, "(function object)"],
[17, "(function object)"],
[18, "(function int debug-menu-msg float object)"],
[20, "(function object)"],
[21, "(function object)"],
[22, "(function object)"],
[23, "(function object)"],
[24, "(function object)"],
[25, "(function object)"],
[26, "(function object)"],
[27, "(function int debug-menu-msg float object)"],
[28, "(function int debug-menu-msg float object)"],
[29, "(function object)"],
[30, "(function int debug-menu-msg float object)"],
[31, "(function int debug-menu-msg float object)"],
[32, "(function int debug-menu-msg float object)"],
[33, "(function int debug-menu-msg float object)"],
[34, "(function object)"],
[35, "(function object)"],
[36, "(function int debug-menu-msg float object)"],
[37, "(function int debug-menu-msg float object)"],
[38, "(function int debug-menu-msg float object)"],
[39, "(function int debug-menu-msg float object)"],
[40, "(function object)"],
[41, "(function object)"],
[42, "(function int debug-menu-msg float object)"],
[43, "(function int debug-menu-msg float object)"],
[44, "(function int debug-menu-msg float object)"],
[45, "(function int debug-menu-msg float object)"],
[46, "(function int debug-menu-msg float object)"],
[47, "(function int debug-menu-msg float object)"],
[48, "(function int debug-menu-msg float object)"],
[49, "(function int debug-menu-msg float object)"],
[50, "(function int debug-menu-msg float object)"],
[51, "(function int debug-menu-msg float object)"],
[52, "(function int debug-menu-msg float object)"],
[53, "(function int debug-menu-msg float object)"],
[54, "(function int debug-menu-msg float object)"],
[55, "(function int debug-menu-msg float object)"],
[56, "(function int debug-menu-msg float object)"],
[57, "(function int debug-menu-msg float object)"],
[58, "(function int debug-menu-msg float object)"],
[59, "(function int debug-menu-msg float object)"],
[60, "(function int debug-menu-msg float object)"],
[61, "(function int debug-menu-msg float object)"],
[62, "(function int debug-menu-msg float object)"],
[63, "(function int debug-menu-msg float object)"],
[64, "(function int debug-menu-msg float object)"],
[65, "(function int debug-menu-msg float object)"],
[66, "(function int debug-menu-msg float object)"],
[67, "(function int debug-menu-msg float object)"],
[68, "(function int debug-menu-msg float object)"],
[69, "(function int debug-menu-msg float object)"],
[70, "(function int debug-menu-msg float object)"],
[71, "(function int debug-menu-msg float object)"],
[72, "(function int debug-menu-msg float object)"],
[73, "(function int debug-menu-msg float object)"],
[74, "(function int debug-menu-msg float object)"],
[75, "(function int debug-menu-msg float object)"],
[76, "(function int debug-menu-msg float object)"],
[77, "(function int debug-menu-msg float object)"],
[78, "(function int debug-menu-msg float object)"],
[79, "(function int debug-menu-msg float object)"],
[80, "(function int debug-menu-msg float object)"],
[81, "(function int debug-menu-msg float object)"],
[82, "(function int debug-menu-msg float object)"],
[83, "(function int debug-menu-msg float object)"],
[84, "(function int debug-menu-msg float object)"],
[85, "(function int debug-menu-msg float object)"],
[86, "(function int debug-menu-msg float object)"],
[87, "(function int debug-menu-msg float object)"],
[88, "(function int debug-menu-msg float object)"],
[89, "(function int debug-menu-msg float object)"],
[90, "(function int debug-menu-msg float object)"],
[91, "(function int debug-menu-msg float object)"],
[92, "(function int debug-menu-msg float object)"],
[93, "(function int debug-menu-msg float object)"],
[94, "(function int debug-menu-msg float object)"],
[95, "(function int debug-menu-msg float object)"],
[96, "(function int debug-menu-msg float object)"],
[97, "(function int debug-menu-msg float object)"],
[98, "(function int debug-menu-msg float object)"],
[99, "(function int debug-menu-msg float object)"],
[100, "(function int debug-menu-msg float object)"],
[101, "(function int debug-menu-msg float object)"],
[102, "(function int debug-menu-msg float object)"],
[103, "(function int debug-menu-msg float object)"],
[104, "(function int debug-menu-msg float object)"],
[105, "(function int debug-menu-msg float object)"],
[106, "(function int debug-menu-msg float object)"],
[107, "(function int debug-menu-msg float object)"],
[108, "(function int debug-menu-msg float object)"],
[109, "(function int debug-menu-msg float object)"],
[110, "(function int debug-menu-msg float object)"],
[111, "(function int debug-menu-msg float object)"],
[112, "(function int debug-menu-msg float object)"],
[113, "(function int debug-menu-msg float object)"],
[114, "(function int debug-menu-msg float object)"],
[115, "(function int debug-menu-msg float object)"],
[116, "(function int debug-menu-msg float object)"],
[117, "(function int debug-menu-msg float object)"],
[118, "(function int debug-menu-msg float object)"],
[119, "(function int debug-menu-msg float object)"],
[120, "(function int debug-menu-msg float object)"],
[121, "(function int debug-menu-msg float object)"],
[122, "(function int debug-menu-msg float object)"],
[123, "(function int debug-menu-msg float object)"],
[124, "(function int debug-menu-msg float object)"],
[125, "(function int debug-menu-msg float object)"],
[126, "(function int debug-menu-msg float object)"],
[127, "(function int debug-menu-msg float object)"],
[128, "(function int debug-menu-msg float object)"],
[129, "(function int debug-menu-msg float object)"],
[130, "(function int debug-menu-msg float object)"],
[131, "(function int debug-menu-msg float object)"],
[132, "(function int debug-menu-msg float object)"],
[133, "(function int debug-menu-msg float object)"],
[134, "(function int debug-menu-msg float object)"],
[135, "(function int debug-menu-msg float object)"],
[136, "(function int debug-menu-msg float object)"],
[137, "(function int debug-menu-msg float object)"],
[138, "(function int debug-menu-msg float object)"],
[139, "(function int debug-menu-msg float object)"],
[140, "(function int debug-menu-msg float object)"],
[141, "(function int debug-menu-msg float object)"],
[142, "(function int debug-menu-msg float object)"],
[143, "(function int debug-menu-msg float object)"],
[144, "(function int debug-menu-msg float object)"],
[145, "(function int debug-menu-msg float object)"],
[146, "(function int debug-menu-msg float object)"],
[147, "(function int debug-menu-msg float object)"],
[148, "(function int debug-menu-msg float object)"],
[149, "(function int debug-menu-msg float object)"],
[150, "(function int debug-menu-msg float object)"],
[151, "(function int debug-menu-msg float object)"],
[152, "(function int debug-menu-msg float object)"],
[153, "(function int debug-menu-msg float object)"],
[154, "(function int debug-menu-msg float object)"],
[155, "(function int debug-menu-msg float object)"],
[156, "(function int debug-menu-msg float object)"],
[157, "(function int debug-menu-msg float object)"],
[158, "(function int debug-menu-msg float object)"],
[159, "(function int debug-menu-msg float object)"],
[160, "(function object)"],
[161, "(function object)"],
[162, "(function object)"],
[163, "(function object)"],
[164, "(function object)"],
[165, "(function object)"],
[166, "(function object)"],
[167, "(function object)"],
[168, "(function int debug-menu-msg object)"],
[169, "(function int debug-menu-msg object)"],
[170, "(function int debug-menu-msg object)"],
[171, "(function int debug-menu-msg object)"],
[172, "(function int debug-menu-msg object)"],
[173, "(function int debug-menu-msg float object)"],
[174, "(function int debug-menu-msg float object)"],
[175, "(function int debug-menu-msg float object)"],
[176, "(function int debug-menu-msg float object)"],
[177, "(function int debug-menu-msg float object)"],
[178, "(function int debug-menu-msg float object)"],
[179, "(function int debug-menu-msg float object)"],
[180, "(function int debug-menu-msg float object)"],
[181, "(function int debug-menu-msg float object)"],
[182, "(function int debug-menu-msg float object)"],
[183, "(function int debug-menu-msg float object)"],
[184, "(function int debug-menu-msg float object)"],
[185, "(function int debug-menu-msg float object)"],
[186, "(function int debug-menu-msg float object)"],
[187, "(function int debug-menu-msg float object)"],
[188, "(function int debug-menu-msg float object)"],
[189, "(function int debug-menu-msg float object)"],
[190, "(function int debug-menu-msg float object)"],
[191, "(function int debug-menu-msg float object)"],
[192, "(function int debug-menu-msg float object)"],
[193, "(function int debug-menu-msg float object)"],
[194, "(function int debug-menu-msg float object)"],
[195, "(function int debug-menu-msg float object)"],
[196, "(function int debug-menu-msg float object)"],
[197, "(function int debug-menu-msg float object)"],
[198, "(function int debug-menu-msg float object)"],
[199, "(function int debug-menu-msg float object)"],
[200, "(function int debug-menu-msg float object)"],
[201, "(function int debug-menu-msg float object)"],
[202, "(function int debug-menu-msg float object)"],
[203, "(function int debug-menu-msg float object)"],
[204, "(function int debug-menu-msg float object)"],
[205, "(function int debug-menu-msg float object)"],
[206, "(function int debug-menu-msg float object)"],
[207, "(function int debug-menu-msg float object)"],
[208, "(function int debug-menu-msg float object)"],
[209, "(function int debug-menu-msg float object)"],
[210, "(function int debug-menu-msg float object)"],
[211, "(function int debug-menu-msg float object)"],
[212, "(function int debug-menu-msg float object)"],
[213, "(function int debug-menu-msg float object)"],
[214, "(function int debug-menu-msg float object)"],
[215, "(function symbol debug-menu-msg float float object)"],
[216, "(function symbol debug-menu-msg float float object)"],
[217, "(function int debug-menu-msg float object)"],
[218, "(function symbol debug-menu-msg float float object)"],
[219, "(function symbol debug-menu-msg float float object)"],
[220, "(function symbol debug-menu-msg float float object)"],
[221, "(function symbol debug-menu-msg float float object)"],
[222, "(function symbol debug-menu-msg float float object)"],
[223, "(function symbol debug-menu-msg float float object)"],
[224, "(function symbol debug-menu-msg float float object)"],
[225, "(function symbol debug-menu-msg float float object)"],
[226, "(function symbol debug-menu-msg float float object)"],
[227, "(function symbol debug-menu-msg float float object)"],
[228, "(function symbol debug-menu-msg float float object)"],
[229, "(function symbol debug-menu-msg float float object)"],
[230, "(function symbol debug-menu-msg float float object)"],
[231, "(function symbol debug-menu-msg float float object)"],
[232, "(function symbol debug-menu-msg float float object)"],
[233, "(function symbol debug-menu-msg float float object)"],
[234, "(function symbol debug-menu-msg float float object)"],
[235, "(function object)"],
[236, "(function object)"],
[237, "(function symbol debug-menu-msg float float object)"],
[239, "(function symbol debug-menu-msg object)"],
[240, "(function int debug-menu-msg float object)"],
[241, "(function int debug-menu-msg float object)"],
[242, "(function int debug-menu-msg float object)"],
[243, "(function int debug-menu-msg float object)"],
[244, "(function debug-menu debug-menu symbol)"],
[245, "(function debug-menu debug-menu symbol)"],
[246, "(function debug-menu debug-menu symbol)"],
[247, "(function debug-menu debug-menu symbol)"]
],
"enemy-states": [[38, "(function object :behavior enemy)"]],
"scene-actor": [
[0, "(function none)"],
[1, "(function flut-npc none)"],
[2, "(function flut-npc art-element)"],
[39, "(function flut-npc flut-npc)"]
],
"warp-gate": [
[0, "(function object)"],
[8, "(function string object :behavior process)"],
[12, "(function object :behavior target)"]
],
"gun-yellow-shot": [[59, "(function handle object :behavior process)"]],
"gun-dark-shot": [
[25, "(function collide-shape-prim none :behavior gravity-spinner)"],
[34, "(function handle float object :behavior process)"]
],
"entity": [
[11, "(function process object)"],
[16, "(function process object)"],
[57, "(function process object)"],
[61, "(function process object)"]
],
"target-darkjak": [
[5, "(function object :behavior target)"],
[
20,
"(function (pointer float) (pointer int64) (pointer int64) object :behavior target)"
],
[21, "(function object :behavior target)"]
],
"memory-usage": [
[2, "(function process-drawable symbol)"],
[3, "(function basic symbol)"]
],
"bug-report": [
[0, "(function object :behavior bug-report)"],
[1, "(function object :behavior bug-report)"]
],
"relocate": [[7, "(function sparticle-system sparticle-cpuinfo none)"]],
"target-mech": [
[7, "(function object :behavior target)"],
[8, "(function object :behavior target)"],
[9, "(function object :behavior target)"],
[18, "(function surface surface surface int object :behavior target)"],
[19, "(function surface surface surface int object :behavior target)"]
],
"mech-states": [[57, "(function object :behavior target)"]],
"target-flut": [
[14, "(function surface surface surface int object :behavior target)"],
[20, "(function object :behavior target)"],
[21, "(function object :behavior target)"],
[33, "(function process-focusable object)"],
[72, "(function object)"],
[73, "(function object :behavior target)"],
[74, "(function object :behavior target)"]
],
"nav-control": [
[0, "(function object nav-control none)"],
[1, "(function object nav-control none)"],
[2, "(function object nav-control none)"],
[3, "(function object nav-control none)"],
[4, "(function object nav-control none)"],
[5, "(function object nav-control none)"],
[6, "(function object nav-control none)"],
[7, "(function object nav-control none)"],
[8, "(function object nav-control none)"],
[9, "(function object nav-control none)"]
],
"nav-enemy": [[7, "(function enemy-jump-info none :behavior nav-enemy)"]],
"task-control": [
[53, "(function game-task-node-info symbol object)"],
[54, "(function game-task-node-info object)"],
[67, "(function pair symbol)"]
],
"merc-death": [[3, "(function time-frame :behavior process-drawable)"]],
"vehicle-states": [
[10, "(function collide-shape-prim none)"],
[12, "(function collide-shape-prim none)"]
],
"prebot-states": [[21, "(function vector :behavior prebot)"]],
"wasall-obs": [
[0, "(function object)"],
[1, "(function object)"],
[2, "(function object)"],
[3, "(function object)"]
],
"roboguard": [
[1, "(function cspace transformq none)"],
[2, "(function cspace transformq none)"],
[25, "(function int int float object :behavior roboguard)"],
[45, "(function roboguard symbol object)"]
],
"vehicle": [
[6, "(function collide-shape-prim none)"],
[7, "(function collide-shape-prim none)"]
],
"wvehicle-wheel": [
[7, "(function collide-shape-prim none)"],
[11, "(function collide-shape-prim none)"],
[17, "(function collide-shape-prim none)"]
],
"wvehicle-states": [
[20, "(function collide-shape-prim none)"],
[22, "(function collide-shape-prim none)"]
],
"wvehicle": [[6, "(function collide-shape-prim none)"]],
"pilot-states": [
[15, "(function surface surface surface int object :behavior target)"]
],
"was-squad-control": [[16, "(function object object)"]],
"des-cactus": [[13, "(function collide-shape-prim none)"]],
"desertg-obs": [
[4, "(function collide-shape-prim none)"],
[7, "(function collide-shape-prim none)"]
],
"desertf-obs": [[7, "(function none)"]],
"temple-obs2": [
[43, "(function symbol)"],
[46, "(function object :behavior tpl-watcher)"]
],
"temple-scenes": [
[0, "(function none)"],
[1, "(function none)"],
[2, "(function none)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"]
],
"des-beast-2": [
[1, "(function cspace transformq none)"],
[2, "(function cspace transformq none)"],
[23, "(function projectile none)"]
],
"scorpion-gun": [
[33, "(function cspace transformq none)"],
[34, "(function cspace transformq none)"]
],
"hover-formation": [
[10, "(function form-search-info float)"],
[11, "(function int int form-search-info uint)"],
[14, "(function vector object)"],
[15, "(function int int (pointer object) int)"]
],
"robo-hover": [
[14, "(function robo-hover cspace float float vector vector int object)"]
],
"tower-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"]
],
"forest-kill-plants": [
[5, "(function engine-pers connection-pers object object symbol)"],
[7, "(function engine-pers connection-pers object object symbol)"]
],
"forest-tasks": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function none :behavior scene-player)"],
[11, "(function none :behavior scene-player)"],
[12, "(function none :behavior scene-player)"],
[13, "(function none :behavior scene-player)"],
[14, "(function none :behavior scene-player)"],
[15, "(function none :behavior scene-player)"],
[16, "(function none :behavior scene-player)"],
[17, "(function none :behavior scene-player)"],
[18, "(function none :behavior scene-player)"],
[19, "(function none :behavior scene-player)"],
[20, "(function none :behavior scene-player)"],
[21, "(function none :behavior scene-player)"]
],
"neo-wasp": [[15, "(function neo-wasp cspace transformq float float none)"]],
"for-turret": [
[1, "(function cspace transformq none)"],
[2, "(function cspace transformq none)"],
[3, "(function cspace transformq none)"],
[4, "(function cspace transformq none)"]
],
"volcano-obs": [[38, "(function cspace transformq none)"]],
"spiky-frog": [[9, "(function cspace transformq none)"]],
"volcano-scenes": [
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"]
],
"mantis": [
[8, "(function mantis vector float int vector vector)"],
[15, "(function mantis collide-shape-moving vector symbol)"]
],
"wcar-faccar": [[9, "(function handle object :behavior process)"]],
"wasstadb-obs": [[5, "(function object)"]],
"arena-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"]
],
"traffic-engine": [
[24, "(function traffic-find-segment-struct nav-segment none)"]
],
"desert-scenes": [
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function none :behavior scene-player)"],
[11, "(function none :behavior scene-player)"],
[12, "(function none :behavior scene-player)"],
[13, "(function none :behavior scene-player)"],
[14, "(function none :behavior scene-player)"],
[15, "(function none :behavior scene-player)"],
[16, "(function none :behavior scene-player)"],
[17, "(function none :behavior scene-player)"],
[18, "(function none :behavior scene-player)"],
[19, "(function none :behavior scene-player)"],
[20, "(function none :behavior scene-player)"],
[21, "(function none :behavior scene-player)"],
[22, "(function none :behavior scene-player)"],
[23, "(function none :behavior scene-player)"],
[24, "(function none :behavior scene-player)"],
[25, "(function none :behavior scene-player)"],
[26, "(function none :behavior scene-player)"],
[27, "(function none :behavior scene-player)"],
[28, "(function none :behavior scene-player)"],
[29, "(function none :behavior scene-player)"],
[30, "(function none :behavior scene-player)"],
[31, "(function none :behavior scene-player)"],
[32, "(function none :behavior scene-player)"],
[33, "(function none :behavior scene-player)"],
[34, "(function none :behavior scene-player)"],
[35, "(function none :behavior scene-player)"],
[36, "(function symbol :behavior scene-player)"]
],
"throne-scenes": [[0, "(function none :behavior scene-player)"]],
"terraformer-setup": [[38, "(function object :behavior manipy)"]],
"mined-scenes": [
[6, "(function none :behavior scene-player)"],
[7, "(function process-drawable vector none :behavior scene-player)"],
[8, "(function process-drawable vector none :behavior scene-player)"]
],
"wasteland-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function none :behavior scene-player)"]
],
"wasdoors-scenes": [[2, "(function none :behavior scene-player)"]],
"wasdef-manager": [
[7, "(function process-tree object)"],
[8, "(function process-tree object)"],
[9, "(function process-tree object)"]
],
"des-burning-bush": [[37, "(function symbol)"]],
"mh-wasp": [
[9, "(function mh-wasp cspace float float vector vector int none)"]
],
"mh-bat": [
[1, "(function cspace transformq none)"],
[21, "(function object :behavior mh-bat)"],
[26, "(function object :behavior mh-bat)"],
[30, "(function object :behavior mh-bat)"],
[34, "(function object :behavior mh-bat)"],
[39, "(function object :behavior mh-bat)"]
],
"factoryc-obs2": [
[67, "(function (pointer joint-exploder) :behavior fac-break-floor)"]
],
"factory-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function process-drawable none :behavior scene-player)"],
[11, "(function none :behavior scene-player)"],
[12, "(function none :behavior scene-player)"],
[13, "(function none :behavior scene-player)"],
[14, "(function none :behavior scene-player)"],
[15, "(function none :behavior scene-player)"]
],
"factory-boss-setup": [[37, "(function object :behavior manipy)"]],
"factory-boss-scenes": [
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"]
],
"bot": [[25, "(function gui-connection symbol :behavior bot)"]],
"oasis-defense": [
[4, "(function collide-shape-prim none)"],
[11, "(function collide-shape-prim none)"]
],
"ash-oasis-course": [
[0, "(function ashelin-oasis object)"],
[1, "(function ashelin-oasis object)"],
[2, "(function asht-wait-spot ashelin-oasis object)"],
[3, "(function ashelin-oasis symbol)"]
],
"comb-obs": [
[16, "(function collide-shape-prim none)"],
[33, "(function collide-shape-prim none)"],
[49, "(function collide-shape-prim none)"]
],
"comb-sentry": [[19, "(function collide-shape-prim none)"]],
"comb-field": [[5, "(function symbol)"]],
"comb-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"]
],
"railx-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function none :behavior scene-player)"],
[11, "(function none :behavior scene-player)"]
],
"title-obs": [
[20, "(function external-art-buffer int)"],
[22, "(function game-task object)"],
[26, "(function vector :behavior manipy)"],
[30, "(function object :behavior manipy)"]
],
"ff-squad-control": [
[6, "(function process-focusable traffic-object-type-info none)"],
[7, "(function process-focusable traffic-object-type-info none)"],
[8, "(function process-focusable traffic-object-type-info none)"],
[9, "(function crimson-guard traffic-object-type-info none)"]
],
"guard": [
[31, "(function crimson-guard collide-shape vector symbol)"],
[49, "(function process city-attacker-info int)"]
],
"guard-tazer": [
[7, "(function collide-shape-prim none)"],
[13, "(function collide-shape-prim none)"]
],
"roboguard-city": [
[13, "(function cspace transformq none)"],
[78, "(function roboguard-city symbol quaternion :behavior process)"]
],
"ctywide-obs": [[93, "(function symbol)"]],
"ctywide-scenes": [
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"]
],
"ctyport-obs": [[5, "(function collide-shape-prim none)"]],
"ctyport-scenes": [
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"]
],
"ctyport-attack": [[45, "(function object :behavior process)"]],
"intro-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function none :behavior scene-player)"],
[11, "(function none :behavior scene-player)"],
[12, "(function none :behavior scene-player)"],
[13, "(function none :behavior scene-player)"],
[14, "(function none :behavior scene-player)"],
[15, "(function none :behavior scene-player)"],
[16, "(function none :behavior scene-player)"],
[17, "(function none :behavior scene-player)"],
[18, "(function none :behavior scene-player)"],
[19, "(function none :behavior scene-player)"],
[20, "(function none :behavior scene-player)"],
[21, "(function none :behavior scene-player)"],
[22, "(function none :behavior scene-player)"],
[23, "(function none :behavior scene-player)"],
[24, "(function none :behavior scene-player)"],
[25, "(function none :behavior scene-player)"],
[26, "(function none :behavior scene-player)"],
[27, "(function none :behavior scene-player)"],
[28, "(function none :behavior scene-player)"],
[29, "(function none :behavior scene-player)"],
[30, "(function none :behavior scene-player)"],
[31, "(function none :behavior scene-player)"],
[32, "(function none :behavior scene-player)"],
[33, "(function none :behavior scene-player)"],
[34, "(function none :behavior scene-player)"],
[35, "(function none :behavior scene-player)"],
[36, "(function none :behavior scene-player)"],
[37, "(function none :behavior scene-player)"],
[38, "(function none :behavior scene-player)"],
[39, "(function none :behavior scene-player)"]
],
"freehq-scenes": [[0, "(function none :behavior scene-player)"]],
"hiphog-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"]
],
"rubble-attack": [[7, "(function int)"]],
"rublcst-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function none :behavior scene-player)"],
[11, "(function none :behavior scene-player)"],
[12, "(function none :behavior scene-player)"],
[13, "(function none :behavior scene-player)"]
],
"vinroom-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"]
],
"gungame-manager": [[6, "(function process symbol)"]],
"blow-tower-obs2": [
[16, "(function bt-mh-flyer cspace float float vector vector int none)"],
[117, "(function bt-roboguard symbol quaternion)"],
[124, "(function cspace transformq none)"]
],
"cty-blow-tower": [
[39, "(function collide-shape-prim none)"],
[27, "(function process symbol)"],
[46, "(function collide-shape-prim none)"],
[69, "(function process object)"]
],
"assault-enemies": [
[36, "(function assault-crimson-guard city-attacker-info int)"]
],
"assault-task": [[11, "(function symbol :behavior process)"]],
"precura-obs": [[98, "(function symbol :behavior process)"]],
"precurd-scenes": [
[0, "(function none :behavior scene-player)"],
[1, "(function none :behavior scene-player)"],
[2, "(function none :behavior scene-player)"],
[3, "(function none :behavior scene-player)"],
[4, "(function none :behavior scene-player)"],
[5, "(function none :behavior scene-player)"],
[6, "(function none :behavior scene-player)"],
[7, "(function none :behavior scene-player)"],
[8, "(function none :behavior scene-player)"],
[9, "(function none :behavior scene-player)"],
[10, "(function none :behavior scene-player)"],
[11, "(function none :behavior scene-player)"],
[12, "(function none :behavior scene-player)"],
[13, "(function none :behavior scene-player)"],
[14, "(function none :behavior scene-player)"]
]
}
@@ -1,785 +0,0 @@
{
////////////////////////////
// HACKS and ASM FUNCTIONS
////////////////////////////
"types_with_bad_inspect_methods": [
"game-task-event",
"game-task-control",
"predator-edge",
"manipy",
"process-tree",
"vector",
"target",
"vehicle-load-parts"
],
"no_type_analysis_functions_by_name": [],
// this limits the number of cases in a cond. The first argument is the name of the function.
// the second argument is the name of the first condition in the cond. Use print_cfg to find it out.
// The third argument is the number of cases. If you set it too small it may fail to build the CFG.
"cond_with_else_max_lengths": [
["(method 20 res-lump)", "b0", 2],
["(method 11 res-lump)", "b0", 1],
["(method 12 res-lump)", "b0", 1]
],
// if a cond with an else case is being used a value in a place where it looks wrong
// you can add the function name to this list and it will more aggressively reject this rewrite.
"aggressively_reject_cond_to_value_rewrite": [
"(method 10 res-lump)",
"(method 11 res-lump)",
"(method 12 res-lump)"
],
// this provides a hint to the decompiler that these functions will have a lot of inline assembly.
// currently it just leaves pcpyld as an asm op.
"hint_inline_assembly_functions": [],
"asm_functions_by_name": [
// checking boxed type is different now - these make the cfg stuff sad
"name=",
"(method 77 grenadier)",
"display-list-control",
"anim-test-anim-list-handler",
"anim-test-sequence-list-handler",
"anim-tester-get-playing-item",
"start-pilot-recorder",
"(anon-function 10 pilot-recorder)",
"(anon-function 10 sig-recorder)",
// actual asm
"quad-copy!",
"return-from-thread",
"return-from-thread-dead",
"reset-and-call",
"(method 10 cpu-thread)",
"(method 11 cpu-thread)",
"(method 0 catch-frame)",
"throw-dispatch",
"throw",
"run-function-in-process",
"set-to-run-bootstrap",
"return-from-exception",
"exp",
"(method 17 bounding-box)",
"(method 9 bounding-box)",
"(method 9 matrix)",
"quaternion->matrix-2",
"sin-rad",
"cos-rad",
"atan-series-rad",
"sign-float",
"dma-count-until-done",
"(method 11 collide-mesh-cache)",
"cpu-delay",
"qword-read-time",
"dma-test-func",
"move-test-func",
"symlink2",
"blerc-a-fragment",
"blerc-execute",
"foreground-check-longest-edge-asm",
"generic-light-proc",
"(method 17 collide-edge-work)",
"(method 10 collide-cache-prim)",
"(method 17 collide-cache)",
"(method 16 ocean)",
// unknown instructions
// logand with #f arg
// "bugfix?",
// CFG failed
"draw-inline-array-instance-shrub",
"(method 9 editable-region)", // condition branch assert hit
"test-to-from-spr",
"test-from-spr",
"test-to-spr",
"test-seq-read",
"test-worst-read",
"test-seq-write",
"test-worst-write",
// texture
"adgif-shader<-texture!",
// jak 3
"(method 10 manipulator)",
"(method 46 ff-squad-control)",
"memcpy",
// jak x
"get-string-length",
"rand-uint31-gen",
"vector-rotate-y-fast!",
// jak x decompiler crashes
"(method 13 race-line)",
"(method 23 gui-control)",
"(method 34 sky-work)",
"(method 35 sky-work)",
"(method 11 collide-mesh)",
"target-standard-event-handler",
"display-loop-main",
"(method 22 level)",
"(method 11 medius-cache)",
"water-anim-event-handler"
],
// these functions use pairs and the decompiler
// will be less picky about types related to pairs.
"pair_functions_by_name": [
"ref",
"ref&",
"(method 4 pair)",
"last",
"member",
"nmember",
"assoc",
"assoce",
"nassoc",
"nassoce",
"append!",
"delete!",
"delete-car!",
"insert-cons!",
"sort",
"unload-package",
"display-loop-main",
"lookup-level-info",
"(method 24 level-group)",
"(method 19 level-group)",
// script
"command-get-time",
"command-get-param",
"command-get-quoted-param",
"command-get-entity",
"(method 9 script-context)",
"(anon-function 6 script)",
"(anon-function 49 script)",
"(anon-function 52 script)",
"(anon-function 72 script)",
"(anon-function 73 script)",
"(anon-function 74 script)",
"(anon-function 75 script)",
"(anon-function 76 script)",
"(anon-function 80 script)",
"(method 11 script-context)",
"(method 10 script-context)",
"command-get-trans",
"key-assoc",
"(anon-function 0 script)",
// default-menu
"dm-scene-load-pick-func",
"debug-menu-make-continue-sub-menu",
"debug-menu-make-from-template",
"debug-menu-context-make-default-menus",
"debug-menu-make-task-menu",
"(method 19 gui-control)",
// menu
"debug-menu-rebuild",
"debug-menu-find-from-template",
"debug-menu-render",
"debug-menu-context-select-next-or-prev-item",
"debug-menu-context-select-new-item",
"debug-menu-send-msg",
// airlock
"(method 24 com-airlock)",
"(method 19 gui-control)",
"(method 28 editable)",
"execute-select",
"(method 29 editable)",
"(method 25 editable)",
// game-info
"(method 20 game-info)",
"print-continues",
// task-control
"(anon-function 55 task-control)",
"(method 17 load-state)",
"(method 12 level)",
"bg",
"update-sound-banks",
"entity-remap-names",
"(method 8 process-tree)",
"(post play-anim scene-player)",
"(method 25 scene-player)",
"(method 25 scene-player)",
"scene-player-init",
"next-continue",
"(method 25 warp-gate)",
"(code use warp-gate)",
"cspace-inspect-tree",
"(method 11 mtn-step-plat-rocks-a)",
"(method 11 mtn-step-plat-rocks-b)",
"(method 11 mtn-step-plat-rocks-c)",
"(method 22 fort-floor-spike-b)",
"prototypes-game-visible-set!",
"(method 22 fort-floor-spike-a)",
"(method 22 fort-floor-spike-b)",
"(method 22 fort-floor-spike-c)",
"(method 11 sew-catwalk)",
"(method 11 mtn-aval-rocks)",
"(method 11 gar-curtain)",
"(method 10 level-load-info)",
"(method 29 level-group)",
"(method 26 level-group)",
"(method 19 level)",
"(method 10 level)",
"update-sound-banks",
"level-base-level-name",
"borrow-city-expansion",
"add-want-level",
"level-find-borrow-slot",
"(method 18 level)",
"(method 11 tow-tentacle)",
"city-sound-expand-want-list",
"(method 12 cty-borrow-manager)",
"(method 16 cty-borrow-manager)",
"mark-permanent-holds",
"update-sound-info",
"insert-into-sound-list",
// title-obs
"(anon-function 22 title-obs)",
"cty-faction-evaluate-commands",
"traffic-manager-event-handler",
"(method 20 cty-faction-manager)"
],
// If format is used with the wrong number of arguments,
// it will often mess up the decompilation, as the decompiler assumes
// that they used the correct number. This will override the decompiler's
// automatic detection.
"bad_format_strings": {
"~170h~5d~220h~5d~280h~5,,2f": 3,
"~338h~5d~388h~5d~448h~5,,2f": 3,
"~30Htf: ~8D~134Hpr: ~8D~252Hsh: ~8D~370Hhd: ~8D~%": 4,
"~30Hal: ~8D~131Hwa: ~8D~252Hsp: ~8D~370Hwp: ~8D~%": 4,
"ERROR: <asg> ~A in spool anim loop for ~A ~D, but not loaded.~": 3,
// TODO - these should be automatic
" tfrag ~192H~5DK ~280Htfragment~456H~5DK~%": 2,
" tie-proto ~192H~5DK ~280Hsky~456H~5DK~%": 2,
" tie-instance ~192H~5DK ~280Htie-fragment~456H~5DK~%": 2,
" shrub-proto ~192H~5DK ~280Htie-scissor~456H~5DK~%": 2,
" shrub-instance ~192H~5DK ~280Hshrubbery~456H~5DK~%": 2,
" collision ~192H~5DK ~280Htie-generic~456H~5DK~%": 2,
" pris-anim ~192H~5DK ~280Hpris-generic~456H~5DK~%": 2,
" textures ~192H~5DK ~280Htextures~456H~5DK~%": 2,
" misc ~192H~5DK ~280Hsprite~456H~5DK~%": 2,
" entity ~192H~5DK~%": 1,
" pris-geo ~192H~5DK ~280Hpris-fragment~456H~5DK~%": 2,
"~33L~S~32L ~S": 2,
"~32L~S ~33L~S~1L": 2,
"~35L~S~33L ~S": 2,
"~1L~S~35L ~S": 2,
"~35L~S ~1L~S~1L": 2,
"~33L~S~35L ~S": 2,
"~33L~C~34L~S~33L~C": 3,
"~35L~S ~33L~S~1L": 2,
"~33L~S ~35L~S~1L": 2,
"~33L~C": 1,
"~33L~S~44L ~S": 2,
"~44L~S ~33L~S": 2,
"~10Htfrag: ~8,,0m": 1,
"~140Hshrub: ~8,,0m": 1,
"~272Halpha: ~8,,0m~%": 1,
"~27Htie: ~8,,0m": 1,
"~140Hfg-tf: ~8,,0m": 1,
"~270Hfg-pr: ~8,,0m~%": 1,
"~10Hfg-wa: ~8,,0m": 1,
"~140Hfg-sh: ~8,,0m": 1,
"~267Hfg-p2: ~8,,0m~%": 1,
"~30Hp2: ~8D~131Hhf: ~8D~%~1K": 2,
"Current time (~d:~d) [mission-percentage ~f~%": 2,
"~0K~Name~130HID~+50HVol~+15HPitch~+24HPan~+18HEar~+24HDist~%": 1,
"~130H~5D ~4D ~5D ~4D ~3D ~5,,0M~%": 5
},
"blocks_ending_in_asm_branch": {
"light-merge!": [1, 2, 3, 5, 7],
"bsp-camera-asm": [1, 2, 3, 4, 6, 7],
"level-remap-texture": [2, 3, 4, 5, 6],
"start-perf-stat-collection": [26],
"end-perf-stat-collection": [0],
"(method 23 gui-control)": [10, 46, 50, 58, 81, 90, 101],
"find-offending-process-focusable": [16, 19],
"(method 19 process-drawable)": [0, 2, 3, 7, 10, 11, 30],
"(anon-function 11 game-save)": [0, 3, 4, 5],
"(anon-function 3 game-save)": [15, 16],
"(anon-function 12 lightjak-wings)": [2, 3],
"target-standard-event-handler": [
5, 6, 7, 20, 64, 65, 66, 67, 72, 73, 83, 84, 85, 86, 87, 88, 96, 97, 109,
264, 265, 282, 283, 284, 290, 291, 306, 336, 350, 351, 412, 415, 427
],
"(method 9 curve-color-fast)": [0, 1],
"evaluate-color-curve-fast": [0, 1],
"(anon-function 0 target-death)": [71, 131, 132, 137],
"target-board-handler": [15, 16, 20],
"sprite-draw-distorters": [4, 5],
"(method 10 simple-sprite-system)": [0],
"add-debug-box-with-transform": [0, 3],
"add-debug-line-sphere": [0],
"bones-mtx-calc-execute": [19, 7],
"foreground-draw": [0, 1, 126],
"unpack-comp-rle": [1, 3, 5, 6],
"unpack-comp-huf": [2, 4, 5, 6, 7, 8, 9],
"unpack-comp-lzo": [
0,
1,
4,
5,
6,
7,
15,
16,
17,
18,
19,
20,
21,
22,
23,
24,
25,
26,
27,
28,
29,
30,
31,
32,
33,
34,
35, // branch fwd 39
39, // branch fwd no delay
43, // goto 18
45 // goto 6
],
"(method 16 level)": [0, 1, 5, 13, 14, 15],
"upload-vis-bits": [2, 6, 3, 0],
"set-background-regs!": [4, 3],
"draw-drawable-tree-instance-shrub": [5, 7, 9, 11],
"draw-drawable-tree-instance-tie": [21, 23, 31, 33],
"(method 12 flow-control)": [3, 9, 22],
"(method 26 level-group)": [40, 41, 67],
"borrow-city-expansion": [0, 9, 13, 15, 17],
"dma-add-process-drawable": [0, 77],
"real-main-draw-hook": [120, 122],
"display-frame-finish": [61],
"display-loop-main": [130],
"(method 63 collide-shape-moving)": [1, 2, 14, 49],
"(method 67 collide-shape-moving)": [2, 3, 13],
"(method 51 rigid-body-object)": [5],
"(anon-function 2 rigid-body-queue)": [0, 2],
"(method 15 rigid-body-queue)": [5, 6, 7, 9],
"(method 13 rigid-body-queue)": [5, 6, 7, 9],
"(method 11 rigid-body-queue)": [0, 6, 7, 9],
"(method 10 rigid-body-queue)": [10, 34, 37],
"(method 9 los-control)": [0, 43],
"load-game-text-info": [19, 20, 21],
"draw-actor-marks": [8],
"find-nearest-entity": [7, 9],
"(method 13 collide-cache)": [7, 9],
"(method 11 collide-mesh)": [2, 4],
"(method 12 collide-mesh-cache)": [0, 1, 2, 3, 4, 5],
"(method 10 collide-mesh)": [2],
"(method 42 collide-shape)": [0, 1, 2, 3, 4, 7],
"(method 18 collide-shape-prim-mesh)": [2, 3, 4, 5, 6, 7],
"(method 18 collide-shape-prim-sphere)": [2, 3, 4],
"(method 15 collide-shape-prim-sphere)": [1, 2, 3, 4, 5, 6],
"(method 16 collide-shape-prim-sphere)": [0, 1, 2, 3, 4],
"(method 36 collide-shape)": [8, 9],
"(method 45 collide-shape)": [33],
"(method 40 collide-shape)": [
0, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21,
22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 32
],
"(method 12 collide-shape-prim-group)": [1, 2, 3, 4, 5, 6],
"(method 13 collide-shape-prim)": [1, 2, 3, 4, 5, 6],
"(method 12 collide-shape-prim-sphere)": [
1, 2, 3, 4, 5, 8, 10, 11, 13, 14, 15
],
"(method 12 collide-shape-prim-mesh)": [
0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 14, 15, 16
],
"update-actor-hash": [0, 2, 4],
"(method 24 grid-hash)": [39, 35, 22, 15],
"(anon-function 4 gun-states)": [
18, 128, 129, 131, 133, 135, 138, 139, 143
],
"(method 16 sparticle-launch-control)": [25, 35, 36, 48, 62, 65, 100, 102],
"(anon-function 17 target-ladder)": [0, 1],
"command-get-process": [46],
"foreground-draw-hud": [0, 7, 8, 9, 16, 22],
"target-flut-falling-anim-trans": [8, 9],
"(method 12 nav-mesh)": [0, 1, 2, 9],
"(method 20 nav-mesh)": [9],
"(method 21 nav-mesh)": [7],
"(method 29 nav-mesh)": [0, 1, 2, 4],
"(method 33 nav-mesh)": [10, 11, 12, 13],
"(method 34 nav-mesh)": [0, 1, 2, 4],
"(method 35 nav-mesh)": [0, 1, 2, 4],
"(method 36 nav-mesh)": [1, 2],
"(method 37 nav-mesh)": [4],
"(method 45 nav-mesh)": [1, 2],
"(method 46 nav-mesh)": [1, 2, 19, 20],
"(method 48 nav-mesh)": [4, 5, 6, 8],
"(method 49 nav-mesh)": [0, 1, 2, 3, 5],
"(method 18 nav-control)": [11, 12, 19, 20, 31, 34],
"(method 19 nav-control)": [9, 10],
"(method 40 nav-state)": [1, 2],
"point-poly-distance-min": [0, 1, 2, 3, 4, 5, 6, 7, 10],
"find-closest-circle-ray-intersection": [0, 4, 15, 16, 17, 18],
"(method 39 vehicle)": [0, 10, 12, 15],
"(anon-function 7 vehicle-states)": [0, 2],
"(method 11 vehicle-hud-requests)": [0, 6, 7, 10],
"(anon-function 12 neo-juicer)": [29, 30],
"(method 160 neo-grenadier)": [1, 2, 3],
"(method 82 spydroid-orig)": [13],
"(method 118 vehicle)": [3, 4, 7, 8, 9, 10, 17, 26, 30, 31, 33],
"(method 25 squad-control)": [0, 4, 5, 7],
"target-pilot-post": [0, 29],
"(method 36 was-squad-control)": [0, 8, 14, 16],
"(anon-function 6 nst-tasks)": [4, 9, 10, 16, 23, 30],
"(method 33 task-manager-nest-cocoons)": [3, 7, 13, 28],
"(method 90 wvehicle)": [29, 37, 38, 44],
"(anon-function 2 artifact-race)": [40, 55, 56, 57, 65, 66],
"(anon-function 27 course-race)": [6],
"(anon-function 65 temple-obs)": [5, 6],
"(anon-function 5 target-turret)": [0, 1, 2, 3],
"dp-bipedal-consider-attacks": [15, 19],
"(anon-function 25 volcanox-obs)": [3, 5, 6],
"(method 36 task-manager-arena-fight-base)": [11],
"(method 28 hud-wasgun)": [0, 1, 2, 4],
"(method 15 hud-wasgun)": [8, 28, 29, 30, 54],
"(method 15 vehicle-controller)": [0, 3, 5, 6, 7, 10],
"(method 51 hvehicle)": [5],
"(method 159 hvehicle)": [0, 1, 10, 19, 21, 23, 26],
"(method 18 vehicle-controller)": [0, 1, 74, 75],
"glider-too-low?": [2, 19, 21],
"(method 39 task-manager-desert-glide)": [0, 3, 4, 9],
"(method 36 task-manager-desert-glide)": [20, 50, 60],
"(method 37 task-manager-desert-glide)": [11, 12, 23, 29, 31],
"(method 34 task-manager-desert-glide)": [3],
"(anon-function 20 target-flut)": [0, 38, 39],
"(anon-function 14 flut-racer)": [7, 17, 19],
"(method 28 conveyor)": [22],
"generic-merc-execute-all": [7, 15],
"check-enemy": [0, 1],
"(method 91 h-warf)": [0],
"(method 51 h-warf)": [5],
"(method 44 nav-graph)": [0, 7, 8, 26, 34],
"(method 15 city-level-info)": [0, 1, 2, 6, 7, 9, 11, 13],
"(method 10 traffic-suppressor)": [0, 1, 2, 4],
"(method 18 traffic-tracker)": [5, 6, 7, 8],
"(method 21 traffic-tracker)": [0],
"(method 9 cty-faction-manager)": [8],
"(method 46 traffic-engine)": [0, 1, 2, 4],
"(method 42 traffic-engine)": [6],
"(method 17 traffic-manager)": [7, 19, 27, 28, 29, 30, 41],
"(anon-function 10 guard-rifle)": [9],
"(method 261 crimson-guard)": [52, 64],
"(anon-function 13 metalhead-predator)": [24, 25],
"(anon-function 90 ctywide-obs)": [4],
"(anon-function 10 cty-sniper-turret)": [44],
"(method 33 rub-tower)": [9, 10],
"(method 30 gungame-manager)": [0, 4, 5, 7],
"closest-pt-in-triangle": [17],
"find-knot-span": [0, 1, 2, 3, 5, 6, 7, 8, 9],
"curve-evaluate!": [0, 2, 5, 6, 7, 8, 9],
"circle-circle-xz-intersect": [
1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14
]
},
// Sometimes the game might use format strings that are fetched dynamically,
// for example using the game text lookup method
// Add information about those format instructions here.
// e.g. "function-name":[[op, argc], [op, argc], ...]
// where "op" is the op number for the call to format.
"dynamic_format_arg_counts": {
"auto-save-post": [[182, 1]],
"(method 10 menu-secret-option)": [[289, 1]],
"(method 10 menu-create-game-option)": [[49, 1]],
"(method 10 menu-format-card-option)": [[49, 1]],
"(method 10 menu-card-removed-option)": [[49, 1]],
"(method 10 menu-insert-card-option)": [[49, 1]],
"(method 10 menu-hero-mode-message-option)": [[50, 1]],
"(method 10 menu-secrets-insufficient-space-option)": [[51, 1]],
"(method 10 menu-error-loading-option)": [
[65, 1],
[100, 1]
],
"(method 10 menu-insufficient-space-option)": [
[72, 1],
[112, 1]
],
"(method 10 menu-error-auto-saving-option)": [[73, 1]],
"(method 10 menu-loading-option)": [[113, 1]],
"(method 10 menu-icon-info-option)": [[150, 1]],
"(method 17 hud-goal)": [[71, 0]],
"(method 17 hud-miss)": [[71, 0]],
"(method 16 resetter)": [
[68, 1],
[101, 1],
[130, 1]
],
"(method 32 task-manager-desert-turtle-training)": [[59, 1]],
"(method 24 race-manager)": [[97, 1]],
"(method 25 race-manager)": [
[97, 1],
[126, 1]
],
"(method 15 hud-race-final-stats)": [[131, 0]],
"(method 15 hud-wasbbv-goal-time)": [[74, 0]],
"(method 32 task-manager-lightjak-training)": [[53, 0]],
"(method 18 hover-training-manager)": [[69, 0]],
"(method 37 task-manager-arena-training)": [[67, 1]],
"(method 15 hud-arena-final-stats)": [
[103, 0],
[147, 0]
],
"(method 35 task-manager-arena-fight-base)": [[53, 0]],
"(method 32 task-manager-arena-gun-training)": [[53, 0]],
"(method 26 task-manager-arena-fight-2)": [
[72, 0],
[186, 0]
],
"(method 37 task-manager-wascity-gungame)": [
[48, 0],
[78, 0],
[119, 0],
[157, 0],
[195, 0],
[227, 0],
[268, 0],
[306, 0],
[338, 0],
[379, 0],
[411, 0],
[446, 0]
],
"(method 30 was-pre-game)": [
[184, 0],
[276, 0]
],
"(method 32 task-manager-throne-gun-training)": [[53, 0]],
"(method 17 hud-spider-killed)": [[71, 0]],
"(trans idle des-burning-bush)": [
[226, 1],
[257, 0]
],
"(method 37 des-burning-bush)": [
[278, 0],
[336, 0]
],
"(method 38 des-burning-bush)": [
[109, 0],
[153, 0],
[196, 0]
],
"(method 15 freeze-time-hud)": [[108, 0]],
"(method 17 freeze-time-hud)": [[97, 0]],
"(method 15 hud-wasbbv-score)": [[61, 0]],
"(method 15 hud-wasbbv-goal)": [[64, 0]],
"(method 32 task-manager-dark-punch-training)": [[53, 0]],
"(method 32 task-manager-lightjak-training-shield)": [[53, 0]],
"(trans credits highres-viewer-manager)": [[185, 0]],
"(trans idle hirez-viewer)": [[356, 0]],
"(trans idle burning-bush)": [
[171, 1],
[202, 0]
],
"(method 33 task-manager-bbush-board)": [[86, 0]],
"(method 17 board-score-hud)": [[71, 0]],
"(method 23 gungame-manager)": [
[52, 0],
[90, 0],
[128, 0],
[164, 0],
[194, 0],
[235, 0],
[273, 0],
[305, 0],
[346, 0],
[378, 0],
[413, 0]
],
"(trans carry precur-bomb)": [[60, 0]]
},
"mips2c_functions_by_name": [
"collide-do-primitives",
"moving-sphere-triangle-intersect",
"calc-animation-from-spr",
"draw-string-asm",
// "draw-string",
// "get-string-length",
"adgif-shader<-texture-with-update!",
"init-boundary-regs",
"draw-boundary-polygon",
"render-boundary-quad",
"render-boundary-tri",
"clip-polygon-against-negative-hyperplane",
"clip-polygon-against-positive-hyperplane",
"sp-init-fields!",
"particle-adgif",
"sp-launch-particles-var",
"sparticle-motion-blur",
"sp-process-block-2d",
"sp-process-block-3d",
"set-tex-offset",
"draw-large-polygon",
"render-sky-quad",
"render-sky-tri",
"(method 17 sky-work)",
"(method 18 sky-work)",
"(method 32 sky-work)",
"(method 31 sky-work)",
"(method 29 sky-work)",
"(method 30 sky-work)",
// "(method 34 sky-work)",
// "(method 35 sky-work)",
"(method 11 collide-hash)",
"(method 12 collide-hash)",
"fill-bg-using-box-new",
"fill-bg-using-line-sphere-new",
"(method 12 collide-mesh)",
"(method 14 collide-mesh)",
"(method 15 collide-mesh)",
"(method 10 collide-edge-hold-list)",
"(method 19 collide-edge-work)",
"(method 9 edge-grab-info)",
"(method 16 collide-edge-work)",
"(method 17 collide-edge-work)",
"(method 18 collide-edge-work)",
"draw-large-polygon-ocean",
"render-ocean-quad",
"init-ocean-far-regs",
"(method 14 ocean)",
"(method 15 ocean)",
"(method 16 ocean)",
"(method 18 grid-hash)",
"(method 19 grid-hash)",
"(method 20 grid-hash)",
"(method 22 grid-hash)",
"(method 28 sphere-hash)",
"(method 33 sphere-hash)",
"(method 29 sphere-hash)",
"(method 30 sphere-hash)",
"(method 31 sphere-hash)",
"(method 32 sphere-hash)",
"(method 32 spatial-hash)",
"(method 34 spatial-hash)",
"(method 35 spatial-hash)",
"(method 36 spatial-hash)",
"(method 38 spatial-hash)",
"(method 10 collide-shape-prim-mesh)",
"(method 10 collide-shape-prim-sphere)",
"(method 10 collide-shape-prim-group)",
"(method 11 collide-shape-prim-mesh)",
"(method 11 collide-shape-prim-sphere)",
"(method 11 collide-shape-prim-group)",
"(method 9 collide-cache-prim)",
"(method 10 collide-cache-prim)",
"(method 17 collide-cache)",
"(method 9 collide-puss-work)",
"(method 10 collide-puss-work)",
"bones-mtx-calc",
"foreground-check-longest-edge-asm",
"foreground-merc",
"add-light-sphere-to-light-group",
"light-hash-add-items",
"light-hash-count-items",
"light-hash-get-bucket-index",
// nav-mesh / nav-control related
// TODO - it would be nice to eventually figure out the asm blocks for the majority of these
"nav-state-patch-pointers",
"(method 20 nav-engine)",
// "find-closest-circle-ray-intersection",
// "(method 18 nav-control)",
"nav-dma-send-to-spr-no-flush",
"nav-dma-send-from-spr-no-flush",
"(method 17 nav-engine)",
"(method 18 nav-engine)",
"(method 21 nav-engine)",
"(method 39 nav-state)",
"setup-blerc-chains-for-one-fragment",
"blerc-execute",
"ripple-create-wave-table",
"ripple-execute-init",
"ripple-apply-wave-table",
"ripple-matrix-scale",
"(method 53 squid)",
"init-vortex-regs",
"render-vortex-quad",
"draw-large-polygon-vortex",
"foreground-generic-merc",
"generic-merc-init-asm",
"mercneric-convert",
"high-speed-reject",
"generic-translucent",
"generic-merc-query",
"generic-merc-death",
"generic-merc-execute-asm",
"generic-merc-do-chain",
"generic-light-proc",
"generic-envmap-proc",
"generic-prepare-dma-double",
"generic-prepare-dma-single",
"generic-warp-source-proc",
"generic-warp-dest-proc",
"generic-warp-dest",
"generic-warp-envmap-dest",
"generic-no-light-proc",
"(method 21 cloth-system)",
"debug-line-clip?",
"(method 9 font-work)",
"live-func-curve",
"birth-func-curve",
"sparticle-motion-blur-dirt",
"foreground-draw-hud",
"shadow-execute",
"shadow-add-double-edges",
"shadow-add-single-edges",
"shadow-add-facing-single-tris",
"shadow-add-double-tris",
"shadow-xform-verts",
"shadow-calc-dual-verts",
"shadow-scissor-edges",
"shadow-scissor-top",
"shadow-init-vars",
"shadow-find-facing-single-tris",
"shadow-find-single-edges",
"shadow-find-facing-double-tris",
"shadow-find-double-edges",
"shadow-add-verts",
"shadow-add-single-tris"
],
"mips2c_jump_table_functions": {},
// there are some missing textures. I don't know what the game actually does here.
// the format for entries is [level, tpage, index]
"missing_textures": [
["lfac", 0, 0],
["ltow", 0, 0],
["lcit", 0, 0],
["pow", 0, 0],
["wasintro", 0, 0],
["lfacctyb", 0, 0],
["intpfall", 0, 0],
["lfaccity", 0, 0],
["ltowcity", 0, 0],
["powergd", 0, 0],
["lcitysml", 0, 0]
],
// some object files have garbage pad data at the end which makes the decompiler
// assume they must be different files, such as the art group for orb-cache-top.
// this just suppresses a message.
"expected_merged_objs": []
}
@@ -1,15 +0,0 @@
// This overrides the stack size for calls to stack-size-set! in given functions.
{
// NOTE: almost all of these were just copy pasted from jak2
// so it's impossible to know which are actually needed for jakx...
// commenting out incase there's something here actually needed
"(method 29 target)": 2048,
"(method 11 part-spawner)": 64,
"(method 11 elevator)": 1024,
"scene-player-init": 1024,
"task-manager-init-by-other": 2048,
"race-manager-init-by-other": 1024,
"neo-sat-shield-init-by-other": 64,
"bt-gun-manager-init-by-other": 256
}
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff
File diff suppressed because it is too large Load Diff