MCPcopy Create free account
hub / github.com/bfbbdecomp/bfbb / __GXInitGX

Function __GXInitGX

src/dolphin/src/gx/GXInit.c:407–594  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

405}
406
407void __GXInitGX(void)
408{
409 GXRenderModeObj* rmode;
410 GXTexObj tex_obj;
411 float identity_mtx[3][4];
412 GXColor clear = { 64, 64, 64, 255 };
413 GXColor black = { 0, 0, 0, 0 };
414 GXColor white = { 255, 255, 255, 255 };
415 u32 i;
416
417 switch (VIGetTvFormat())
418 {
419 case VI_NTSC:
420 rmode = &GXNtsc480IntDf;
421 break;
422 case VI_PAL:
423 rmode = &GXPal528IntDf;
424 break;
425 case VI_EURGB60:
426 rmode = &GXEurgb60Hz480IntDf;
427 break;
428 case VI_MPAL:
429 rmode = &GXMpal480IntDf;
430 break;
431 default:
432 //ASSERTMSGLINE(1342, 0, "GXInit: invalid TV format");
433 rmode = &GXNtsc480IntDf;
434 break;
435 }
436
437 GXSetCopyClear(clear, 0xFFFFFF);
438 GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX2x4, GX_TG_TEX0, 0x3C);
439 GXSetTexCoordGen(GX_TEXCOORD1, GX_TG_MTX2x4, GX_TG_TEX1, 0x3C);
440 GXSetTexCoordGen(GX_TEXCOORD2, GX_TG_MTX2x4, GX_TG_TEX2, 0x3C);
441 GXSetTexCoordGen(GX_TEXCOORD3, GX_TG_MTX2x4, GX_TG_TEX3, 0x3C);
442 GXSetTexCoordGen(GX_TEXCOORD4, GX_TG_MTX2x4, GX_TG_TEX4, 0x3C);
443 GXSetTexCoordGen(GX_TEXCOORD5, GX_TG_MTX2x4, GX_TG_TEX5, 0x3C);
444 GXSetTexCoordGen(GX_TEXCOORD6, GX_TG_MTX2x4, GX_TG_TEX6, 0x3C);
445 GXSetTexCoordGen(GX_TEXCOORD7, GX_TG_MTX2x4, GX_TG_TEX7, 0x3C);
446 GXSetNumTexGens(1);
447 GXClearVtxDesc();
448 GXInvalidateVtxCache();
449
450 for (i = GX_VA_POS; i <= GX_LIGHT_ARRAY; i++)
451 {
452 GXSetArray(i, __GXData, 0);
453 }
454
455 for (i = GX_VTXFMT0; i < GX_MAX_VTXFMT; i++)
456 {
457 GXSetVtxAttrFmtv(i, GXDefaultVATList);
458 }
459
460 GXSetLineWidth(6, GX_TO_ZERO);
461 GXSetPointSize(6, GX_TO_ZERO);
462 GXEnableTexOffsets(GX_TEXCOORD0, 0, 0);
463 GXEnableTexOffsets(GX_TEXCOORD1, 0, 0);
464 GXEnableTexOffsets(GX_TEXCOORD2, 0, 0);

Callers 1

GXInitFunction · 0.85

Calls 15

VIGetTvFormatFunction · 0.85
GXSetCopyClearFunction · 0.85
GXSetTexCoordGenFunction · 0.85
GXSetNumTexGensFunction · 0.85
GXClearVtxDescFunction · 0.85
GXInvalidateVtxCacheFunction · 0.85
GXSetArrayFunction · 0.85
GXSetVtxAttrFmtvFunction · 0.85
GXSetLineWidthFunction · 0.85
GXSetPointSizeFunction · 0.85
GXEnableTexOffsetsFunction · 0.85
GXLoadPosMtxImmFunction · 0.85

Tested by

no test coverage detected