Commit Graph
62 Commits
Author SHA1 Message Date
Unknown W. Brackets e1d2e72480 Add block transfer to null gpu.
For tests, better to have it here.
2014-08-30 22:14:58 -07:00
Unknown W. Brackets adee76cd62 Add a matching PerformMemoryUpload().
Just so we have both Download and Upload to use later.
2014-06-10 00:45:03 -07:00
Unknown W. Brackets 089ee41d9c Implement a very basic stencil upload.
This is not fast or efficient, but works.
2014-05-31 21:48:09 -07:00
Unknown W. Brackets 1433b98c46 Clean up the framebuffer force downloads. 2014-05-31 10:03:03 -07:00
Unknown W. Brackets 8dcc09c9e1 Use a separate func for gpu memset(). 2014-05-27 07:50:01 -07:00
Unknown W. Brackets 8275f613ce UpdateMemory() now returns whether to skip the cpy.
This way it can do it itself as necessary in the right order.
2014-05-25 21:48:41 -07:00
Henrik Rydgard 16f4622ac7 Remove cached light variables to reduce work when parsing DLs.
Also removes some duplication between GL and the inactive D3D code.
2014-04-21 12:51:19 +02:00
Unknown W. Brackets 4c1c694d4b Use flags to avoid hashing textures when unchanged.
If only parameters change (like wrapping or clut, etc.) we don't need to
rehash the data - we know it hasn't changed.

Should reduce the distance between lazy texture hashing on and off.
2014-04-13 14:22:39 -07:00
Unknown W. Brackets fc3b3449ed Enable frameskipping in the null gpu.
In case it's used (I used it to check cpu-only perf on Android.)
2013-11-14 23:37:48 -08:00
Henrik Rydgard 5c8a74d911 Stencil rectangle clears: Take the value from the second vertex. 2013-10-10 21:36:32 +02:00
Henrik Rydgard 424b4cbd5f Move GE_CMD_BJUMP to GPUCommon. Add the flag. (no actual bbox impl yet) 2013-09-24 14:14:04 +02:00
Unknown W. Brackets 6ffbf3964a Use the right vertex/index addr in NullGpu. 2013-09-21 18:56:26 -07:00
Unknown W. Brackets 7ca64374ea Return 24-bit floats in sceGeGetMtx(). 2013-09-21 10:32:09 -07:00
Unknown W. Brackets 2e8b475789 Don't ignore the low bits of the framebuf pointer. 2013-09-07 02:01:01 -07:00
Unknown W. Brackets 5ab04a3076 Centralize CLUT handling form gstate values. 2013-08-24 11:34:37 -07:00
Unknown W. Brackets 0a217a1254 Use accessors better for block transfers. 2013-08-24 11:34:36 -07:00
Unknown W. Brackets 90affa2203 Remove very questionable DrawSync override. 2013-08-17 09:53:10 -07:00
Unknown W. Brackets 450e4c7fea Factor out event queue logic to a template mixin. 2013-08-10 03:33:09 -07:00
Unknown W. Brackets 5e363bcbd2 Don't allow gpu->Flush() to be called publicly. 2013-08-09 22:57:54 -07:00
Unknown W. Brackets 02e301e5fe Add a simple message event system to the GE.
With this, the CPU thread feature now mostly works.
2013-08-09 22:41:31 -07:00
Unknown W. Brackets 89349eae7e Consistently use a proper type for GE fb format. 2013-07-29 23:05:59 -07:00
Henrik Rydgard 50a2d1b87f More work on prescaled UV 2013-07-28 00:33:51 +02:00
Unknown W. Brackets f8d6bda678 Add a better signal for VRAM copies in the GPU. 2013-06-09 23:55:32 -07:00
Unknown W. Brackets 3c0ed69fd2 Improve GPU invalidation interface, check fonts.
When a font is rendered, tell the GPU about it, but don't rehash.

