Wii maximal resolution is 720x480 (480i,480p) for NTSC & PAL60 and 720x574 (576i) for PAL50
The Video Hardware display the content of an external framebuffer (XFB), which is located in RAM, on screen . The video size is ALWAYS 720x480 or 720x574 but the "active" display size can be smaller.
The Video hardware can also:
- adjust the position of the active display within the full video frame (xoffset, yoffset)
- upscale the original framebuffer
width to any width up to the maximal video width (720 pixels): this is generally used to handle widescreen
The external framebuffer can be filled with pixel data "manually" (direct write into xfb memory) or, more generally, by hardware copy from the internal framebuffer content.
Internal framebuffer (EFB) is located inside the Graphic Harware ("GX") memory and is where GX hardware is doing its rendering (3D, texture,...): it is limited to 640x528 pixels.
The EFB limitation is somehow related to the fact that the safe area for TV (the area that can "really" be seen, because of overscan restrictions) is a centered 640x448 pixels area for NTSC & PAL60 or 640x528 pixels area for PAL50: this is where you should keep important stuff to be displayed.
Vertically, the Graphic Hardware can upscale the EFB
height to the XFB height: this could be useful for compatibility reasons in the case of PAL display, where you can not have a 574 pixels high EFB but still want to avoid black borders.
Still remember that most TV have vertical overscan which limit the visible area to approximately 448 (528 for PAL) lines
Horizontally, it's possible to display larger screens by either:
- doing successive copy to the external framebuffer, the only limit being the RAM size.
- using the GX scaling feature to render a downscaled image and then use Video Hardware (VI) horizontal scaling ability to fill the screen up to 720 pixels
Still remember that most TV will hide part of these 720 pixels, the maximal horizontal visible resolution being very variable between TV models.