Compare commits

..

621 Commits

Author SHA1 Message Date
Arceveti
bb021faa50 Merge branch 'develop/2.1.0-new-crash-screen' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2025-11-26 02:00:10 -08:00
Arceveti
1046348009 Update readme 2025-03-31 14:15:39 -07:00
Arceveti
3a86f80570 Improve mapPacker.py 2025-03-31 14:15:30 -07:00
Arceveti
c57b286b7a Fix warnings 2025-03-31 14:13:50 -07:00
Arceveti
4e6b809140 Add set_segment and get/set_segment_rom_addr 2025-03-31 14:13:35 -07:00
arthurtilly
2a1d69e15d Merge branch 'develop/3.0.0' of https://github.com/HackerN64/HackerSM64 into develop/2.1.0-new-crash-screen 2024-09-09 21:51:38 +12:00
Arceveti
80083b89a4 "sureAddr" naming consistency 2024-06-05 18:55:14 -07:00
Arceveti
f1bc0f6b62 disasm/pseudoC updates 2024-06-03 16:11:10 -07:00
Arceveti
947c0783c0 Add static asserts for struct/union sizes 2024-06-03 16:07:38 -07:00
Arceveti
8d2f0831a7 Add all builtins to builtins.h 2024-06-03 15:59:16 -07:00
Arceveti
f7ff1b85c2 Turn off VI special features on crash (saves 1-2ms on console and fixes coverage issue on ares) + update README + some other stuff 2024-05-30 17:18:28 -07:00
Arceveti
1f156d958b reginspect stuff 2024-05-23 20:21:15 -07:00
Arceveti
790fcda14c Add "unreachable" after FORCE_CRASH() 2024-05-22 16:36:43 -07:00
Arceveti
95d80a5f81 Better double buffering (fixes Parallel screenshot flickering) 2024-05-22 16:35:12 -07:00
Arceveti
295d61ba82 Update stack trace page + other fixes 2024-05-21 17:11:42 -07:00
Arceveti
26eb1b896b Small changes 2024-05-17 14:49:49 -07:00
Arceveti
caf253ede8 Stack trace rewrite (now actually works properly) 2024-05-17 14:49:22 -07:00
Arceveti
0682d4f744 Cache op names + other stuff 2024-05-14 18:53:17 -07:00
Arceveti
74888eaee3 Fix trap instruction param in pseudo C 2024-05-12 03:18:48 -07:00
Arceveti
e7417af534 Add subiu and dsubiu pseudoinstructions 2024-05-12 01:00:45 -07:00
Arceveti
deeed7e493 Improve pseudo C comments 2024-05-11 18:26:33 -07:00
Arceveti
583b2ce455 Pseudo C code improvements 2024-05-11 18:08:01 -07:00
Arceveti
a6b4c33a9a Fix disasm pseudo C flickering by forcing 30 FPS (?) 2024-05-11 16:11:08 -07:00
Arceveti
74771e6d77 Disasm pseudo C code mode 2024-05-10 01:59:29 -07:00
Arceveti
056706c81b Only use 2 framebuffers + some small fixes 2024-05-10 01:50:39 -07:00
Arceveti
3a5b9507a9 Merge branch 'develop/2.3.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2024-05-08 19:20:17 -07:00
Arceveti
cebdb3e604 Print extra registers on summary for certain instructions 2024-05-08 18:16:59 -07:00
Arceveti
71c999b5b8 Move disasm reg buffer to disasm file 2024-05-08 17:44:16 -07:00
Arceveti
6f779c188e Add option to try to parse non-.text data as instructions 2024-05-08 16:39:51 -07:00
Arceveti
71c9293a83 Even better count factor timing adjustment 2024-05-08 01:11:47 -07:00
Arceveti
e0820c42db disasm improvements 2024-05-07 14:44:28 -07:00
Arceveti
33aef53fa6 Better count factor timing adjustment 2024-05-07 00:27:37 -07:00
Arceveti
6ee3659e5f thread pri 0 while waiting but pri appmax-1 after crash + mapPacker.py variables 2024-05-06 23:54:33 -07:00
Arceveti
ca31ea4195 Add count factor and adjust some timings accordingly 2024-05-06 16:59:16 -07:00
Arceveti
f59c34315d Move register info defines to the files they're used in 2024-05-06 00:05:39 -07:00
Arceveti
3483ca10d4 Highlight sp and badvaddr on memory page 2024-05-06 00:04:25 -07:00
Arceveti
42f6a73ef5 Handle watchpoint exceptions 2024-05-05 15:29:59 -07:00
Arceveti
d111ee8d15 Use local variable for LLBit check 2024-05-05 00:01:09 -07:00
Arceveti
3696dc8de3 Add LLBit register info 2024-05-04 23:55:33 -07:00
Arceveti
7e11ab79d6 Check if valid ram addr in memory page symbols mode 2024-05-04 23:54:37 -07:00
Arceveti
74006f7f8a Memory page f32 mode (aligned) 2024-05-01 23:01:14 -07:00
Arceveti
12dec742b7 Better disasm branch arrow fill buffer trigger 2024-05-01 16:54:28 -07:00
Arceveti
45a74a34f7 Move attributes to attributes.h 2024-05-01 16:07:28 -07:00
Arceveti
e101238ea5 insn_db fixes 2024-04-30 16:05:44 -07:00
Arceveti
676e4ec290 Add new UNF rdb thread id 2024-04-30 13:57:22 -07:00
Arceveti
2ed4517f49 enum typedef consistency 2024-04-29 23:40:32 -07:00
Arceveti
6ae348e026 Add hardcoded segments to segments page + move segment data to new files 2024-04-29 18:42:59 -07:00
Arceveti
0dd54396f5 Clean up segment_symbols.h 2024-04-29 16:48:32 -07:00
Arceveti
d060bc781c Draw footer on crashed page + some null checks 2024-04-29 15:18:34 -07:00
Arceveti
7cca77e5c1 Only calculate text scroll speed once 2024-04-29 14:32:54 -07:00
Arceveti
dec76acdcd Move warp node asserts + add assert for null music dynamics + update readme 2024-04-29 02:00:42 -07:00
Arceveti
f106513156 show start and size instead of range on segments page 2024-04-28 21:10:30 -07:00
Arceveti
c734dbbba5 Reduce size of disasm instruction database by half 2024-04-28 17:08:39 -07:00
Arceveti
6e7e79b804 Update readme + reduce stack trace buffer size 2024-04-28 17:07:36 -07:00
Arceveti
e05be1a739 More space for symbols on thread registers page 2024-04-26 02:35:39 -07:00
Arceveti
eac8af8156 Print an additional character of symbols on memory page + osWritebackDCacheAll on interfaces page 2024-04-26 02:19:07 -07:00
Arceveti
d37ac917dc Smooth text scrolling 2024-04-26 01:52:11 -07:00
Arceveti
e6c3e7163c Add symbols mode to memory view 2024-04-25 18:37:15 -07:00
Arceveti
2abd2b56c8 Clean up some debug map ifdefs 2024-04-25 18:00:35 -07:00
Arceveti
e775e71337 Stack trace cleanup + Add HI_OF_/LO_OF_ macros 2024-04-25 17:41:26 -07:00
Arceveti
11229d7654 Move reginspect bit decode data to reginspect_bits.inc.c + clean up reginspect header 2024-04-25 00:52:15 -07:00
Arceveti
c4bdda30aa Improve register order on registers page + improve description printing on reginspect 2024-04-24 19:33:27 -07:00
Arceveti
2a59b3f195 Move instruction data to insn_db.inc.c 2024-04-24 19:11:08 -07:00
Arceveti
93b65314e6 Merge branch 'develop/2.3.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2024-04-24 18:57:05 -07:00
Arceveti
3da6bca4cd Improve reginspect pointer detection 2024-04-24 16:58:42 -07:00
Arceveti
4101f499f0 Fix macro/define name in assert conditions + mark code after asserts as unreachable 2024-04-24 15:33:37 -07:00
Arceveti
d57901dd08 Draw registers page sections from list + get_reg_val null checks 2024-04-24 15:13:49 -07:00
Arceveti
dd3031500b Add mention of L/R to switch page in the summary page instruction text 2024-04-23 21:47:34 -07:00
Arceveti
3e24de5b24 C0 config reginspect decoded bits + sureAddr in reg info 2024-04-23 18:48:08 -07:00
Arceveti
dfd6a4c638 Fix build 2024-04-23 16:05:11 -07:00
Arceveti
49186ef8d2 Some C0 register bit mask defines 2024-04-23 15:58:55 -07:00
Arceveti
386064eea0 Move reg bit defines from reginspect to reg_bits.h 2024-04-23 15:04:12 -07:00
Arceveti
6daa911485 CP2.inc.c and CP3.inc.c consistency 2024-04-23 14:55:41 -07:00
Arceveti
a5713cabdb Rename 'registers' folder to 'register_data' 2024-04-23 14:53:12 -07:00
Arceveti
2b5050f4b4 add 'checkThread' arg to get_reg_val 2024-04-23 14:50:45 -07:00
Arceveti
1e8b6f59cd Add cs_draw_custom_5x5_glyph (unused for now) 2024-04-23 14:42:04 -07:00
Arceveti
55b1f5bd10 sRegDesc_Default extern 2024-04-23 14:02:23 -07:00
Arceveti
f7e315f595 Fix register data .inc.c includes 2024-04-23 14:01:06 -07:00
Arceveti
b9e234981f Rename reg bits commands + fix typos 2024-04-22 19:58:03 -07:00
Arceveti
9b4da37d15 Some reginspect bit decoding 2024-04-22 19:48:46 -07:00
Arceveti
23f67fd76b Add f3dex3 check to about page 2024-04-22 19:45:36 -07:00
Arceveti
ac1641e9e9 Cleaner microcode name define 2024-04-22 15:23:23 -07:00
Arceveti
31596548ec Reginspect for interface registers 2024-04-22 15:18:37 -07:00
Arceveti
30ab8cc197 MapSymbolIndex typedef + fix build warnings 2024-04-22 15:00:08 -07:00
Arceveti
29c12a8e68 Fix symbol dividers crash + make the setting work + allow scrolling into physical addresses 2024-04-22 14:51:06 -07:00
Arceveti
9f21629bff Improve viewable/scrollable memory boundary defines 2024-04-21 20:17:28 -07:00
Arceveti
508ab498b7 Rename 'TO_STRING' and 'TO_STRING2' to 'STRINGIFY' and 'EXPAND_AND_STRINGIFY' 2024-04-21 15:11:11 -07:00
Arceveti
36bd5b35aa Add build.c + add commit hash to build info + small changes 2024-04-21 15:07:16 -07:00
Arceveti
d7e87eab82 Small changes 2024-04-21 01:54:12 -07:00
Arceveti
41591bc9a3 Clean up reginspect decoded bits printing 2024-04-21 01:16:29 -07:00
Arceveti
64d31e2194 Various cleanup 2024-04-21 01:15:05 -07:00
Arceveti
1a064613f9 Registers rewrite 2024-04-20 20:21:45 -07:00
Arceveti
32e9216f17 Add to builtins.h + custom message if running code in non-code segment 2024-04-20 20:00:59 -07:00
Arceveti
1b89b37782 Print badvaddr on EXC_MOD 2024-04-18 18:29:51 -07:00
Arceveti
0e46aaf5b0 Allow moving cursor while reginspect is open + improve register page lists + print binary data on reginspect 2024-04-18 17:56:27 -07:00
Arceveti
1f7d4dfeb8 Print badvaddr to summary page for TLB or address exceptions 2024-04-18 17:54:21 -07:00
Arceveti
f529732d1d Actually fix safe memory reads 2024-04-18 17:52:52 -07:00
Arceveti
33b402529f Include assert.h in macros.h 2024-04-18 17:47:57 -07:00
Arceveti
5cd024e20f Fix RDB description 2024-04-17 17:39:21 -07:00
Arceveti
4227fd6e76 Add c standard version to compiler section on about page 2024-04-17 15:29:31 -07:00
Arceveti
6f00f3dd1b Use __func__ to get current function name for asserts instead of using inline asm and debug symbols 2024-04-17 15:28:08 -07:00
Arceveti
f1a5e0c984 Hi Arthur 2024-04-17 00:21:10 -07:00
Arceveti
656de5a982 Add interface registers page 2024-04-17 00:09:21 -07:00
Arceveti
5e478e9ff9 Update asm.h 2024-04-17 00:09:10 -07:00
Arceveti
d3527d381d Improve reginspect 2024-04-17 00:01:47 -07:00
Arceveti
dd46bb36f4 Fix safe memoey read for physical addresses 2024-04-16 23:59:02 -07:00
Arceveti
cc36e58787 Add CLZ/CTZ/POPCOUNT macros 2024-04-16 23:56:06 -07:00
Arceveti
025758bf45 Improve segment symbols 2024-04-15 14:23:20 -07:00
Arceveti
aa05f32f02 fix typo 2024-04-15 14:22:53 -07:00
Arceveti
4c7d142c95 Add asserts for some common crashes + specific "level" and "rcp" assert types 2024-04-11 20:32:52 -07:00
Arceveti
fc05a4591f Fix typo in symbol_is_function 2024-04-11 17:16:07 -07:00
Arceveti
2985bd738c Fix denorm/NaN text color on reginspect 2024-04-11 16:25:51 -07:00
Arceveti
ab76c58b13 Use faster darken drawing in all draw funcs 2024-04-10 18:58:33 -07:00
Arceveti
541486f09d Combine cs_draw_rect/cs_draw_dark_rect/cs_draw_outline + optimize rectangle scissor box + documentation 2024-04-10 18:36:36 -07:00
Arceveti
ff87e48bba Fix unsafe data read when searching for branch offsets. 2024-04-10 18:30:07 -07:00
Arceveti
f887a16c53 Improve asserts + reginspect bool strings 2024-04-10 03:01:11 -07:00
Arceveti
c4495e07c7 Reginspect print both 32 and 64 bit values 2024-04-09 18:26:49 -07:00
Arceveti
9bd60910c1 Add segments page 2024-04-08 00:46:40 -07:00
Arceveti
4578af8fe2 Fix build warning 2024-04-07 19:01:43 -07:00
Arceveti
ff484b9e1e Clean up some segment stuff 2024-04-07 18:58:30 -07:00
Arceveti
4b438e6849 Add sSegmentROMTable without breaking Fast64 exporting + strings for what's loaded in a segment 2024-04-07 03:14:53 -07:00
Arceveti
889c385e44 Put crash screen in its own rom segment and add sSegmentSizes 2024-04-07 00:17:38 -07:00
Arceveti
99bc22f371 Improve printing of unknown map symbol sizes 2024-04-06 21:38:56 -07:00
Arceveti
0530f1d878 Improve some debug map ifdefs 2024-04-06 18:58:01 -07:00
Arceveti
1137ae59e7 Rename "MAP VIEW" to "MAP SYMBOLS" 2024-04-06 18:26:58 -07:00
Arceveti
482dedb880 Improve reginspect 2024-04-06 03:05:14 -07:00
Arceveti
d18d05791e More refactoring + PRIds 2024-04-05 22:04:23 -07:00
Arceveti
4feb3e4725 float format info for lwc1/ldc1/swc1/sdc1 2024-04-05 04:00:57 -07:00
Arceveti
2f932084f3 Various refactors 2024-04-05 01:45:07 -07:00
Arceveti
64a61b11f7 Improve memory page dividers + pointer jumps 2024-04-02 17:11:29 -07:00
Arceveti
8aa47f482a Improve fallback memory strings 2024-04-02 17:10:38 -07:00
Arceveti
9dd84cef64 Add symbol dividers to memory page + improve on disasm page 2024-04-01 23:58:54 -07:00
Arceveti
7458d40170 Fix typo 2024-03-31 13:39:25 -07:00
Arceveti
20f049ee23 Add assert for missing source warp node 2024-03-31 13:37:01 -07:00
Arceveti
82ac27feca Add get_segment_name 2024-03-31 00:15:17 -07:00
Arceveti
8acb8a877a Make a couple asserts clearer 2024-03-31 00:05:04 -07:00
Arceveti
0013305359 Update some comments + remove a redundant fname check. 2024-03-30 15:12:27 -07:00
Arceveti
e5d9a299aa Fix missing includes for asserts 2024-03-30 00:44:36 -07:00
Arceveti
8e21df185c Better print buffers + move RCP assert info to the asserts in main.h 2024-03-29 20:40:46 -07:00
Arceveti
332373222f Add binary and color display modes to memory page 2024-03-29 14:39:10 -07:00
Arceveti
7b9151a23e even more summary page stuff 2024-03-29 00:15:18 -07:00
Arceveti
86bee5a893 summary page stuff 2024-03-28 16:55:39 -07:00
Arceveti
4ca081b2d7 Revert assert message color 2024-03-28 14:33:45 -07:00
Arceveti
77e10fb22d Redesign summary page again + refactoring 2024-03-28 02:56:41 -07:00
Arceveti
88a8a7e4fc Fix capital "N" in font 2024-03-27 18:09:39 -07:00
Arceveti
db354040d3 Add special registers + RCP crash handling + various refactoring 2024-03-26 19:38:54 -07:00
Arceveti
baf031c49b Fix floats being incorrect in hex mode on registers page 2024-03-25 15:36:52 -07:00
Arceveti
b4984fae7c Summary page layout + some refactoring 2024-03-25 15:28:55 -07:00
Arceveti
08801aac5e cs_draw_triangle optimization 2024-03-25 00:56:59 -07:00
Arceveti
8f4e601985 Fix print_as_binary + print binary data on II exception + fix map page init + update readme 2024-03-24 18:06:21 -07:00
Arceveti
a12c875de0 Update readme 2024-03-24 15:04:42 -07:00
Arceveti
63a0f63cdb Fix thread queue looping after second crash screen crash 2024-03-24 15:01:36 -07:00
Arceveti
3f11385abd Add option for symbol name headers in disasm 2024-03-23 22:02:21 -07:00
Arceveti
5a4be032ce cs_main refactoring 2024-03-23 19:36:25 -07:00
Arceveti
e5c3b2a5de Update readme + some comments 2024-03-23 00:25:58 -07:00
Arceveti
3a3a28ce62 Thread name fallback on map symbol name 2024-03-22 21:07:09 -07:00
Arceveti
7dc1579f1e Fix "debug_assert" UNF conflict (renamed the UNF version) 2024-03-22 21:06:32 -07:00
Arceveti
8bb90e67bd Remove remaining threads page stuff 2024-03-22 14:22:02 -07:00
Arceveti
dfcb3aaf21 Move threads to dropdown on registers page + add stuff to readme + lots of other stuff 2024-03-22 13:59:56 -07:00
Arceveti
dde8d558a9 some stuff 2024-03-21 16:47:01 -07:00
Arceveti
01abdacbc5 Rename 'popup_address_select' files to 'popup_address' + add page names to readme 2024-03-21 15:55:46 -07:00
Arceveti
cce0b0bd6c Change in makefile (was unstaged) 2024-03-21 15:48:23 -07:00
Arceveti
6390757f87 Move thread entry draw to cs_draw and use on regs page + add commented gLastCSSelectedAddress + add readme 2024-03-21 15:45:28 -07:00
Arceveti
181a1e90b9 Optimizations to reduce branch arrow buffer size 2024-03-21 04:06:04 -07:00
Arceveti
c25267c1d1 Don't store branch arrow colors in buffer + increase buffer size 2024-03-21 03:28:45 -07:00
Arceveti
d3d1231828 more various stuff 2024-03-21 02:26:36 -07:00
Arceveti
97ffebd9ea Add support for odd numbered float registers (f64 can generate code that uses them) 2024-03-20 17:57:56 -07:00
Arceveti
98c0f9f8ff Add hex prefix to disasm code fields 2024-03-20 17:11:57 -07:00
Arceveti
58937233b4 Print code fields in disasm for exception causing instructions 2024-03-20 16:54:05 -07:00
Arceveti
aa79f92e69 Change "crash_" file prefix to "cs_" 2024-03-20 15:12:30 -07:00
Arceveti
2f0a5b4443 Output map data rom sizes to debug_map.txt (like goddard.txt) 2024-03-20 02:16:42 -07:00
Arceveti
eb8fb7b09f Use binary symbol search for disasm branch arrows 2024-03-20 02:12:22 -07:00
Arceveti
383b1bcf8c Some stuff 2024-03-19 20:12:21 -07:00
Arceveti
4d914821fd move rgba16_blend to crash_draw 2024-03-19 18:45:22 -07:00
Arceveti
2242953143 color for unknown disasm rows + name unknown thread 2024-03-19 18:41:32 -07:00
Arceveti
31caf7bdd4 Jump to pointer location from reginspect 2024-03-19 18:15:41 -07:00
Arceveti
76e8810443 Add binary search for map symbols + add translucent divider between symbols in disasm. 2024-03-19 18:01:50 -07:00
Arceveti
4ebcfbcada improve two descriptions 2024-03-19 16:08:42 -07:00
Arceveti
c9572d424f Show data at pointers in reginspect 2024-03-19 16:03:59 -07:00
Arceveti
b8e4995eed Add cause register to registers page 2024-03-19 15:19:33 -07:00
Arceveti
b3e0116fa2 rename home page to summary and popup_register to popup_reginspect 2024-03-19 14:05:23 -07:00
Arceveti
1b9fd899c2 Status and FPCSR decode bits with reginspect 2024-03-19 04:13:33 -07:00
Arceveti
932f5f132d VERSION.txt for crash screen 2024-03-19 00:43:57 -07:00
Arceveti
11139957e4 Add console processor id to about page 2024-03-19 00:40:36 -07:00
Arceveti
68e4593f43 Registers page horizontal wrapping 2024-03-19 00:37:35 -07:00
Arceveti
79480b02c4 some float and registers stuff 2024-03-18 23:41:22 -07:00
Arceveti
f07b721b88 Move cs_reinitialize_pagesto crash_pages 2024-03-18 23:21:30 -07:00
Arceveti
c7d2e359a5 Fix UNF thread IDs in enum + improve some comments 2024-03-18 22:56:34 -07:00
Arceveti
e84457b94a Add selection cursor and register inspection to registers page (unfinished) + improve symbol name printing 2024-03-17 18:48:30 -07:00
Arceveti
8b7cd1e21c Fix some struct/union definition formats 2024-03-17 16:09:36 -07:00
Arceveti
dd641c5fca Reegisters page fixes + add DIV_CEIL 2024-03-17 15:52:28 -07:00
Arceveti
731e7ed645 Allow changing the crash screen's inspected thread + page ordering 2024-03-16 19:17:00 -07:00
Arceveti
58520582a3 Streamline settings groups 2024-03-16 18:28:58 -07:00
Arceveti
6c160d12bb Change page ordering + improe CSPage enum 2024-03-16 18:12:09 -07:00
Arceveti
eb75175de8 Use osMemSize for ram size in about page + auto buffer size 2024-03-16 17:44:14 -07:00
Arceveti
4edf643935 Add threads page 2024-03-16 17:43:37 -07:00
Arceveti
73afcaff66 enum ThreadID documentation 2024-03-16 01:52:01 -07:00
Arceveti
0a79b285a8 Fix typo + add get thread state and flags str funcs + fix page select not initializing pages 2024-03-16 01:35:34 -07:00
Arceveti
332eeb90f1 Determine thread 0 thread names by priority 2024-03-16 00:38:33 -07:00
Arceveti
ba956c842c Add gInspectThread + add UNF thread IDs 2024-03-15 23:41:27 -07:00
Arceveti
ad14c804c7 Add memory region names + read doubleword aligned function 2024-03-15 16:25:01 -07:00
Arceveti
05a60aec88 Improve some setting names 2024-03-15 03:51:16 -07:00
Arceveti
f64216ac04 Fix crash screen crashes not having thread descriptions 2024-03-15 03:50:22 -07:00
Arceveti
06fcf3e9ed Don't open controls popup when reviving a page 2024-03-15 03:48:46 -07:00
Arceveti
6ced7d9982 Fix wrong/duplicate registers on registers page + add cs_print_symbol_unknown 2024-03-15 03:21:56 -07:00
Arceveti
7fcc7fcdd3 Don't close popup on page revive + some null checks 2024-03-15 03:01:45 -07:00
Arceveti
4d2f3ba339 Add setting for address select preview symbol + fix memory page name on settings page 2024-03-15 00:34:29 -07:00
Arceveti
f92f00f489 A+B+START to attempt to revive crashed page 2024-03-15 00:33:06 -07:00
Arceveti
a4c6dfe260 Settings persist on subsequent crashes 2024-03-15 00:32:09 -07:00
Arceveti
04cc7a88fa Fix about page long long info buffers not appearing on subsequent crashes 2024-03-15 00:31:32 -07:00
Arceveti
36ab9f4fef About page list gfx pool as number of commands instead of hex 2024-03-14 19:45:47 -07:00
Arceveti
3adb40ef68 Add recent pages to lists 2024-03-14 19:15:19 -07:00
Arceveti
4a3f15358f Add asterisk to settings group header if one of its entries is changed from default 2024-03-14 18:47:03 -07:00
Arceveti
3548308dfa Move goddard entry position in about page 2024-03-14 15:25:41 -07:00
Arceveti
e72833d926 More about page improvements + crash_descriptions.c reordering 2024-03-14 15:20:34 -07:00
Arceveti
b8e90ee895 Add goddard size to about page 2024-03-14 14:10:35 -07:00
Arceveti
f5b5ab7c78 UNF intellisense + include libpl + small formatting change 2024-03-14 02:25:56 -07:00
Arceveti
080b107de0 Show thread number and name on registers page 2024-03-13 23:22:31 -07:00
Arceveti
1993ee44ed Adjust pc for delay slot 2024-03-13 18:37:58 -07:00
Arceveti
bfe447d809 Separate float register format detection from coprocessor number 2024-03-13 18:09:27 -07:00
Arceveti
a247e82264 Use osSyncPrintf for UNF prints 2024-03-13 14:32:16 -07:00
Arceveti
1d209d49d8 cs_print_f32 improvement 2024-03-13 14:30:32 -07:00
Arceveti
1d856d0fed Name hex strings in _Litob.c 2024-03-13 14:02:28 -07:00
Arceveti
2164f33663 Don't print duplicate registers on home page + add output indices for pseudoinstructions 2024-03-13 03:54:21 -07:00
Arceveti
92fa246fd9 Fix last row of registers not printing + small changes 2024-03-13 03:41:47 -07:00
Arceveti
c50a8b64a7 Fix about page UNF print + make scrollbars clearer + formatting 2024-03-13 03:18:47 -07:00
Arceveti
f72a46b65b About page rewrite 2024-03-13 02:22:42 -07:00
Arceveti
f36a0d55d6 Add option to include non-RDRAM symbols in mapPacker.py + add map symbol data to about page 2024-03-12 16:49:37 -07:00
Arceveti
d853b0fd14 Fix some settings 2024-03-12 02:18:03 -07:00
Arceveti
fea5499380 Don't print output registers on home screen 2024-03-11 21:26:24 -07:00
Arceveti
d0455b32c9 Various changes, mostly just refactors 2024-03-11 20:43:24 -07:00
Arceveti
d8e71ffd43 Rename enum 'FloatError' to 'FloatErrorType' 2024-03-11 16:55:25 -07:00
Arceveti
9c95b352a5 Improve FPE error handling + fix float register handling + improve float printing + add crash_descriptions.c 2024-03-11 16:53:01 -07:00
Arceveti
e305485460 More about page entries 2024-03-11 04:03:24 -07:00
Arceveti
3c7f84db53 util folder 2024-03-11 03:29:00 -07:00
Arceveti
9409607bd8 Move popups to folder 2024-03-11 03:16:49 -07:00
Arceveti
745531bd79 Remove unused field in register struct 2024-03-11 03:00:43 -07:00
Arceveti
408344c79a Add libdragon crash description heuristics + fix asserts/fpcsr on home page 2024-03-11 02:59:46 -07:00
Arceveti
a22945adee Shrink page select + popup outlines 2024-03-11 02:55:09 -07:00
Arceveti
291ae6c337 Add control description for page select menu 2024-03-11 02:04:33 -07:00
Arceveti
f43a2f5152 More registers improvements 2024-03-11 00:54:29 -07:00
Arceveti
c55f97eefe Improve register handling 2024-03-11 00:35:48 -07:00
Arceveti
18dfc3032c More about page changes 2024-03-09 16:20:24 -08:00
Arceveti
6ae514b8f4 Fix some about page issues 2024-03-09 16:01:04 -08:00
Arceveti
d3053bfbf8 Fix build with UNF + update BITFLAG_BOOL comment 2024-03-09 15:04:57 -08:00
Arceveti
7a4ba53652 Make entire about page scrollable 2024-03-09 14:50:14 -08:00
Arceveti
80a214675e extended extended bounds entries + gfx pool + goddard 2024-03-09 01:11:04 -08:00
Arceveti
9385a5b235 Add a few libpl entries to about page + scrollable about page 2024-03-09 00:32:12 -08:00
Arceveti
51d1571777 Add variables 2024-03-08 21:33:49 -08:00
Arceveti
6ae62c5d88 Skip libpl entries on about page if libpl is not supported 2024-03-08 21:33:22 -08:00
Arceveti
4ef30f9171 Fix libpl version entry 2024-03-08 21:24:48 -08:00
Arceveti
2cdce77c14 Improve about page 2024-03-08 21:22:26 -08:00
Arceveti
29eac8e7d8 Add libpl header include in page_about.c 2024-03-08 17:54:18 -08:00
Arceveti
195873630e Fix libpl build 2024-03-08 13:59:20 -08:00
Arceveti
2bde0a315f Add libpl version detection to about page + small changes 2024-03-08 13:58:16 -08:00
Arceveti
d88e073776 Press L+R to open page select popup 2024-03-07 18:45:11 -08:00
Arceveti
61244d0e41 Add registers.c + print relevant registers on home screen 2024-03-07 18:12:04 -08:00
Arceveti
274f70190b Add BG opacity setting 2024-03-07 17:56:23 -08:00
Arceveti
674e259d02 Actually fix build with UNF disabled 2024-03-07 16:38:59 -08:00
Arceveti
abf829bc04 Show disasm of pc on home page 2024-03-06 18:44:29 -08:00
Arceveti
6245c005b5 Add assert_address + print function where assert happened 2024-03-06 18:22:11 -08:00
Arceveti
b4c0e82ca6 Merge branch 'develop/2.3.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2024-03-06 17:06:47 -08:00
Arceveti
e551a346e5 Fix about page UNF crash + fix previous assert persisting on crash screen crash 2024-03-06 17:06:25 -08:00
Arceveti
3d658e5b08 Add gRomSize + Improve about screen 2024-03-06 16:41:45 -08:00
Arceveti
5b334398da Fix build without UNF 2024-03-05 19:33:25 -08:00
Arceveti
7c7b67de5b Rename context page to registers 2024-03-05 19:33:16 -08:00
Arceveti
55f82d7cfe Use better blue for assert file name and line number 2024-03-05 19:18:35 -08:00
Arceveti
727b9e30e7 Allow changing page with L/R while controls box is open 2024-03-05 19:16:01 -08:00
Arceveti
92698b87fe Add settings to hide address ranges + formatting 2024-03-05 18:27:35 -08:00
Arceveti
5775936be9 Header redesign + add home page 2024-03-05 17:00:32 -08:00
Arceveti
031983274e Add Null SP task debug assert 2024-03-05 16:57:11 -08:00
Arceveti
802a36aa24 Update about page 2024-03-05 02:18:33 -08:00
Arceveti
d54b9a0ba0 Add about page 2024-03-04 17:52:28 -08:00
Arceveti
c69d2897d0 Add debug_is_initialized 2024-03-04 17:51:58 -08:00
Arceveti
3558411e33 Fix OS_MAJOR_VERSION 2024-03-04 17:49:16 -08:00
Arceveti
5665285c13 Check for debug_initialized in debug_printf 2024-03-04 16:00:42 -08:00
Arceveti
bf638f7ee6 Rename 'CONT_DESC_CYCLE_DRAW' to 'CONT_DESC_HIDE_CRASH_SCREEN' + move HackerSM64_version_txt to crash_main.c 2024-03-04 16:00:22 -08:00
Arceveti
fc363e7bd5 Add setting for drawing L/R arrows 2024-03-04 14:53:05 -08:00
Arceveti
cc94ad7db0 Only enable UNF on console. 2024-03-04 14:49:11 -08:00
Arceveti
526aefec43 Move assembly macros out of macros.h and main.c and into asm.h 2024-03-04 14:42:19 -08:00
Arceveti
7f6dafefaa Undo removing CAUSE from UNF print 2024-03-04 14:31:45 -08:00
Arceveti
f128d85066 Reorder context page thread, func, cause 2024-03-04 14:27:54 -08:00
Arceveti
a1027500c8 Add L/R triangles + fix UNF ifdefs + add BITFLAG_BOOL 2024-03-03 14:41:32 -08:00
Arceveti
15e72f14df Context page improvements + context UNF print + print current page on crash + add struct member macros + more 2024-03-02 21:00:30 -08:00
Arceveti
12c89466b2 Merge branch 'master' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2024-03-02 19:58:51 -08:00
Arceveti
5ff7daa2b3 Replace 'TARGET' with existing 'TARGET_STRING' 2024-03-02 18:10:19 -08:00
Arceveti
be2d8acf00 Fix wrong format in color_presets.h 2024-03-01 12:02:40 -08:00
Arceveti
c50e04a27a Disasm UNF print 2024-03-01 12:01:49 -08:00
Arceveti
dacb3a9723 Ifdef comments + map page UNF 2024-03-01 11:22:55 -08:00
Arceveti
88fad9df91 Logs UNF print + print formatting 2024-02-29 18:29:59 -08:00
Arceveti
7803a31c0a Use LOG_MESSAGE_SIZE instead of sizeof 2024-02-29 17:41:40 -08:00
Arceveti
1e106fe2e7 RAM view UNF print 2024-02-29 17:05:58 -08:00
Arceveti
00c703282a Stack trace unf print 2024-02-29 16:43:24 -08:00
Arceveti
d43732c814 Add UNF print control description + print_page_unf + basic stack trace page print 2024-02-29 16:20:13 -08:00
Arceveti
9f4dc00e00 Add support for UNF print current page 2024-02-29 15:28:44 -08:00
Arceveti
25f18ac2ff Some documentation 2024-02-25 16:57:34 -08:00
Arceveti
689abe4d46 Add comment for amount of ROM space taken up by debug map 2024-02-25 14:08:52 -08:00
Arceveti
25a2cf1a62 Merge branch 'develop/2.2.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2024-02-25 02:51:26 -08:00
Arceveti
3650bbfdc4 Improve a few uses of asserts 2024-02-25 01:20:15 -08:00
Arceveti
64df05fc4b Crash screen thread stack define name 2024-02-25 01:19:56 -08:00
Arceveti
ee09cdda9e Fix typo + revert define toggle 2024-02-25 01:05:03 -08:00
Arceveti
3370b02513 Rename "HackerSM64_version" incbin to "HackerSM64_version_txt" 2024-02-19 17:11:45 -08:00
Arceveti
0c1bbed7c8 Fix gSetCrashAddress 2024-02-14 16:28:03 -08:00
Arceveti
7f50491a52 DEBUG_ASSERTF usage 2024-02-14 13:59:43 -08:00
Arceveti
68f82f7559 Merge branch 'develop/2.2.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2024-02-14 01:36:11 -08:00
Arceveti
edfde1ec8a Merge branch 'develop/2.2.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-12-15 14:47:10 -08:00
Arceveti
a9cfd6211f Formatting changes 2023-10-15 20:18:49 -07:00
Arceveti
4198e5464c Reduce number of memory reads done per frame on memory view page 2023-10-15 20:04:47 -07:00
Arceveti
1391afe696 Small improvement to context page 2023-10-15 19:15:59 -07:00
Arceveti
5f53d965f4 Move enums from memory_read.c into memory_read.h 2023-10-15 19:00:27 -07:00
Arceveti
f9237c3fa5 Fix build when INCLUDE_DEBUG_MAP is not defined 2023-10-15 15:40:54 -07:00
Arceveti
7b036e1eff Don't use array index as thread ID in sThreadIDNames 2023-10-15 15:08:41 -07:00
Arceveti
a0dacfaea4 Add thread name strings 2023-10-07 01:49:14 -07:00
Arceveti
dc0073e646 Fix tab char counting 2023-10-07 01:48:40 -07:00
Arceveti
7bd9803878 Rename 'PAGE_LOG' to 'PAGE_LOGS' 2023-10-06 15:25:58 -07:00
Arceveti
4831380b5e Fix crash screen's crash screen + Only start on logs page during assert if assert message exists + some refactoring 2023-09-30 14:26:48 -07:00
Arceveti
23f2d5fdec Merge branch 'master' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-30 13:39:25 -07:00
Arceveti
57f581d6a1 Fix FORCE_CRASH not working on most emulators + remove FRAMEBUFFER_SIZE define 2023-09-30 13:39:00 -07:00
Arceveti
637603fadf More formatting 2023-09-28 15:06:01 -07:00
Arceveti
b423f68efc More renames + comment cs_draw_line 2023-09-28 14:47:01 -07:00
Arceveti
81eff9049d formatting changes :) 2023-09-27 19:37:58 -07:00
Arceveti
7e9fd41791 Remove HACKERSM64_VERSION define 2023-09-27 15:07:19 -07:00
Arceveti
bb73ec3488 Change popup box functionality 2023-09-27 15:04:32 -07:00
Arceveti
9056a1061b Merge branch 'develop/2.1.2' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-27 14:42:28 -07:00
Arceveti
ec385f7cb8 Add INCBIN + get version number string from VERSION.txt 2023-09-27 01:37:27 -07:00
Arceveti
1a3953868a Merge branch 'master' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-26 20:10:40 -07:00
Arceveti
6ede47f4cc Merge branch 'master' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-25 17:37:33 -07:00
Arceveti
fea0858ee0 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-25 16:12:06 -07:00
Arceveti
0ce3bb0fa3 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-22 15:31:50 -07:00
Arceveti
271cf7f1ae Improve unaligned data reads 2023-09-12 13:20:18 -07:00
Arceveti
8377fd9ea3 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-12 12:59:16 -07:00
Arceveti
7f40c65039 insn_disasm formatting + small optimizations 2023-09-12 12:58:24 -07:00
Arceveti
2eef28099b Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-11 14:32:07 -07:00
Arceveti
cf3e0894f9 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-11 13:54:21 -07:00
Arceveti
96e822a140 UNF compatibility + print on crash 2023-09-10 15:41:36 -07:00
Arceveti
fc231ea9f4 Context page string get refactor 2023-09-10 15:26:27 -07:00
Arceveti
71daa02763 Various documentation + formatting 2023-09-10 13:59:09 -07:00
Arceveti
1338223f7e Improve disasm selection box 2023-09-09 19:30:45 -07:00
Arceveti
38fb684dcb Better null terminators for insn_db arrays + update documentation 2023-09-09 19:30:36 -07:00
Arceveti
ae0010c929 More get_insn optimization 2023-09-09 19:20:15 -07:00
Arceveti
954a5af142 get_insn optimization 2023-09-09 19:10:59 -07:00
Arceveti
5e4b05986a Further get_insn_type_and_list cleanup 2023-09-09 15:08:31 -07:00
Arceveti
6d9d7a9b91 Clean up get_insn_type_and_list 2023-09-09 14:47:05 -07:00
Arceveti
337272b532 control list name consistency 2023-09-09 14:35:48 -07:00
Arceveti
a7c82230e0 Fix insn_disasm coprocessor subtype accuracy + documentation 2023-09-07 17:14:06 -07:00
Arceveti
216fca53ed Function name consistency + some documentation 2023-09-06 13:53:47 -07:00
Arceveti
f56f7b828d Remove unused crash_main.c includes + assert formatting 2023-09-05 12:49:21 -07:00
Arceveti
972c8c035f Split settings data into groups 2023-09-05 12:36:59 -07:00
Arceveti
79cd81f864 Clean up settings prints + context page as start page 2023-09-02 13:53:52 -07:00
Arceveti
e342f8d176 Add 'CRASH_SCREEN_START_PAGE' define + fix build warning 2023-09-02 13:38:39 -07:00
Arceveti
99e9e362d3 Assert fixes 2023-09-02 13:29:58 -07:00
Arceveti
dc5bd6a8bf Improve UNF ifdef in thread3_main 2023-09-02 13:24:36 -07:00
Arceveti
cc3f1f6f2f Fix vc_check.h include 2023-09-02 13:20:05 -07:00
Arceveti
c437424cd8 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-09-01 18:02:04 -07:00
Arceveti
42633dc59e Clean up crash_screen_thread_entry 2023-09-01 17:53:16 -07:00
Arceveti
64c5c4cb9f Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-08-23 17:14:09 -07:00
Arceveti
bcfa6a1803 Move CSPage structs to page files 2023-08-23 15:47:45 -07:00
Arceveti
48cdefded7 Update comment 2023-08-23 15:36:53 -07:00
Arceveti
6fa027485d Various refactors 2023-08-23 15:27:17 -07:00
Arceveti
14ad9afb8b Move 'name' member of CSPage to the beginning 2023-08-23 14:52:45 -07:00
Arceveti
e197e87881 Improve struct typedefs 2023-08-23 14:49:26 -07:00
Arceveti
a59a944e27 Add settings for map view page 2023-08-22 15:43:49 -07:00
Arceveti
50cfd18b21 Add show/hide settings for stack address and offset in stack page 2023-08-22 14:59:30 -07:00
Arceveti
cbaacbf168 Add setting for log index numbers 2023-08-22 14:46:42 -07:00
Arceveti
b6ca9ff68d Add expand/collapse all for settings 2023-08-22 14:13:35 -07:00
Arceveti
a6700b4558 static char buffer for print 2023-08-22 12:02:26 -07:00
Arceveti
cb0718ccbd Various formatting 2023-08-21 21:03:29 -07:00
Arceveti
d0050caabe Fix disasm branch arrows + fix typo 2023-08-21 21:02:35 -07:00
Arceveti
cd2dce570c more crash_controls.c cleanup + address_select.h formatting 2023-08-19 20:13:58 -07:00
Arceveti
1b7c28b4ba update_crash_screen_page cleanup 2023-08-19 20:05:46 -07:00
Arceveti
4cf6c28459 move non-default setting asterisk 2023-08-19 19:58:39 -07:00
Arceveti
616bed1f10 Header formatting + insn format string fix 2023-08-19 19:58:32 -07:00
Arceveti
643c275291 Add gCSWordWrapXLimit + formatting 2023-08-17 11:40:45 -07:00
Arceveti
584e7293ca Red assert highlight 2023-08-16 20:24:07 -07:00
Arceveti
88e9d3b08c Update assert print in log page 2023-08-16 14:46:24 -07:00
Arceveti
d9fed14bb1 Use ASSERTF for crash_screen_print_impl buffer size check 2023-08-16 14:24:06 -07:00
Arceveti
e2f248c74c Add __n64Assert_Condition + Replace assert args with ERRORF, ASSERTF, and DEBUG_ASSERTF macros + move write_to_buf to printf.h 2023-08-16 14:21:45 -07:00
Arceveti
e158586d7e Add assert args + assert.c/assert.h 2023-08-15 23:04:19 -07:00
Arceveti
ffbaf89181 Add tab support 2023-08-15 20:25:29 -07:00
Arceveti
251bc0e96e Combine assert and log pages 2023-08-15 16:21:45 -07:00
Arceveti
399d5365e3 Add current symbol name setting for memory page 2023-08-14 19:46:37 -07:00
Arceveti
cdcafa68b8 Clamp settings scroll when section is collapsed 2023-08-14 15:36:42 -07:00
Arceveti
7faf7185da Clean up disasm branch arrow head drawing 2023-08-14 14:27:06 -07:00
Arceveti
32aa26d2d7 Add setting for current symbol name in disasm 2023-08-14 13:54:07 -07:00
Arceveti
072421b26d Replace triangle functions with a cropped diamond shape 2023-08-14 13:09:11 -07:00
Arceveti
0131f78d28 Add config_crash.h 2023-08-12 18:45:46 -07:00
Arceveti
cedee53da0 Move controls lists + some renames 2023-08-12 18:40:26 -07:00
Arceveti
b1b19eb8b6 Move non-default setting asterisk 2023-08-12 18:19:13 -07:00
Arceveti
216da323eb Fix disasm branch arrows sometimes appearing outside of code sections + fix typo 2023-08-12 16:50:22 -07:00
Arceveti
5276c65032 Fix includes 2023-08-12 16:40:25 -07:00
Arceveti
c10dbc2392 Move settings functionality into its own file + crash_types.h cleanup 2023-08-12 15:51:15 -07:00
Arceveti
83eef2b61a Make settings section headers collapsible 2023-08-12 15:43:15 -07:00
Arceveti
a26c4b5684 Add settings section headers 2023-08-12 15:43:07 -07:00
Arceveti
034306db48 Clean up settings defaults in INCLUDE_DEBUG_MAP ifderfs 2023-08-10 21:45:27 -07:00
Arceveti
9a2908de7d Add settings for cursor direction hold wait frames and analog deadzone 2023-08-10 21:27:36 -07:00
Arceveti
74fe1868fc Add option to parse context register symbol names 2023-08-10 20:06:14 -07:00
Arceveti
78a48e1bf9 Use tc->sp for the first sCSFunctionStackBuffer entry 2023-08-10 19:57:17 -07:00
Arceveti
14dad6050e Wrap selection for stack trace and settings pages + use sp for currfunc stack address 2023-08-10 17:44:57 -07:00
Arceveti
ac3c5814dd Composite controller 2023-08-09 15:40:26 -07:00
Arceveti
7ddee27fdc Implement "SELECTION" mode for disasm branch arrows 2023-08-08 22:00:30 -07:00
Arceveti
9847040002 Settings fixes + INCLUDE_DEBUG_MAP ifdef fixes 2023-08-08 21:31:58 -07:00
Arceveti
bab96a8e54 Add reset to defaults + fix hiding crash screen with Z + change setting controls description + add WRAP macro 2023-08-08 14:19:31 -07:00
Arceveti
84cb6e18ab Print asterisk if setting has been changed from default 2023-08-08 13:15:27 -07:00
Arceveti
e04847837f Add option to print disasm branches as addresses + formatting 2023-08-08 12:48:19 -07:00
Arceveti
f362a46ace Optimize PrintBuffer memory usage + add ColorRGBA32 union 2023-08-07 16:22:00 -07:00
Arceveti
8e4950d2d1 Add <> arrows to settings 2023-08-07 14:31:29 -07:00
Arceveti
84c6b218b4 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-08-07 13:54:41 -07:00
Arceveti
bb869b66c8 Update colors + settings order 2023-07-26 13:11:41 -07:00
Arceveti
b4dfa5cf8e Fix print scroll speed 0 2023-07-24 13:47:48 -07:00
Arceveti
66fc5def65 Add setting for pseudoinstructions + color fixes 2023-07-24 11:38:38 -07:00
Arceveti
ed75f79ba4 Move handle_input to input.h for easier merging later 2023-07-24 00:06:14 -07:00
Arceveti
76ea4f3735 Rename "game_input.h" to "input.h" to match input branch 2023-07-23 23:56:42 -07:00
Arceveti
f9493e48f3 Add disasm immediate format setting + crash_screen_draw_row_selection_box 2023-07-23 18:40:44 -07:00
Arceveti
e5b7a4742a Add settings page 2023-07-23 13:24:47 -07:00
Arceveti
a772d74b2c Rename page file names 2023-07-21 13:28:06 -07:00
Arceveti
5a9cca4958 Add index numbers to puppyprint log page 2023-07-21 13:17:28 -07:00
Arceveti
83392dce36 Update mapPacker.py comments & struct 2023-07-21 12:26:16 -07:00
Arceveti
738adebb22 Fix draw scissor box preventing hiding framebuffer 2023-07-21 01:18:32 -07:00
Arceveti
6bd6af41f0 Remove unused line 2023-07-20 18:24:07 -07:00
Arceveti
9552922ab2 Assert page improvements + print buffer bounds assert 2023-07-18 16:34:01 -07:00
Arceveti
372653b025 Fix stack trace on subsequent crash screens 2023-07-18 16:32:30 -07:00
Arceveti
9c913667b3 Update the map view page if the selected symbol changed on a different page 2023-07-18 16:30:43 -07:00
Arceveti
c77efff76a Add draw scissor box 2023-07-18 16:29:35 -07:00
Arceveti
0cab90c88a Fix map parser 2023-07-18 13:04:20 -07:00
Arceveti
6755d1e795 Swap stack trace and map view pages + some fixes 2023-07-17 18:05:45 -07:00
Arceveti
307330336f Rename "crash_screen" files to "crash_main" + add placeholder settings page files 2023-07-13 18:41:52 -07:00
Arceveti
3dab43c478 Refactor map symbol searching + change "entry" to "symbol" 2023-07-13 18:34:34 -07:00
Arceveti
ea3a203601 Add parse error code to map entry format 2023-07-13 13:21:22 -07:00
Arceveti
5128f35d6c memory_read functions for specific sizes 2023-07-13 12:51:30 -07:00
Arceveti
7cc11f645a Signed ints for crash screen draw 2023-07-13 12:48:59 -07:00
Arceveti
f33b1c8df5 Fix mapPacker.py + add type to map data 2023-07-13 12:36:08 -07:00
Arceveti
0d5c78d3b3 Various formatting/refactoring 2023-07-13 12:31:20 -07:00
Arceveti
f88e09018a Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-07-12 21:18:14 -07:00
Arceveti
b641981515 Rename 'gCrashAddress' to 'gSetCrashAddress' 2023-05-07 15:38:12 -04:00
Arceveti
cf5f130552 Improve char/uchar usage 2023-05-01 12:43:09 -04:00
Arceveti
82bd9f6f8d Formatting changes 2023-05-01 11:24:43 -04:00
Arceveti
6b7a0236ab Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-04-30 22:29:54 -04:00
Arceveti
01d001fb31 Add Map Viewer page 2023-04-30 22:29:03 -04:00
Arceveti
5ab8373c1d Improve stack trace display 2023-04-30 22:26:58 -04:00
Arceveti
04fadbd19a print_crash_screen_header cleanup 2023-04-30 22:25:19 -04:00
Arceveti
d5d38e7dde Add crash_screen_print_map_name 2023-04-30 21:50:22 -04:00
Arceveti
de6bc0a5cb Properly validate addresses before reading 2023-04-30 19:36:59 -04:00
Arceveti
dff9b61bb3 Improve address select wrapping 2023-04-30 19:22:50 -04:00
Arceveti
1ee74151a3 Fix build 2023-04-30 19:16:15 -04:00
Arceveti
a838b47a63 Fix scroll bar 2023-04-30 19:15:37 -04:00
Arceveti
884cd68ed9 Loop changes + better scroll bounds 2023-04-30 19:05:46 -04:00
Arceveti
6db53fc31c Add gEnablePseudoinstructions 2023-04-30 18:52:58 -04:00
Arceveti
2ed18924a4 Add memory typedefs 2023-04-30 18:51:41 -04:00
Arceveti
1806cfee21 Fix disasm arrows appearing a frame late when switching page 2023-04-28 22:36:50 -04:00
Arceveti
b0ef240c80 Catch SP Break + code segment checks + some refactoring 2023-04-27 12:02:05 -04:00
Arceveti
700649737d Add size estimations to map data 2023-04-27 11:48:33 -04:00
Arceveti
e249c44530 Make number of map entries global + headless_dma cleanup 2023-04-27 11:42:36 -04:00
Arceveti
a925a4d4c5 Fix map data DMA overwriting some game code 2023-04-27 11:31:54 -04:00
Arceveti
4ba1994913 Jump from stack trace selection 2023-04-19 14:50:37 -04:00
Arceveti
35203c2ca7 Use asm macros for asm functions 2023-04-19 14:39:52 -04:00
Arceveti
657527b000 Add ALIGNFLOOR macro 2023-04-19 14:35:33 -04:00
Arceveti
2a5a701d1f + ram viewer 2023-04-18 17:11:07 -04:00
Arceveti
222031b98c Optimizations 2023-04-18 17:09:58 -04:00
Arceveti
cb5e5663aa Stack trace improvements 2023-04-18 15:34:35 -04:00
Arceveti
3782fa6896 Fix FPCSR print 2023-04-18 15:32:40 -04:00
Arceveti
ca5c378878 Fix disasm commas + improve branch arrow spacing 2023-04-17 12:23:59 -04:00
Arceveti
68c2ad987a Fix map_parser 2023-04-16 20:28:01 -04:00
Arceveti
e84ce50d66 Use a single crashed thread pointer + combine some print functions + add crash_types.h 2023-04-16 20:25:30 -04:00
Arceveti
4abe16b641 Directly use global instead of arg for thread pointers in draw functions 2023-04-16 12:39:13 -04:00
Arceveti
8fb56aac6b Some refactoring + consistent global variable naming 2023-04-15 21:48:17 -04:00
Arceveti
937e3d6e1c Make crash_scren_print return number of chars instead of lines 2023-04-15 15:54:36 -04:00
Arceveti
f6ded6ce2d Move crash screen thread IDs up to 1000 2023-04-15 15:20:49 -04:00
Arceveti
e05fbec26b Remove crash screen crashed image 2023-04-15 14:38:43 -04:00
Arceveti
7d931468cc Fix NUM_CRASH_SCREEN_BUFFERS define 2023-04-15 14:24:36 -04:00
Arceveti
ee7ad98fea Infinitely recursive crash screens 2023-04-15 14:23:11 -04:00
Arceveti
beafe009b6 crash screen refactoring 2023-04-15 14:20:50 -04:00
Arceveti
e3345e5029 Reduce crash screen stack size 2023-04-15 14:05:01 -04:00
Arceveti
ae7f005ce7 Add CSDrawDarkRectDarken enum + some clenaup 2023-04-15 14:02:55 -04:00
Arceveti
f85dbda6fd Add init funcs + gCrashScreens array 2023-04-14 16:58:07 -04:00
Arceveti
5abe1938d6 Don't use unique encoding for crash screen font 2023-04-14 16:22:13 -04:00
Arceveti
1f171b13db more crash screen refactoring 2023-04-14 15:38:11 -04:00
Arceveti
17a245b5b7 More cleanup 2023-04-11 12:41:09 -04:00
Arceveti
2101259a87 More map_parser cleanup 2023-04-10 14:04:13 -04:00
Arceveti
e45c8311ee Fix build when KEEP_MARIO_HEAD is disabled 2023-04-10 10:02:59 -04:00
Arceveti
b8ef92f94e insn_disasm changes + add LI pseudoinstruction + fix MM crash 2023-04-10 09:59:56 -04:00
Arceveti
fb8ed57dad Add NEVER_INLINE + Add macros to cause specific exceptions 2023-04-10 09:55:46 -04:00
Arceveti
2be64da75c Add symbols for all .text sections to map_parser 2023-04-10 09:54:44 -04:00
Arceveti
d85cb9071e More pseudoinstructions + fix get_branch_target_from_addr crash 2023-04-07 21:43:24 -04:00
Arceveti
5ccf1e32dd Fix cop1_fmt_to_char 2023-04-07 19:27:20 -04:00
Arceveti
b35b9908de disasm fixes + pointer formatting changes 2023-04-07 19:08:00 -04:00
Arceveti
980f5f5376 Rewrite disasm insn checking and param formatting 2023-04-04 21:00:08 -04:00
Arceveti
3edeb7504f Async disasm branch arrow search + more refactoring 2023-03-31 16:33:48 -04:00
Arceveti
8bf457f117 split crash screen pages into separate files 2023-03-30 20:33:17 -04:00
Arceveti
a95e0c6a32 major print cleanup 2023-03-30 15:22:43 -04:00
Arceveti
7e9dbd845d crash_screen_print refactoring 2023-03-28 15:29:15 -04:00
Arceveti
6d7dd94ac5 crash_screen_print formatting 2023-03-28 13:32:00 -04:00
Arceveti
441a1e2a0c Crash screen changes + insn_disasm struct refactor 2023-03-27 18:40:05 -04:00
Arceveti
9e50c0a5c7 Fix build 2023-03-27 18:39:32 -04:00
Arceveti
e439d23672 crash screen print/draw changes 2023-03-27 18:34:53 -04:00
Arceveti
cbdf37df6d map_parser.c formatting 2023-03-27 18:33:59 -04:00
Arceveti
8cf89d8af0 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-03-27 18:27:31 -04:00
Arceveti
dd74c24780 Fix sControlsDescriptions 2023-03-17 13:48:48 -04:00
Arceveti
04c4fddbe8 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-03-17 12:16:39 -04:00
Arceveti
4a68be5bed Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-03-07 13:48:56 -05:00
Arceveti
36751d85be Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-02-10 21:48:00 -05:00
Arceveti
5962e27b86 formatting changes :) 2023-01-26 18:43:22 -05:00
Arceveti
21df519211 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-01-26 12:48:16 -05:00
Arceveti
d7d7b9058a Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2023-01-26 02:58:26 -05:00
Arceveti
9d8ab7f783 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-12-13 19:32:09 -05:00
Arceveti
b8e442b44c Use GCC extensions for some arrays 2022-12-13 19:32:03 -05:00
Arceveti
8fcbeee377 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-12-12 15:12:42 -05:00
Arceveti
fc78712e07 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-12-10 15:33:35 -05:00
Arceveti
2b43a72cc4 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-12-10 00:48:32 -05:00
Arceveti
44cc20df2e Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-12-06 15:16:56 -05:00
Arceveti
66a8f1bd1c Use ARRAY_COUNT for sFpcsrDesc loop in crash_screen_print_fpcsr 2022-12-06 15:16:49 -05:00
Arceveti
2c42334034 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-11-28 15:16:34 -05:00
Arceveti
ed4c509b7e Fix alert_rcp_hung_up error 2022-11-08 15:58:08 -08:00
Arceveti
3dfb0b3c36 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-11-07 18:58:30 -08:00
Arceveti
81359dcb99 Add 'SET_CRASH_ADDR' and 'FORCE_CRASH_AT_ADDR' 2022-11-03 04:03:36 -07:00
Arceveti
c1011eea4e move funny crash sound to its own function 2022-10-07 16:29:10 -07:00
Arceveti
9a0e519fd5 do while 0 for color copy and FORCE_CRASH macros 2022-10-07 16:00:01 -07:00
Arceveti
68cd80d86e Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-10-04 12:40:54 -07:00
Arceveti
aa5f9e28b7 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-09-30 16:46:03 -07:00
Arceveti
806ff241bd Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-09-29 15:06:00 -07:00
Arceveti
05bcbe79e3 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-09-28 21:11:53 -07:00
Arceveti
dffb09ff97 Fix asserts 2022-09-28 21:11:03 -07:00
Arceveti
8be4e566a4 Small formatting fix in colors.h 2022-09-28 13:31:24 -07:00
Arceveti
459026cd66 Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-09-28 13:29:29 -07:00
Arceveti
61fd664e8a Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-08-15 23:22:37 -07:00
Arceveti
c7eb78760f Improve macro order 2022-08-15 23:21:40 -07:00
Arceveti
d4edb36154 Make the middle part of the lowercase "z" diagonal in crash screen font 2022-08-07 01:34:07 -07:00
Arceveti
e7b7dfcd00 Disasm shows binary values when sShowRamAsAscii is on 2022-08-07 01:32:53 -07:00
Arceveti
fbc01c9dae insn_disasm formatting improvements 2022-08-07 01:32:02 -07:00
Arceveti
b983ac4091 insn_db alignment 2022-08-06 17:25:57 -07:00
Arceveti
470ea3c253 Use color macros in draw_crashed_image_i4 2022-08-06 17:15:00 -07:00
Arceveti
d325a3695f Fix address select wrapping + add IS_IN_RAM, GET_HEX_DIGIT, SET_HEX_DIGIT macros 2022-08-06 00:36:38 -07:00
Arceveti
c779bf3cf1 Add precise crash screen cursor controls 2022-08-05 20:56:50 -07:00
Arceveti
9f412b4a9c crash_screen_print optimization 2022-08-05 20:55:17 -07:00
Arceveti
3a65319b1c Add DISASM_INCLUDE_ALL_INSTRUCTIONS 2022-08-05 12:30:44 -07:00
Arceveti
6d431c7d50 Fix function name consistency + Show selected instruction's branch arrow when INCLUDE_DEBUG_MAP is disabled 2022-08-05 11:49:56 -07:00
Arceveti
3108c530a5 Fix build warnings/errors when INCLUDE_DEBUG_MAP is disabled 2022-08-05 11:17:01 -07:00
Arceveti
8efb50b881 Move some macros to proper header files 2022-08-04 23:39:27 -07:00
Arceveti
0f5aa4754f Rewrite crash screen text formatting system + split crash screen draw & print functions into separate files 2022-08-04 23:33:51 -07:00
Arceveti
71e4b2b6ee Add char macros 2022-08-04 15:52:44 -07:00
Arceveti
8a62662e59 Add localized horizontal function name scrolling for large function names 2022-08-04 15:51:09 -07:00
Arceveti
bba0774fcc formatting 2022-08-04 15:45:14 -07:00
Arceveti
57b6b1ee87 Fix broken coverage on crash screen game screenshot + close controls box when crash screen is not drawn 2022-08-03 23:28:04 -07:00
Arceveti
d4bb8a8713 Allow switching pages when controls box is open 2022-08-03 17:56:19 -07:00
Arceveti
be9578122e Merge branch 'develop/2.1.0' of https://github.com/Reonu/HackerSM64 into develop/2.1.0-new-crash-screen 2022-08-03 17:43:52 -07:00
Arceveti
c5489aa73f Add controls popup for individual pages 2022-08-03 16:59:29 -07:00
Arceveti
cac14fded0 Use Z to cycle between drawing crash screen & background instead of using both Z and START 2022-08-03 14:51:34 -07:00
Arceveti
d78ca2e28a Merge ADDR_IS_KNOWN macro into is_in_code_segment + add PARAM_SDT 2022-08-03 14:49:43 -07:00
Arceveti
a2510e8b95 Rename fields in MapEntry struct 2022-08-03 13:50:05 -07:00
Arceveti
5e2374772e Add ADDR_IS_KNOWN macro 2022-08-03 13:15:19 -07:00
Arceveti
786e605b6a Small crash_screen_fill_branch_buffer optimization 2022-08-03 01:19:54 -07:00
Arceveti
6a11d8c014 Jump to address target defaults to branch/jump target of selected line 2022-08-03 00:45:18 -07:00
Arceveti
52a5d81e95 Disasm instruction descriptions 2022-08-02 20:44:48 -07:00
Arceveti
48dd449804 Rename static crash screen arrays with 's' prefix 2022-08-02 20:44:02 -07:00
Arceveti
8b7c8149b9 Press B to close address selection box 2022-08-02 01:03:36 -07:00
Arceveti
a6077a8c6d Add selection cursor to RAM viewer and disasm pages of the crash screen 2022-08-01 22:22:06 -07:00
Arceveti
765261df53 Rename 'sHideCrashScreen' to 'sDrawBackground' 2022-08-01 19:38:37 -07:00
Arceveti
76215ff60f static const crash screen font 2022-08-01 18:23:40 -07:00
Arceveti
fec9b171c1 Add get_insn_type 2022-08-01 15:43:17 -07:00
Arceveti
77392653d7 Improve insn_db ordering + rename 'is_branch' to 'get_branch_offset' + document registerMaps + formatting 2022-08-01 15:41:05 -07:00
Arceveti
0d06f83a97 Combine parse_map and parse_map_return 2022-08-01 13:56:19 -07:00
Arceveti
a4eafb3f07 Add 'sDisasmColors' 2022-08-01 11:39:26 -07:00
Arceveti
4d55eb65f8 Highlight pc in ram viewer 2022-07-31 22:54:40 -07:00
Arceveti
d2a7994ae0 Rename 'sAddressSelect' to 'sAddressSelectTarget' 2022-07-31 21:57:49 -07:00
Arceveti
9a307bd8ec Reduce disasm arrow line overlap 2022-07-31 21:54:56 -07:00
Arceveti
ec57b5b0c0 Fix disasm arrows disappearing when partially off screen (again) 2022-07-31 21:26:50 -07:00
Arceveti
650ddbadb1 Fix stacktrace + includes 2022-07-31 20:52:23 -07:00
Arceveti
c410f227b5 unsigned char glyph 2022-07-31 17:46:07 -07:00
Arceveti
677dfa1c60 Add crash_screen.h, insn_disasm.h, and map_parser.h 2022-07-31 16:53:59 -07:00
Arceveti
12b46e9674 Add disasm branch arrow buffer 2022-07-31 15:19:07 -07:00
Arceveti
043cf0cb9c Signed branch offsets use '+' for positive values 2022-07-31 15:09:01 -07:00
Arceveti
3d7bf5530e Fix downward branch arrows disappearing when offscreen in disasm 2022-07-31 13:47:13 -07:00
Arceveti
6b62aa7fd3 Display disasm branch arrows for the entire function 2022-07-31 03:17:26 -07:00
Arceveti
f7504f8ef3 Add crash_screen_draw_horizontal_triangle 2022-07-31 02:06:28 -07:00
Arceveti
3b083e1cd3 Move crash screen to its own folder 2022-07-31 01:14:33 -07:00
Arceveti
18d30203c5 Formatting consistency + fix color array + re-add not generated instructions as comments 2022-07-30 23:15:43 -07:00
arthurtilly
d1f1d92fa6 add back instructions i fucked up 2022-07-31 18:04:14 +12:00
arthurtilly
ec723239fd Do funny merge 2022-07-31 17:47:41 +12:00
arthurtilly
d833e56e6c add branch arrows to disasm 2022-07-31 17:30:58 +12:00
Arceveti
a441e82187 Fix color_presets.h 2022-07-30 22:09:16 -07:00
Arceveti
2d330c6450 Rename 'arbitraryParam' to 'paramType' 2022-07-30 22:08:09 -07:00
Arceveti
2106504422 Add parse_map_exact + show current function in disasm + comment out mips instructions that don't generate + toggle ascii on disasm 2022-07-30 17:29:18 -07:00
arthurtilly
b667148867 fix offset bug and prevent branch instructions from trying to get a function name 2022-07-31 10:52:44 +12:00
Arceveti
3470182152 Update insn_disasm + add remaining MIPS III instructions 2022-07-30 03:06:08 -07:00
Arceveti
864f2d24dc Fix typo in color name 2022-07-29 21:56:22 -07:00
Arceveti
95e446b558 Update crash screen font 2022-07-29 16:12:38 -07:00
Arceveti
0fe2a5aef0 CRASH_SCREEN_CRASH_SCREEN does not require make clean 2022-07-29 16:10:01 -07:00
Arceveti
502cc8e7da Replace MAP_PARSER_ADDRESS checks with INCLUDE_DEBUG_MAP ifdefs 2022-07-29 16:04:41 -07:00
Arceveti
6722916458 Add sCrashScreenWordWrap 2022-07-29 03:10:49 -07:00
Arceveti
6a398d1932 Crash screen formatting/refactoring 2022-07-29 02:49:12 -07:00
Arceveti
35d58fb9dd document some controls + rename text parsing funcs 2022-07-28 22:29:36 -07:00
Arceveti
ce87512ffe Triple buffer crash screen 2022-07-28 18:29:27 -07:00
Arceveti
4949cf93b3 Rename 'sDrawFrameBuffer' to 'sHideCrashScreen' 2022-07-28 16:33:51 -07:00
Arceveti
eff5e606e6 Improve macros.h ordering 2022-07-27 21:29:07 -07:00
Arceveti
d46a40b2e5 Use bcopy for framebuffer copy 2022-07-27 21:24:24 -07:00
Arceveti
11302f103c Add crash_screen_draw_dark_rect for crash screen background 2022-07-27 16:06:58 -07:00
Arceveti
6e38226afc Optimize copy_framebuffer 2022-07-27 16:03:07 -07:00
Arceveti
91cf3eb5df Use color format constant defines in rgba16_blend + remove lerp_u16 from colors.c 2022-07-27 15:19:31 -07:00
Arceveti
cd8d02c3df Crash screen optimizations + formatting 2022-07-27 02:52:44 -07:00
Arceveti
357090674f Add crash_screen_draw_line + log page name 2022-07-26 22:01:04 -07:00
Arceveti
5b21951af6 Make crash screen draw functions use RGBA32 2022-07-26 20:50:49 -07:00
Arceveti
893cca4b09 Update color_presets.h + use color presets for all crash screen colors + some formatting 2022-07-26 20:37:03 -07:00
Arceveti
1d0a56bbbd Add address jump to disasm page + page name colors 2022-07-26 13:59:48 -07:00
Arceveti
c2c9ed09b1 Add proper color blending to crash screen 2022-07-26 02:16:34 -07:00
Arceveti
58b363ab34 Allow carriage returns to work as newlines 2022-07-25 19:36:44 -07:00
Arceveti
fd78707fe2 Fix crash screen crashing when switching pages while scrolling 2022-07-25 17:56:10 -07:00
Arceveti
40ab0f2175 Actually fix crash screen text wrap 2022-07-25 17:50:26 -07:00
Arceveti
f7777d5e47 Increase width of the base of the '1' in crash screen font 2022-07-25 17:40:21 -07:00
Arceveti
94f3e196bd Fix crash screen word wrap + use proper data types in crash screen related files 2022-07-25 17:38:45 -07:00
Arceveti
42c4ec2b40 Add text wrapping to crash screen 2022-07-25 15:41:59 -07:00
Arceveti
380bff4d1a Add new crash screen to readme credits 2022-07-24 22:39:59 -07:00
Arceveti
17ae3304f1 Make newlines work in crash_screen_print + default to assert page if the crash was caused by an assert 2022-07-24 22:38:01 -07:00
Arceveti
068f6ceb18 Add working assert macros ASSERT and DEBUG_ASSERT 2022-07-24 22:36:37 -07:00
Arceveti
b84367b526 Move crash screen page checks to update_crash_screen_page 2022-07-24 02:14:45 -07:00
Arceveti
848b97794f Improve crash screen RAM viewer address selection box 2022-07-24 02:05:01 -07:00
Arceveti
ac2fee17e2 Fix crash screen font image 2022-07-24 01:43:04 -07:00
Arceveti
5f25a73928 Add extended ASCII characters to crash screen font 2022-07-24 01:29:24 -07:00
Arceveti
3ef7c6d15e Add escape for '@' in crash_screen_print 2022-07-24 00:52:55 -07:00
Arceveti
7f178a4aaa Add diagonal line to zero in crash screen font 2022-07-24 00:42:04 -07:00
Arceveti
e1abc9106b Add RAM viewer to crash screen + Improve crash screen input handling 2022-07-23 23:29:54 -07:00
Arceveti
a2c73f4a8a Increase base width of '1' in crash screen font 2022-07-18 21:04:49 -07:00
Arceveti
6eb6f78a2a Update crash screen 2022-07-17 21:42:02 -07:00
1021 changed files with 23177 additions and 8224 deletions

