diff options
author | notaz | 2012-07-18 01:56:37 +0300 |
---|---|---|
committer | notaz | 2012-07-18 23:56:54 +0300 |
commit | b8d961effdd3fc2a00dc073cae06b6d937682420 (patch) | |
tree | be4fff79448744d0dde320e2a5132fa365f6d8c1 /plugins/gpu_neon/psx_gpu | |
parent | 8ca6b0a6dcf5ce986f6dd2deacf1f95dbf1a8e92 (diff) | |
download | pcsx_rearmed-b8d961effdd3fc2a00dc073cae06b6d937682420.tar.gz pcsx_rearmed-b8d961effdd3fc2a00dc073cae06b6d937682420.tar.bz2 pcsx_rearmed-b8d961effdd3fc2a00dc073cae06b6d937682420.zip |
psx_gpu: fix line cmd length and move w/h masking
w/h masking untested, I'm lazy
Diffstat (limited to 'plugins/gpu_neon/psx_gpu')
-rw-r--r-- | plugins/gpu_neon/psx_gpu/psx_gpu_parse.c | 5 |
1 files changed, 3 insertions, 2 deletions
diff --git a/plugins/gpu_neon/psx_gpu/psx_gpu_parse.c b/plugins/gpu_neon/psx_gpu/psx_gpu_parse.c index 3fc040d..e409aa5 100644 --- a/plugins/gpu_neon/psx_gpu/psx_gpu_parse.c +++ b/plugins/gpu_neon/psx_gpu/psx_gpu_parse.c @@ -496,7 +496,7 @@ u32 gpu_parse(psx_gpu_struct *psx_gpu, u32 *list, u32 size, u32 *last_command) } if(num_vertexes > 2) - command_length += ((num_vertexes * 2) - 2); + command_length += ((num_vertexes - 2) * 2); break; } @@ -597,7 +597,8 @@ u32 gpu_parse(psx_gpu_struct *psx_gpu, u32 *list, u32 size, u32 *last_command) case 0x80: // vid -> vid render_block_move(psx_gpu, list_s16[2] & 0x3FF, list_s16[3] & 0x1FF, - list_s16[4] & 0x3FF, list_s16[5] & 0x1FF, list_s16[6], list_s16[7]); + list_s16[4] & 0x3FF, list_s16[5] & 0x1FF, + ((list_s16[6] - 1) & 0x3FF) + 1, ((list_s16[7] - 1) & 0x1FF) + 1); break; #ifdef PCSX |