pureikyubu/thirdparty/GX
2023-08-03 15:15:22 +03:00
..
Scripts linux build 2023-08-03 15:15:22 +03:00
BPRegs.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
BPRegs.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
CommandProcessor.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
CommandProcessor.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
CPRegs.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
CPRegs.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
GXBackend.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
GXCore.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
GXCore.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
GXDefs.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
GXState.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
pch.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
pch.h compiled 2023-08-03 10:48:14 +03:00
PixelEngine.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
PixelEngine.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
Readme.md DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
TexCache.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
TexCache.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
TexConv.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
TexConv.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
XFRegs.cpp DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00
XFRegs.h DolwinVideo -> thirdparty 2023-08-03 02:40:02 +03:00

GX

This component emulates the platform-independent part of the GAMECUBE graphics system (GX).

The tasks of this component include:

  • Command FIFO handling
  • Storing the current GX context
  • Generation of Flipper interrupts related to the processing of graphic commands (the so-called Draw Callbacks)
  • Texture converter and cache that Backend can use
  • Sending drawing commands and notifications about changes in GX context and texture cache to the Backend
  • Backend forwarding of direct access to the embedded frame buffer (EFB)
  • Serving GX Jdi service requests

All this will allow offloading the graphic backend from unnecessary fiddling with FIFO processing and texture conversion, which can be done in common way.

The Graphics Flow in Dolwin is shown in the picture:

DolwinGraphicsFlow

Everything to the right of Texture Manager is implemented by the graphics backend (in this case, using Direct3D). Everything else is part of this component (GX).