136
.gitignore vendored
View File

@@ -528,26 +528,21 @@ assets/demos/pss.bin
assets/demos/unused.bin
assets/demos/wf.bin
levels/bbh/0.rgba16.png
actors/vanilla_actors/bbh/0.rgba16.png
levels/bbh/1.rgba16.png
levels/bbh/2.rgba16.png
levels/bbh/3.rgba16.png
actors/vanilla_actors/bbh/4.rgba16.png
actors/vanilla_actors/bbh/5.rgba16.png
actors/vanilla_actors/bbh/6.rgba16.png
actors/vanilla_actors/bitdw/0.rgba16.png
levels/bbh/4.rgba16.png
levels/bbh/5.rgba16.png
levels/bbh/6.rgba16.png
levels/bitdw/0.rgba16.png
levels/bitdw/1.rgba16.png
levels/bitdw/2.rgba16.png
levels/bitdw/3.rgba16.png
actors/vanilla_actors/bitfs/0.rgba16.png
levels/bitfs/0.rgba16.png
actors/vanilla_actors/bitfs/1.rgba16.png
levels/bitfs/1.rgba16.png
levels/bitfs/2.rgba16.png
levels/bits/0.rgba16.png
levels/bits/1.rgba16.png
actors/vanilla_actors/bits/2.rgba16.png
levels/bits/2.rgba16.png
levels/bob/0.rgba16.png
levels/bob/1.rgba16.png
@@ -564,9 +559,9 @@ levels/bowser_3/2.rgba16.png
levels/castle_grounds/0.rgba16.png
levels/castle_grounds/1.rgba16.png
levels/castle_grounds/2.rgba16.png
actors/vanilla_actors/castle_grounds/3.rgba16.png
actors/vanilla_actors/castle_grounds/4.rgba16.png
actors/vanilla_actors/castle_grounds/5.ia8.png
levels/castle_grounds/3.rgba16.png
levels/castle_grounds/4.rgba16.png
levels/castle_grounds/5.ia8.png
levels/castle_inside/1.rgba16.png
levels/castle_inside/10.rgba16.png
levels/castle_inside/11.rgba16.png
@@ -604,25 +599,22 @@ levels/castle_inside/38.rgba16.png
levels/castle_inside/39.rgba16.png
levels/castle_inside/4.rgba16.png
levels/castle_inside/40.rgba16.png
actors/vanilla_actors/castle_inside/5.rgba16.png
actors/vanilla_actors/castle_inside/6.rgba16.png
actors/vanilla_actors/castle_inside/7.rgba16.png
levels/castle_inside/5.rgba16.png
levels/castle_inside/6.rgba16.png
levels/castle_inside/7.rgba16.png
levels/castle_inside/8.rgba16.png
levels/castle_inside/9.rgba16.png
actors/vanilla_actors/castle_inside/castle_light.ia16.png
levels/castle_inside/castle_light.ia16.png
levels/ccm/0.rgba16.png
levels/ccm/1.rgba16.png
actors/vanilla_actors/ccm/1.rgba16.png
levels/ccm/10.rgba16.png
levels/ccm/11.rgba16.png
actors/vanilla_actors/ccm/12.rgba16.png
levels/ccm/12.rgba16.png
levels/ccm/2.rgba16.png
actors/vanilla_actors/ccm/2.rgba16.png
actors/vanilla_actors/ccm/3.rgba16.png
levels/ccm/3.rgba16.png
levels/ccm/4.rgba16.png
actors/vanilla_actors/ccm/5.rgba16.png
actors/vanilla_actors/ccm/6.rgba16.png
levels/ccm/5.rgba16.png
levels/ccm/6.rgba16.png
levels/ccm/7.rgba16.png
levels/ccm/8.ia16.png
levels/ccm/9.ia16.png
@@ -631,12 +623,11 @@ levels/cotmc/1.rgba16.png
levels/cotmc/2.rgba16.png
levels/cotmc/3.rgba16.png
levels/cotmc/4.rgba16.png
actors/vanilla_actors/ddd/0.rgba16.png
levels/ddd/0.rgba16.png
levels/ddd/1.rgba16.png
levels/ddd/2.rgba16.png
actors/vanilla_actors/ddd/2.rgba16.png
levels/ddd/3.rgba16.png
actors/vanilla_actors/ddd/4.rgba16.png
levels/ddd/4.rgba16.png
levels/ending/cake.png
levels/ending/cake_eu.png
levels/ending/eu_023000.rgba16.png
@@ -648,10 +639,10 @@ levels/ending/eu_028000.rgba16.png
levels/hmc/0.rgba16.png
levels/hmc/1.rgba16.png
levels/hmc/2.rgba16.png
actors/vanilla_actors/hmc/3.rgba16.png
actors/vanilla_actors/hmc/4.rgba16.png
actors/vanilla_actors/hmc/5.rgba16.png
actors/vanilla_actors/hmc/6.rgba16.png
levels/hmc/3.rgba16.png
levels/hmc/4.rgba16.png
levels/hmc/5.rgba16.png
levels/hmc/6.rgba16.png
levels/hmc/7.rgba16.png
levels/intro/0.rgba16.png
levels/intro/1.rgba16.png
@@ -662,41 +653,40 @@ levels/intro/3_sh_tm.rgba16.png
levels/intro/3_tm.rgba16.png
levels/jrb/0.rgba16.png
levels/jrb/1.rgba16.png
actors/vanilla_actors/jrb/2.rgba16.png
actors/vanilla_actors/jrb/3.rgba16.png
actors/vanilla_actors/lll/0.rgba16.png
actors/vanilla_actors/lll/1.rgba16.png
actors/vanilla_actors/lll/10.rgba16.png
actors/vanilla_actors/lll/11.rgba16.png
actors/vanilla_actors/lll/12.rgba16.png
actors/vanilla_actors/lll/13.rgba16.png
actors/vanilla_actors/lll/14.rgba16.png
actors/vanilla_actors/lll/15.rgba16.png
actors/vanilla_actors/lll/16.rgba16.png
actors/vanilla_actors/lll/17.rgba16.png
actors/vanilla_actors/lll/18.rgba16.png
actors/vanilla_actors/lll/19.rgba16.png
actors/vanilla_actors/lll/2.rgba16.png
actors/vanilla_actors/lll/20.rgba16.png
actors/vanilla_actors/lll/21.rgba16.png
actors/vanilla_actors/lll/22.rgba16.png
actors/vanilla_actors/lll/23.rgba16.png
actors/vanilla_actors/lll/24.rgba16.png
actors/vanilla_actors/lll/25.rgba16.png
levels/jrb/2.rgba16.png
levels/jrb/3.rgba16.png
levels/lll/0.rgba16.png
levels/lll/1.rgba16.png
levels/lll/10.rgba16.png
levels/lll/11.rgba16.png
levels/lll/12.rgba16.png
levels/lll/13.rgba16.png
levels/lll/14.rgba16.png
levels/lll/15.rgba16.png
levels/lll/16.rgba16.png
levels/lll/17.rgba16.png
levels/lll/18.rgba16.png
levels/lll/19.rgba16.png
levels/lll/2.rgba16.png
levels/lll/20.rgba16.png
levels/lll/21.rgba16.png
levels/lll/22.rgba16.png
levels/lll/23.rgba16.png
levels/lll/24.rgba16.png
levels/lll/25.rgba16.png
levels/lll/26.rgba16.png
levels/lll/27.ia16.png
levels/lll/28.rgba16.png
levels/lll/29.rgba16.png
actors/vanilla_actors/lll/29.rgba16.png
levels/lll/3.rgba16.png
levels/lll/30.rgba16.png
levels/lll/31.rgba16.png
levels/lll/32.rgba16.png
levels/lll/4.rgba16.png
levels/lll/5.rgba16.png
actors/vanilla_actors/lll/6.rgba16.png
levels/lll/6.rgba16.png
levels/lll/7.rgba16.png
actors/vanilla_actors/lll/8.rgba16.png
levels/lll/8.rgba16.png
levels/lll/9.rgba16.png
levels/menu/main_menu_seg7.00018.rgba16.png
levels/menu/main_menu_seg7.00818.rgba16.png
@@ -931,64 +921,59 @@ levels/menu/main_menu_seg7_us.0B800.ia8.png
levels/pss/0.rgba16.png
levels/pss/1.ia16.png
levels/pss/2.rgba16.png
actors/vanilla_actors/rr/1.rgba16.png
levels/rr/1.rgba16.png
levels/rr/2.rgba16.png
actors/vanilla_actors/rr/quarter_flying_carpet.rgba16.png
levels/rr/quarter_flying_carpet.rgba16.png
levels/sl/0.rgba16.png
levels/sl/1.rgba16.png
actors/vanilla_actors/sl/2.rgba16.png
levels/sl/2.rgba16.png
levels/sl/3.rgba16.png
levels/sl/4.rgba16.png
levels/ssl/0.rgba16.png
levels/ssl/1.ia16.png
actors/vanilla_actors/ssl/10.rgba16.png
actors/vanilla_actors/ssl/11.rgba16.png
levels/ssl/10.rgba16.png
levels/ssl/11.rgba16.png
levels/ssl/2.rgba16.png
levels/ssl/3.rgba16.png
levels/ssl/4.rgba16.png
actors/vanilla_actors/ssl/5.rgba16.png
actors/vanilla_actors/ssl/6.rgba16.png
levels/ssl/5.rgba16.png
levels/ssl/6.rgba16.png
levels/ssl/7.rgba16.png
actors/vanilla_actors/ssl/8.rgba16.png
actors/vanilla_actors/ssl/9.rgba16.png
levels/ssl/8.rgba16.png
levels/ssl/9.rgba16.png
levels/thi/0.rgba16.png
levels/thi/1.rgba16.png
actors/vanilla_actors/thi/1.rgba16.png
levels/totwc/0.rgba16.png
levels/totwc/1.rgba16.png
levels/totwc/2.rgba16.png
levels/totwc/3.ia16.png
actors/vanilla_actors/ttc/0.rgba16.png
actors/vanilla_actors/ttc/1.rgba16.png
levels/ttc/0.rgba16.png
levels/ttc/1.rgba16.png
levels/ttc/2.rgba16.png
levels/ttm/0.ia16.png
levels/ttm/1.rgba16.png
levels/ttm/2.rgba16.png
levels/ttm/3.rgba16.png
actors/vanilla_actors/ttm/4.rgba16.png
levels/ttm/4.rgba16.png
levels/ttm/5.rgba16.png
levels/ttm/6.rgba16.png
levels/ttm/7.rgba16.png
actors/vanilla_actors/ttm/8.rgba16.png
levels/ttm/8.rgba16.png
levels/vcutm/0.rgba16.png
levels/vcutm/1.rgba16.png
actors/vanilla_actors/vcutm/2.rgba16.png
levels/vcutm/2.rgba16.png
levels/vcutm/3.rgba16.png
levels/wdw/0.rgba16.png
levels/wdw/1.rgba16.png
actors/vanilla_actors/wdw/1.rgba16.png
actors/vanilla_actors/wdw/2.rgba16.png
actors/vanilla_actors/wdw/3.rgba16.png
levels/wdw/2.rgba16.png
levels/wdw/3.rgba16.png
levels/wdw/4.rgba16.png
actors/vanilla_actors/wf/0.rgba16.png
levels/wf/0.rgba16.png
levels/wf/1.rgba16.png
actors/vanilla_actors/wf/2.rgba16.png
levels/wf/2.rgba16.png
actors/vanilla_actors/wf/3.rgba16.png
actors/vanilla_actors/wf/4.rgba16.png
actors/vanilla_actors/wf/5.ia8.png
levels/wf/3.rgba16.png
levels/wf/4.rgba16.png
levels/wf/5.ia8.png
levels/wmotr/0.rgba16.png
levels/wmotr/1.rgba16.png
levels/wmotr/2.rgba16.png
@@ -1369,7 +1354,6 @@ textures/cave/hmc_textures.0A000.rgba16.png
textures/cave/hmc_textures.0A800.rgba16.png
textures/cave/hmc_textures.0B800.ia16.png
textures/cave/hmc_textures.0C000.ia16.png
textures/crash_screen/crash_screen_font.ia1.png
textures/effect/bubble.06048.rgba16.png
textures/effect/flower.00008.rgba16.png
textures/effect/flower.00808.rgba16.png

