Paul Holden
b27370266b
Add support for G_BL_CLR_MEM,G_BL_0,G_BL_CLR_MEM,G_BL_1MA.
2023-09-23 22:17:56 +01:00
Paul Holden
96d6de5f7f
Show instruction addresses for disassembleAll.
2023-09-23 22:17:56 +01:00
Paul Holden
e3bc726b49
Fix exception in MemoryRegion.copy when DMAing from short roms.
2023-09-23 22:17:56 +01:00
Paul Holden
3bcaef66a4
Tidy initialiseRenderer a little.
2023-09-23 22:17:56 +01:00
Paul Holden
723ed472c2
Also log alphaCvgSel and cvgXAlpha.
2023-09-23 22:17:56 +01:00
Paul Holden
00c3a6f3cf
Missing import.
2023-09-23 22:17:56 +01:00
Paul Holden
5043116e2e
Mask width/height to 0x3ff rather than 0xfff.
2023-09-23 22:17:56 +01:00
Paul Holden
448b19450d
Appy the uv scaling in the fragment shader.
...
This shouldn't change anything yet (a bit slower) but it makes it possible to do shift/mask/clamp on a per-pixel basis.
2023-09-23 22:17:56 +01:00
Paul Holden
e942b78cf1
Only bind tex1 if it's used.
...
This works around some glitches where texture wrapping mode is different between tile0 and tile1 - as the texture object is shared this ends up applying tile1 wrap to tile0 texture.
2023-09-23 22:17:56 +01:00
Paul Holden
d8da7929e8
Update comment. It's nothing to do with shift.
2023-09-23 22:17:56 +01:00
Paul Holden
d7fc5fb144
Apply the shift factor to uv coords.
2023-09-23 22:17:56 +01:00
Paul Holden
aad8e797e4
Apply TEXTURE_WRAP mode when the texture is bound.
...
This fixes some issues where this is changed on the rendertile after the texture is created.
2023-09-23 22:17:56 +01:00
Paul Holden
0a14a7c3d8
Improve texrect disassembly output (and fix for texrectflip).
2023-09-23 22:17:56 +01:00
Paul Holden
e506124902
Export color conversion functions.
2023-09-23 22:17:56 +01:00
Paul Holden
8f1d0a5c94
Include cacheID in the texture debug output.
2023-09-23 22:17:56 +01:00
Paul Holden
e996618a5f
FillRect for FILL cycle type should use the fill color alpha
2023-09-23 22:17:56 +01:00
Paul Holden
92038e6415
Improve gsSPTexture disassembly.
2023-09-23 22:17:56 +01:00
Paul Holden
beee0fe350
Make the uniform names consistent.
2023-09-23 22:17:56 +01:00
Paul Holden
9d5b5dce77
Add support for tex1.
2023-09-23 22:17:56 +01:00
Paul Holden
5bc956d346
Make Tile width/height more robust.
...
When right/bottom < top/left this is clamped to 12 bits.
The fractional parts of the value also seem to be ignored for the purposes of calculating the tile dimensions.
2023-09-23 22:17:56 +01:00
Paul Holden
2b432eac5f
Fix texture cache id.
...
The formatting string was broken but it also shoudl check the tile width and height, not just the lrs/lrt.
2023-09-23 22:17:56 +01:00
Paul Holden
f07cead6a9
Fix caching for CI32 textures - entries are quadricated so all 2k data needs hashing.
2023-09-23 22:17:56 +01:00
Paul Holden
74b361cafb
Tidy naming.
2023-09-23 22:17:56 +01:00
Paul Holden
d4353d4246
Tidy executeLoadBlock.
2023-09-23 22:17:56 +01:00
Paul Holden
0f0b60af88
Tidy tile loading.
2023-09-23 22:17:56 +01:00
Paul Holden
a8edfca135
Use G_TX_RENDERTILE/LOADTILE aliases in debug table.
2023-09-23 22:17:56 +01:00
Paul Holden
ce807105d1
Only log unhandled blend modes once.
2023-09-23 22:17:56 +01:00
Paul Holden
edd82b73bd
Fix loadtile - padding should be byteswapped on alternate lines.
...
This fixes texture corruption on the right edge of a number of games.
2023-09-23 22:17:56 +01:00
Paul Holden
7073e8b29f
Fix CSS for all the condensed tables.
2023-09-23 22:17:56 +01:00
Paul Holden
96fa0c0f2f
Make the alpha threshold a uniform.
2023-09-23 22:17:56 +01:00
Paul Holden
e03c1fd038
Unconditionally set alpha_threshold when G_AC_THRESHOLD is active.
...
This fixes a number of games and I haven't seen any obvious regressions.
2023-09-23 22:17:56 +01:00
Paul Holden
b271a3f91e
Fix SetOtherMode disassembly for GBI2.
2023-09-23 22:17:56 +01:00
Paul Holden
6bee80658b
RSP code size can't be >0x1000
2023-09-23 22:17:56 +01:00
Paul Holden
588d783295
Update Status.
2023-09-23 22:17:56 +01:00
Paul Holden
cbf5533bd1
Implement CIC-NUS-6105 challenge/response using XScale's algorithm.
2023-09-23 22:17:56 +01:00
Paul Holden
f0582c108a
Reads and writes to flash control/status seem to wrap over the status register (reads) or ignore address (writes).
2023-09-23 22:17:56 +01:00
Paul Holden
1d422e5d5e
Ignore the dstOffset for DMAs to flash.
2023-09-23 22:17:56 +01:00
Paul Holden
cf3ca7aae0
Fix bounds checks.
2023-09-23 22:17:56 +01:00
Paul Holden
d5b410f59e
Fix save type
2023-09-23 22:17:56 +01:00
Paul Holden
97f878a22d
Implement flashRam support.
...
A few more roms boot with this (but often run into other issues).
2023-09-23 22:17:56 +01:00
Paul Holden
2fc4c9a216
Add a set() helper.
2023-09-23 22:17:56 +01:00
Paul Holden
a8dac82e7c
Fix save types (FlashRAM != FlashRam).
2023-09-23 22:17:56 +01:00
Paul Holden
8d120dc450
Mark SRAM as dirty when dmaing to it.
2023-09-23 22:17:56 +01:00
Paul Holden
dfd57a60b9
Use a single MemoryRegion for all save types.
2023-09-23 22:17:56 +01:00
Paul Holden
84c7b93a47
Add a s32Array helper to ensure any offsets are taken into account.
2023-09-23 22:17:56 +01:00
Paul Holden
78fe434991
Use subRegion in PIFMemDevice.
2023-09-23 22:17:56 +01:00
Paul Holden
e0be8b02dd
subDataView isn't used.
2023-09-23 22:17:56 +01:00
Paul Holden
dd6758f5fd
Use MemoryRegions for imem and dmem.
2023-09-23 22:17:56 +01:00
Paul Holden
b444c0e649
Use a MemoryRegion in the disassembler.
2023-09-23 22:17:56 +01:00
Paul Holden
07946aa8ca
Remove n64js.rsp_task_view and use a MemoryRegion.
2023-09-23 22:17:56 +01:00