Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
251 commits
Select commit Hold shift + click to select a range
a0eeb62
decomp: improve sceSifInitCmd
pezzadev Oct 13, 2026
2814df8
decomp: improve build_resident_indexed_texture_warp_meshes
pezzadev Oct 13, 2026
7f51de2
decomp: improve cmd_sem_init
pezzadev Oct 13, 2026
3e7f27b
decomp: improve music_transition
pezzadev Oct 13, 2026
7d968d5
decomp: improve sceSifInitCmd
pezzadev Oct 13, 2026
892ab44
decomp: improve sceSifInitCmd
pezzadev Oct 13, 2026
5a4122c
decomp: improve FUN_L00_002bcf98
pezzadev Oct 13, 2026
5203155
decomp: improve FUN_L14_00301de8
pezzadev Oct 13, 2026
7fc2794
decomp: improve FUN_L04_002ca420
pezzadev Oct 13, 2026
5788867
decomp: improve FUN_L00_002c26c8
pezzadev Oct 13, 2026
a47d083
decomp: improve FUN_L01_0030df40
pezzadev Oct 13, 2026
321ffc7
decomp: improve FUN_L05_00301f48
pezzadev Oct 13, 2026
493cbaa
decomp: improve FUN_L00_002bffa8
pezzadev Oct 13, 2026
f45e14e
decomp: improve FUN_L00_002c89e8
pezzadev Oct 13, 2026
0989c39
decomp: improve FUN_L12_00303370
pezzadev Oct 13, 2026
0931797
decomp: improve FUN_L00_00261b48
pezzadev Oct 13, 2026
9493201
decomp: improve FUN_L12_002e72c0
pezzadev Oct 13, 2026
584b831
decomp: improve FUN_L07_0030f5f0
pezzadev Oct 13, 2026
7355c8c
decomp: improve FUN_L08_002e3870
pezzadev Oct 13, 2026
fa0923f
decomp: improve draw_debug_text
pezzadev Oct 13, 2026
4d4a2c8
decomp: improve FUN_L00_002995d0
pezzadev Oct 13, 2026
79e5181
decomp: improve FUN_L00_002648e0
pezzadev Oct 13, 2026
da5032b
decomp: improve nanotech_upgrade_vendor
pezzadev Oct 13, 2026
a3ccfb9
decomp: improve FUN_L07_00314150
pezzadev Oct 13, 2026
77cf12a
decomp: improve FUN_L00_002c97e0
pezzadev Oct 13, 2026
2bb51d3
decomp: improve FUN_L01_00234358
pezzadev Oct 13, 2026
eea7bfd
decomp: improve FUN_L00_0020a9e8
pezzadev Oct 13, 2026
64d99fa
decomp: improve FUN_L00_00276908
pezzadev Oct 13, 2026
b517c82
decomp: improve FUN_L05_00254358
pezzadev Oct 13, 2026
54f7d0d
decomp: improve FUN_L00_001fcca0
pezzadev Oct 13, 2026
536319d
decomp: improve FUN_L04_002923b8
pezzadev Oct 13, 2026
b44dec7
decomp: improve update_hero_held_items_and_orientation
pezzadev Oct 13, 2026
ab99b0d
decomp: improve FUN_L12_00308350
pezzadev Oct 13, 2026
f8f4daa
decomp: improve FUN_L11_00310cf8
pezzadev Oct 13, 2026
11b6e4e
decomp: improve scan_hero_input_sequences
pezzadev Oct 13, 2026
231a29f
decomp: improve FUN_L00_00262030
pezzadev Oct 13, 2026
fd6ac02
decomp: improve FUN_L00_0029ff58
pezzadev Oct 13, 2026
a61c6f1
decomp: improve FUN_L11_003192c8
pezzadev Oct 13, 2026
97e4db9
decomp: improve FUN_L00_002dd8e8
pezzadev Oct 13, 2026
9915bc4
decomp: improve FUN_L07_0030dcf0
pezzadev Oct 13, 2026
ac1ad28
decomp: improve FUN_L10_002f5b58
pezzadev Oct 13, 2026
8df4a4d
decomp: improve FUN_L05_00262b58
pezzadev Oct 13, 2026
15412cd
decomp: improve FUN_L00_002464a8
pezzadev Oct 13, 2026
058ce48
decomp: improve FUN_L00_0020f160
pezzadev Oct 13, 2026
4aec1ea
decomp: improve FUN_L05_002f87a8
pezzadev Oct 13, 2026
0399a3a
decomp: improve register_part_types
pezzadev Oct 13, 2026
9614c46
decomp: improve FUN_L15_001ff938
pezzadev Oct 13, 2026
a96c0c2
decomp: improve FUN_L00_0029ead8
pezzadev Oct 13, 2026
33887e2
decomp: improve FUN_L10_002e91b8
pezzadev Oct 13, 2026
6146b79
decomp: improve FUN_L15_002a3138
pezzadev Oct 13, 2026
56c766a
decomp: improve FUN_L00_002caf70
pezzadev Oct 13, 2026
3f9125b
decomp: improve update_help_effect
pezzadev Oct 13, 2026
4cdfa1c
decomp: improve FUN_L10_002e8ab0
pezzadev Oct 13, 2026
ec5e958
decomp: improve FUN_L15_002e5958
pezzadev Oct 13, 2026
cc26f3a
decomp: improve FUN_L01_002b91c8
pezzadev Oct 13, 2026
315c01c
decomp: improve FUN_L00_00237200
pezzadev Oct 13, 2026
c764dc4
decomp: improve draw_quad_grid_with_dynamic_uvs
pezzadev Oct 13, 2026
ba022d7
decomp: improve FUN_L08_002f44c0
pezzadev Oct 13, 2026
2c53fce
decomp: improve FUN_L10_002da690
pezzadev Oct 13, 2026
cae29ed
decomp: improve FUN_L00_002d9810
pezzadev Oct 13, 2026
dd04f43
decomp: improve FUN_L02_002ea210
pezzadev Oct 13, 2026
2e29328
decomp: improve FUN_L14_00301fa8
pezzadev Oct 13, 2026
3462a30
decomp: improve FUN_L06_002feb40
pezzadev Oct 13, 2026
5ab362c
decomp: improve FUN_L08_003024d8
pezzadev Oct 13, 2026
7ac2338
decomp: improve FUN_L12_002bf140
pezzadev Oct 13, 2026
f1a9fb0
decomp: improve FUN_L13_00306300
pezzadev Oct 13, 2026
365725e
decomp: improve FUN_L06_00303160
pezzadev Oct 13, 2026
3877ef9
decomp: improve FUN_L08_002dc9a8
pezzadev Oct 13, 2026
b31482d
decomp: improve FUN_L00_002ebe70
pezzadev Oct 13, 2026
e17f185
decomp: improve FUN_L05_00262f50
pezzadev Oct 13, 2026
5649a36
decomp: improve update_leg_rig_motion
pezzadev Oct 13, 2026
e326853
decomp: improve update_motion_and_emit_effects
pezzadev Oct 13, 2026
7411c40
decomp: improve FUN_L00_0020dd20
pezzadev Oct 13, 2026
a5feaee
decomp: improve FUN_L15_002aa280
pezzadev Oct 13, 2026
06c7682
decomp: improve FUN_L12_00304e00
pezzadev Oct 13, 2026
3a5f4e8
decomp: improve FUN_L06_003049f8
pezzadev Oct 13, 2026
7bcefe8
decomp: improve FUN_L06_002fbfb0
pezzadev Oct 13, 2026
f10988f
decomp: improve FUN_L18_002e9768
pezzadev Oct 13, 2026
95ec85a
decomp: improve FUN_L07_0030d4d8
pezzadev Oct 13, 2026
77fa7a6
decomp: improve update_path_camera
pezzadev Oct 13, 2026
40ff313
decomp: improve FUN_L08_002d23f0
pezzadev Oct 13, 2026
6061071
decomp: improve FUN_L00_002a5040
pezzadev Oct 13, 2026
e78f0df
decomp: improve FUN_L00_002484e0
pezzadev Oct 13, 2026
bb743be
decomp: improve set_pal_mode
pezzadev Oct 13, 2026
dc8f46c
decomp: improve sceGsSetDefDispEnv
pezzadev Oct 13, 2026
4f961ec
decomp: improve build_resident_indexed_texture_warp_meshes
pezzadev Oct 13, 2026
ee7267b
decomp: improve set_pal_mode
pezzadev Oct 13, 2026
78c67a4
decomp: improve update_level_gameplay_frame
pezzadev Oct 13, 2026
9cf2ea5
decomp: improve render_configured_text_label
pezzadev Oct 13, 2026
c84b462
decomp: improve sceGsSetDefDispEnv
pezzadev Oct 13, 2026
5bbef10
decomp: improve FUN_L00_0020f580
pezzadev Oct 13, 2026
87b4edc
decomp: improve FUN_L06_002f5d78
pezzadev Oct 13, 2026
d5b1297
decomp: improve FUN_L05_002d1688
pezzadev Oct 13, 2026
34453bc
decomp: improve render_configured_text_label
pezzadev Oct 13, 2026
b09fa9a
decomp: improve FUN_L00_002382a0
pezzadev Oct 13, 2026
c7d5e10
decomp: improve update_moby_sequence
pezzadev Oct 13, 2026
3e600ac
decomp: improve sceGsSetDefDispEnv
pezzadev Oct 13, 2026
379a790
decomp: improve update_camera_record
pezzadev Oct 13, 2026
df05627
decomp: improve render_configured_text_label
pezzadev Oct 13, 2026
85bc787
decomp: improve FUN_L00_002cfcb8
pezzadev Oct 13, 2026
466d33b
decomp: improve FUN_L00_00260a88
pezzadev Oct 13, 2026
25f7fbd
decomp: improve FUN_L00_002dbf28
pezzadev Oct 13, 2026
58c8202
decomp: improve FUN_L01_002f5168
pezzadev Oct 13, 2026
f1258e3
decomp: improve FUN_L00_002cd1f0
pezzadev Oct 13, 2026
9b1661d
decomp: improve FUN_L00_002b77f0
pezzadev Oct 13, 2026
f45775b
decomp: improve FUN_L08_002f5e58
pezzadev Oct 13, 2026
51a5ff1
decomp: improve update_debug_menu
pezzadev Oct 13, 2026
4480242
decomp: improve FUN_L13_002ba178
pezzadev Oct 13, 2026
5b75bb9
decomp: improve sceGsSetDefDispEnv
pezzadev Oct 13, 2026
9d3dd55
decomp: improve FUN_L00_002b49a8
pezzadev Oct 13, 2026
f49fa1b
decomp: improve FUN_L00_002ce358
pezzadev Oct 13, 2026
d5c3645
decomp: improve FUN_L00_002ddf60
pezzadev Oct 13, 2026
fda468e
decomp: improve update_linked_moby_path_transition
pezzadev Oct 13, 2026
978d9d2
decomp: improve FUN_L00_002d09b8
pezzadev Oct 13, 2026
da2186e
decomp: improve FUN_L12_002e9f68
pezzadev Oct 13, 2026
1aa8f11
decomp: improve sceGsSetDefDispEnv
pezzadev Oct 13, 2026
bb6a729
decomp: improve FUN_L06_002f9a28
pezzadev Oct 13, 2026
12a8640
decomp: improve FUN_L01_002edca0
pezzadev Oct 13, 2026
e150dcf
decomp: improve FUN_L00_002be650
pezzadev Oct 13, 2026
e52d0c7
decomp: improve FUN_L00_00257218
pezzadev Oct 13, 2026
c9e7b9c
decomp: improve FUN_L06_002e8678
pezzadev Oct 13, 2026
03a4422
decomp: improve FUN_L13_00307e98
pezzadev Oct 13, 2026
33932b1
decomp: improve FUN_L00_00261b48
pezzadev Oct 13, 2026
0f7e571
decomp: improve FUN_L01_00234358
pezzadev Oct 13, 2026
3dc1693
decomp: improve FUN_L00_002d5de8
pezzadev Oct 13, 2026
3dfddfd
decomp: improve FUN_L08_002e2250
pezzadev Oct 13, 2026
59756c7
decomp: improve FUN_L00_002bcf98
pezzadev Oct 13, 2026
4f59b57
decomp: improve FUN_L00_00257218
pezzadev Oct 13, 2026
f06e71e
decomp: improve FUN_L05_00254358
pezzadev Oct 13, 2026
8c9504e
decomp: improve FUN_L00_002cbcc0
pezzadev Oct 13, 2026
780ccb7
decomp: improve FUN_L00_00276908
pezzadev Oct 13, 2026
c2a5b7f
decomp: improve FUN_L00_00275aa0
pezzadev Oct 13, 2026
6335bd7
decomp: improve FUN_L10_002e5be0
pezzadev Oct 13, 2026
4123069
decomp: improve FUN_L08_002e2250
pezzadev Oct 13, 2026
dd0aef5
decomp: improve draw_debug_text
pezzadev Oct 13, 2026
48b6508
decomp: improve FUN_L00_00261b48
pezzadev Oct 13, 2026
dbc507e
decomp: improve FUN_L00_002cbcc0
pezzadev Oct 13, 2026
b0b9f20
decomp: improve scan_hero_input_sequences
pezzadev Oct 13, 2026
f59ccd7
decomp: improve FUN_L00_002bcf98
pezzadev Oct 13, 2026
719cb4e
decomp: improve FUN_L05_00254358
pezzadev Oct 13, 2026
1da7702
decomp: improve FUN_L00_002721f0
pezzadev Oct 13, 2026
987e813
decomp: improve FUN_L00_00276908
pezzadev Oct 13, 2026
449380a
decomp: improve FUN_L12_00308350
pezzadev Oct 13, 2026
dda60d6
decomp: improve FUN_L02_00264e70
pezzadev Oct 13, 2026
adfc792
decomp: improve FUN_L00_0029ff58
pezzadev Oct 13, 2026
b3c8a03
decomp: improve spawn_troll_alert_particles
pezzadev Oct 13, 2026
7f0338b
decomp: improve FUN_L00_002721f0
pezzadev Oct 13, 2026
0f0081c
decomp: improve FUN_L00_00262030
pezzadev Oct 13, 2026
81715da
decomp: improve FUN_L00_00276908
pezzadev Oct 13, 2026
f821f32
decomp: improve FUN_L05_00254058
pezzadev Oct 13, 2026
2c08ae6
decomp: improve FUN_L02_00264e70
pezzadev Oct 13, 2026
7de26a0
decomp: improve FUN_L00_002721f0
pezzadev Oct 13, 2026
807a251
decomp: improve draw_rope_strips
pezzadev Oct 13, 2026
a085b9c
decomp: improve FUN_L18_002f9eb8
pezzadev Oct 13, 2026
295e72b
decomp: improve FUN_L06_00249738
pezzadev Oct 13, 2026
4088a84
decomp: improve FUN_L00_00276908
pezzadev Oct 13, 2026
4f9c5bb
decomp: improve FUN_L11_003192c8
pezzadev Oct 13, 2026
61f65a2
decomp: improve FUN_L10_002dcc58
pezzadev Oct 13, 2026
097f47d
decomp: improve FUN_L00_002dd8e8
pezzadev Oct 13, 2026
a9713a9
decomp: improve FUN_L05_002f87a8
pezzadev Oct 13, 2026
af9bf02
decomp: improve FUN_L05_00254058
pezzadev Oct 13, 2026
b604d7b
decomp: improve FUN_L10_002f5b58
pezzadev Oct 13, 2026
debbc48
decomp: improve FUN_L07_0030dcf0
pezzadev Oct 13, 2026
49beb17
decomp: improve FUN_L00_00275aa0
pezzadev Oct 13, 2026
eb8a255
decomp: improve FUN_L00_0020f160
pezzadev Oct 13, 2026
2e83dbd
decomp: improve FUN_L14_002de670
pezzadev Oct 13, 2026
41873a8
decomp: improve FUN_L00_002dd8e8
pezzadev Oct 13, 2026
a1eb545
decomp: improve FUN_L11_003192c8
pezzadev Oct 13, 2026
4dd58ad
decomp: improve FUN_L07_0030dcf0
pezzadev Oct 13, 2026
9bdc365
decomp: improve FUN_L06_002d8738
pezzadev Oct 13, 2026
1355144
decomp: improve FUN_L10_002e91b8
pezzadev Oct 13, 2026
aadfd28
decomp: improve FUN_L00_002dd8e8
pezzadev Oct 13, 2026
71935da
decomp: improve FUN_L05_002f87a8
pezzadev Oct 13, 2026
7d3b21d
decomp: improve FUN_L07_0031d2e0
pezzadev Oct 13, 2026
96ff4ae
decomp: improve FUN_L08_002d3878
pezzadev Oct 13, 2026
4bc5c55
decomp: improve update_help_effect
pezzadev Oct 13, 2026
02f6020
decomp: improve FUN_L14_002dfd10
pezzadev Oct 13, 2026
c2a9b4f
decomp: improve FUN_L01_002b91c8
pezzadev Oct 13, 2026
a03ca51
decomp: improve FUN_L07_0030cf90
pezzadev Oct 13, 2026
d78769e
decomp: improve FUN_L10_002f5b58
pezzadev Oct 13, 2026
bb6b285
decomp: improve FUN_L00_00237200
pezzadev Oct 13, 2026
a7a0630
decomp: improve FUN_L10_002da690
pezzadev Oct 13, 2026
6f7d4e2
decomp: improve FUN_L08_002f44c0
pezzadev Oct 13, 2026
5219572
decomp: improve FUN_L00_002dd8e8
pezzadev Oct 13, 2026
a7af165
decomp: improve FUN_L12_002bf140
pezzadev Oct 13, 2026
0e9f98b
decomp: improve draw_quad_grid_with_dynamic_uvs
pezzadev Oct 13, 2026
df64e2e
decomp: improve FUN_L11_00310cf8
pezzadev Oct 13, 2026
7751ff3
decomp: improve FUN_L00_00276368
pezzadev Oct 13, 2026
13c7b2d
decomp: improve FUN_L14_00301fa8
pezzadev Oct 13, 2026
ce2dbf2
decomp: improve FUN_L08_003024d8
pezzadev Oct 13, 2026
cb3ae8d
decomp: improve FUN_L06_002feb40
pezzadev Oct 13, 2026
cddf6a2
decomp: improve FUN_L01_002ef350
pezzadev Oct 13, 2026
8f4cb16
decomp: improve FUN_L00_00237200
pezzadev Oct 13, 2026
f9afeb8
decomp: improve FUN_L10_002da690
pezzadev Oct 13, 2026
1ae5751
decomp: improve FUN_L00_002d5160
pezzadev Oct 13, 2026
cd4a605
decomp: improve FUN_L10_002e91b8
pezzadev Oct 13, 2026
24c2d99
decomp: improve FUN_L14_00301fa8
pezzadev Oct 13, 2026
7dca9fc
decomp: improve FUN_L10_002dcc58
pezzadev Oct 13, 2026
8771e9c
decomp: improve FUN_L06_002ff2c8
pezzadev Oct 13, 2026
787662f
decomp: improve FUN_L00_00237200
pezzadev Oct 13, 2026
f6974a7
decomp: improve FUN_L00_002d9810
pezzadev Oct 13, 2026
8d8f18b
decomp: improve FUN_L00_002d5160
pezzadev Oct 13, 2026
2eda04f
decomp: improve FUN_L06_00303160
pezzadev Oct 13, 2026
689878c
decomp: improve FUN_L14_002b2928
pezzadev Oct 13, 2026
55d6d81
decomp: improve update_motion_and_emit_effects
pezzadev Oct 13, 2026
5702214
decomp: improve FUN_L08_002dc9a8
pezzadev Oct 13, 2026
bebaf13
decomp: improve FUN_L00_00237200
pezzadev Oct 13, 2026
9a55928
decomp: improve FUN_L07_00319040
pezzadev Oct 13, 2026
a4a6c8a
decomp: improve FUN_L10_002da690
pezzadev Oct 13, 2026
4e797b4
decomp: improve FUN_L14_003017f8
pezzadev Oct 13, 2026
d88e321
decomp: improve FUN_L10_002e91b8
pezzadev Oct 13, 2026
07cce4d
decomp: improve FUN_L00_0020dd20
pezzadev Oct 13, 2026
37128ce
decomp: improve update_hero_held_items_and_orientation
pezzadev Oct 13, 2026
efae160
decomp: improve FUN_L00_00237200
pezzadev Oct 13, 2026
0d6f5e0
decomp: improve FUN_L14_00301fa8
pezzadev Oct 13, 2026
a38406f
decomp: improve update_leg_rig_motion
pezzadev Oct 13, 2026
7944784
decomp: improve FUN_L13_00306300
pezzadev Oct 13, 2026
bd686fc
decomp: improve FUN_L10_002e91b8
pezzadev Oct 13, 2026
3b42e74
decomp: improve FUN_L00_00237200
pezzadev Oct 13, 2026
ffda5f7
decomp: improve FUN_L06_002f2250
pezzadev Oct 13, 2026
522156f
decomp: improve FUN_L14_00301fa8
pezzadev Oct 13, 2026
81e64d3
decomp: improve FUN_L04_002923b8
pezzadev Oct 13, 2026
ac08a02
decomp: improve FUN_L13_00306300
pezzadev Oct 13, 2026
c5f40c1
decomp: improve FUN_L00_0020f160
pezzadev Oct 13, 2026
df1fa21
decomp: improve FUN_L06_002fbfb0
pezzadev Oct 13, 2026
6ed60a2
decomp: improve FUN_L00_00269d20
pezzadev Oct 13, 2026
ddc05ab
decomp: improve FUN_L14_00301fa8
pezzadev Oct 13, 2026
1d16a74
decomp: improve FUN_L00_002a5040
pezzadev Oct 13, 2026
2452700
decomp: improve FUN_L00_002772c0
pezzadev Oct 13, 2026
4757a3f
decomp: improve FUN_L13_00306300
pezzadev Oct 13, 2026
1459a67
decomp: improve FUN_L00_002382a0
pezzadev Oct 13, 2026
93499f3
decomp: improve update_hero_held_items_and_orientation
pezzadev Oct 13, 2026
76321db
decomp: improve update_path_camera
pezzadev Oct 13, 2026
4d9a416
decomp: improve FUN_L10_002be858
pezzadev Oct 13, 2026
c09c5f8
decomp: improve FUN_L00_00260a88
pezzadev Oct 13, 2026
efec65e
decomp: improve FUN_L00_002d73e8
pezzadev Oct 13, 2026
4036287
decomp: improve FUN_L06_002f5d78
pezzadev Oct 13, 2026
9f53e88
decomp: improve FUN_L06_002f2250
pezzadev Oct 13, 2026
ab01501
decomp: improve FUN_L00_002c89e8
pezzadev Oct 13, 2026
0fcbde0
decomp: improve FUN_L00_00276368
pezzadev Oct 13, 2026
bb8b4ba
decomp: improve FUN_L14_003017f8
pezzadev Oct 13, 2026
033f69b
decomp: improve FUN_L00_00269d20
pezzadev Oct 13, 2026
a39c7a3
decomp: improve FUN_L10_002e91b8
pezzadev Oct 13, 2026
965d695
decomp: improve update_hero_held_items_and_orientation
pezzadev Oct 13, 2026
e4fcdc1
decomp: improve FUN_L00_0020f160
pezzadev Oct 13, 2026
52bf91e
decomp: improve FUN_L00_00276368
pezzadev Oct 13, 2026
75b8895
decomp: improve FUN_L00_002382a0
pezzadev Oct 13, 2026
f4f8131
decomp: improve update_motion_and_emit_effects
pezzadev Oct 13, 2026
966c3b7
decomp: improve FUN_L06_002f5d78
pezzadev Oct 13, 2026
453f2a1
overlay: reuse shared layouts and preserve canonical function names
pezzadev Oct 13, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion config/us/rnc1.us.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -456,7 +456,7 @@ segments:
- [0x21658, c, storage/cd/handle_cd_read_callback]
- [0x216f8, textbin, text_gap_00120778_after_fun_001206d8_prefix_00120778]
- [0x21708, c, sdk/callbacks/process_native_cd_read_completion]
- [0x217a8, c, assembly/sdk/library/cmd_sem_init]
- [0x217a8, c, sdk/library/cmd_sem_init]
- [0x2183c, textbin, text_gap_00120828_post_sdk_worker]
- [0x21840, c, sdk/library/cdvd_exit]
- [0x218d4, textbin, text_gap_001208c0_post_sdk_worker_prefix_00120954]
Expand Down
58 changes: 29 additions & 29 deletions src/assembly/sdk/dma/sce_gs_set_def_disp_env.c
Original file line number Diff line number Diff line change
Expand Up @@ -28,8 +28,10 @@ void sceGsSetDefDispEnv(struct sceGsDispEnv *output, s16 pixel_storage_format, s
s32 kernel_horizontal, kernel_vertical, kernel_width, kernel_height;
s32 mode, scale;
s64 scaled_horizontal;
u64 display_width;
u16 interlace;
u64 value;
u64 display_vertical;

state = GetCoreDataTable();
if (!((u32)(state->wMode - 2) < 2) && checkModelVersion() != 0) {
Expand All @@ -56,54 +58,52 @@ void sceGsSetDefDispEnv(struct sceGsDispEnv *output, s16 pixel_storage_format, s

if ((s16)mode == 2) {
if ((s16)interlace == 1) {
scale = width + 0x9ff;
scale /= width;
scaled_horizontal = horizontal_offset * scale;
value = ((u64)((vertical_offset + kernel_vertical + 0x32) & 0xfff) << 12) |
((u64)((s64)(width * scale) - 1) << 32) |
((u64)(((s64)scaled_horizontal + ((s64)kernel_horizontal + 0x27c)) & 0xfff)) |
((u64)(s64)(scale - 1) << 23);
if (state->nSFrame_mode == 0) {
scale = height - 1;
} else {
scale = (width + 0x9ff) / width;
display_vertical = (u64)((vertical_offset + kernel_vertical + 0x32) & 0xfff) << 12;
display_width = (u64)(s64)(scale * width - 1) << 32;
scaled_horizontal = (s64)kernel_horizontal + 0x27c;
scaled_horizontal = (scaled_horizontal + horizontal_offset * scale) & 0xfff;
value = (u64)(s64)(scale - 1) << 23;
if (state->nSFrame_mode != 0) {
scale = height * 2 - 1;
} else {
scale = height - 1;
}
value |= (u64)(s64)scale << 44;
value = ((display_width | value) | ((u64)scaled_horizontal | ((u64)(s64)scale << 44))) | display_vertical;
} else {
scale = width + 0x9ff;
scale /= width;
scaled_horizontal = horizontal_offset * scale;
value = ((u64)(s64)(height - 1) << 44) |
((u64)(s64)(scale - 1) << 23) |
scaled_horizontal = scale * horizontal_offset;
value = ((u64)(s64)(scale - 1) << 23) |
((u64)((s64)(scale * width) - 1) << 32) |
((u64)(((s64)scaled_horizontal + (s64)(((u32)kernel_horizontal + 0x27cU) & 0xfffU)) & 0xfff)) |
((u64)((s64)(width * scale) - 1) << 32) |
((u64)((vertical_offset + kernel_vertical + 0x19) & 0xfff) << 12);
((u64)((vertical_offset + kernel_vertical + 0x19) & 0xfff) << 12) |
((u64)(s64)(height - 1) << 44);
}
output->display = value;
} else if ((s16)mode == 3) {
if ((s16)interlace == 1) {
scale = width + 0x9ff;
scale /= width;
scaled_horizontal = horizontal_offset * scale;
value = ((u64)((vertical_offset + kernel_vertical + 0x48) & 0xfff) << 12) |
((u64)((s64)(width * scale) - 1) << 32) |
((u64)(((s64)scaled_horizontal + ((s64)kernel_horizontal + 0x290)) & 0xfff)) |
((u64)(s64)(scale - 1) << 23);
scale = (width + 0x9ff) / width;
display_vertical = (u64)((vertical_offset + kernel_vertical + 0x48) & 0xfff) << 12;
display_width = (u64)(s64)(scale * width - 1) << 32;
scaled_horizontal = (s64)kernel_horizontal + 0x290;
scaled_horizontal = (scaled_horizontal + horizontal_offset * scale) & 0xfff;
value = (u64)(s64)(scale - 1) << 23;
if (state->nSFrame_mode != 0) {
scale = height * 2 - 1;
} else {
scale = height - 1;
}
value |= (u64)(s64)scale << 44;
value = ((display_width | value) | ((u64)scaled_horizontal | ((u64)(s64)scale << 44))) | display_vertical;
} else {
scale = width + 0x9ff;
scale /= width;
scaled_horizontal = horizontal_offset * scale;
value = ((u64)(s64)(height - 1) << 44) |
((u64)(s64)(scale - 1) << 23) |
scaled_horizontal = scale * horizontal_offset;
value = ((u64)(s64)(scale - 1) << 23) |
((u64)((s64)(scale * width) - 1) << 32) |
((u64)(((s64)scaled_horizontal + (s64)(((u32)kernel_horizontal + 0x290U) & 0xfffU)) & 0xfff)) |
((u64)((s64)(width * scale) - 1) << 32) |
((u64)((vertical_offset + kernel_vertical + 0x24) & 0xfff) << 12);
((u64)((vertical_offset + kernel_vertical + 0x24) & 0xfff) << 12) |
((u64)(s64)(height - 1) << 44);
}
output->display = value;
} else if ((s16)mode == 0x50) {
Expand Down
41 changes: 19 additions & 22 deletions src/assembly/sdk/rpc/sce_sif_init_cmd.c
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,6 @@ extern void _sceSifCmdIntrHdlr();
/* Initializes the fixed command state once, then submits a warm or cold SIF
* handshake. The cold path polls register 4 until bit 0x20000 is set. */
void sceSifInitCmd(void) {
s32 ipval;
struct M2c_var_3_42 *var_3_42;
struct M2c_var_3_42 *handlers;
s32 *var_2_61;
Expand All @@ -59,8 +58,7 @@ void sceSifInitCmd(void) {
s32 poll_value;
s32 temp_5_29;
s32 temp_6_30;
s32 var_16_46;
s32 var_16_59;
s32 ipval;

DIntr();
if (*(s32 *)D_0012FC04 == 0) {
Expand All @@ -70,40 +68,39 @@ void sceSifInitCmd(void) {
return;
block_3:
*(s32 *)D_0012FC04 = 1;
ipval = 0x20;
temp_6_30 = (s32)D_00154D80 | 0x20000000;
temp_5_29 = (s32)D_00154E00 | 0x20000000;
D_00154E58.unk0 = (u8 *)temp_6_30;
D_00154E58.unk4 = (u8 *)temp_5_29;
D_00154E58.unk1C = D_00154F80;
handlers = D_00154E80;
var_3_42 = handlers;
D_00154E58.unk8 = 0;

var_16_46 = 0x1F;
D_00154E58.unkC = D_00154E80;
D_00154E58.unk1C = D_00154F80;
D_00154E58.unk10 = 0x20;
D_00154E58.unk14 = 0;
D_00154E58.unk0 = (u8 *)temp_6_30;
D_00154E58.unk4 = (u8 *)temp_5_29;
D_00154E58.unk18 = 0;
D_00154E58.unk10 = ipval;
D_00154E58.unk8 = 0;
D_00154E58.unkC = handlers;
ipval = 0x1F;
var_3_42 = handlers;
do {
var_3_42->unk0 = 0;
var_16_46 -= 1;
ipval -= 1;
var_3_42->unk4 = 0;
var_3_42 += 1;
} while (var_16_46 >= 0);
var_16_59 = 0x1F;
} while (ipval >= 0);
ipval = 0x1F;
var_2_61 = D_00154F80 + 0x1F;
loop_6:
*var_2_61 = 0;
var_16_59 -= 1;
ipval -= 1;
var_2_61 -= 1;
if (var_16_59 >= 0) {
if (ipval >= 0) {
goto loop_6;
}
handlers[0].unk0 = FUN_0011a448;
handlers[1].unk0 = FUN_0011a428;
handlers[0].unk4 = &D_00154E58;
handlers[1].unk4 = &D_00154E58;
D_00154E80[0].unk0 = FUN_0011a448;
D_00154E80[1].unk0 = FUN_0011a428;
D_00154E80[0].unk4 = &D_00154E58;
D_00154E80[1].unk4 = &D_00154E58;
ipval = 0x20;
EnableInterrupts();
FlushCache(0);
{
Expand Down
8 changes: 5 additions & 3 deletions src/assembly/textbin/audio/music/music_transition.c
Original file line number Diff line number Diff line change
Expand Up @@ -9,14 +9,15 @@ INCLUDE_ASM("config/us/expected/asm/assembly/textbin/audio/music/music_transitio
#include "rnc/audio/music/music_stream_state.h"
#include "rnc/storage/disc_table.h"
extern void music_transition_start_callback() __asm__("FUN_00216a80");
extern void snd_play_vag_stream_by_loc_ex_cb(s32, s32, s32, s32, s16, s32, s32, s32, s32,
extern s32 snd_play_vag_stream_by_loc_ex_cb(s32, s32, s32, s32, s16, s32, s32, s32, s32,
void (*)(), u64) __asm__("func_0012EC08");
s32 music_transition(s32 target_track, s32 transition_track, s32 flags,
s32 volume) __asm__("FUN_00215e00");
s32 music_transition(s32 target_track, s32 transition_track, s32 flags, s32 volume) {
volatile s32 *location_entry;
s64 stream_location;
u64 callback_context;
s16 stream_volume;
void (*callback)();
u8 *track_table;
s32 track_table_offset;
Expand All @@ -34,19 +35,20 @@ s32 music_transition(s32 target_track, s32 transition_track, s32 flags, s32 volu
return 0;
}
*(u32 *)&music_stream_state.transition.handle = 0xFFFFFFFF;
sample_rate = 48000;
poll_interval = 10;
sample_rate = 48000;
music_stream_state.transition.poll_interval = poll_interval;
music_stream_state.transition.remaining_time = sample_rate;
music_stream_state.transition.track = target_track;
music_stream_state.transition.state = 1;
music_stream_state.transition.volume = volume;
music_stream_state.transition.crossfade_enabled = 1;
music_stream_state.transition.flags = flags;
stream_volume = volume;
stream_location = *location_entry;
callback_context = (u32)&music_stream_state.transition.handle;
callback = music_transition_start_callback;
snd_play_vag_stream_by_loc_ex_cb(stream_location, 0, 0, 0, volume, 0, 1, 0, 0x20, callback,
snd_play_vag_stream_by_loc_ex_cb(stream_location, 0, 0, 0, stream_volume, 0, 1, 0, 0x20, callback,
callback_context);
return 1;
}
Expand Down
28 changes: 14 additions & 14 deletions src/assembly/textbin/fun_0021a328.c
Original file line number Diff line number Diff line change
Expand Up @@ -67,7 +67,6 @@ int render_configured_text_label(struct MenuScreen *label) {
int remaining_frames;
int visible_height;
int text_extent;
struct MenuScreen *page;
struct MenuGridCell *entry;
u8 *availability_table;
int item_id;
Expand Down Expand Up @@ -102,32 +101,33 @@ int render_configured_text_label(struct MenuScreen *label) {
label->data.label.cached_value = 0;
label->data.label.value_variant = 0;
} else if (selector_flags & 0x80) {
page = menu_system.current->focus;
struct MenuScreen *page = menu_system.current->focus;
value_index = page->data.list.selected;
if (selector_flags & 0x8000) {
value_variant = pal_mode != 0;
}
} else if (selector_flags & 0x100) {
page = menu_system.current->focus;
struct MenuScreen *page = menu_system.current->focus;
value_index = page->data.grid.selected_cell;
entry = &page->data.grid.cells[value_index];
item_id = entry->id;
flags = entry->id;
availability_table = entry->kind == 0 ? item_available : alternate_item_available;
if (availability_table[item_id] != 0) {
flags = availability_table[flags];
if (flags != 0) {
value_index = page->data.grid.selected_cell;
} else {
value_index = -1;
}
} else if (selector_flags & 0x1000) {
page = menu_system.current->focus;
struct MenuScreen *page = menu_system.current->focus;
value_index = page->data.list.selected;
{
short sid = page->data.list.items[value_index].text;
label->data.label.text_id = 0xFFFF;
find_help_entry(sid, 1, (u16 *)&label->data.label.text_id);
}
} else {
page = menu_system.current->focus;
struct MenuScreen *page = menu_system.current->focus;
item_id = page->data.grid.cells[page->data.grid.selected_cell].id;
value_variant = item_text_variant[item_id] != 0;
value_index = item_id;
Expand Down Expand Up @@ -182,7 +182,7 @@ int render_configured_text_label(struct MenuScreen *label) {
text = unavailable_label_text;
}
if (label->data.label.flags & 0x200) {
item_id = *((int *)label->data.label.text_id +
int item_id = *((int *)label->data.label.text_id +
value_index * label->data.label.text_stride / sizeof(int));
if (item_id != 0x4ED2 && item_id != 0x4ED9 && item_id != 0x4EDD) {
sprintf(formatted_text, label_format, get_help_message_text(0x4ECC), text);
Expand All @@ -192,8 +192,8 @@ int render_configured_text_label(struct MenuScreen *label) {

render_flags = label->data.label.flags;
draw_flags = render_flags;
x = 4;
y = 4;
text_style = 8;
if ((draw_flags & 0x4004) == 0x4004 && label->data.label.text_id == 0x523E) {
draw_flags |= 1;
y = 12;
Expand All @@ -205,7 +205,7 @@ int render_configured_text_label(struct MenuScreen *label) {
if (text == 0) {
text = fallback_label_text;
}
x = 4;
text_style = 8;
if (draw_flags & 1) {
text_style = 9;
x = label->width / 2;
Expand Down Expand Up @@ -237,12 +237,12 @@ int render_configured_text_label(struct MenuScreen *label) {
c.flags |= 4;
font_print_window(&c, color, text, -1, texture_tex0, font);
window->flags = c.flags ^ 4;
flags = label->data.label.flags;
draw_flags = label->data.label.flags;
text_extent = c.rendered_height + 4;
visible_height = c.bottom - c.top;
if (!(flags & 0x2000) && text_extent >= visible_height) {
if (!(flags & 0x400)) {
label->data.label.flags = flags | 0x400;
if (!(draw_flags & 0x2000) && text_extent >= visible_height) {
if (!(draw_flags & 0x400)) {
label->data.label.flags = draw_flags | 0x400;
label->data.label.scroll_offset = -(label->height * 8);
}
} else if (label->data.label.flags & 0x400) {
Expand Down
23 changes: 11 additions & 12 deletions src/assembly/textbin/fun_0022e420.c
Original file line number Diff line number Diff line change
Expand Up @@ -73,11 +73,10 @@ void build_resident_indexed_texture_warp_meshes(void) {
s32 page;
for (page = 0; page < level_render_state.history_count - 1; page++) {
history_index = (level_render_state.history_index - page + 0x1F) & 0x1F;
primary_next = get_primary_history_position((history_index + 1) & 0x1F);
secondary_next =
&level_render_state.secondary_history[(history_index + 1) & 0x1F];
primary_current = get_primary_history_position(history_index);
secondary_current = &level_render_state.secondary_history[history_index];
primary_current = get_primary_history_position(history_index);
secondary_next = &level_render_state.secondary_history[(history_index + 1) & 0x1F];
primary_next = get_primary_history_position((history_index + 1) & 0x1F);
primary_after_next = get_primary_history_position((history_index + 2) & 0x1F);
{
s32 strip;
Expand All @@ -88,10 +87,10 @@ void build_resident_indexed_texture_warp_meshes(void) {
subtract_vectors(&cross_strip_differences[1], primary_current, secondary_current);
subtract_vectors(&cross_strip_differences[2], secondary_next, primary_next);
subtract_vectors(&cross_strip_differences[3], primary_next, secondary_next);
subtract_vectors(&edge_normals[1], primary_next + strip_offset,
primary_current + strip_offset);
subtract_vectors(&edge_normals[3], primary_after_next + strip_offset,
primary_next + strip_offset);
subtract_vectors(&edge_normals[1], (Vec4 *)(strip_offset * sizeof(Vec4) + (u32)primary_next),
(Vec4 *)(strip_offset * sizeof(Vec4) + (u32)primary_current));
subtract_vectors(&edge_normals[3], (Vec4 *)(strip_offset * sizeof(Vec4) + (u32)primary_after_next),
(Vec4 *)(strip_offset * sizeof(Vec4) + (u32)primary_next));
if (page == 0) {
qcopy(&edge_normals[3], &edge_normals[1]);
}
Expand All @@ -110,8 +109,8 @@ void build_resident_indexed_texture_warp_meshes(void) {
progress *
(&D_001604D0)[level_render_state.content_variant]);
add_vectors(&quad.positions[vertex], &quad.positions[vertex],
get_primary_history_position((history_index + history_step) & 0x1F) +
strip_offset);
(Vec4 *)(strip_offset * sizeof(Vec4) +
(u32)get_primary_history_position((history_index + history_step) & 0x1F)));
}
draw_geometry_quad(&quad, 0, 0);
for (side_vertex = 0; side_vertex < 4; side_vertex++) {
Expand All @@ -123,8 +122,8 @@ void build_resident_indexed_texture_warp_meshes(void) {
(&D_001604D0)[level_render_state.content_variant]);
add_vectors(
&quad.positions[side_vertex], &quad.positions[side_vertex],
get_primary_history_position((history_index + side_history_step) & 0x1F) +
strip_offset);
(Vec4 *)(strip_offset * sizeof(Vec4) +
(u32)get_primary_history_position((history_index + side_history_step) & 0x1F)));
}
draw_geometry_quad(&quad, 0, 0);
}
Expand Down
11 changes: 8 additions & 3 deletions src/assembly/textbin/fun_0022eaa8.c
Original file line number Diff line number Diff line change
Expand Up @@ -165,7 +165,10 @@ extern s32 rand(void);
void update_level_gameplay_frame(void) __asm__("FUN_0022eaa8");

void update_level_gameplay_frame(void) {
Vector4 first_position;
union {
Vector4 position;
volatile s32 sound_bank;
} first_position;
Vector4 second_position;
Matrix4x4 first_transform;
Matrix4x4 second_transform;
Expand All @@ -175,7 +178,7 @@ void update_level_gameplay_frame(void) {
LevelRenderObject *object;
LevelRenderObject *expired_object;
s32 mode_advance;
volatile s32 sound_bank;
s32 sound_bank;
RenderModel *model;
RenderArchiveTable *archive_table;
u8 *archive_data;
Expand Down Expand Up @@ -212,7 +215,9 @@ void update_level_gameplay_frame(void) {
if (render_sequence.time == 1 && current_level_index != 0 &&
(current_level_index != 1 || level_available[3] != 0)) {
read_global_table_entry();
sound_bank = sound_bank_handle;
/* The bank scratch is dead before scale_vector overwrites the position. */
first_position.sound_bank = sound_bank_handle;
sound_bank = first_position.sound_bank;
mode_advance = level_render_state.mode;
snd_play_sound_vol_pan_pmpb(sound_bank, mode_advance, 0x400, 0, 0, 0, 0, D_0013E5C0);
snd_reset_state_and_flush_commands();
Expand Down
Loading
Loading