This not only improves perf (less hashing) but makes font changes more
immediate (no deferred hashing.)  But only if they use sceFont.
2013-05-05 22:52:01 -07:00
Peter ThomanandPeter Thoman 2212e7f609 Fixed threading issue pointed out by unknownbrackets and made texture scaling changes apply immediately 2013-04-30 17:58:05 +02:00
Unknown W. Brackets b0ce9e934e Split out the GPU vendor and the full detail.
This way we can sort things more easily.
2013-04-29 00:30:54 -07:00
Unknown W. Brackets 5cea38e405 Reporting: catch information about the GPU. 2013-04-29 00:26:43 -07:00
Unknown W. Brackets 1edbfa3212 Use a downcount and fast run loop in the GE. 2013-04-28 14:23:30 -07:00
Unknown W. Brackets ec009bc299 Cleanup a few GPU error codes. 2013-03-31 23:57:03 -07:00
Unknown W. Brackets affe91cb3b Refactor some GPU methods to return errors. 2013-03-31 23:57:03 -07:00
Unknown W. Brackets 0f15a5eae6 Move the pc-management cmds to GPUCommon. 2013-03-31 23:57:02 -07:00
Unknown W. Brackets 430139b12a Minimal revert of the GE-related interrupt changes.
Keep most of them, just revert using getList() which isn't cutting it
right now.  Fixes #595.
2013-02-10 02:03:02 -08:00
Florent Castelli 8004d360dd Interrupt handler reorganization for easier GE interrupt support 2013-02-04 03:10:01 +01:00
Henrik Rydgard 510f1ac3f4 Some misc GE constant renames / disasm 2013-02-02 13:40:26 +01:00
Henrik Rydgard 0769a1d3e8 I think I finally understood how origin-relative GE jumps are supposed to work. 2013-02-02 13:38:34 +01:00
Unknown W. Brackets 661c7132c4 Don't check that the pc is valid every single op. 2013-01-29 08:19:07 -08:00
Henrik Rydgard d1b3fd0e49 Better window resize handling 2013-01-27 00:15:39 +01:00
Unknown W. Brackets 3861ce0376 Use sceKernelDcacheWritebackAll() as a hint only. 2013-01-05 17:07:19 -08:00
Unknown W. Brackets 97bdaf5dd2 Add support for selecting the GE callback per list.
Not sure if interrupts are right, but this should be more right.
2012-12-29 15:55:05 -08:00
Florent Castelli 36a71eafd0 Move InterpretList and ProcessDLQueue to GPUCommon 2012-12-29 03:11:36 +01:00
Florent Castelli 6eec4f5d7f Move display list management to common GPU class 2012-12-29 03:11:35 +01:00
Henrik Rydgård e2cc226d0d Just some cleanup of GPU code 2012-12-28 20:54:00 +01:00
Henrik Rydgård 57b4d658cc Don't log display lists, instead dump them on demand.
Makes it fairly convenient to dump and look at display lists at run time
on non windows platforms. Adding a menu item on Windows should be
trivial.
2012-12-27 23:38:55 +01:00
Henrik Rydgård d95dbca9be Cleanup GPU init/shutdown a bit 2012-12-25 22:42:19 +01:00
Unknown W. Brackets d378b1c324 Deallocate properly in shutdown, not in init. 2012-12-24 01:41:15 -08:00
Unknown W. Brackets 2736012719 Cleanup some state on reset in the GPU code. 2012-12-23 23:12:53 -08:00
Henrik Rydgard 252845ecb6 Bugfix, remove hack 2012-12-21 23:55:19 +01:00
Henrik Rydgard e42af096c8 Merge 2012-12-21 23:43:48 +01:00
Henrik Rydgard 4c23d668e1 Cleanup and reorganize gpu code a little 2012-12-21 16:50:14 +01:00
Unknown W. Brackets 9034cfbfd3 Defer HLE interrupts, vblank only when enabled.
Based on tests, vblank doesn't queue up (makes sense) while
interrupts are disabled.

I'm not 100% sure about the GPU stuff but it seems to only come
from HLE via sceGe, so this should fix those return values.
2012-12-20 21:54:40 -08:00