Starting to drive command buffer actions down to a graphics driver.

This commit is contained in:
Ben Vanik
2013-10-06 21:09:58 -07:00
parent 371075f154
commit 651954ccae
12 changed files with 307 additions and 84 deletions

View File

@@ -13,16 +13,17 @@
#include <xenia/core.h>
namespace xe {
namespace cpu {
class Processor;
} // namespace cpu
} // namespace xe
namespace xe {
namespace cpu {
class Processor;
} // namespace cpu
} // namespace xe
namespace xe {
namespace gpu {
class GraphicsDriver;
class RingBufferWorker;
@@ -53,6 +54,8 @@ public:
void DispatchInterruptCallback();
public:
// TODO(benvanik): have an HasRegisterHandler() so that the JIT can
// just poke the register file directly.
static uint64_t ReadRegisterThunk(GraphicsSystem* this_ptr, uint32_t r) {
return this_ptr->ReadRegister(r);
}
@@ -67,6 +70,7 @@ protected:
xe_memory_ref memory_;
shared_ptr<cpu::Processor> processor_;
GraphicsDriver* driver_;
RingBufferWorker* worker_;
uint32_t interrupt_callback_;