Improved NV4097_BACK_END_WRITE_SEMAPHORE_RELEASE and NV4097_TEXTURE_READ_SEMAPHORE_RELEASE commands handling

This commit is contained in:
DH 2015-10-13 20:39:36 +03:00
parent e4f6eb04e8
commit 737080274a
4 changed files with 14 additions and 27 deletions

View file

@ -68,13 +68,14 @@ namespace rsx
force_inline void texture_read_semaphore_release(thread* rsx, u32 arg)
{
//TODO: dma
rsx->domethod(NV4097_TEXTURE_READ_SEMAPHORE_RELEASE, arg);
vm::write32(rsx->label_addr + method_registers[NV4097_SET_SEMAPHORE_OFFSET], arg);
}
force_inline void back_end_write_semaphore_release(thread* rsx, u32 arg)
{
//TODO: dma
rsx->domethod(NV4097_BACK_END_WRITE_SEMAPHORE_RELEASE, arg);
vm::write32(rsx->label_addr + method_registers[NV4097_SET_SEMAPHORE_OFFSET],
(arg & 0xff00ff00) | ((arg & 0xff) << 16) | ((arg >> 16) & 0xff));
}
//fire only when all data passed to rsx cmd buffer