Compare commits

..

322 Commits

Author SHA1 Message Date
Fazana
9a4446d377 Update puppyprint.c 2021-10-27 21:53:39 +01:00
Fazana
316357fbe8 Puppyprint Page overhaul 2021-10-27 18:31:39 +01:00
Arceveti
c79cc991b3 Merge pull request #91 from Reonu/merge_ultrasm64
Merge ultrasm64
2021-10-20 17:15:59 -07:00
Arceveti
d1c87d9bd0 Merge https://github.com/CrashOveride95/ultrasm64 into merge_ultrasm64 2021-10-20 16:46:05 -07:00
Arceveti
854af8cf7b Merge pull request #86 from Reonu/course_complete_1ups
Make course complete 1-Ups from coins work past 150 coins
2021-10-20 15:08:32 -07:00
Arceveti
325b7d9a0d Update src/game/ingame_menu.c
Co-authored-by: thecozies <79979276+thecozies@users.noreply.github.com>
2021-10-20 15:01:45 -07:00
Arceveti
82aa19e4cc Merge pull request #88 from Reonu/fix_redundant_geo_process_animated_part_translation_set
Fix geo_process_animated_part setting translation twice
2021-10-20 15:01:29 -07:00
Arceveti
110efebb24 Make PAINTING_SIZE a float 2021-10-20 14:38:36 -07:00
Arceveti
f6a2999134 Fix geo_process_animated_part setting translation twice 2021-10-20 12:24:39 -07:00
Arceveti
1a43df6bf2 Make course complete 1-Ups from coins work past 150 coins 2021-10-20 12:09:39 -07:00
CrashOveride95
208d526bb6 Make ROM name smaller and change messages printed on build a bit 2021-10-19 22:11:42 -04:00
CrashOveride95
d8c7afebc2 extra 2021-10-19 21:58:26 -04:00
CrashOveride95
eb466b2caf Merge branch 'master' of https://github.com/n64decomp/sm64 2021-10-19 21:58:19 -04:00
Arceveti
4b6d9609a1 Remove GET_BPARAM1234 define 2021-10-19 18:51:57 -07:00
Arceveti
12afa0148f Merge pull request #80 from Reonu/set_get_bparam_changes
Set_get_bparam_changes
2021-10-19 18:49:48 -07:00
Arceveti
c0941c73ba Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into set_get_bparam_changes 2021-10-19 18:43:26 -07:00
Arceveti
2d507c4fc5 Merge pull request #79 from Reonu/goomba_changes
goomba.inc.c improvements
2021-10-19 18:40:11 -07:00
Arceveti
3bf97d6c9c Add ifdef guard to GOOMBA_BP3_FLOOMBA_MIRRORED_STARTUP_ANIM define 2021-10-19 18:16:17 -07:00
Arceveti
432c2904cb Rename GOOMBA_BP3_IS_FLOOMBA to GOOMBA_BP3_FLOOMBA_MIRRORED_STARTUP_ANIM and add it to object_constants.h 2021-10-19 18:15:20 -07:00
Arceveti
8d2dcddfd8 Improve/document GET/SET/etc._BPARAM macros 2021-10-19 17:40:43 -07:00
Arceveti
efaf11b33c Goomba improvements 2021-10-19 17:25:17 -07:00
Arceveti
d46eac0b84 Merge pull request #78 from Reonu/merge_refresh_15
Merge refresh 15
2021-10-19 14:01:14 -07:00
Arceveti
c688de670a Merge https://github.com/n64decomp/sm64 into merge_refresh_15 2021-10-18 21:20:53 -07:00
Arceveti
536e2077dd Make bowser puzzle seamless 2021-10-18 11:46:07 -07:00
Arceveti
b3dc29b538 ModelID typedef usage 2021-10-18 11:30:03 -07:00
Arceveti
dab7b06858 Make coin type inside boo a param1 2021-10-18 11:18:56 -07:00
Arceveti
dc65782309 object_helpers.c cleanup 2021-10-18 10:59:31 -07:00
Arceveti
35969689e6 typedef ObjActionFunc 2021-10-18 10:04:52 -07:00
Arceveti
46579b479d Rename DISABLE_LEVEL_SPECIFIC_CHECKS to DISABLE_VANILLA_LEVEL_SPECIFIC_CHECKS 2021-10-18 09:52:40 -07:00
Arceveti
6418657eea Add FIX_REFLECT_MTX 2021-10-17 22:53:33 -07:00
Arceveti
c6cfb15237 Some GET_BPARAM usage 2021-10-17 22:48:44 -07:00
Arceveti
2a8bf9948b Various object improvements 2021-10-17 22:12:20 -07:00
Arceveti
dad0b74a2e Initialize the correct number of object fields in allocate_object 2021-10-17 21:45:49 -07:00
Arceveti
fe12d438b7 Some enums 2021-10-17 20:48:56 -07:00
Arceveti
7b24734619 v 2021-10-17 20:35:18 -07:00
Arceveti
38df06eefd Merge branch 'master' of https://github.com/Reonu/HackerSM64 into nightly 2021-10-17 20:32:16 -07:00
Arceveti
118c5d88ff Some envfx_bubbles.c cleanup 2021-10-17 20:30:42 -07:00
Arceveti
7fba760389 Puppyprint color presets 2021-10-17 20:29:28 -07:00
Arceveti
1e52ffce78 SCREEN_CENTER_X/Y usage 2021-10-17 20:17:07 -07:00
Arceveti
ee19c27c95 Clean up warp transition type defines 2021-10-17 20:06:13 -07:00
Arceveti
ea421431a7 WOODEN_POST_BP_NO_COINS_MASK -> BPARAM3 2021-10-17 20:01:49 -07:00
Arceveti
390e12b3f9 Various small fixes 2021-10-17 19:27:01 -07:00
Arceveti
d2ebd86d0e Remove some redundant file select checks 2021-10-17 19:26:44 -07:00
Arceveti
4d0bcb9e15 Define INT_STATUS_NONE in behavior_data.c 2021-10-17 19:24:24 -07:00
Arceveti
7abf79d071 Move FLT_NONZERO to math_util.h 2021-10-17 18:21:02 -07:00
Arceveti
f9f0dc9acc Fix build warning 2021-10-17 18:19:27 -07:00
Arceveti
566caeb115 Add BPARAM mask defines 2021-10-17 18:13:12 -07:00
Arceveti
96a0145984 Add defines for unused surface types 2021-10-17 17:55:23 -07:00
Arceveti
35cb5517a6 Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into nightly 2021-10-17 17:40:21 -07:00
Arceveti
d1855662fd Merge pull request #76 from someone2639/syscall_asserts
runtime assert hotfix
2021-10-17 17:40:09 -07:00
Arceveti
ed981e2934 Attempt 2 to fix console find_wall_collisions_from_list div0 crash 2021-10-17 17:40:00 -07:00
someone2639
67ae0e946a [crash_screen.c] add null check in case the exception wasnt an assert 2021-10-17 20:26:59 -04:00
Arceveti
f7981ac804 Fix build 2021-10-17 17:24:38 -07:00
Arceveti
bdfaf2c2f9 Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into nightly 2021-10-17 17:23:01 -07:00
Arceveti
0547be4e0b Merge pull request #75 from someone2639/syscall_asserts
Add runtime asserts
2021-10-17 17:22:49 -07:00
Arceveti
fa04781025 Improve some more behavior files 2021-10-17 17:21:10 -07:00
Arceveti
f0d3d5a538 Remove some unused debug text 2021-10-17 17:20:56 -07:00
someone2639
c86afcae03 [crash_screen.c] moved around print statements to be both clear and not overlapping 2021-10-17 20:07:41 -04:00
someone2639
52b076c5cc [sm64.ld] add n64_assert.s to final game 2021-10-17 20:07:10 -04:00
someone2639
45fa72e836 [crash_screen.c] add debug.h to includes; fix compile error in draw_asserts 2021-10-17 20:03:24 -04:00
someone2639
cc3db36061 [debug.h] add assert define; ready to test 2021-10-17 20:01:49 -04:00
someone2639
bd23a46acd [crash_screen.c] actually add assert draw function, with new symbols 2021-10-17 19:59:51 -04:00
someone2639
5e151260e8 [n64_assert.s] add assert exception assembly code 2021-10-17 19:58:47 -04:00
someone2639
d49a16342d [debug.h] add externs for global assert symbols 2021-10-17 19:58:16 -04:00
someone2639
0dd70bfc21 [crash_screen.c] add logic to draw asserts page 2021-10-17 19:54:10 -04:00
someone2639
c03873c646 [ccrash_screen.c] add instructions to assert message 2021-10-17 19:48:46 -04:00
someone2639
989a499aeb [crash_screen.c] renamed syscall exception to failed assert 2021-10-17 19:47:21 -04:00
Arceveti
c290770516 Some camera cleanup 2021-10-17 16:25:00 -07:00
Arceveti
671a6acb34 Fix build 2021-10-17 16:24:36 -07:00
Arceveti
20feb3e7e6 Improve some behavior files 2021-10-17 16:22:13 -07:00
Arceveti
20ad6f619a document goto offsets in ending/menu scripts 2021-10-17 16:16:55 -07:00
Arceveti
856760befb Might be a better fix 2021-10-17 15:46:54 -07:00
Arceveti
b54f81ad38 Prevent division by zero in find_wall_collisions_from_list 2021-10-17 15:42:55 -07:00
Arceveti
c28919e41a Improve dialog input 2021-10-17 11:35:40 -07:00
Arceveti
0532936b19 A few config.h fixes 2021-10-17 11:02:43 -07:00
Arceveti
23c898667a Add spaces to INTERNAL_ROM_NAME 2021-10-17 10:44:35 -07:00
Arceveti
b1798cb32e remove prevent_bss_reordering includes 2021-10-17 10:42:32 -07:00
Arceveti
5c7882f649 Clean up a bunch of version ifdefs 2021-10-17 10:39:50 -07:00
Arceveti
5af1a4dceb Fix whirlpool distance 2021-10-15 17:12:55 -07:00
Arceveti
4167068dc5 butterfly.inc.c improvements 2021-10-15 12:20:12 -07:00
Arceveti
cc48698193 Check for COLLISION_FLAG_EXCLUDE_DYNAMIC in find_ceil and find_wall_collisions 2021-10-15 12:06:14 -07:00
Arceveti
5fe1a69f51 Slight find_floor/ceil optimization 2021-10-15 11:53:35 -07:00
Arceveti
b02ab02c17 Fix find_floor_from_list + some optimization 2021-10-15 11:28:54 -07:00
Arceveti
a8283a20a9 Add gCollisionFlags 2021-10-15 11:15:27 -07:00
Arceveti
5de970a754 Some surface_collision.c cleanup 2021-10-15 10:56:40 -07:00
Arceveti
c6b0a16c88 Replace puppylights goto's 2021-10-15 10:56:28 -07:00
Arceveti
9438ab2ab6 Make render phases a for loop instead of a goto 2021-10-15 10:13:56 -07:00
Arceveti
064d09753a Make Painting->pos a Vec3f 2021-10-15 10:08:40 -07:00
Arceveti
dbf0cd777b Clean up painting ripple flags 2021-10-15 10:03:38 -07:00
Arceveti
43b1b48e22 Fix CAMERA_FIX after painting exit cutscene 2021-10-14 19:19:18 -07:00
Arceveti
e672193e67 Add START_LEVEL define + some cleanup 2021-10-14 18:48:16 -07:00
Arceveti
22dae4a7eb Small formatting fix 2021-10-14 12:26:49 -07:00
n64
1372ae1bb7 Refresh 15 2021-10-14 15:25:30 -04:00
Arceveti
f66248257f Use m->heldObj instead of m->usedObj for GROUND_TURN_FIX check 2021-10-14 12:01:49 -07:00
Arceveti
812a8247e9 Improve EXIT_COURSE_WHILE_MOVING 2021-10-14 11:43:47 -07:00
Arceveti
b38cf7c377 Add HOOT_TREE_PARTICLES 2021-10-14 11:35:03 -07:00
Arceveti
4f6a7f9545 Add GROUND_POUND_WALL_FIX 2021-10-14 11:26:06 -07:00
Arceveti
326eca4dd2 Improve GROUND_TURN_FIX 2021-10-14 11:23:04 -07:00
Arceveti
2cc01ce3a5 Clean up a bunch of ifdefs 2021-10-13 20:25:45 -07:00
Arceveti
024fb35a92 rename stomp_smoke to small_water_splash 2021-10-13 18:00:16 -07:00
Arceveti
442f03d52c Fix obj_turn_toward_object calls 2021-10-13 17:42:36 -07:00
Arceveti
53f312e37c Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into nightly 2021-10-13 17:36:32 -07:00
Arceveti
da1f048024 Clean up some ifdefs 2021-10-13 17:21:12 -07:00
Arceveti
ba49c72969 Clean up a few switch statements 2021-10-13 17:12:46 -07:00
Arceveti
9d2877f28a Name SOUND_MENU_FLAG_EXTRA 2021-10-13 17:12:03 -07:00
Arceveti
8ad13228f5 Some Puppycam formatting fixes 2021-10-13 16:57:53 -07:00
Arceveti
37023ed99d some small object_list_processor.c fixes 2021-10-13 16:27:55 -07:00
Arceveti
feb3a2a61c Define unused actions and custom action group 2021-10-13 16:05:39 -07:00
Arceveti
b790a5e083 gMarioState -> m in queue_rumble_particles 2021-10-13 16:05:21 -07:00
Arceveti
1963595cbf Make BETTER_BOUNCE height more reasonable 2021-10-13 15:46:36 -07:00
Arceveti
b3418e3eb0 HUDFlashModes enum 2021-10-13 15:21:29 -07:00
Arceveti
06f65d396c Some patch_audio_bank fixes 2021-10-13 15:20:54 -07:00
Arceveti
7581dfccf5 intro_scene.inc.c cleanup 2021-10-13 14:59:14 -07:00
Arceveti
a827d7b9c9 intro_peach.inc.c cleanup 2021-10-13 14:59:04 -07:00
Arceveti
085af99845 intro_lakitu.inc.c cleanup 2021-10-13 14:58:38 -07:00
Arceveti
2cf33a2f33 bhvDoor and bhvStarDoor cleanup 2021-10-13 14:38:39 -07:00
Arceveti
33a0a59774 Convert sDonutPlatformPositions from hexadecimal to decimal 2021-10-13 14:27:09 -07:00
Arceveti
6ad4d7917b bhvChirpChirp to bhvBubSpawner 2021-10-13 14:24:45 -07:00
Arceveti
d908c22697 Some audio formatting 2021-10-13 14:21:53 -07:00
Arceveti
bf98a51263 Add FAST_VERTICAL_CAMERA_MOVEMENT 2021-10-13 14:02:53 -07:00
Arceveti
1f4949bd8a Fix asm_abs defines 2021-10-13 14:02:49 -07:00
Arceveti
8ef227890a Some camera.c formatting 2021-10-13 13:19:54 -07:00
gheskett
e72dbfb3e3 Bugfix: divide by zero for floomba startup 2021-10-13 01:02:53 -04:00
gheskett
693d5d5cb4 Some reformatting of audio system + puppyprint for dynamic audio buffers 2021-10-13 00:41:21 -04:00
Arceveti
7b26bf06eb Some small formatting fixes 2021-10-12 20:08:25 -07:00
Arceveti
9391eefd05 Revert a Puppyprint debug info input change 2021-10-12 19:47:47 -07:00
Arceveti
e12e1c2f17 Some level_update.c cleanup 2021-10-12 19:22:14 -07:00
Arceveti
319be3a796 gMarioState -> m in init_mario, init_mario_from_save_file, and init_mario_after_warp 2021-10-12 19:01:58 -07:00
Arceveti
09cf9adc13 gMarioState -> m in execute_mario_action 2021-10-12 18:57:14 -07:00
Arceveti
a6492a2170 Some more cleanup 2021-10-12 18:53:59 -07:00
Arceveti
045c68f153 Convert a few object_constatnts.h defines to enums 2021-10-12 18:53:52 -07:00
Arceveti
f807000145 macro_presets.h documentation 2021-10-12 18:52:43 -07:00
Arceveti
c4b6ab2da0 Small cleanup 2021-10-12 18:04:08 -07:00
Arceveti
328317605e Convert a couple more doubles to floats 2021-10-11 21:33:52 -07:00
Arceveti
7c27196416 Some Puppyprint cleanup 2021-10-11 21:28:15 -07:00
Arceveti
a2500da83e Fix OOB death on BBH exit 2021-10-11 21:11:19 -07:00
Arceveti
fb266ee482 Fix update_mario_platform crash 2021-10-11 20:51:47 -07:00
Arceveti
848a8dd3a0 Some cleanup 2021-10-11 20:46:39 -07:00
Arceveti
210e708c8e Fix doors with CAMERA_FIX (part 3) 2021-10-11 20:46:02 -07:00
Arceveti
24a2905fc3 Remove some unused functions 2021-10-11 20:25:35 -07:00
Arceveti
8dda45abb6 Remove some unecessary externs 2021-10-11 20:00:45 -07:00
Arceveti
8d51484510 Fix Mario entering pushing animation when facing away from a wall 2021-10-11 17:54:37 -07:00
Arceveti
ca13a8d839 Fix doors with CAMERA_FIX 2021-10-11 17:38:16 -07:00
Arceveti
b4f4df2fdc Fix sign reading 2021-10-11 17:38:05 -07:00
Arceveti
3853714f56 fix perspective matrix being divided by 4 2021-10-11 16:58:22 -07:00
Arceveti
bb54f9e4e7 Fix door camera 2021-10-11 15:00:38 -07:00
Arceveti
17bc64760d Fix hanging height 2021-10-11 14:08:05 -07:00
Arceveti
c31d9b9e2a End cake screen dl names 2021-10-11 13:54:04 -07:00
Arceveti
1203b35b81 Convert some doubles to floats 2021-10-11 13:43:54 -07:00
Arceveti
d107d7f146 Fix dropping from hanging on a downward sloped ceiling 2021-10-11 13:16:14 -07:00
Arceveti
9b5f38491b Make WATER_STEP_HIT_FLOOR pitch change smooth 2021-10-09 00:11:12 -07:00
Arceveti
2275b4ff44 Fix some upwarps/downwarps 2021-10-09 00:10:12 -07:00
Arceveti
1bc367c6e0 node->near usage 2021-10-08 19:07:36 -07:00
Arceveti
c93df2b82e game_init.c cleanup 2021-10-08 15:09:03 -07:00
Arceveti
3f1fb6ec05 Use mtxf_rotate_xy for camera roll 2021-10-08 15:08:54 -07:00
Arceveti
1f1a6c2227 Improve obj_turn_toward_object 2021-10-08 13:59:04 -07:00
Arceveti
f290437f3f ActionState enums 2021-10-08 13:44:48 -07:00
Arceveti
86a62a5936 Fix Hands-free holding 2021-10-08 11:50:16 -07:00
Arceveti
a7d9c8d9e9 Convert some more define lists to enums 2021-10-08 11:47:15 -07:00
Fazana
6eb93bc095 Update puppycam2.h 2021-10-08 14:22:35 +01:00
gheskett
cd66903441 Merge branch 'dev' into floomba 2021-10-08 03:18:30 -04:00
gheskett
95e7d17d06 Math error 2021-10-08 03:16:44 -04:00
Arceveti
961b8b5f38 Small camera fixes 2021-10-07 23:53:35 -07:00
Arceveti
43e6997bab Door DL names 2021-10-07 23:39:01 -07:00
gheskett
a7ae3aae4e Remove useless commented code 2021-10-08 01:50:55 -04:00
gheskett
5e2ddf3f42 Title screen floomba works! 2021-10-08 01:35:23 -04:00
Arceveti
9c66d6b6eb Fix most RSP microcodes (turbo3d still freezes) 2021-10-07 21:56:15 -07:00
gheskett
551e495dd2 Call area_update_objects instead for proper animation loading 2021-10-07 23:22:49 -04:00
gheskett
1c3242b25c Floomba now renders on title screen, does not animate properly 2021-10-07 23:01:35 -04:00
Arceveti
86d8da2b5c Disable DEBUG_LEVEL_SELECT and ENABLE_DEBUG_FREE_MOVE by default 2021-10-07 19:51:19 -07:00
Arceveti
84df7bcc19 Crash screen no longer requires Puppyprint 2021-10-07 19:50:13 -07:00
Arceveti
799c1de736 Revert REVERB_WINDOW_SIZE_MAX change 2021-10-07 19:30:49 -07:00
Arceveti
5abcae64e5 Add FORCE_CRASH macro 2021-10-07 19:29:02 -07:00
Arceveti
07d90becfa Add DEBUG_FORCE_CRASH 2021-10-07 19:21:51 -07:00
Arceveti
90719c1338 SURFACE_IS_UNSAFE includes warp floors 2021-10-07 17:15:25 -07:00
Reonu
35908d96a3 Merge pull request #73 from Reonu/dev
Merged dev into nightly
2021-10-08 02:41:24 +03:00
Arceveti
9c181bf071 Merge branch 'nightly' of https://github.com/Reonu/HackerSM64 into dev 2021-10-07 16:40:15 -07:00
Arceveti
683db16175 Add CONTROLLABLE_PLATFORM_SPEED + platform_on_track.inc.c cleanup 2021-10-07 16:38:58 -07:00
Arceveti
6907208052 surface_load.c improvements 2021-10-07 16:01:15 -07:00
Arceveti
4ac6472d76 OBJ_FLAG_UCODE_LARGE for bhvWoodenPost 2021-10-07 15:41:56 -07:00
Arceveti
cba10ea64a Convert more define lists into enums 2021-10-07 15:26:51 -07:00
Arceveti
9346c06206 Convert some define lists to enums 2021-10-07 14:24:54 -07:00
Arceveti
574ffcef06 Sound names 2021-10-07 14:11:52 -07:00
Arceveti
05ca5f6c95 King Bobomb improvements 2021-10-07 13:41:53 -07:00
gheskett
6fd0a96e55 Update README with floomba info 2021-10-07 01:19:23 -04:00
gheskett
6228fb8020 Still can't figure out how to draw floomba on splash screen; every other piece of code here is fully functional now 2021-10-07 00:14:51 -04:00
Arceveti
a7f4de0f27 sCreditsSequence formatting 2021-10-06 19:45:28 -07:00
Arceveti
bd70dd6e78 typedef usage 2021-10-06 19:45:21 -07:00
Arceveti
a69913e3e0 Make some functions 32 bit 2021-10-06 19:44:57 -07:00
Arceveti
67be3bbfb8 Remove a few more unecessary find_floor callse 2021-10-06 19:13:08 -07:00
Arceveti
d40e89cbeb Mark light quarter circle texture as unused 2021-10-06 18:32:34 -07:00
Arceveti
3a0caecb22 Platform displacement cleanup/fixes 2021-10-06 18:31:48 -07:00
Arceveti
ec337a4206 Some audio bugfixes 2021-10-06 18:12:49 -07:00
Arceveti
3a471f4786 Fix most vanilla cutscene softlocks 2021-10-06 18:08:33 -07:00
Arceveti
cab8944416 Remove unused function 2021-10-06 18:06:41 -07:00
Arceveti
3ea0e7ea22 star dl names 2021-10-06 18:04:12 -07:00
Arceveti
b2da8d176b Add radial light texture 2021-10-06 18:04:01 -07:00
Arceveti
c3df118002 Remove extra extern 2021-10-06 17:44:08 -07:00
Arceveti
9eefb25da2 enum RenderPhase 2021-10-06 17:42:17 -07:00
Arceveti
80814c78c5 Simplify GROUND_TURN_FIX 2021-10-06 15:00:37 -07:00
Arceveti
65ef3697be Number of flames on fire bars can be set with oBehParams2ndByte 2021-10-06 11:25:54 -07:00
Arceveti
ea1fc2b49f Add DIALOG_INDICATOR 2021-10-06 10:44:17 -07:00
Arceveti
413602f37e Add EASIER_DIALOG_TRIGGER 2021-10-06 10:37:47 -07:00
Fazana
3ed6c652f0 Update puppycam2.c 2021-10-06 12:01:32 +01:00
gheskett
a6d62b5734 Game now boots, Floomba still not visible 2021-10-06 02:18:25 -04:00
someone2639
c425f8e51b actually add test-pj64 rule 2021-10-05 23:25:56 -04:00
someone2639
3144dcf171 add test-pj64 rule i need it i swear 2021-10-05 22:56:27 -04:00
gheskett
7cf7b4c33b Broke the splash screen :D 2021-10-05 22:50:38 -04:00
gheskett
3d9e855246 Forget to revert BOB goombas 2021-10-05 21:42:43 -04:00
gheskett
47c70a6b9a Merge branch 'dev' into floomba 2021-10-05 21:40:41 -04:00
gheskett
c0a0f54819 Basic support for floombas, currently just goombas in a different animation state 2021-10-05 21:40:05 -04:00
Arceveti
e1ef700b28 Fix mega punch + punch actions cleanup 2021-10-05 18:23:45 -07:00
Reonu
20c6041682 Disabled OMPLETE_EN_US_SEGMENT2 by default 2021-10-06 02:10:36 +03:00
Arceveti
af285bbf47 Merge branch 'nightly' of https://github.com/Reonu/HackerSM64 into dev 2021-10-05 15:26:43 -07:00
Arceveti
4723a03be4 Fix surface node pool size 2021-10-05 15:16:37 -07:00
Arceveti
b95eb762ce Fix forcedInclude 2021-10-05 14:55:04 -07:00
Arceveti
df8129a2ea HD Intro textures 2021-10-05 14:17:10 -07:00
Arceveti
0101f2fc27 Merge branch 'nightly' of https://github.com/Reonu/HackerSM64 into dev 2021-10-05 11:43:14 -07:00
Arceveti
3dadc71acf Name copyright dl's 2021-10-05 11:36:39 -07:00
Arceveti
1e082a5a59 Add Z_TWIRL 2021-10-05 10:59:32 -07:00
Arceveti
bf4c068e6f Add BETTER_BOUNCE 2021-10-05 10:53:36 -07:00
Arceveti
9470c8fee5 Coins are bouncy again 2021-10-05 10:47:48 -07:00
Arceveti
ac1e9adc99 Merge branch 'nightly' of https://github.com/Reonu/HackerSM64 into dev 2021-10-05 10:13:36 -07:00
Arceveti
f5bedc0e55 Use some name defines 2021-10-05 00:20:15 -07:00
Arceveti
9b609a4860 Name some args 2021-10-05 00:15:05 -07:00
Arceveti
c58f61331a Fix build 2 2021-10-04 22:29:20 -07:00
Arceveti
caf47c35f4 Fix camera mode resetting 2021-10-04 22:26:46 -07:00
Arceveti
a30ca2df7a Fix bowling ball crash 2021-10-04 22:25:26 -07:00
Arceveti
8cbb532736 Fix build 2021-10-04 13:21:50 -07:00
Arceveti
4b082481b0 Various object behavior fixes 2021-10-04 13:18:25 -07:00
Arceveti
40420c7249 Paintings use gMarioState floor instead of doing find_floor again 2021-10-04 13:18:07 -07:00
Arceveti
6a7cbbdd4d Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into dev 2021-10-04 12:06:58 -07:00
Fazana
bc3558cebe Make the game render layer 0 of ZEX first 2021-10-04 18:34:38 +01:00
Fazana
99c76db4d0 Puppyprint improvements
(citation needed on the improvements part)
2021-10-04 15:46:35 +01:00
Fazana
5ab7140389 Improve Puppyprint accuracy 2021-10-04 12:18:45 +01:00
Arceveti
323fd02f2e Name some function arguments 2021-10-03 21:40:57 -07:00
Arceveti
a6ee4b849e Fix goomba jump and pokey offset 2021-10-03 17:40:00 -07:00
Arceveti
087fc59488 Implement backup segment2 characters 2021-10-03 17:39:26 -07:00
Arceveti
c6e588fccd Add interaction.h and object_constants.h to forcedInclude 2021-10-03 16:47:43 -07:00
Arceveti
8a3a8a1e33 Add backup segment2 assets 2021-10-03 16:47:09 -07:00
Arceveti
b0f48b4988 Fix water rings 2021-10-03 16:22:16 -07:00
Arceveti
eb77196b6f Improve coin textures 2021-10-03 15:54:26 -07:00
Arceveti
74d85bf00b Remove some unused arguments 2021-10-03 14:22:59 -07:00
Arceveti
4c80f9e811 Remove unused arg from cur_obj_follow_path 2021-10-03 13:55:57 -07:00
Arceveti
e46db0cbc8 Use MarioState surface yaw instead of recalculating the surface yaw again 2021-10-03 13:41:02 -07:00
Arceveti
22a17bdb15 Add fall damage height defines 2021-10-03 13:15:03 -07:00
Arceveti
a9fbc3a907 Merge branch 'nightly' of https://github.com/Reonu/HackerSM64 into dev 2021-10-03 13:11:24 -07:00
Arceveti
8e62615e5d Merge branch 'merge_nightly_fixes' of https://github.com/Reonu/HackerSM64 into dev 2021-10-03 13:05:20 -07:00
Arceveti
64b809dd9f Merge branch 'nightly' of https://github.com/Reonu/HackerSM64 into dev 2021-10-03 13:03:14 -07:00
Arceveti
a3c786b71b Requested changes 2021-10-03 11:55:52 -07:00
Arceveti
07232805ae Add COIN_LAVA_FLICKER 2021-10-03 10:59:03 -07:00
Arceveti
b560ef1bb4 Add TINY_GOOMBA_ALWAYS_DROPS_COIN 2021-10-03 10:49:03 -07:00
Arceveti
a2ca71dc0f Add HOOT_YAW_FIX 2021-10-03 10:47:41 -07:00
Arceveti
6c5ed41072 Rename FIX_LAVA_INTERACTION to LAVA_INTERACTION_FIX 2021-10-03 10:47:23 -07:00
Arceveti
680ab6bdf7 Add FIX_LAVA_INTERACTION 2021-10-03 10:43:47 -07:00
Arceveti
3428ea17c2 Don't fall after star grab if high enough in the air 2021-10-03 10:40:23 -07:00
Arceveti
52dfb8ccb7 King Bobomb improvements 2021-10-03 10:35:10 -07:00
Arceveti
83e3e21eb8 Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into dev 2021-10-03 10:23:43 -07:00
Arceveti
3edbc14cf1 Klepto and Unagi have transparent stars after they are collected 2021-10-03 10:23:36 -07:00
Arceveti
fe4dd440f6 Used the passed in MarioState instead of the global one for PREVENT_DEATH_LOOP 2021-10-03 10:12:27 -07:00
Arceveti
41ef8308c1 Add comment to distinguish new MarioState fields 2021-10-03 10:10:15 -07:00
Reonu
e92abdb242 merged nightly's revert commit 2021-10-03 19:37:48 +03:00
Fazana
28c89246fd Merge branch 'nightly' into dev 2021-10-03 14:58:05 +01:00
Fazana
5c639aab8d Puppyprint fixes 2021-10-03 13:08:36 +01:00
Arceveti
3df4adb01a Add EASIER_LONG_JUMPS 2021-10-02 22:23:13 -07:00
Arceveti
ec1694dfdd Improvements to OBJ_OPACITY_BY_CAM_DIST 2021-10-02 22:16:02 -07:00
Arceveti
60a7c34622 Remove some unused functions + ifdefs 2021-10-02 21:38:01 -07:00
Arceveti
b4ce1b5822 Add pointer null check in check_ledge_grab 2021-10-02 20:59:52 -07:00
Arceveti
56f2f9a64b Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into dev 2021-10-02 20:53:54 -07:00
Arceveti
b256986f81 Add POWER_STARS_HEAL 2021-10-02 20:53:46 -07:00
someone2639
3df30561be Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into dev 2021-10-02 23:52:18 -04:00
someone2639
8fad4b6ec6 dont need this line either [math.s] 2021-10-02 23:52:16 -04:00
Arceveti
ee2a1f83d1 Add MUSHROOMS_HEAL 2021-10-02 20:49:06 -07:00
Arceveti
6ea685d7a6 Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into dev 2021-10-02 20:32:31 -07:00
Arceveti
4b1c3fd7e8 Make fixed ledge grabs default + Fix crash 2021-10-02 20:32:19 -07:00
someone2639
30f65bf03c changed div to mul, it always runs now 2021-10-02 23:26:21 -04:00
Arceveti
81b338b340 Save number of lives to save file 2021-10-02 19:26:04 -07:00
Arceveti
8993e51f75 Various tiny fixes 2021-10-02 18:56:58 -07:00
Arceveti
2c1d08a835 Small cleanup 2021-10-02 17:40:06 -07:00
Arceveti
a277a3947c Add color_presets and colors.c 2021-10-02 17:38:18 -07:00
Arceveti
c16a43a071 Merge https://github.com/CrashOveride95/ultrasm64 into dev 2021-10-02 16:34:05 -07:00
Arceveti
9423a32111 Make some functions s32/u32 2021-10-02 16:28:02 -07:00
Arceveti
d2d60c90ba Make gbi.h readable 2021-10-02 16:27:04 -07:00
Arceveti
eae2feb3a0 Doors no longer need OBJ_FLAG_UCODE_LARGE 2021-10-02 16:13:46 -07:00
Arceveti
fb1db7541d Fix build warnings 2021-10-02 16:07:52 -07:00
Fazana
c01386a6c5 iQue supports AA stripping 2021-10-02 22:42:24 +01:00
Fazana
c75fe65125 Update puppyprint.c 2021-10-02 19:43:45 +01:00
Fazana
953a7270f2 Fix building on iQue 2021-10-02 17:58:11 +01:00
Fazana
f6ee66df28 gWorldScalen't 2021-10-02 17:37:12 +01:00
CrashOveride95
0d56896e75 Merge branch 'master' of https://github.com/CrashOveride95/ultrasm64 2021-10-02 10:27:47 -04:00
CrashOveride95
3a627e6311 Add librtc and fix some data declarations 2021-10-02 10:27:43 -04:00
someone2639
dbb1b892ee let the scheduler handle the bc1f 2021-10-02 09:54:11 -04:00
someone2639
1dbbd25253 i hate the c preprocessor 2021-10-02 09:32:16 -04:00
someone2639
134aeb74cc big brain optimization 2021-10-02 09:30:29 -04:00
someone2639
57c10feb14 add some logic for gWorldScale; only div on scales higher than 1 2021-10-02 09:26:18 -04:00
someone2639
474145222d make this asm file a lot easier to read (not documented though) 2021-10-02 09:12:47 -04:00
someone2639
a973d274b0 make mtf_to_mtx inline 2021-10-02 09:12:31 -04:00
Arceveti
4464eb96de Various small bugfixes 2021-10-01 21:47:36 -07:00
Arceveti
2ab3c85d13 Clean up tilting_inverted_pyramid.inc.c 2021-10-01 21:37:47 -07:00
Arceveti
89fb6b75a9 Tuxie fixes 2021-10-01 20:46:33 -07:00
Arceveti
85a31ccec0 Add POLE_SWING 2021-10-01 19:40:29 -07:00
Arceveti
c586faea96 math_util improvements 2021-10-01 19:39:43 -07:00
Arceveti
d17c9247a1 Surface load optimizations 2021-10-01 18:04:12 -07:00
Arceveti
0af6087f81 Add 30FPS coins 2021-10-01 13:47:04 -07:00
Arceveti
0393a5e885 Name coin dl's 2021-10-01 13:08:05 -07:00
Arceveti
5662b8de3a Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into dev 2021-10-01 12:58:45 -07:00
Arceveti
9ad62c9eab Proper false ledge grab fix 2021-10-01 12:57:07 -07:00
Fazana
4346d5ff9f semi colon 2021-10-01 22:21:23 +03:00
Arceveti
efa3e6461a Fix some vector functions 2021-10-01 11:01:57 -07:00
Reonu
209ce5a90c fixed camera memes 2021-10-01 16:47:18 +03:00
Arceveti
bd6eb1fd87 Disable HD_SHADOWS by default 2021-09-30 20:58:15 -07:00
Arceveti
1860ece52e Breakable box improvements 2021-09-30 20:57:54 -07:00
Arceveti
45d4e3c15a Fix held object shadow scaling 2021-09-30 20:02:43 -07:00
CrashOveride95
6218abafff Merge pull request #24 from Arceveti/patch-1
Move GRUCODE define to proper location in makefile
2021-09-30 22:13:33 -04:00
Arceveti
4efbfc4da0 Option for 64x64 quarter shadow textures 2021-09-30 18:26:19 -07:00
Arceveti
d51129c6b6 Move GRUCODE define to proper location in makefile 2021-09-30 17:52:40 -07:00
Arceveti
483005edf5 Move GRUCODE define to proper location in makefile 2021-09-30 17:34:06 -07:00
Arceveti
57531f5d81 Merge branch 'dev' of https://github.com/Reonu/HackerSM64 into dev 2021-09-30 17:26:11 -07:00
Arceveti
a5cb4481f7 Optimize tree transparency distance calculation 2021-09-30 17:25:21 -07:00
Reonu
e6d0d4b8d2 improved death loop failsafe 2021-10-01 02:44:13 +03:00
Reonu
8186517460 added PREVENT_DEATH_LOOP define 2021-10-01 02:36:26 +03:00
Arceveti
76bdc4ca2b Pokey load distance uses o->oDrawingDistance 2021-09-30 16:21:06 -07:00
766 changed files with 29225 additions and 44075 deletions

