N64® Functions Menu
|
al - Audio Library Functions
gDP - DP GBI Macros
gdSP - General GBI Macros
gSP - SP GBI Macros
gt - Turbo Microcode RDP
gu - Graphics Utilities
Math - Math Functions
nuSys - NuSystem
os - N64 Operating System
sp - Sprite Library Functions
uh - Host to Target IO
64DD - N64 Disk Drive
|
|
osViGetStatus
Format
#include <ultra64.h>
u32 osViGetStatus(void);
What This Function Does
It is one of the following 16 management functions for the video interface (VI):
- osViGetStatus
- osViGetCurrentMode
- osViGetCurrentLine
- osViGetCurrentField
- osViGetCurrentFramebuffer
- osViGetNextFramebuffer
- osViSetMode
- osViSetEvent
- osViSetSpecialFeatures
- osViSetXScale
- osViSetYScale
- osViSwapBuffer
- osViBlack
- osViFade
- osViRepeatLine
- osCreateViManager
Links to each of these VI management functions are listed in the "See Also" section at the foot of this article.
For general information about the VI and its supported modes, codes, and functions, see the osVi page. The general information applies to each of the VI management functions and you should understood it before using any of the VI functions. All 16 functions are described, so you can see how they all work together to manage the VI.
Call osViGetStatus to get the value of the video interface status/control register. The unsigned 32-bit returned value contains
various bit patterns that are defined in <rcp.h>. Some of these patterns include:
- VI_CTRL_TYPE_16 - 16-bit pixel size
- VI_CTRL_TYPE_32 - 32-bit pixel size
- VI_CTRL_GAMMA_DITHER_ON - gamma_dither mode is enabled
- VI_CTRL_GAMMA_ON - gamma correction is enabled
- VI_CTRL_DIVOT_ON - divot mode is enabled
- VI_CTRL_SERRATE_ON - serrate mode is enabled
- VI_CTRL_DITHER_FILTER_ON - dither filter mode is enabled
You can mask (AND) these bit patterns against the returned value to
interpret the video interface status. Serrate mode mentioned above is a
special feature of true NTSC that provides a twice line frequency narrow
sync pulse during vertical sync. This feature helps ancient analog
amplifiers to stabilize vertical retrace phase lock loop. Apparently,
there are some very high-end TVs that can differentiate between true
interlaced and low resolution non-interlaced mode by the presence or
absence of these serration pulses. The global VI mode table is
initialized to have serrate mode enabled in all interlaced modes and
disabled in all low resolution non-interlaced modes.
See Also
osViGetStatus
osViGetCurrentMode
osViGetCurrentLine
osViGetCurrentField
osViGetCurrentFramebuffer
osViGetNextFramebuffer
osViSetMode
osViSetEvent
osViSetSpecialFeatures
osViSetXScale
osViSetYScale
osViSwapBuffer
osViBlack
osViFade
osViRepeatLine
osCreateViManager
osSetEventMesg
osGetTime
|
Nintendo® Confidential
Warning: all information in this document is confidential and covered by a non-disclosure agreement. You are responsible for keeping this information confidential and protected. Nintendo will vigorously enforce this responsibility.
Copyright © 1998
Nintendo of America Inc. All rights reserved Nintendo and N64 are registered trademarks of Nintendo
Last updated January 1998
|
|