Programming Manual

1. Overview
2. Troubleshooting
3. Hardware Architecture
4. Software Architecture
5. Game Production Process
6. N64 OS Overview
7. OS Functionality
8. Input/Output Functionality
9. Basic Memory
Management

10. Advanced Memory
Management
11. RSP Graphics
Programming

12. RDP Programming
13. Texture Mapping
14. Texture Rectangles
(Hardware Sprites)

15. Antialiasing / Blending
16. N64 Sprite Library
17. Audio Library
18. Audio Tools
19. Audio File Formats
20. Using the Audio Tools
21. Audio Memory Usage
22. Scheduling Audio and
Graphics

23. GameShop Debugger
24. Performance Tuning
Guide

25. Microcode

System Microcode

25.1 3D Graphics
Microcode

25.2 RSP to RDP Command
Processing

25.3 F3DEX Microcode

25.4 F3DEX2 Microcode

25.5 Sprite Microcode S2DEX
25.5.1 Overview
25.5.2 Features of S2DEX
25.5.2.1 The Drawing
Primitive

25.5.2.2 Self-Loading
Function

25.5.2.3 Debug Information
Output Function

25.5.2.4 Passing Commands
from RSP to RDP

25.5.3 Compatibility
with F3DEX

25.5.3.1 GBIs Supported
by S2DEX and F3DEX

25.5.3.2 GBIs Not Supported
in S2DEX

25.5.3.3 New GBIs
25.5.3.4 Precautions
Regarding GBIs

25.5.4 S2DEX GBIs
25.5.4.1 BG Drawing GBI
25.5.4.1.1 uObjBgStructure
25.5.4.1.1.1 uObjBg_tStructure
25.5.4.1.1.2 uObjScaleBg_t
Structure

25.5.4.1.2 gsPBgRectCopy
25.5.4.1.3 gsPBgRect1Cyc
25.5.4.2 The Sprite
Drawing GBI

25.5.4.2.1 uObjSprite
Structure

25.5.4.2.2 uObjMtx/
uObjSubMtx Structures

25.5.4.2.3 gSPObjRectangle
25.5.4.2.4 gSPObjRectangleR
25.5.4.2.5 gSPObjSprite
25.5.4.3 2D Matrix
Operation

25.5.4.3.1 gSPObjMatrix
25.5.4.3.2 gSPObjSubMatrix
25.5.4.4 Setting the
Object Render Mode

25.5.4.4.1 gSPObj
Render Mode

25.5.4.5 The Texture
Load GBI

25.5.4.5.1 uObjTxtr
Structure

25.5.4.5.2 uObjLoadTxtr
25.5.4.6 Compound
Processing GBI

25.5.4.6.1 uObjTxSprite
Structure

25.5.4.6.2 gSPObjLoadTxRect
25.5.4.6.3 gSPObjLoadTxRectR
25.5.4.6.4 gSPObjLoadTxSprite
25.5.4.7 Conditional
Branching GBI

25.5.4.7.1 gSPSetStatus
25.5.4.7.2 gSPSelectDL
25.5.4.7.3 gSPSelect
BranchDL

25.5.5 Emulation Functions
25.5.5.1 guS2DEmuGBgRect1Cyc
25.5.5.2 guS2DEmuSetScissor
25.5.6 DEBUG Information
Output Function

25.5.7 Installing the
S2DEX Package

25.5.8 History of Revisions

25.6 Audio Microcode

25.7 JPEG Microcode

25.8 Past Microcode

26. SI Devices
27. EPI Functions and
Extension Devices

28. n audio Library
Sample Program
Descriptions