6
.gitmodules vendored
View File

@@ -1,3 +1,3 @@
[submodule "lib/libpl2"]
path = lib/libpl2
url = https://gitlab.com/parallel-launcher/libpl2.git
[submodule "lib/libpl"]
path = lib/libpl
url = https://gitlab.com/parallel-launcher/libpl.git

View File

@@ -27,7 +27,8 @@
"F3DEX_GBI_2=1",
"F3DZEX_NON_GBI_2=1",
"F3DEX_GBI_SHARED=1",
"LIBPL=1"
"LIBPL=1",
"UNF=1"
],
"compilerPath": "/usr/bin/mips-linux-gnu-gcc",
"cStandard": "gnu17",

View File

@@ -87,13 +87,10 @@ else ifeq ($(VERSION),sh)
DEFINES += VERSION_SH=1
endif
# FIXLIGHTS - converts light objects to light color commands for assets, needed for vanilla-style lighting
FIXLIGHTS ?= 1
DEBUG_MAP_STACKTRACE_FLAG := -D DEBUG_MAP_STACKTRACE
TARGET := sm64
# GRUCODE - selects which RSP microcode to use.
# f3dex -
@@ -192,7 +189,7 @@ GCC_GRAPH_NODE_OPT_FLAGS = \
ifeq ($(COMPILER),gcc)
MIPSISET := -mips3
OPT_FLAGS := $(GCC_MAIN_OPT_FLAGS)
OPT_FLAGS := $(GCC_MAIN_OPT_FLAGS)
COLLISION_OPT_FLAGS = $(GCC_COLLISION_OPT_FLAGS)
MATH_UTIL_OPT_FLAGS = $(GCC_MATH_UTIL_OPT_FLAGS)
GRAPH_NODE_OPT_FLAGS = $(GCC_GRAPH_NODE_OPT_FLAGS)
@@ -257,8 +254,8 @@ endif
# (library will be pulled into repo after building with this enabled for the first time)
# 1 - includes code in ROM
# 0 - does not
LIBPL ?= 0
LIBPL_DIR := lib/libpl2
LIBPL ?= 1
LIBPL_DIR := lib/libpl
$(eval $(call validate-option,LIBPL,0 1))
ifeq ($(LIBPL),1)
DEFINES += LIBPL=1
@@ -351,10 +348,10 @@ ifeq ($(filter clean distclean print-%,$(MAKECMDGOALS)),)
# Clone any needed submodules
ifeq ($(LIBPL),1)
ifeq ($(wildcard $(LIBPL_DIR)/*.h),)
$(info Cloning libpl2 submodule...)
$(info Cloning libpl submodule...)
DUMMY != git submodule update --init $(LIBPL_DIR) > /dev/null || echo FAIL
ifeq ($(DUMMY),FAIL)
$(error Failed to clone libpl2 submodule)
$(error Failed to clone libpl submodule)
endif
endif
endif
@@ -380,10 +377,9 @@ SOUND_BIN_DIR := $(BUILD_DIR)/sound
TEXTURE_DIR := textures
ACTOR_DIR := actors
LEVEL_DIRS := $(patsubst levels/%,%,$(dir $(wildcard levels/*/header.h)))
VNL_ACTRS_DIRS := $(patsubst actors/vanilla_actors/%,%,$(dir $(wildcard actors/vanilla_actors/*/header.h)))
# Directories containing source files
SRC_DIRS += src src/boot src/game src/engine src/audio src/menu src/buffers lib/librtc actors levels bin data assets asm lib sound
SRC_DIRS += src src/boot src/game src/engine src/audio src/menu src/buffers src/images src/crash_screen src/crash_screen/pages src/crash_screen/popups src/crash_screen/util actors levels bin data assets asm lib sound
LIBZ_SRC_DIRS := src/libz
GODDARD_SRC_DIRS := src/goddard src/goddard/dynlists
BIN_DIRS := bin bin/$(VERSION)
@@ -393,8 +389,7 @@ include Makefile.split
# Source code files
LEVEL_C_FILES := $(wildcard levels/*/leveldata.c) $(wildcard levels/*/script.c) $(wildcard levels/*/geo.c)
VNL_ACTRS_C_FILES := $(wildcard actors/vanilla_actors/*/data.c) $(wildcard actors/vanilla_actors/*/geo.c)
C_FILES := $(foreach dir,$(SRC_DIRS),$(wildcard $(dir)/*.c)) $(LEVEL_C_FILES) $(VNL_ACTRS_C_FILES)
C_FILES := $(foreach dir,$(SRC_DIRS),$(wildcard $(dir)/*.c)) $(LEVEL_C_FILES)
CPP_FILES := $(foreach dir,$(SRC_DIRS),$(wildcard $(dir)/*.cpp))
LIBZ_C_FILES := $(foreach dir,$(LIBZ_SRC_DIRS),$(wildcard $(dir)/*.c))
GODDARD_C_FILES := $(foreach dir,$(GODDARD_SRC_DIRS),$(wildcard $(dir)/*.c))
@@ -431,6 +426,21 @@ GODDARD_O_FILES := $(foreach file,$(GODDARD_C_FILES),$(BUILD_DIR)/$(file:.c=.o))
# Automatic dependency files
DEP_FILES := $(O_FILES:.o=.d) $(LIBZ_O_FILES:.o=.d) $(GODDARD_O_FILES:.o=.d) $(BUILD_DIR)/$(LD_SCRIPT).d
#==============================================================================#
# Git Options #
#==============================================================================#
# Set PACKAGE_VERSION define for printing commit hash
ifeq ($(origin PACKAGE_VERSION), undefined)
PACKAGE_VERSION := $(shell git log -1 --pretty=%h | tr -d '\n')
ifeq ('$(PACKAGE_VERSION)', '')
PACKAGE_VERSION = Unknown version
endif
endif
# Make sure the build reports the correct version
$(shell touch src/boot/build.c)
#==============================================================================#
# Compiler Options #
#==============================================================================#
@@ -524,6 +534,13 @@ RSPASMFLAGS := $(foreach d,$(DEFINES),-definelabel $(subst =, ,$(d)))
# C preprocessor flags
CPPFLAGS := -P -Wno-trigraphs $(DEF_INC_CFLAGS)
DEBUG_INFO_DEFINES := -DSAVETYPE='$(SAVETYPE)' -DREGION='$(VERSION)' -DGRUCODE='$(GRUCODE)' -DCOMPRESSION_FORMAT='$(COMPRESS)' -DPACKAGE_VERSION='$(PACKAGE_VERSION)'
CFLAGS += $(DEBUG_INFO_DEFINES)
CPPFLAGS += $(DEBUG_INFO_DEFINES)
# SAVETYPE VERSION GRUCODE
#==============================================================================#
# Miscellaneous Tools #
#==============================================================================#
@@ -641,7 +658,7 @@ patch: $(ROM)
# Extra object file dependencies
$(BUILD_DIR)/asm/ipl3.o: $(IPL3_RAW_FILES)
$(BUILD_DIR)/src/game/crash_screen.o: $(CRASH_TEXTURE_C_FILES)
$(BUILD_DIR)/src/crash_screen/cs_draw.o: $(CRASH_TEXTURE_C_FILES)
$(BUILD_DIR)/src/game/version.o: $(BUILD_DIR)/src/game/version_data.h
$(BUILD_DIR)/lib/aspMain.o: $(BUILD_DIR)/rsp/audio.bin
$(SOUND_BIN_DIR)/sound_data.o: $(SOUND_BIN_DIR)/sound_data.ctl $(SOUND_BIN_DIR)/sound_data.tbl $(SOUND_BIN_DIR)/sequences.bin $(SOUND_BIN_DIR)/bank_sets
@@ -651,8 +668,6 @@ ifeq ($(VERSION),sh)
$(BUILD_DIR)/src/audio/load_sh.o: $(SOUND_BIN_DIR)/bank_sets.inc.c $(SOUND_BIN_DIR)/sequences_header.inc.c $(SOUND_BIN_DIR)/ctl_header.inc.c $(SOUND_BIN_DIR)/tbl_header.inc.c
endif
$(CRASH_TEXTURE_C_FILES): TEXTURE_ENCODING := u32
ifeq ($(COMPILER),gcc)
$(BUILD_DIR)/src/libz/%.o: OPT_FLAGS := -Os
$(BUILD_DIR)/src/libz/%.o: CFLAGS += -Wno-implicit-fallthrough -Wno-unused-parameter -Wno-pointer-sign
@@ -675,7 +690,7 @@ $(BUILD_DIR)/src/game/rendering_graph_node.o: OPT_FLAGS := $(GRAPH_NODE_OPT_FLAG
# $(info MATH_UTIL_OPT_FLAGS: $(MATH_UTIL_OPT_FLAGS))
# $(info GRAPH_NODE_OPT_FLAGS: $(GRAPH_NODE_OPT_FLAGS))
ALL_DIRS := $(BUILD_DIR) $(addprefix $(BUILD_DIR)/,$(SRC_DIRS) asm/debug $(GODDARD_SRC_DIRS) $(LIBZ_SRC_DIRS) $(ULTRA_BIN_DIRS) $(BIN_DIRS) $(TEXTURE_DIRS) $(SOUND_SAMPLE_DIRS) $(addprefix levels/,$(LEVEL_DIRS)) $(addprefix actors/vanilla_actors/,$(VNL_ACTRS_DIRS)) rsp include) $(YAY0_DIR) $(addprefix $(YAY0_DIR)/,$(VERSION)) $(SOUND_BIN_DIR) $(SOUND_BIN_DIR)/sequences/$(VERSION)
ALL_DIRS := $(BUILD_DIR) $(addprefix $(BUILD_DIR)/,$(SRC_DIRS) asm/debug $(GODDARD_SRC_DIRS) $(LIBZ_SRC_DIRS) $(ULTRA_BIN_DIRS) $(BIN_DIRS) $(TEXTURE_DIRS) $(SOUND_SAMPLE_DIRS) $(addprefix levels/,$(LEVEL_DIRS)) rsp include) $(YAY0_DIR) $(addprefix $(YAY0_DIR)/,$(VERSION)) $(SOUND_BIN_DIR) $(SOUND_BIN_DIR)/sequences/$(VERSION)
# Make sure build directory exists before compiling anything
DUMMY != mkdir -p $(ALL_DIRS)
@@ -724,11 +739,6 @@ $(LEVEL_ELF_FILES): $(BUILD_DIR)/levels/%/leveldata.elf: $(BUILD_DIR)/levels/%/l
$(call print,Linking ELF file:,$<,$@)
$(V)$(LD) -e 0 -Ttext=$(SEGMENT_ADDRESS) -Map $@.map --just-symbols=$(BUILD_DIR)/bin/$(TEXTURE_BIN).elf -o $@ $<
.SECONDEXPANSION:
$(VANILLA_ACTORS_ELF_FILES): $(BUILD_DIR)/actors/vanilla_actors/%/data.elf: $(BUILD_DIR)/actors/vanilla_actors/%/data.o $(BUILD_DIR)/bin/$$(TEXTURE_BIN).elf
$(call print,Linking ELF file:,$<,$@)
$(V)$(LD) -e 0 -Ttext=$(SEGMENT_ADDRESS) -Map $@.map --just-symbols=$(BUILD_DIR)/bin/$(TEXTURE_BIN).elf -o $@ $<
$(BUILD_DIR)/%.bin: $(BUILD_DIR)/%.elf
$(call print,Extracting compressible data from:,$<,$@)
$(V)$(EXTRACT_DATA_FOR_MIO) $< $@
@@ -854,7 +864,7 @@ $(BUILD_DIR)/rsp/%.bin $(BUILD_DIR)/rsp/%_data.bin: rsp/%.s
# Run linker script through the C preprocessor
$(BUILD_DIR)/$(LD_SCRIPT): $(LD_SCRIPT) $(BUILD_DIR)/goddard.txt
$(call print,Preprocessing linker script:,$<,$@)
$(V)$(CPP) $(CPPFLAGS) -DBUILD_DIR=$(BUILD_DIR) -DULTRALIB=lib$(ULTRALIB) $(DEBUG_MAP_STACKTRACE_FLAG) -MMD -MP -MT $@ -MF $@.d -o $@ $<
$(V)$(CPP) $(CPPFLAGS) -DBUILD_DIR=$(BUILD_DIR) -DULTRALIB=lib$(ULTRALIB) -MMD -MP -MT $@ -MF $@.d -o $@ $<
# Link libgoddard
$(BUILD_DIR)/libgoddard.a: $(GODDARD_O_FILES)
@@ -867,7 +877,7 @@ $(BUILD_DIR)/libz.a: $(LIBZ_O_FILES)
$(V)$(AR) rcs -o $@ $(LIBZ_O_FILES)
# SS2: Goddard rules to get size
$(BUILD_DIR)/sm64_prelim.ld: sm64.ld $(O_FILES) $(YAY0_OBJ_FILES) $(SEG_FILES) $(BUILD_DIR)/libgoddard.a $(BUILD_DIR)/libz.a
$(BUILD_DIR)/sm64_prelim.ld: $(LD_SCRIPT) $(O_FILES) $(YAY0_OBJ_FILES) $(SEG_FILES) $(BUILD_DIR)/libgoddard.a $(BUILD_DIR)/libz.a
$(call print,Preprocessing preliminary linker script:,$<,$@)
$(V)$(CPP) $(CPPFLAGS) -DPRELIMINARY=1 -DBUILD_DIR=$(BUILD_DIR) -DULTRALIB=lib$(ULTRALIB) -MMD -MP -MT $@ -MF $@.d -o $@ $<
@@ -881,13 +891,13 @@ $(BUILD_DIR)/goddard.txt: $(BUILD_DIR)/sm64_prelim.elf
$(BUILD_DIR)/asm/debug/map.o: asm/debug/map.s $(BUILD_DIR)/sm64_prelim.elf
$(call print,Assembling:,$<,$@)
$(V)python3 tools/mapPacker.py $(BUILD_DIR)/sm64_prelim.elf $(BUILD_DIR)/bin/addr.bin $(BUILD_DIR)/bin/name.bin
$(V)python3 tools/mapPacker.py $(BUILD_DIR)/sm64_prelim.elf $(BUILD_DIR)/bin/addr.bin $(BUILD_DIR)/bin/name.bin $(BUILD_DIR)/debug_map.txt
$(V)$(CROSS)gcc -c $(ASMFLAGS) $(foreach i,$(INCLUDE_DIRS),-Wa,-I$(i)) -x assembler-with-cpp -MMD -MF $(BUILD_DIR)/$*.d -o $@ $<
# Link SM64 ELF file
$(ELF): $(BUILD_DIR)/sm64_prelim.elf $(BUILD_DIR)/asm/debug/map.o $(O_FILES) $(YAY0_OBJ_FILES) $(SEG_FILES) $(BUILD_DIR)/$(LD_SCRIPT) $(BUILD_DIR)/libz.a $(BUILD_DIR)/libgoddard.a
@$(PRINT) "$(GREEN)Linking ELF file: $(BLUE)$@ $(NO_COL)\n"
$(V)$(LD) --gc-sections -L $(BUILD_DIR) -T $(BUILD_DIR)/$(LD_SCRIPT) -T goddard.txt -Map $(BUILD_DIR)/sm64.$(VERSION).map --no-check-sections $(addprefix -R ,$(SEG_FILES)) -o $@ $(O_FILES) -L$(LIBS_DIR) -l$(ULTRALIB) -Llib $(LINK_LIBRARIES) -u sprintf -u osMapTLB -Llib/gcclib/$(LIBGCCDIR) -lgcc
$(V)$(LD) --gc-sections -L $(BUILD_DIR) -T $(BUILD_DIR)/$(LD_SCRIPT) -T goddard.txt -T debug_map.txt -Map $(BUILD_DIR)/sm64.$(VERSION).map --no-check-sections $(addprefix -R ,$(SEG_FILES)) -o $@ $(O_FILES) -L$(LIBS_DIR) -l$(ULTRALIB) -Llib $(LINK_LIBRARIES) -u sprintf -u osMapTLB -Llib/gcclib/$(LIBGCCDIR) -lgcc
# Build ROM
ifeq (n,$(findstring n,$(firstword -$(MAKEFLAGS))))
@@ -909,7 +919,7 @@ else ifeq ($(CONSOLE),bb)
endif
$(V)$(N64CKSUM) $@
$(BUILD_DIR)/$(TARGET).objdump: $(ELF)
$(BUILD_DIR)/$(TARGET_STRING).objdump: $(ELF)
$(OBJDUMP) -D $< > $@
.PHONY: all clean distclean default test load rebuildtools

View File

@@ -41,21 +41,15 @@ LEVEL_FILES := $(addsuffix leveldata,$(LEVEL_DIRS))
LEVEL_ELF_FILES := $(foreach level_dir,$(LEVEL_DIRS),$(BUILD_DIR)/levels/$(level_dir)leveldata.elf)
VANILLA_ACTORS_FILES := $(addsuffix data,$(VNL_ACTRS_DIRS))
VANILLA_ACTORS_ELF_FILES := $(foreach level_dir,$(VNL_ACTRS_DIRS),$(BUILD_DIR)/actors/vanilla_actors/$(level_dir)data.elf)
SEG_FILES := \
$(SEGMENTS:%=$(BUILD_DIR)/bin/%.elf) \
$(ACTOR_GROUPS:%=$(BUILD_DIR)/actors/%.elf) \
$(LEVEL_FILES:%=$(BUILD_DIR)/levels/%.elf) \
$(VANILLA_ACTORS_FILES:%=$(BUILD_DIR)/actors/vanilla_actors/%.elf)
$(LEVEL_FILES:%=$(BUILD_DIR)/levels/%.elf)
YAY0_FILES := \
$(SEGMENTS:%=$(BUILD_DIR)/bin/%.szp) \
$(ACTOR_GROUPS:%=$(BUILD_DIR)/actors/%.szp) \
$(LEVEL_FILES:%=$(BUILD_DIR)/levels/%.szp) \
$(VANILLA_ACTORS_FILES:%=$(BUILD_DIR)/actors/vanilla_actors/%.szp)
$(LEVEL_FILES:%=$(BUILD_DIR)/levels/%.szp)
YAY0_OBJ_FILES := $(YAY0_FILES:.szp=.szp.o)
@@ -249,11 +243,11 @@ $(BUILD_DIR)/bin/machine.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/mountain.elf: SEGMENT_ADDRESS := 0x09000000
$(BUILD_DIR)/bin/grass.elf: SEGMENT_ADDRESS := 0x09000000
# EU segment 19 translations
$(BUILD_DIR)/bin/translation_de.elf: SEGMENT_ADDRESS := 0x1B000000
$(BUILD_DIR)/bin/translation_en.elf: SEGMENT_ADDRESS := 0x1B000000
$(BUILD_DIR)/bin/translation_fr.elf: SEGMENT_ADDRESS := 0x1B000000
$(BUILD_DIR)/bin/translation_jp.elf: SEGMENT_ADDRESS := 0x1B000000
$(BUILD_DIR)/bin/translation_es.elf: SEGMENT_ADDRESS := 0x1B000000
$(BUILD_DIR)/bin/translation_de.elf: SEGMENT_ADDRESS := 0x19000000
$(BUILD_DIR)/bin/translation_en.elf: SEGMENT_ADDRESS := 0x19000000
$(BUILD_DIR)/bin/translation_fr.elf: SEGMENT_ADDRESS := 0x19000000
$(BUILD_DIR)/bin/translation_jp.elf: SEGMENT_ADDRESS := 0x19000000
$(BUILD_DIR)/bin/translation_es.elf: SEGMENT_ADDRESS := 0x19000000
# --------------------------------------
# Skybox Rules
@@ -270,44 +264,11 @@ $(BUILD_DIR)/bin/%_skybox.elf: SEGMENT_ADDRESS := 0x0A000000
# --------------------------------------
# intro and ipl3 textures are not compressed
INTRO_RAW_FILES := $(wildcard $(TEXTURE_DIR)/intro_raw/*.png)
INTRO_RAW_FILES := $(wildcard $(TEXTURE_DIR)/intro_raw/*.png)
$(BUILD_DIR)/src/goddard/renderer.o: $(addprefix $(BUILD_DIR)/,$(patsubst %.png,%.inc.c,$(INTRO_RAW_FILES)))
IPL3_TEXTURE_FILES := $(wildcard $(TEXTURE_DIR)/ipl3_raw/*.png)
IPL3_RAW_FILES := $(addprefix $(BUILD_DIR)/,$(patsubst %.png,%,$(IPL3_TEXTURE_FILES)))
CRASH_TEXTURE_FILES := $(wildcard $(TEXTURE_DIR)/crash_custom/*.png)
CRASH_TEXTURE_FILES := $(wildcard $(TEXTURE_DIR)/crash_screen/*.png)
CRASH_TEXTURE_C_FILES := $(addprefix $(BUILD_DIR)/,$(patsubst %.png,%.inc.c,$(CRASH_TEXTURE_FILES)))
# --------------------------------------
# Vanilla Objects Rules
# --------------------------------------
define vanilla_objects_rules =
VANILLA_ACTORS_$(1)_TEXTURE_FILES := $$(patsubst %.png,%.inc.c,$$(wildcard actors/vanilla_actors/$(1)/*.png))
$$(BUILD_DIR)/actors/vanilla_actors/$(1)/data.o: $$(addprefix $$(BUILD_DIR)/,$$(VANILLA_ACTORS_$(1)_TEXTURE_FILES))
$$(BUILD_DIR)/actors/vanilla_actors/$(1)/data.elf: SEGMENT_ADDRESS := 0x0e000000
$$(BUILD_DIR)/actors/vanilla_actors/$(1)/data.elf: TEXTURE_BIN := $(2)
endef
$(eval $(call vanilla_objects_rules,bob,generic))
$(eval $(call vanilla_objects_rules,wf,grass))
$(eval $(call vanilla_objects_rules,jrb,water))
$(eval $(call vanilla_objects_rules,ccm,snow))
$(eval $(call vanilla_objects_rules,bbh,spooky))
$(eval $(call vanilla_objects_rules,hmc,cave))
$(eval $(call vanilla_objects_rules,lll,fire))
$(eval $(call vanilla_objects_rules,ssl,generic))
$(eval $(call vanilla_objects_rules,ddd,water))
$(eval $(call vanilla_objects_rules,sl,snow))
$(eval $(call vanilla_objects_rules,wdw,grass))
$(eval $(call vanilla_objects_rules,ttm,mountain))
$(eval $(call vanilla_objects_rules,thi,grass))
$(eval $(call vanilla_objects_rules,ttc,machine))
$(eval $(call vanilla_objects_rules,rr,sky))
$(eval $(call vanilla_objects_rules,bitdw,sky))
$(eval $(call vanilla_objects_rules,bitfs,sky))
$(eval $(call vanilla_objects_rules,bits,sky))
$(eval $(call vanilla_objects_rules,vcutm,outside))
$(eval $(call vanilla_objects_rules,castle_inside,inside))
$(eval $(call vanilla_objects_rules,castle_grounds,outside))

View File

@@ -21,7 +21,7 @@ This is a fork of the ultrasm64 repo by CrashOveride which includes the followin
- **Fazana**: PuppyLib, ucode swapping, audio load time optimisations (with Arctic), general hacker qol improvements, visual debug
- **Reonu**: Starting the project + widescreen, reonucam, various defines for hacker QoL, and a custom Spanish (Spain) translation of the game.
- **JoshDuMan**: Decomp guy, general assistance
- **Arceveti**: Silhouette, shadow optimisation, better hanging, breath meter, 4 controller support
- **Arceveti**: Naming unknown symbols, new crash screen, silhouette, shadow optimizations, breath meter, 4 controller support, implementations of rounded corners, slope fix, exposed ceiling fix, other bugfixes
- **axollyon**: Console testing, bugfixes, idea-guying, and had a hand in silhouettes
- **Wiseguy**: World scale reimplementation, silhouette, graph node optimisations, instant input patch, cake screen fix, segmented code support, and various optimizations/fixes
- **Kaze**: Graph node optimisations, automatic optimal collision distance

View File

@@ -105,7 +105,4 @@ extern const struct Animation *const unagi_seg5_anims_05012824[];
extern const Gfx whirlpool_seg5_dl_05013B58[];
extern const Gfx whirlpool_seg5_dl_05013CB8[];
extern const Trajectory jrb_seg7_trajectory_unagi_1[];
extern const Trajectory jrb_seg7_trajectory_unagi_2[];
#endif

View File

@@ -11,30 +11,3 @@
#include "manta/geo.inc.c"
#include "sushi/geo.inc.c"
#include "unagi/geo.inc.c"
#include "surface_terrains.h"
// 0x0700D20C - 0x0700D23E
const Trajectory jrb_seg7_trajectory_unagi_1[] = {
TRAJECTORY_POS(0, /*pos*/ 5300, -3800, 1200),
TRAJECTORY_POS(1, /*pos*/ 3700, -3600, 1700),
TRAJECTORY_POS(2, /*pos*/ 3400, -3400, 3500),
TRAJECTORY_POS(3, /*pos*/ 3900, -3600, 4400),
TRAJECTORY_POS(4, /*pos*/ 5300, -3800, 4400),
TRAJECTORY_POS(5, /*pos*/ 6200, -4000, 2700),
TRAJECTORY_END(),
};
// 0x0700D240 - 0x0700D28A
const Trajectory jrb_seg7_trajectory_unagi_2[] = {
TRAJECTORY_POS(0, /*pos*/ 5381, 0, 2758),
TRAJECTORY_POS(1, /*pos*/ 5803, -3130, 3036),
TRAJECTORY_POS(2, /*pos*/ 4876, -3045, 2706),
TRAJECTORY_POS(3, /*pos*/ 4313, -3246, 2736),
TRAJECTORY_POS(4, /*pos*/ 3792, -3413, 3668),
TRAJECTORY_POS(5, /*pos*/ 4971, -3130, 3688),
TRAJECTORY_POS(6, /*pos*/ 5392, -3130, 3326),
TRAJECTORY_POS(7, /*pos*/ 6341, -3130, 2450),
TRAJECTORY_POS(8, /*pos*/ 9431, -3130, 1400),
TRAJECTORY_END(),
};

View File

@@ -1,27 +0,0 @@
#include <ultra64.h>
#include "sm64.h"
#include "surface_terrains.h"
#include "moving_texture_macros.h"
#include "surface_terrains.h"
#include "textures.h"
#include "dialog_ids.h"
#include "make_const_nonconst.h"
#include "actors/vanilla_actors/bbh/texture.inc.c"
#include "actors/vanilla_actors/bbh/staircase_step/model.inc.c"
#include "actors/vanilla_actors/bbh/tilting_trap_platform/model.inc.c"
#include "actors/vanilla_actors/bbh/tumbling_platform_far/model.inc.c"
#include "actors/vanilla_actors/bbh/tumbling_platform_near/model.inc.c"
#include "actors/vanilla_actors/bbh/moving_bookshelf/model.inc.c"
#include "actors/vanilla_actors/bbh/mesh_elevator/model.inc.c"
#include "actors/vanilla_actors/bbh/merry_go_round/model.inc.c"
#include "actors/vanilla_actors/bbh/coffin/model.inc.c"
#include "actors/vanilla_actors/bbh/staircase_step/collision.inc.c"
#include "actors/vanilla_actors/bbh/tilting_trap_platform/collision.inc.c"
#include "actors/vanilla_actors/bbh/tumbling_platform_near/collision.inc.c"
#include "actors/vanilla_actors/bbh/moving_bookshelf/collision.inc.c"
#include "actors/vanilla_actors/bbh/mesh_elevator/collision.inc.c"
#include "actors/vanilla_actors/bbh/merry_go_round/collision.inc.c"
#include "actors/vanilla_actors/bbh/coffin/collision.inc.c"

View File

@@ -1,37 +0,0 @@
#include <ultra64.h>
#include "sm64.h"
#include "geo_commands.h"
#include "game/level_geo.h"
#include "game/geo_misc.h"
#include "game/camera.h"
#include "game/moving_texture.h"
#include "game/screen_transition.h"
#include "game/paintings.h"
#include "make_const_nonconst.h"
#include "actors/vanilla_actors/bbh/header.h"
#include "actors/vanilla_actors/bbh/staircase_step/geo.inc.c"
#include "actors/vanilla_actors/bbh/tilting_trap_platform/geo.inc.c"
#include "actors/vanilla_actors/bbh/tumbling_platform_far/geo.inc.c"
#include "actors/vanilla_actors/bbh/tumbling_platform_near/geo.inc.c"
#include "actors/vanilla_actors/bbh/moving_bookshelf/geo.inc.c"
#include "actors/vanilla_actors/bbh/mesh_elevator/geo.inc.c"
#include "actors/vanilla_actors/bbh/merry_go_round/geo.inc.c"
#include "actors/vanilla_actors/bbh/coffin/geo.inc.c"
#include "level_commands.h"
const LevelScript script_func_vo_bbh[] = {
LOAD_MODEL_FROM_GEO(MODEL_BBH_STAIRCASE_STEP, geo_bbh_0005B0),
LOAD_MODEL_FROM_GEO(MODEL_BBH_TILTING_FLOOR_PLATFORM, geo_bbh_0005C8),
LOAD_MODEL_FROM_GEO(MODEL_BBH_TUMBLING_PLATFORM, geo_bbh_0005E0),
LOAD_MODEL_FROM_GEO(MODEL_BBH_TUMBLING_PLATFORM_PART, geo_bbh_0005F8),
LOAD_MODEL_FROM_GEO(MODEL_BBH_MOVING_BOOKSHELF, geo_bbh_000610),
LOAD_MODEL_FROM_GEO(MODEL_BBH_MESH_ELEVATOR, geo_bbh_000628),
LOAD_MODEL_FROM_GEO(MODEL_BBH_MERRY_GO_ROUND, geo_bbh_000640),
LOAD_MODEL_FROM_GEO(MODEL_BBH_WOODEN_TOMB, geo_bbh_000658),
RETURN(),
};

View File

@@ -1,29 +0,0 @@
#pragma once
#include "types.h"
extern const GeoLayout geo_bbh_0005B0[];
extern const GeoLayout geo_bbh_0005C8[];
extern const GeoLayout geo_bbh_0005E0[];
extern const GeoLayout geo_bbh_0005F8[];
extern const GeoLayout geo_bbh_000610[];
extern const GeoLayout geo_bbh_000628[];
extern const GeoLayout geo_bbh_000640[];
extern const GeoLayout geo_bbh_000658[];
extern const Gfx bbh_seg7_dl_0701F2E8[];
extern const Gfx bbh_seg7_dl_0701F5F8[];
extern const Gfx bbh_seg7_dl_0701F7E8[];
extern const Gfx bbh_seg7_dl_0701FAB0[];
extern const Gfx bbh_seg7_dl_0701FD28[];
extern const Gfx bbh_seg7_dl_0701FFE8[];
extern const Gfx bbh_seg7_dl_070202F0[];
extern const Gfx bbh_seg7_dl_070206F0[];
extern const Collision bbh_seg7_collision_staircase_step[];
extern const Collision bbh_seg7_collision_tilt_floor_platform[];
extern const Collision bbh_seg7_collision_07026B1C[];
extern const Collision bbh_seg7_collision_haunted_bookshelf[];
extern const Collision bbh_seg7_collision_mesh_elevator[];
extern const Collision bbh_seg7_collision_merry_go_round[];
extern const Collision bbh_seg7_collision_coffin[];

View File

@@ -1,19 +0,0 @@
// 0x07000000 - 0x07001000
ALIGNED8 static const Texture bbh_seg7_texture_07000000[] = {
#include "actors/vanilla_actors/bbh/0.rgba16.inc.c"
};
// 0x07003000 - 0x07003400
ALIGNED8 static const Texture bbh_seg7_texture_07003000[] = {
#include "actors/vanilla_actors/bbh/4.rgba16.inc.c"
};
// 0x07003400 - 0x07004400
ALIGNED8 static const Texture bbh_seg7_texture_07003400[] = {
#include "actors/vanilla_actors/bbh/5.rgba16.inc.c"
};
// 0x07004400 - 0x07004800
ALIGNED8 static const Texture bbh_seg7_texture_07004400[] = {
#include "actors/vanilla_actors/bbh/6.rgba16.inc.c"
};

View File

@@ -1,35 +0,0 @@
#include <PR/ultratypes.h>
#include <PR/gbi.h>
#include "dialog_ids.h"
#include "surface_terrains.h"
#include "macros.h"
#include "moving_texture_macros.h"
#include "surface_terrains.h"
#include "textures.h"
#include "types.h"
#include "make_const_nonconst.h"
#include "actors/vanilla_actors/bitdw/texture.inc.c"
#include "actors/vanilla_actors/bitdw/sliding_platform/model.inc.c"
#include "actors/vanilla_actors/bitdw/seesaw_platform/model.inc.c"
#include "actors/vanilla_actors/bitdw/square_platform/model.inc.c"
#include "actors/vanilla_actors/bitdw/ferris_wheel_axle/model.inc.c"
#include "actors/vanilla_actors/bitdw/ferris_platform/model.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_1/model.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_2/model.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_3/model.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_4/model.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_5/model.inc.c"
#include "actors/vanilla_actors/bitdw/sliding_platform/collision.inc.c"
#include "actors/vanilla_actors/bitdw/seesaw_platform/collision.inc.c"
#include "actors/vanilla_actors/bitdw/square_platform/collision.inc.c"
#include "actors/vanilla_actors/bitdw/ferris_wheel_axle/collision.inc.c"
#include "actors/vanilla_actors/bitdw/ferris_platform/collision.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_1/collision.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_2/collision.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_3/collision.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_4/collision.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_5/collision.inc.c"

View File

@@ -1,41 +0,0 @@
#include <ultra64.h>
#include "sm64.h"
#include "geo_commands.h"
#include "game/level_geo.h"
#include "game/geo_misc.h"
#include "game/camera.h"
#include "game/moving_texture.h"
#include "game/screen_transition.h"
#include "game/paintings.h"
#include "make_const_nonconst.h"
#include "actors/vanilla_actors/bitdw/header.h"
#include "actors/vanilla_actors/bitdw/sliding_platform/geo.inc.c"
#include "actors/vanilla_actors/bitdw/seesaw_platform/geo.inc.c"
#include "actors/vanilla_actors/bitdw/square_platform/geo.inc.c"
#include "actors/vanilla_actors/bitdw/ferris_wheel_axle/geo.inc.c"
#include "actors/vanilla_actors/bitdw/ferris_platform/geo.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_1/geo.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_2/geo.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_3/geo.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_4/geo.inc.c"
#include "actors/vanilla_actors/bitdw/collapsing_stairs_5/geo.inc.c"
#include "level_commands.h"
const LevelScript script_func_vo_bitdw[] = {
LOAD_MODEL_FROM_GEO(MODEL_BITDW_SQUARE_PLATFORM, geo_bitdw_000558),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_SEESAW_PLATFORM, geo_bitdw_000540),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_SLIDING_PLATFORM, geo_bitdw_000528),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_FERRIS_WHEEL_AXLE, geo_bitdw_000570),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_BLUE_PLATFORM, geo_bitdw_000588),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_STAIRCASE_FRAME4, geo_bitdw_0005A0),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_STAIRCASE_FRAME3, geo_bitdw_0005B8),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_STAIRCASE_FRAME2, geo_bitdw_0005D0),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_STAIRCASE_FRAME1, geo_bitdw_0005E8),
LOAD_MODEL_FROM_GEO(MODEL_BITDW_STAIRCASE, geo_bitdw_000600),
RETURN(),
};