1
.gitignore vendored
View File

@@ -102,7 +102,6 @@ build/*
# libultra
!/lib/**/*.o
!/lib/*.a
lib/libs2d_engine.a
!/lib/gcclib/*.a

View File

@@ -6,7 +6,6 @@
"${workspaceFolder}/include/n64/**",
"${workspaceFolder}/include/**",
"${workspaceFolder}/textures/**",
"${workspaceFolder}/build/us_n64/**",
"${workspaceFolder}/**"
],
"forcedInclude": [

View File

@@ -4,7 +4,6 @@
# These owners will be the default owners for everything in the repo.
* @Reonu
* @thecozies
* @Mr-Wiseguy
# Order is important. The last matching pattern has the most precedence.
# So if a pull request only touches javascript files, only these owners

146
Makefile
View File

@@ -67,6 +67,25 @@ endif
DEFINES += NO_ERRNO_H=1 NO_GZIP=1
COMPRESS ?= rnc1
$(eval $(call validate-option,COMPRESS,mio0 yay0 gzip rnc1 rnc2 uncomp))
ifeq ($(COMPRESS),gzip)
DEFINES += GZIP=1
else ifeq ($(COMPRESS),rnc1)
DEFINES += RNC1=1
else ifeq ($(COMPRESS),rnc2)
DEFINES += RNC2=1
else ifeq ($(COMPRESS),yay0)
DEFINES += YAY0=1
else ifeq ($(COMPRESS),mio0)
DEFINES += MIO0=1
else ifeq ($(COMPRESS),uncomp)
DEFINES += UNCOMPRESSED=1
endif
GZIPVER ?= std
$(eval $(call validate-option,GZIPVER,std libdef))
# VERSION - selects the version of the game to build
# jp - builds the 1996 Japanese version
# us - builds the 1996 North American version
@@ -128,78 +147,15 @@ endif
LINK_LIBRARIES = $(foreach i,$(LIBRARIES),-l$(i))
#==============================================================================#
# Optimization flags #
#==============================================================================#
# Default non-gcc opt flags
DEFAULT_OPT_FLAGS = -Ofast
# Main opt flags
GCC_MAIN_OPT_FLAGS = \
-Ofast \
--param case-values-threshold=20 \
--param max-completely-peeled-insns=10 \
--param max-unrolled-insns=10 \
-finline-limit=1 \
-freorder-blocks-algorithm=simple \
-ffunction-sections \
-fdata-sections
# Surface Collision
GCC_COLLISION_OPT_FLAGS = \
-Ofast \
--param case-values-threshold=20 \
--param max-completely-peeled-insns=100 \
--param max-unrolled-insns=100 \
-finline-limit=0 \
-fno-inline \
-freorder-blocks-algorithm=simple \
-ffunction-sections \
-fdata-sections \
-falign-functions=32
# Math Util
GCC_MATH_UTIL_OPT_FLAGS = \
-Ofast \
-fno-unroll-loops \
-fno-peel-loops \
--param case-values-threshold=20 \
-ffunction-sections \
-fdata-sections \
-falign-functions=32
# - setting any sort of -finline-limit has shown to worsen performance with math_util.c,
# lower values were the worst, the higher you go - the closer performance gets to not setting it at all
# Rendering graph node
GCC_GRAPH_NODE_OPT_FLAGS = \
-Ofast \
--param case-values-threshold=20 \
--param max-completely-peeled-insns=100 \
--param max-unrolled-insns=100 \
-finline-limit=0 \
-freorder-blocks-algorithm=simple \
-ffunction-sections \
-fdata-sections \
-falign-functions=32
#==============================================================================#
ifeq ($(COMPILER),gcc)
NON_MATCHING := 1
MIPSISET := -mips3
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)
OPT_FLAGS := -Ofast
else ifeq ($(COMPILER),clang)
NON_MATCHING := 1
# clang doesn't support ABI 'o32' for 'mips3'
MIPSISET := -mips2
OPT_FLAGS := $(DEFAULT_OPT_FLAGS)
COLLISION_OPT_FLAGS = $(DEFAULT_OPT_FLAGS)
MATH_UTIL_OPT_FLAGS = $(DEFAULT_OPT_FLAGS)
GRAPH_NODE_OPT_FLAGS = $(DEFAULT_OPT_FLAGS)
OPT_FLAGS := -Ofast
endif
@@ -222,7 +178,7 @@ TARGET_STRING := sm64
# UNF - whether to use UNFLoader flashcart library
# 1 - includes code in ROM
# 0 - does not
# 0 - does not
UNF ?= 0
$(eval $(call validate-option,UNF,0 1))
ifeq ($(UNF),1)
@@ -234,7 +190,7 @@ endif
# ISVPRINT - whether to fake IS-Viewer presence,
# allowing for usage of CEN64 (and possibly Project64) to print messages to terminal.
# 1 - includes code in ROM
# 0 - does not
# 0 - does not
ISVPRINT ?= 0
$(eval $(call validate-option,ISVPRINT,0 1))
ifeq ($(ISVPRINT),1)
@@ -252,7 +208,7 @@ endif
# HVQM - whether to use HVQM fmv library
# 1 - includes code in ROM
# 0 - does not
# 0 - does not
HVQM ?= 0
$(eval $(call validate-option,HVQM,0 1))
ifeq ($(HVQM),1)
@@ -260,34 +216,9 @@ ifeq ($(HVQM),1)
SRC_DIRS += src/hvqm
endif
BUILD_DIR_BASE := build
# BUILD_DIR is the location where all build artifacts are placed
BUILD_DIR := $(BUILD_DIR_BASE)/$(VERSION)_$(CONSOLE)
COMPRESS ?= rnc1
$(eval $(call validate-option,COMPRESS,mio0 yay0 gzip rnc1 rnc2 uncomp))
ifeq ($(COMPRESS),gzip)
DEFINES += GZIP=1
LIBZRULE := $(BUILD_DIR)/libz.a
LIBZLINK := -lz
else ifeq ($(COMPRESS),rnc1)
DEFINES += RNC1=1
else ifeq ($(COMPRESS),rnc2)
DEFINES += RNC2=1
else ifeq ($(COMPRESS),yay0)
DEFINES += YAY0=1
else ifeq ($(COMPRESS),mio0)
DEFINES += MIO0=1
else ifeq ($(COMPRESS),uncomp)
DEFINES += UNCOMPRESSED=1
endif
GZIPVER ?= std
$(eval $(call validate-option,GZIPVER,std libdef))
# GODDARD - whether to use libgoddard (Mario Head)
# 1 - includes code in ROM
# 0 - does not
# 0 - does not
GODDARD ?= 0
$(eval $(call validate-option,GODDARD,0 1))
ifeq ($(GODDARD),1)
@@ -464,11 +395,9 @@ DEF_INC_CFLAGS := $(foreach i,$(INCLUDE_DIRS),-I$(i)) $(C_DEFINES)
# C compiler options
CFLAGS = -G 0 $(OPT_FLAGS) $(TARGET_CFLAGS) $(MIPSISET) $(DEF_INC_CFLAGS)
ifeq ($(COMPILER),gcc)
CFLAGS += -mno-shared -march=vr4300 -mfix4300 -mabi=32 -mhard-float -mdivide-breaks -fno-stack-protector -fno-common -fno-zero-initialized-in-bss -fno-PIC -mno-abicalls -fno-strict-aliasing -fno-inline-functions -ffreestanding -fwrapv -Wall -Wextra
CFLAGS += -Wno-missing-braces
CFLAGS += -mno-shared -march=vr4300 -mfix4300 -mabi=32 -mhard-float -mdivide-breaks -fno-stack-protector -fno-common -fno-zero-initialized-in-bss -fno-PIC -mno-abicalls -fno-strict-aliasing -fno-inline-functions -ffreestanding -fwrapv -Wall -Wextra -Wno-missing-braces
else ifeq ($(COMPILER),clang)
CFLAGS += -mfpxx -target mips -mabi=32 -G 0 -mhard-float -fomit-frame-pointer -fno-stack-protector -fno-common -I include -I src/ -I $(BUILD_DIR)/include -fno-PIC -mno-abicalls -fno-strict-aliasing -fno-inline-functions -ffreestanding -fwrapv -Wall -Wextra
CFLAGS += -Wno-missing-braces
CFLAGS += -target mips -mabi=32 -G 0 -mhard-float -fomit-frame-pointer -fno-stack-protector -fno-common -I include -I src/ -I $(BUILD_DIR)/include -fno-PIC -mno-abicalls -fno-strict-aliasing -fno-inline-functions -ffreestanding -fwrapv -Wall -Wextra -Wno-missing-braces -fno-jump-tables
else
CFLAGS += -non_shared -Wab,-r4300_mul -Xcpluscomm -Xfullwarn -signed -32
endif
@@ -511,7 +440,7 @@ else
RSPASM := $(TOOLS_DIR)/armips
endif
ENDIAN_BITWIDTH := $(BUILD_DIR)/endian-and-bitwidth
EMULATOR = mupen64plus
EMULATOR = ~/Downloads/mupen64plus/mupen64plus-gui
EMU_FLAGS =
LOADER = loader64
LOADER_FLAGS = -vwf
@@ -562,7 +491,6 @@ test: $(ROM)
test-pj64: $(ROM)
wine ~/Desktop/new64/Project64.exe $<
# someone2639
load: $(ROM)
$(LOADER) $(LOADER_FLAGS) $<
@@ -573,7 +501,7 @@ libultra: $(BUILD_DIR)/libultra.a
$(BUILD_DIR)/asm/boot.o: $(IPL3_RAW_FILES)
$(BUILD_DIR)/src/game/crash_screen.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
$(BUILD_DIR)/lib/rsp.o: $(BUILD_DIR)/rsp/rspboot.bin $(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
$(BUILD_DIR)/levels/scripts.o: $(BUILD_DIR)/include/level_headers.h
@@ -615,17 +543,9 @@ $(BUILD_DIR)/src/usb/usb.o: OPT_FLAGS := -O0
$(BUILD_DIR)/src/usb/usb.o: CFLAGS += -Wno-unused-variable -Wno-sign-compare -Wno-unused-function
$(BUILD_DIR)/src/usb/debug.o: OPT_FLAGS := -O0
$(BUILD_DIR)/src/usb/debug.o: CFLAGS += -Wno-unused-parameter -Wno-maybe-uninitialized
# File specific opt flags
$(BUILD_DIR)/src/audio/*.o: OPT_FLAGS := -Os -fno-jump-tables
$(BUILD_DIR)/src/engine/surface_collision.o: OPT_FLAGS := $(COLLISION_OPT_FLAGS)
$(BUILD_DIR)/src/engine/math_util.o: OPT_FLAGS := $(MATH_UTIL_OPT_FLAGS)
$(BUILD_DIR)/src/game/rendering_graph_node.o: OPT_FLAGS := $(GRAPH_NODE_OPT_FLAGS)
# $(info OPT_FLAGS: $(OPT_FLAGS))
# $(info COLLISION_OPT_FLAGS: $(COLLISION_OPT_FLAGS))
# $(info MATH_UTIL_OPT_FLAGS: $(MATH_UTIL_OPT_FLAGS))
# $(info GRAPH_NODE_OPT_FLAGS: $(GRAPH_NODE_OPT_FLAGS))
$(BUILD_DIR)/src/audio/*.o: OPT_FLAGS := -Os -fno-jump-tables
$(BUILD_DIR)/src/engine/math_util.o: OPT_FLAGS := -Ofast -fno-unroll-loops -fno-peel-loops --param case-values-threshold=20
$(BUILD_DIR)/src/game/rendering_graph_node.o: OPT_FLAGS := -Ofast --param case-values-threshold=20
ALL_DIRS := $(BUILD_DIR) $(addprefix $(BUILD_DIR)/,$(SRC_DIRS) asm/debug $(GODDARD_SRC_DIRS) $(LIBZ_SRC_DIRS) $(ULTRA_BIN_DIRS) $(BIN_DIRS) $(TEXTURE_DIRS) $(TEXT_DIRS) $(SOUND_SAMPLE_DIRS) $(addprefix levels/,$(LEVEL_DIRS)) rsp include) $(YAY0_DIR) $(addprefix $(YAY0_DIR)/,$(VERSION)) $(SOUND_BIN_DIR) $(SOUND_BIN_DIR)/sequences/$(VERSION)
@@ -636,7 +556,7 @@ $(BUILD_DIR)/include/text_strings.h: $(BUILD_DIR)/include/text_menu_strings.h
$(BUILD_DIR)/src/menu/file_select.o: $(BUILD_DIR)/include/text_strings.h
$(BUILD_DIR)/src/menu/star_select.o: $(BUILD_DIR)/include/text_strings.h
$(BUILD_DIR)/src/game/ingame_menu.o: $(BUILD_DIR)/include/text_strings.h
$(BUILD_DIR)/src/game/puppycam2.o: $(BUILD_DIR)/include/text_strings.h
$(BUILD_DIR)/src/game/puppycam2.o: $(BUILD_DIR)/include/text_strings.h

View File

@@ -1,43 +1,23 @@
# ![](https://i.imgur.com/CeOukzk.gif) HackerSM64 ![](https://i.imgur.com/s0LUbTo.gif)
**AFTER CLONING THE REPO, CHECK OUT THE `include/config` FOLDER BEFORE ANYTHING ELSE! THERE'S A LOT OF STUFF IN THIS REPO THAT CAN BE TOGGLED THERE.**
**[Thank you to Kaze Emanuar for these major optimizations!](https://www.youtube.com/watch?v=uYPH-NH3B6k)
**AFTER CLONING THE REPO, CHECK OUT THE `include/config.h` FILE BEFORE ANYTHING ELSE! IT THERE'S A LOT OF STUFF IN THIS REPO THAT CAN BE TOGGLED THERE.**
HackerSM64 now has a discord server! https://discord.gg/brETAakcXr
This repo requires BOTH a US ROM and a JP ROM in order to build. Place baserom.us.z64 in the repo as usual and ALSO include baserom.jp.z64.
This repo needs BOTH an US ROM and a JP ROM in order to build. Place baserom.us.z64 in the repo as usual and ALSO place baserom.jp.z64
This repo needs gcc in order to be able to build it. To install it, run `sudo apt install gcc-mips-linux-gnu`
This is a fork of the ultrasm64 repo by CrashOveride which includes the following commonly used patches (patches marked with `*` are toggleable in the config files):
**Credits**
- **ArcticJaguar725**: Most audio configuration and layout changes, colored ia4 text, floombas, various bugfixes, and more
- **CowQuack**: Adjustable skybox sizes, area-specific skybox function
- **thecozies**: Water surface types, general maintenance, and time
- **MrComit**: General use object defines, JUMP_KICK_FIX, LEDGE_GRABS_CHECK_SLOPE_ANGLE
- **aglab2**: Bugfixes (particularly puppycam), refactor stuff
- **someone2639**: math.s and crash screen disam, stack trace, map packing, shiftable segments 2, S2DEX engine
- **Arthurtilly**: Platform Displacement 2
- **Fazana**: PuppyLib, ucode swapping, audio load time optimisations (with Arctic), general hacker qol improvements, visual debug
- **Reonu**: Starting the project/repo, widescreen, reonucam, various defines for hacker QoL
- **JoshDuMan**: Decomp guy, general assistance
- **Arceveti**: Silhouette, shadow optimisation, better hanging, breath meter
- **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
- **Pyro Jay**: Texture improvements, repo banner art, some QoL stuff
- **CrashOveride**: creating the [ultrasm64](https://github.com/CrashOveride95/ultrasm64) repo
- **falcobuster**: Original coordinate overflow fix (world scale), ASM version of extended bounds
- **anonymous_moose**: porting falco's extended bounds to decomp
Thanks to Frame#5375 and AloXado320 for also helping with silhouette stuff
This is a fork of the ultrasm64 repo by CrashOveride which includes the following commonly used patches (patches marked with `*` are toggleable in `config.h`):
**Lighting Engine by Wiseguy**
- Lighting Engine is available on a separate branch ([base/lighting-engine-wip](https://github.com/Reonu/HackerSM64/tree/base/lighting-engine-wip)). Instructions on how to use it are in the readme of that branch.
- Lighting Engine is available on a separate branch `(lighting-engine)`. Instructions on how to use it are in the readme of that branch.
- Alternatively, the main repo has `Puppylights` available, which is a more lightweight, but limited lighting library intended to be used to modify existing light properties. You can look at `puppylights.c` to find out how to use it.
**Puppycam**
- Puppycam is available on the master branch now, you can toggle it in `config/config_camera.h`. *
- Puppycam is available on the master branch now, you can toogle it in config.h. *
**Collision:**
- Slope fix and exposed ceilings fix
@@ -45,11 +25,11 @@ Thanks to Frame#5375 and AloXado320 for also helping with silhouette stuff
- Jump kick fix *
- Configurable wallkick angle, in degrees *
- Possibility of disabling BLJs *
- Hanging fix (Mario can grab hangable ceilings from any state, instead of only jump or double jump) *
- Hanging fix (mario can grab hangable ceilings from any state, instead of only jump or double jump) *
- Increased maximum pole length (The game will read bparam1 and bparam2 together as a single value, so you can have a very long pole) *
- Platform Displacement 2 by Arthurtilly *
- Water Surface Type patch by thecozies
- Better wall collision with rounded corners by FramePerfection, merged by Cheezepin & Arceveti
- Better Wall Collision With Rounded Corners by FramePerfection, merged by Cheezepin & Arceveti
- Automatically calculate the optimal collision distance for an object based on its vertices, by Kaze *
**Common Hack Changes:**
@@ -62,8 +42,8 @@ Thanks to Frame#5375 and AloXado320 for also helping with silhouette stuff
- Removed course-specific camera processing *
- You can increase the number of frames that you have to perform a firsty *
- Ability to set Mario's movement speed when hanging from a ceiling *
- Tighter hanging controls (Mario will face the direction of the analog stick directly while hanging from a ceiling) *
- reonucam3: custom camera by Reonu. This is included as a .patch file in the enhancements folder, you need to apply it if you want this camera.
- Tighter hanging controls (mario will face the direction of the analog stick directly while hanging from a ceiling) *
- reonucam3: custom camera by me. This is included as a .patch file in the enhancements folder, you need to apply it if you want this camera.
This video shows a rundown of the features: https://youtu.be/TQNkznX9Z3k
- Ability to disable Mario getting suck in snow or sand
@@ -72,34 +52,34 @@ Thanks to Frame#5375 and AloXado320 for also helping with silhouette stuff
- Debug mode: prints mario's coordinates, angle and speed, and a FPS counter.
- Automatic console/emulator detection. If emulator is detected, LODs are disabled. *
- Ability to configure whether there's a 100 coin star at all and how many coins are required to spawn it *
- Ability to easily change the warp that EXIT COURSE takes you to via `config/config_menu.h`, or disable it entirely. *
- 16 bit model IDs by someone2639. This means you can have up to 65536 models (lol). You can set the maximum number of model IDs in `config/config_game.h`.
- Ability to easily change the warp that EXIT COURSE takes you to via config.h, or disable it entirely. *
- 16 bit model IDs by someone2639. This means you can have up to 65536 models (lol). You can set the maximum number of model IDs in `config.h`.
- Apply_patch.sh improved
- Removed the ifdef hell in `file_select.c` and `ingame_menu.c`
- Added Blake's custom function for object model stuff: `obj_set_model` and `obj_has_model`
- Added function to get the model ID from an object: `obj_get_model_id` (by Arceveti)
- The "far" variable is now u16, allowing you to increase the farclip (the max distance at which geometry is rendered). However, when increasing the farclip, make sure to increase the nearclip by the same ratio, or rendering will break on console and LLE plugins.
- Many general use defines for object struct members, meant for use in custom object behaviors. Check `include/object_fields.h` for more info on this. (By MrComit)
- Many general use defines for object struct members, meant for use in custom object behaviors. Check `object_fields.h` for more info on this. (By MrComit)
- Included `actors/group0.c` in `behavior_data.c`
- The internal ROM name is now set with a define in `config/config_rom.h` to make it simpler
- The internal ROM name is now set with a define in `config.h` to make it simpler
- There is a `gIsConsole` variable that is 1 when running on console and 0 when running on emulator. This way you can wrap your code in a console check.
- Expanded audio heap allows for a larger concurrent note count and the importing of more m64 sequences and sound banks (By ArcticJaguar725) *
- You can set a test level in `config/config_debug.h` in order to boot straight into it, so you can quickly test the level you're working on. *
- Allow all surfaces in the game to have a `force` parameter. Activating this doesn't REQUIRE you to set `force` for every surface: If you don't set, it will default to 0x0000 rather than crashing. Increases RAM usage of collision. *
- You can set a test level in config.h in order to boot straight into it, so you can quickly test the level you're working on. *
- Allows all surfaces in the game to have a `force` parameter. Activating this doesn't REQUIRE you to set `force` for every surface: If you don't set, it will default to 0x0000 rather than crashing. Increases RAM usage of collision. *
- The clown font includes the entire English alphabet.
- Colored ia4 text support. Format: `"@XXXXXXXX[YOUR TEXT]@--------"` (By ArcticJaguar725)
- Example Text: `"@FF0000FFRED @00FF00FFGREEN @0000FFFFBLUE @FFFFFF00INVISIBLE @--------NORMAL"`
- NOTE: It is not mandatory to reset the text color with `"@--------"`, but text will need to be recolored each time it scrolls in a dialog box, or the custom color will reset.
- Toggle visiblity of collision surfaces and object hitboxes with Visual Surface Debug. `config/config_debug.h` has VISUAL_DEBUG which can be turned on to enable this feature.
- Toggle visiblity of collision surfaces and object hitboxes with Visual Surface Debug. `config.h` has VISUAL_DEBUG which can be turned on to enable this feature.
- Workaround for infinite death loops caused by using the wrong warp type for death warps. Mario's HP will be restored when being warped to any warp if (and only if) he was warped while dead. *
**Other Bugfixes:**
- Castle music fix (fixes the castle music sometimes triggering after getting a dialog) *
- bparam4 fix (the game no longer uses bparam4 to check if an object is Mario and therefore you can safely use it)
- Castle music fix (Fixes the castle music sometimes triggering after getting a dialog) *
- bparam4 fix (the game no longer uses bparam4 to check if an object is mario and therefore you can safely use it)
- Instant warp offset fix (makes the instant warp offset work even when warping to a different area) *
- haveyourcake, also known as cake screen fix. Made by Wiseguy and ported/PR'd by Cheezepin
- Tree particle fix (Whether a tree uses snow particles or not is decided via the model IDs instead of the course number) *
- Adjustable world scale. You can change the geometry scaling of your level, which allow large levels to render correctly on console and LLE emulators while not hurting anything on HLE plugins.
- Coordinate overflow fix by falcobuster. Your levels will render correctly on console and LLE emulators even when using 2x or 4x bounds, while not hurting anything on HLE plugins. *This is automatic now, you don't have to set WORLD_SCALE manually.*
- A couple vanilla texture fixes
- Smoke fix (the smoke texture uses the correct texture format)
@@ -108,14 +88,14 @@ Thanks to Frame#5375 and AloXado320 for also helping with silhouette stuff
- This means that you'll have to do your framebuffer effects on buffer 0 for emulator, but NOT for console. You can use the `gIsConsole` variable to check for console when doing your framebuffer effects.
- Widescreen (16:9) support toggleable by pressing `L` in the pause menu. *
- S2DEX engine by someone2639! To use it, compile with `make TEXT_ENGINE=s2dex_text_engine` or just set `TEXT_ENGINE` to `s2dex_text_engine` in the makefile.
- ia8 (64x64) coins, the vanilla coin texture is upgraded to accomodate. *
- ia8 (64x64) 30 FPS coins (Textures by InTheBeef, cleaned up by Arceveti). *
- Floombas! Simply just retextured goombas with customizable behaviors (does not overwrite standard goombas). *
- ia8 coins (64x64), the vanilla coin texture is upgraded to accomodate. *
- ia8 30 FPS (64x64) coins (Textures by InTheBeef, cleaned up by Arceveti). *
- Floombas! Simply just retextured goombas with custom behaviors (does not overwrite standard goombas). *
- HD texture support for intro splash screen (with floombas if enabled). *
- Mario's silhouette is shown when behind most surfaces (By Frame#5375, Axollyon, AloXado320, Wiseguy, Arceveti) *
- Skybox size modifier. You can have 2x, 3x and 4x size skyboxes (you can select the skybox size in `config/config_graphics.h`.) Please note that this might affect console performance, especially 4x mode. 2x or 3x mode is recommended if aiming for console. By CowQuack *
- Skybox size modifier. You can have 2x, 3x and 4x size skyboxes (you can select the skybox size in `config.h`.) Please note that this might affect console performance, especially 4x mode. 2x or 3x mode is recommended if aiming for console. By CowQuack *
- You can set the black border size to different values for console and emulator. It's set to 0 by default for both. *
- This repo supports a much better implementation of reverb over vanilla's fake echo reverb. Great for caves or eerie levels, as well as just a better audio experience in general. See `audio/synthesis.c` for more details and configuration info. (By ArcticJaguar725) *
- This repo supports much better implementation of reverb over vanilla's fake echo reverb. Great for caves or eerie levels, as well as just a better audio experience in general. See `audio/synthesis.c` for more configuration info. (By ArcticJaguar725) *
- Fazana's "puppyprint" text engine. *
- Use `print_small_text` to print normal text. The two last params are aligment and how many characters to print (-1 means PRINT_ALL).
- Use `render_multi_image` to draw large texture rectangles consisting of multiple images on the screen.

View File

@@ -1 +0,0 @@
v2.0.1

View File

@@ -1,4 +1,4 @@
// unreferenced
// unreferenced animation
// 0x0500616C
const struct Animation *const blargg_seg5_anims_0500616C[] = {
&blargg_seg5_anim_05006154,

View File

@@ -4,7 +4,7 @@ const GeoLayout boo_geo[] = {
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 26214),
GEO_OPEN_NODE(),
GEO_ASM(GEO_TRANSPARENCY_MODE_NORMAL, geo_update_layer_transparency),
GEO_ASM(0, geo_update_layer_transparency),
GEO_SWITCH_CASE(2, geo_switch_anim_state),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, boo_seg5_dl_0500C1B0),

View File

@@ -4,7 +4,7 @@ const GeoLayout boo_castle_geo[] = {
GEO_OPEN_NODE(),
GEO_SCALE(0x00, 26214),
GEO_OPEN_NODE(),
GEO_ASM(GEO_TRANSPARENCY_MODE_NORMAL, geo_update_layer_transparency),
GEO_ASM(0, geo_update_layer_transparency),
GEO_SWITCH_CASE(2, geo_switch_anim_state),
GEO_OPEN_NODE(),
GEO_DISPLAY_LIST(LAYER_OPAQUE, boo_castle_seg6_dl_06017CE0),

View File

@@ -332,7 +332,7 @@ const GeoLayout bowser_shadow_geo[] = {
const GeoLayout bowser_geo[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_ASM(GEO_TRANSPARENCY_MODE_NORMAL, geo_update_layer_transparency),
GEO_ASM(0, geo_update_layer_transparency),
GEO_SWITCH_CASE(3, geo_switch_anim_state),
GEO_OPEN_NODE(),
GEO_NODE_START(),
@@ -362,7 +362,7 @@ const GeoLayout bowser_geo[] = {
const GeoLayout bowser_geo_no_shadow[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
GEO_ASM(GEO_TRANSPARENCY_MODE_NORMAL, geo_update_layer_transparency),
GEO_ASM(0, geo_update_layer_transparency),
GEO_SWITCH_CASE(3, geo_switch_anim_state),
GEO_OPEN_NODE(),
GEO_NODE_START(),

View File

@@ -4,13 +4,13 @@
const Collision breakable_box_seg8_collision[] = {
COL_INIT(),
COL_VERTEX_INIT(0x8),
COL_VERTEX(-100, 0, -100),
COL_VERTEX(-100, 0, 100),
COL_VERTEX(-100, 200, 100),
COL_VERTEX(100, 0, 100),
COL_VERTEX(100, 200, 100),
COL_VERTEX(100, 0, -100),
COL_VERTEX(100, 200, -100),
COL_VERTEX(-100, 0, -100),
COL_VERTEX(-100, 0, 100),
COL_VERTEX(-100, 200, 100),
COL_VERTEX( 100, 0, 100),
COL_VERTEX( 100, 200, 100),
COL_VERTEX( 100, 0, -100),
COL_VERTEX( 100, 200, -100),
COL_VERTEX(-100, 200, -100),
COL_TRI_INIT(SURFACE_NO_CAM_COLLISION, 12),
@@ -29,6 +29,3 @@ const Collision breakable_box_seg8_collision[] = {
COL_TRI_STOP(),
COL_END(),
};
UNUSED static const u32 breakable_box_unused_1 = 0;
UNUSED static const u64 breakable_box_unused_2 = 0;

View File

@@ -67,7 +67,7 @@ const Gfx breakable_box_seg8_sub_dl_end[] = {
// 0x08012CD8 - 0x08012D20
const Gfx breakable_box_seg8_sub_dl_begin[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGBFADE, G_CC_MODULATERGBFADE),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
gsSPClearGeometryMode(G_SHADING_SMOOTH),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),

View File

@@ -2,9 +2,6 @@
// It's possible that bubba and bub used to be 2 "actors" in
// one actor file.
// Bin ID? What is this?
UNUSED static const u64 bubba_unused_1 = 0;
// Bubba
// 0x05000008

View File

@@ -27,7 +27,6 @@ const Gfx bubble_seg4_dl_0401DD60[] = {
gsSPVertex(bubble_seg4_vertex_0401CD20, 4, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList(),
};
@@ -41,7 +40,6 @@ const Gfx bubble_seg4_dl_0401DDE0[] = {
gsSPVertex(bubble_seg4_vertex_0401CD20, 4, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList(),
};

View File

@@ -2,10 +2,7 @@
const GeoLayout burn_smoke_geo[] = {
GEO_NODE_START(),
GEO_OPEN_NODE(),
#ifdef BURN_SMOKE_FIX
GEO_ASM(GEO_TRANSPARENCY_MODE_INTER, geo_update_layer_transparency),
#endif
GEO_DISPLAY_LIST(LAYER_TRANSPARENT_INTER, burn_smoke_seg4_dl),
GEO_DISPLAY_LIST(LAYER_TRANSPARENT, burn_smoke_seg4_dl_04022070),
GEO_CLOSE_NODE(),
GEO_END(),
};

View File

@@ -1,7 +1,7 @@
// Burn Smoke
// 0x040217C0
static const Vtx burn_smoke_seg4_vertex[] = {
static const Vtx burn_smoke_seg4_vertex_040217C0[] = {
{{{ -50, -50, 0}, 0, { 0, 992}, {0x14, 0x0a, 0x0a, 0xff}}},
{{{ 50, -50, 0}, 0, { 992, 992}, {0x14, 0x0a, 0x0a, 0xff}}},
{{{ 50, 50, 0}, 0, { 992, 0}, {0x14, 0x0a, 0x0a, 0xff}}},
@@ -12,15 +12,15 @@ static const Vtx burn_smoke_seg4_vertex[] = {
// as a transparent black burn smoke. Probably meant to show up as white-ish
// burn smoke, but mistakened for being intended as black smoke.
// 0x04021800
ALIGNED8 static const Texture burn_smoke_seg4_sub_dl_texture[] = {
ALIGNED8 static const Texture burn_smoke_seg4_texture_04021800[] = {
#include "actors/burn_smoke/burn_smoke.ia16.inc.c"
};
// 0x04022000 - 0x04022028
const Gfx burn_smoke_seg4_sub_dl_begin[] = {
const Gfx burn_smoke_seg4_dl_04022000[] = {
gsDPPipeSync(),
#ifdef BURN_SMOKE_FIX
gsDPSetCombineMode(G_CC_MODULATEIFADEA, G_CC_MODULATEIFADEA),
gsDPSetCombineMode(G_CC_MODULATEIA, G_CC_MODULATEIA),
#else
gsDPSetCombineMode(G_CC_MODULATERGBA, G_CC_MODULATERGBA),
#endif
@@ -30,14 +30,14 @@ const Gfx burn_smoke_seg4_sub_dl_begin[] = {
};
// 0x04022028 - 0x04022048
const Gfx burn_smoke_seg4_sub_dl_model[] = {
gsSPVertex(burn_smoke_seg4_vertex, 4, 0),
const Gfx burn_smoke_seg4_dl_04022028[] = {
gsSPVertex(burn_smoke_seg4_vertex_040217C0, 4, 0),
gsSP2Triangles( 0, 1, 2, 0x0, 0, 2, 3, 0x0),
gsSPEndDisplayList(),
};
// 0x04022048 - 0x04022070
const Gfx burn_smoke_seg4_sub_dl_end[] = {
const Gfx burn_smoke_seg4_dl_04022048[] = {
gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
@@ -46,14 +46,14 @@ const Gfx burn_smoke_seg4_sub_dl_end[] = {
};
// 0x04022070 - 0x040220C8
const Gfx burn_smoke_seg4_dl[] = {
gsSPDisplayList(burn_smoke_seg4_sub_dl_begin),
const Gfx burn_smoke_seg4_dl_04022070[] = {
gsSPDisplayList(burn_smoke_seg4_dl_04022000),
#ifdef BURN_SMOKE_FIX
gsDPLoadTextureBlock(burn_smoke_seg4_sub_dl_texture, G_IM_FMT_IA, G_IM_SIZ_16b, 32, 32, 0, G_TX_CLAMP, G_TX_CLAMP, 5, 5, G_TX_NOLOD, G_TX_NOLOD),
gsDPLoadTextureBlock(burn_smoke_seg4_texture_04021800, G_IM_FMT_IA, G_IM_SIZ_16b, 32, 32, 0, G_TX_CLAMP, G_TX_CLAMP, 5, 5, G_TX_NOLOD, G_TX_NOLOD),
#else
gsDPLoadTextureBlock(burn_smoke_seg4_sub_dl_texture, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, G_TX_CLAMP, G_TX_CLAMP, 5, 5, G_TX_NOLOD, G_TX_NOLOD),
gsDPLoadTextureBlock(burn_smoke_seg4_texture_04021800, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, G_TX_CLAMP, G_TX_CLAMP, 5, 5, G_TX_NOLOD, G_TX_NOLOD),
#endif
gsSPDisplayList(burn_smoke_seg4_sub_dl_model),
gsSPDisplayList(burn_smoke_seg4_sub_dl_end),
gsSPDisplayList(burn_smoke_seg4_dl_04022028),
gsSPDisplayList(burn_smoke_seg4_dl_04022048),
gsSPEndDisplayList(),
};

View File

@@ -1,2 +1 @@
// Empty geo script
UNUSED static const u64 cannon_lid_unused_1 = 0;

View File

@@ -9,9 +9,6 @@ static const Vtx chain_ball_seg6_vertex_06020AA0[] = {
{{{ -26, 26, 0}, 0, { 0, 0}, {0xff, 0xff, 0xff, 0xff}}},
};
// align? binid?
UNUSED static const u64 chain_ball_unused_1 = 0;
// 0x06020AE8
ALIGNED8 static const Texture chain_ball_seg6_texture_06020AE8[] = {
#include "actors/chain_ball/chain_ball.rgba16.inc.c"

View File

@@ -21,7 +21,7 @@ ALIGNED8 static const Texture chair_seg5_texture_05004060[] = {
#include "actors/chair/chair_bottom.rgba16.inc.c"
};
// unreferenced
// unreferenced texture
// 0x05004460
UNUSED ALIGNED8 static const Texture chair_seg5_texture_05004460[] = {
#include "actors/chair/chair_surface_unused.rgba16.inc.c"

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 2.5 KiB

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