RetroArch
|
#include <stdlib.h>
#include <stdio.h>
#include <string.h>
#include <time.h>
#include "asm.h"
#include "processor.h"
#include "ogcsys.h"
#include "irq.h"
#include "exi.h"
#include "gx.h"
#include "si.h"
#include "lwp.h"
#include "system.h"
#include "video.h"
#include "video_types.h"
Classes | |
struct | _horVer |
struct | _timing |
Macros | |
#define | VIDEO_MQ 1 |
#define | _SHIFTL(v, s, w) ((u32) (((u32)(v) & ((0x01 << (w)) - 1)) << (s))) |
#define | _SHIFTR(v, s, w) ((u32)(((u32)(v) >> (s)) & ((0x01 << (w)) - 1))) |
#define | VI_REGCHANGE(_reg) ((u64)0x01<<(63-_reg)) |
Typedefs | |
typedef struct _horVer | horVer |
Functions | |
syssram * | __SYS_LockSram () |
u32 | __SYS_UnlockSram (u32 write) |
void | __VIClearFramebuffer (void *, u32, u32) |
void | udelay (int us) |
static __inline__ u32 | cntlzd (u64 bit) |
static const struct _timing * | __gettiming (u32 vimode) |
static void | __setInterruptRegs (const struct _timing *tm) |
static void | __setPicConfig (u16 fbSizeX, u32 xfbMode, u16 panPosX, u16 panSizeX, u8 *wordPerLine, u8 *std, u8 *wpl, u8 *xof) |
static void | __setBBIntervalRegs (const struct _timing *tm) |
static void | __setScalingRegs (u16 panSizeX, u16 dispSizeX, s32 threeD) |
static void | __calcFbbs (u32 bufAddr, u16 panPosX, u16 panPosY, u8 wordperline, u32 xfbMode, u16 dispPosY, u32 *tfbb, u32 *bfbb) |
static void | __setFbbRegs (struct _horVer *horVer, u32 *tfbb, u32 *bfbb, u32 *rtfbb, u32 *rbfbb) |
static void | __setHorizontalRegs (const struct _timing *tm, u16 dispPosX, u16 dispSizeX) |
static void | __setVerticalRegs (u16 dispPosY, u16 dispSizeY, u8 equ, u16 acv, u16 prbOdd, u16 prbEven, u16 psbOdd, u16 psbEven, s32 black) |
static void | __adjustPosition (u16 acv) |
static void | __importAdjustingValues () |
static void | __VIInit (u32 vimode) |
static void | __getCurrentDisplayPosition (u32 *px, u32 *py) |
static u32 | __getCurrentHalfLine () |
static u32 | __getCurrentFieldEvenOdd () |
static u32 | __VISetRegs () |
static void | __VIDisplayPositionToXY (s32 xpos, s32 ypos, s32 *px, s32 *py) |
static void | __VIGetCurrentPosition (s32 *px, s32 *py) |
static void | __VIRetraceHandler (u32 nIrq, void *pCtx) |
void * | VIDEO_GetNextFramebuffer () |
void * | VIDEO_GetCurrentFramebuffer () |
void | VIDEO_Init () |
Initializes the VIDEO subsystem. This call should be done in the early stages of your main() More... | |
void | VIDEO_Configure (GXRModeObj *rmode) |
Configure the VI with the given render mode object. More... | |
void | VIDEO_WaitVSync (void) |
Wait on the next vertical retrace. More... | |
void | VIDEO_SetFramebuffer (void *fb) |
void | VIDEO_SetNextFramebuffer (void *fb) |
Set the framebuffer for the next VI register update. More... | |
void | VIDEO_SetNextRightFramebuffer (void *fb) |
Set the right framebuffer for the next VI register update. This is used for 3D Gloves for instance. More... | |
void | VIDEO_Flush () |
Flush the shadow registers to the drivers video registers. More... | |
void | VIDEO_SetBlack (bool black) |
Blackout the VIDEO interface. More... | |
u32 | VIDEO_GetNextField () |
Get the next field in DS mode. More... | |
u32 | VIDEO_GetCurrentTvMode () |
Get current configured TV mode. More... | |
GXRModeObj * | VIDEO_GetPreferredMode (GXRModeObj *mode) |
u32 | VIDEO_GetCurrentLine () |
Get current video line. More... | |
VIRetraceCallback | VIDEO_SetPreRetraceCallback (VIRetraceCallback callback) |
Set the Pre-Retrace callback function. This function is called within the video interrupt handler before the VI registers will be updated. More... | |
VIRetraceCallback | VIDEO_SetPostRetraceCallback (VIRetraceCallback callback) |
Set the Post-Retrace callback function. This function is called within the video interrupt handler after the VI registers are updated. More... | |
u32 | VIDEO_GetFrameBufferSize (GXRModeObj *rmode) |
void | VIDEO_ClearFrameBuffer (GXRModeObj *rmode, void *fb, u32 color) |
Clear the given framebuffer. More... | |
u32 | VIDEO_HaveComponentCable (void) |
Check for a component cable. This function returns 1 when a Component (YPbPr) cable is connected. More... | |
#define VI_REGCHANGE | ( | _reg | ) | ((u64)0x01<<(63-_reg)) |
#define VIDEO_MQ 1 |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
syssram* __SYS_LockSram | ( | ) |
|
inlinestatic |
void udelay | ( | int | us | ) |
void VIDEO_ClearFrameBuffer | ( | GXRModeObj * | rmode, |
void * | fb, | ||
u32 | color | ||
) |
Clear the given framebuffer.
[in] | rmode | pointer to a GXRModeObj, specifying the mode. |
[in] | fb | pointer to the startaddress of the framebuffer to clear. |
[in] | color | YUYUV value to use for clearing. |
void VIDEO_Configure | ( | GXRModeObj * | rmode | ) |
Configure the VI with the given render mode object.
[in] | rmode | pointer to the video/render mode configuration. |
void VIDEO_Flush | ( | ) |
Flush the shadow registers to the drivers video registers.
void* VIDEO_GetCurrentFramebuffer | ( | ) |
u32 VIDEO_GetCurrentLine | ( | ) |
Get current video line.
u32 VIDEO_GetCurrentTvMode | ( | ) |
u32 VIDEO_GetFrameBufferSize | ( | GXRModeObj * | rmode | ) |
u32 VIDEO_GetNextField | ( | ) |
Get the next field in DS mode.
void* VIDEO_GetNextFramebuffer | ( | ) |
GXRModeObj* VIDEO_GetPreferredMode | ( | GXRModeObj * | mode | ) |
Check for a component cable. This function returns 1 when a Component (YPbPr) cable is connected.
void VIDEO_Init | ( | ) |
Initializes the VIDEO subsystem. This call should be done in the early stages of your main()
Blackout the VIDEO interface.
[in] | black | Boolean flag to determine whether to blackout the VI or not. |
Set the framebuffer for the next VI register update.
Set the right framebuffer for the next VI register update. This is used for 3D Gloves for instance.
VIRetraceCallback VIDEO_SetPostRetraceCallback | ( | VIRetraceCallback | callback | ) |
Set the Post-Retrace callback function. This function is called within the video interrupt handler after the VI registers are updated.
[in] | callback | pointer to the callback function which is called at post-retrace. |
VIRetraceCallback VIDEO_SetPreRetraceCallback | ( | VIRetraceCallback | callback | ) |
Set the Pre-Retrace callback function. This function is called within the video interrupt handler before the VI registers will be updated.
[in] | callback | pointer to the callback function which is called at pre-retrace. |
Wait on the next vertical retrace.
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |
|
static |