View File

@@ -1,36 +0,0 @@
#pragma once
#include "types.h"
extern const GeoLayout geo_bitdw_000528[];
extern const GeoLayout geo_bitdw_000540[];
extern const GeoLayout geo_bitdw_000558[];
extern const GeoLayout geo_bitdw_000570[];
extern const GeoLayout geo_bitdw_000588[];
extern const GeoLayout geo_bitdw_0005A0[];
extern const GeoLayout geo_bitdw_0005B8[];
extern const GeoLayout geo_bitdw_0005D0[];
extern const GeoLayout geo_bitdw_0005E8[];
extern const GeoLayout geo_bitdw_000600[];
extern const Gfx bitdw_seg7_dl_0700AFA0[];
extern const Gfx bitdw_seg7_dl_0700B220[];
extern const Gfx bitdw_seg7_dl_0700B480[];
extern const Gfx bitdw_seg7_dl_0700B8D8[];
extern const Gfx bitdw_seg7_dl_0700BB58[];
extern const Gfx bitdw_seg7_dl_0700C0E0[];
extern const Gfx bitdw_seg7_dl_0700C670[];
extern const Gfx bitdw_seg7_dl_0700CC00[];
extern const Gfx bitdw_seg7_dl_0700D190[];
extern const Gfx bitdw_seg7_dl_0700D3E8[];
extern const Collision bitdw_seg7_collision_0700F688[];
extern const Collision bitdw_seg7_collision_0700F70C[];
extern const Collision bitdw_seg7_collision_moving_pyramid[];
extern const Collision bitdw_seg7_collision_0700F7F0[];
extern const Collision bitdw_seg7_collision_0700F898[];
extern const Collision bitdw_seg7_collision_0700F91C[];
extern const Collision bitdw_seg7_collision_0700FA3C[];
extern const Collision bitdw_seg7_collision_0700FB5C[];
extern const Collision bitdw_seg7_collision_0700FC7C[];
extern const Collision bitdw_seg7_collision_0700FD9C[];

