diff options
| author | Elijah Thomas <42302100+elijah-thomas774@users.noreply.github.com> | 2024-10-01 20:24:25 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2024-10-01 20:24:25 -0400 |
| commit | dc221b4795f415c8500740dd33e2243f91d527a6 (patch) | |
| tree | 095409d798350dbc60e3f730437519767b11be2f /src/egg/core/eggVideo.cpp | |
| parent | 7ee2ac2d38bba2aa24fce7a72dd01dc07d509e72 (diff) | |
Misc Egg (#37)
* EGG: Archive, DvdFile, DvdRipper
* start eggStream
* FrmHeap and AssertHeap OK
* progress on EggController
* port in WPAD stuff
* update WPAD/WUD/KPAD/SC symbols
* eggController OK
* bytematch more CoreController virtual funcs
* eggDecomp/eggStreamDecomp Ok
* eggDvdRipper OK
* EGG gfx splits
* Finished Splitting EGG
* create egg Files
* eggDecomp.h -> eggStreamDecomp.h
* Revert some format changes
Diffstat (limited to 'src/egg/core/eggVideo.cpp')
| -rw-r--r-- | src/egg/core/eggVideo.cpp | 543 |
1 files changed, 270 insertions, 273 deletions
diff --git a/src/egg/core/eggVideo.cpp b/src/egg/core/eggVideo.cpp index 76479432..e84f4fec 100644 --- a/src/egg/core/eggVideo.cpp +++ b/src/egg/core/eggVideo.cpp @@ -6,303 +6,305 @@ namespace { const GXRenderModeObj gRMO_Pal60_640x456Prog_16x9 = { - 0, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 25, // viXOrigin - 12, // viYOrigin - 670, // viWidth - 456, // viHeight - 1, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {7, 7, 12, 12, 12, 7, 7} // vFilter + 0, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 25, // viXOrigin + 12, // viYOrigin + 670, // viWidth + 456, // viHeight + 1, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {7, 7, 12, 12, 12, 7, 7} // vFilter }; const GXRenderModeObj gRMO_Pal60_640x456IntDf_16x9 = { - 2, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 25, // viXOrigin - 12, // viYOrigin - 670, // viWidth - 456, // viHeight - 0, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {0, 0, 21, 22, 21, 0, 0} // vFilter + 2, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 25, // viXOrigin + 12, // viYOrigin + 670, // viWidth + 456, // viHeight + 0, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {0, 0, 21, 22, 21, 0, 0} // vFilter }; const GXRenderModeObj gRMO_Pal50_640x456IntDf_16x9 = { - 4, // tvInfo - 640, // fbWidth - 456, // efbHeight - 542, // xfbHeight - 27, // viXOrigin - 16, // viYOrigin - 666, // viWidth - 542, // viHeight - 1, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {7, 7, 12, 12, 12, 7, 7} // vFilter + 4, // tvInfo + 640, // fbWidth + 456, // efbHeight + 542, // xfbHeight + 27, // viXOrigin + 16, // viYOrigin + 666, // viWidth + 542, // viHeight + 1, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {7, 7, 12, 12, 12, 7, 7} // vFilter }; const GXRenderModeObj gRMO_Ntsc_640x456Prog_16x9 = { - 20, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 25, // viXOrigin - 12, // viYOrigin - 670, // viWidth - 456, // viHeight - 1, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {7, 7, 12, 12, 12, 7, 7} // vFilter + 20, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 25, // viXOrigin + 12, // viYOrigin + 670, // viWidth + 456, // viHeight + 1, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {7, 7, 12, 12, 12, 7, 7} // vFilter }; const GXRenderModeObj gRMO_Ntsc_640x456IntDf_16x9 = { - 22, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 25, // viXOrigin - 12, // viYOrigin - 670, // viWidth - 456, // viHeight - 0, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {0, 0, 21, 22, 21, 0, 0} // vFilter + 22, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 25, // viXOrigin + 12, // viYOrigin + 670, // viWidth + 456, // viHeight + 0, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {0, 0, 21, 22, 21, 0, 0} // vFilter }; const GXRenderModeObj gRMO_Pal60_640x456Prog_4x3 = { - 0, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 17, // viXOrigin - 12, // viYOrigin - 686, // viWidth - 456, // viHeight - 1, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {7, 7, 12, 12, 12, 7, 7} // vFilter + 0, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 17, // viXOrigin + 12, // viYOrigin + 686, // viWidth + 456, // viHeight + 1, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {7, 7, 12, 12, 12, 7, 7} // vFilter }; const GXRenderModeObj gRMO_Pal60_640x456IntDf_4x3 = { - 2, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 17, // viXOrigin - 12, // viYOrigin - 686, // viWidth - 456, // viHeight - 0, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {0, 0, 21, 22, 21, 0, 0} // vFilter + 2, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 17, // viXOrigin + 12, // viYOrigin + 686, // viWidth + 456, // viHeight + 0, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {0, 0, 21, 22, 21, 0, 0} // vFilter }; const GXRenderModeObj gRMO_Pal50_640x456IntDf_4x3 = { - 4, // tvInfo - 640, // fbWidth - 456, // efbHeight - 542, // xfbHeight - 19, // viXOrigin - 16, // viYOrigin - 682, // viWidth - 542, // viHeight - 1, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {7, 7, 12, 12, 12, 7, 7} // vFilter + 4, // tvInfo + 640, // fbWidth + 456, // efbHeight + 542, // xfbHeight + 19, // viXOrigin + 16, // viYOrigin + 682, // viWidth + 542, // viHeight + 1, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {7, 7, 12, 12, 12, 7, 7} // vFilter }; const GXRenderModeObj gRMO_Ntsc_640x456Prog_4x3 = { - 20, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 17, // viXOrigin - 12, // viYOrigin - 686, // viWidth - 456, // viHeight - 1, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {7, 7, 12, 12, 12, 7, 7} // vFilter + 20, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 17, // viXOrigin + 12, // viYOrigin + 686, // viWidth + 456, // viHeight + 1, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {7, 7, 12, 12, 12, 7, 7} // vFilter }; const GXRenderModeObj gRMO_Ntsc_640x456IntDf_4x3 = { - 22, // tvInfo - 640, // fbWidth - 456, // efbHeight - 456, // xfbHeight - 17, // viXOrigin - 12, // viYOrigin - 686, // viWidth - 456, // viHeight - 0, // xfbMode - 0, // field_rendering - 0, // aa - { - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - {6, 6}, - }, // sample_pattern - {0, 0, 21, 22, 21, 0, 0} // vFilter + 22, // tvInfo + 640, // fbWidth + 456, // efbHeight + 456, // xfbHeight + 17, // viXOrigin + 12, // viYOrigin + 686, // viWidth + 456, // viHeight + 0, // xfbMode + 0, // field_rendering + 0, // aa + { + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + {6, 6}, + }, // sample_pattern + {0, 0, 21, 22, 21, 0, 0} // vFilter }; } // namespace namespace EGG { -const EGG::Video::RenderModeObjSet renderModes = {{&gRMO_Pal60_640x456Prog_16x9, &gRMO_Pal60_640x456IntDf_16x9, - &gRMO_Pal50_640x456IntDf_16x9, &gRMO_Ntsc_640x456Prog_16x9, &gRMO_Ntsc_640x456IntDf_16x9, - &gRMO_Pal60_640x456Prog_4x3, &gRMO_Pal60_640x456IntDf_4x3, &gRMO_Pal50_640x456IntDf_4x3, - &gRMO_Ntsc_640x456Prog_4x3, &gRMO_Ntsc_640x456IntDf_4x3}}; +const EGG::Video::RenderModeObjSet renderModes = { + {&gRMO_Pal60_640x456Prog_16x9, &gRMO_Pal60_640x456IntDf_16x9, &gRMO_Pal50_640x456IntDf_16x9, + &gRMO_Ntsc_640x456Prog_16x9, &gRMO_Ntsc_640x456IntDf_16x9, &gRMO_Pal60_640x456Prog_4x3, + &gRMO_Pal60_640x456IntDf_4x3, &gRMO_Pal50_640x456IntDf_4x3, &gRMO_Ntsc_640x456Prog_4x3, + &gRMO_Ntsc_640x456IntDf_4x3} +}; /* 80498690 */ void Video::initialize(GXRenderModeObj *obj, const RenderModeObjSet *set) { VIInit(); @@ -362,15 +364,10 @@ f32 itof(u32 n) { bool isNtscLike; switch (tvFormat) { - case VI_TV_FMT_NTSC: - isNtscLike = true; - break; - case VI_TV_FMT_PAL: - case VI_TV_FMT_EURGB60: - isNtscLike = false; - break; - default: - isNtscLike = true; + case VI_TV_FMT_NTSC: isNtscLike = true; break; + case VI_TV_FMT_PAL: + case VI_TV_FMT_EURGB60: isNtscLike = false; break; + default: isNtscLike = true; } if (dtvstatus && pmode) { |
