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

Nintendo® Confidential

   

gSPSelectDL

Format
gSPSelectDL(Gfx *gdl, Gfx *ldl, u8 sid,
   u32 flag, u32 mask)
gsSPSelectDL(Gfx *ldl, u8 sid,
   u32 flag, u32 mask)
Arguments
  • gdl is the pointer to the display list
  • ldl is the pointer to the display list to be linked
  • sid is the status ID {0, 4, 8, or 12}
  • flag is the status flag
  • mask is the status mask
What This Macro Does
It inspects Status[sid] using the same method used for texture load decision making. Depending on the True/False result, it calls other display lists. It determines whether or not to call the display list by going through these steps:
  1. It checks the condition of (Status[sid] & mask) == flag.
  2. If the result is true, it finishes the macro without doing anything.
  3. If the result is false, it changes the Status[sid] by performing this evaluation:
    Status[sid] =
       (Status[sid] & ~mask) | (flag & mask);
    and it calls the display list specified by the ldl argument.
This macro is one of the following three new S2DEX microcode macros that make up the conditional DL branching GBI:
  • gSPSetStatus
  • gSPSelectDL
  • gSPSelectBranchDL
For detailed information on S2DEX microcode GBI macros and data structures, please see the "S2DEX Microcode" area of the N64 Programming Manual.

See Also
S2DEX Microcode
guS2DInitBg


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