View File

@@ -1,4 +0,0 @@
// 0x07000000 - 0x07000002
ALIGNED8 static const Texture bitdw_seg7_texture_07000000[] = {
#include "actors/vanilla_actors/bitdw/0.rgba16.inc.c"
};

View File

@@ -1,38 +0,0 @@
#include <PR/ultratypes.h>
#include <PR/gbi.h>
#include "dialog_ids.h"
#include "surface_terrains.h"
#include "macros.h"
#include "moving_texture_macros.h"
#include "surface_terrains.h"
#include "textures.h"
#include "types.h"
#include "make_const_nonconst.h"
#include "actors/vanilla_actors/bitfs/texture.inc.c"
#include "actors/vanilla_actors/bitfs/elevator/model.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_cage_platform/model.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_cage_pole/model.inc.c"
#include "actors/vanilla_actors/bitfs/tilting_square_platform/model.inc.c"
#include "actors/vanilla_actors/bitfs/tumbling_platform_near/model.inc.c"
#include "actors/vanilla_actors/bitfs/tumbling_platform_far/model.inc.c"
#include "actors/vanilla_actors/bitfs/stretching_platform/1.inc.c"
#include "actors/vanilla_actors/bitfs/stretching_platform/2.inc.c"
#include "actors/vanilla_actors/bitfs/moving_square_platform/model.inc.c"
#include "actors/vanilla_actors/bitfs/sliding_platform/model.inc.c"
#include "actors/vanilla_actors/bitfs/platform_on_track/model.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_platforms/model.inc.c"
#include "actors/vanilla_actors/bitfs/seesaw_platform/model.inc.c"
#include "actors/vanilla_actors/bitfs/elevator/collision.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_cage_platform/collision.inc.c"
#include "actors/vanilla_actors/bitfs/tilting_square_platform/collision.inc.c"
#include "actors/vanilla_actors/bitfs/tumbling_platform_near/collision.inc.c"
#include "actors/vanilla_actors/bitfs/stretching_platform/collision.inc.c"
#include "actors/vanilla_actors/bitfs/moving_square_platform/collision.inc.c"
#include "actors/vanilla_actors/bitfs/sliding_platform/collision.inc.c"
#include "actors/vanilla_actors/bitfs/platform_on_track/collision.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_platforms/collision.inc.c"
#include "actors/vanilla_actors/bitfs/seesaw_platform/collision.inc.c"

View File

@@ -1,45 +0,0 @@
#include <ultra64.h>
#include "sm64.h"
#include "geo_commands.h"
#include "game/level_geo.h"
#include "game/geo_misc.h"
#include "game/camera.h"
#include "game/moving_texture.h"
#include "game/screen_transition.h"
#include "game/paintings.h"
#include "make_const_nonconst.h"
#include "actors/vanilla_actors/bitfs/header.h"
#include "actors/vanilla_actors/bitfs/elevator/geo.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_cage_platform/geo.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_cage_pole/geo.inc.c"
#include "actors/vanilla_actors/bitfs/tilting_square_platform/geo.inc.c"
#include "actors/vanilla_actors/bitfs/tumbling_platform_near/geo.inc.c"
#include "actors/vanilla_actors/bitfs/tumbling_platform_far/geo.inc.c"
#include "actors/vanilla_actors/bitfs/stretching_platform/geo.inc.c"
#include "actors/vanilla_actors/bitfs/moving_square_platform/geo.inc.c"
#include "actors/vanilla_actors/bitfs/sliding_platform/geo.inc.c"
#include "actors/vanilla_actors/bitfs/platform_on_track/geo.inc.c"
#include "actors/vanilla_actors/bitfs/sinking_platforms/geo.inc.c"
#include "actors/vanilla_actors/bitfs/seesaw_platform/geo.inc.c"
#include "level_commands.h"
const LevelScript script_func_vo_bitfs[] = {
LOAD_MODEL_FROM_GEO(MODEL_BITFS_PLATFORM_ON_TRACK, bitfs_geo_000758),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_TILTING_SQUARE_PLATFORM, bitfs_geo_0006C0),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_SINKING_PLATFORMS, bitfs_geo_000770),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_BLUE_POLE, bitfs_geo_0006A8),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_SINKING_CAGE_PLATFORM, bitfs_geo_000690),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_ELEVATOR, bitfs_geo_000678),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_STRETCHING_PLATFORMS, bitfs_geo_000708),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_SEESAW_PLATFORM, bitfs_geo_000788),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_MOVING_SQUARE_PLATFORM, bitfs_geo_000728),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_SLIDING_PLATFORM, bitfs_geo_000740),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_TUMBLING_PLATFORM_PART, bitfs_geo_0006D8),
LOAD_MODEL_FROM_GEO(MODEL_BITFS_TUMBLING_PLATFORM, bitfs_geo_0006F0),
RETURN(),
};

View File

@@ -1,42 +0,0 @@
#pragma once
#include "types.h"
extern const GeoLayout bitfs_geo_000678[];
extern const GeoLayout bitfs_geo_000690[];
extern const GeoLayout bitfs_geo_0006A8[];
extern const GeoLayout bitfs_geo_0006C0[];
extern const GeoLayout bitfs_geo_0006D8[];
extern const GeoLayout bitfs_geo_0006F0[];
extern const GeoLayout bitfs_geo_000708[];
extern const GeoLayout bitfs_geo_000728[];
extern const GeoLayout bitfs_geo_000740[];
extern const GeoLayout bitfs_geo_000758[];
extern const GeoLayout bitfs_geo_000770[];
extern const GeoLayout bitfs_geo_000788[];
extern const Gfx bitfs_seg7_dl_0700F508[];
extern const Gfx bitfs_seg7_dl_0700F6A8[];
extern const Gfx bitfs_seg7_dl_0700FB38[];
extern const Gfx bitfs_seg7_dl_0700FD08[];
extern const Gfx bitfs_seg7_dl_0700FF90[];
extern const Gfx bitfs_seg7_dl_07010168[];
extern const Gfx bitfs_seg7_dl_07010340[];
extern const Gfx bitfs_seg7_dl_07011138[];
extern const Gfx bitfs_seg7_dl_07011318[];
extern const Gfx bitfs_seg7_dl_07011568[];
extern const Gfx bitfs_seg7_dl_07011798[];
extern const Gfx bitfs_seg7_dl_07011BA0[];
extern const Gfx bitfs_seg7_dl_07011D98[];
extern const Gfx bitfs_seg7_dl_07011E28[];
extern const Collision bitfs_seg7_collision_elevator[];
extern const Collision bitfs_seg7_collision_sinking_cage_platform[];
extern const Collision bitfs_seg7_collision_inverted_pyramid[];
extern const Collision bitfs_seg7_collision_07015288[];
extern const Collision bitfs_seg7_collision_squishable_platform[];
extern const Collision bitfs_seg7_collision_07015714[];
extern const Collision bitfs_seg7_collision_07015768[];
extern const Collision bitfs_seg7_collision_platform_on_track[];
extern const Collision bitfs_seg7_collision_sinking_platform[];
extern const Collision bitfs_seg7_collision_07015928[];

View File

@@ -1,9 +0,0 @@
// 0x07000000 - 0x07001000
ALIGNED8 static const Texture bitfs_seg7_texture_07000000[] = {
#include "actors/vanilla_actors/bitfs/0.rgba16.inc.c"
};
// 0x07001000 - 0x07001800
ALIGNED8 static const Texture bitfs_seg7_texture_07001000[] = {
#include "actors/vanilla_actors/bitfs/1.rgba16.inc.c"
};

Some files were not shown because too many files have changed in this diff Show More