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
|
|
blockmonkey
README_DEMOS CONTENTS:
A simple performance measuring app that lets the user vary
display list sizes and parameters and see the effect on
render time. Controller explanation is printed when app is run.
README CONTENTS:
The point behind this application is to demonstrate the
performance penalty for various features. Through controller
manipulation, the user is able to toggle parameters such as
anti-aliasing, Z-buffering, and polygon count. A status bar
at the bottom of the screen indicates what percent of a frame
time the RCP processing overhead is for the generated display list.
The actual variables which are controllable are printed in the
xterm that gload was run in. Use the "G Button" (Z Button)
to toggle between the different controller modes. The "START"
Button in any controller mode will reset all parameters to
their initial default values.
Some notes to keep in mind:
The status bar at the bottom of the screen is broken up into
units of 1/60th of a second NTSC (1/50th of a second for PAL).
The status bar self-scales itself to cover a larger range of
processing time. Use "gload -a -s" to turn this feature off.
The status bar measures *ONLY* the time limit that it takes for
the RCP to process the display list (rsp->rdp), it does not
include any of the setup time in the R4300 to construct the
display list. Thus, the frame update rate on the screen
probably will not correspond to the frame compute time displayed
by the status bar.
The blocks are sorted with respect to Z, but only for their
initial configuration. This enables the user to rotate the
scene and investigate the impact of single Z read modify
writes vs. multiple Z reads single Z write vs. multiple Z
reads multiple Z writes.
The number of triangles displayed for the cubes includes all
triangles being generated. Keep in mind that since backface
culling is enabled, only half of the block polygons make it
through the entire rsp->rdp pipe, the other half are discarded
early in the rsp processing.
Turning on global transformations causes more matrix
transformations to be applied per primitive and thus
impacts on performance. Turn off global transformations in
order to decrease the transformation overhead.
TIMER BAR DESCRIPTION.
The timer bar looks different depending on which microcode
is selected and how many tasks are being used to render the
scene. In all cases, the black vertical tick marks indicate
60ths of a second. As the time varies, the timer bar's scale
automatically changes and you will see more or fewer 60th of
a second intervals on the screen at a time.
xbus, 1 task:
BLUE: rsp time
GREEN: rdp time (simultaneous with rsp)
dram, 1 task:
BLUE: rsp time
LIGHT GREEN: rdp time if rendered in the following fram (2 frame latency)
DARK GREEN: rdp time if rendered following the rsp completion
fifo, 1 task:
BLUE: rsp time
GREEN: rdp time (simultaneous with rsp)
xbus, more than 1 task:
BLUE: rsp time for all the tasks
RED LINES: mark the boundary of each individual task
GREEN: rdp time (simultaneous with rsp)
dram, more than 1 task:
BLUE (on top): rsp time if the rsp is run consecutively
BLUE (on bottom): rsp time if the rdp is run in between the rsp tasks
RED LINES (on blue): mark the boundary of each individual task
LIGHT GREEN: rdp time if rendered in the following frame (2 frame latency)
DARK GREEN: rdp time if rendered following each rsp task's completion
fifo, more than 1 task:
BLUE: rsp time
RED LINES: mark the boundary of each individual task
GREEN: rdp time (simultaneous with rsp)
Number of tasks used to render the scene: The default
is to draw all geometry in 1 task. If 2 tasks are selected,
then the "planes" are drawn in the first task and the
"cubes" are drawn in the second. If more than 2 tasks
are selected, then the "planes" are drawn in the first
task and the "cubes" are evenly distributed among the
remaining tasks (the rendering order stays the same
DESCRIPTION:
64 multi-colored rotating cubes will appear inside a
multi-colored box that is overlayed on a purple screen.
Each cube will spin at a variable rate of speed and axis.
The computer monitor will also display each result as you
manipulate the controller.
Task: Default:
AA/RA AA = on
ZB ZB = on
Cubes Per Row 4
Cube Division {0,0,0}
Cube Width 30
Cube tris 768
Plane tris 10
tasks 1
tris per task 778
Plane Dimensions X {10, 300}
Plane Dimensions Z {15, 245}
Plane Divisions {0, 0}
Horizontal offset 0
Vertical offset 0
Current Vi Mode 0
Lpnl/Lani (320x240)
Ucode xbus
Display List Len 1021
Lighting GOURAUD
Texture None
Controller Mode 0
Global Transforms on
Clip Ratio 2
CONTROLLER FUNCTIONS:
Controller Mode: 0
Up Pad blockwidths ++
Down Pad blockwidths --
Right Pad planesize ++
Left Pad planesize --
A Button toggle AA / RA
B Button toggle ZB
Arrow Right Cube Division ++
Arrow Left Cube Division --
Arrow Up Plane Divisions ++
Arrow Down Plane Divisions --
Right Cubes Per Axis ++
Left Cubes Per Axis --
G Button toggle controller mode (0,1,2,3)
START Button reset parameters
Controller Mode: 1
stick translate objects (Enabled)
Up Pad move eye in
Down Pad move eye out
A Button toggle PRIMCOLOR / GOURAUD / LIGHTING
B Button toggle texture OFF / ON / MIPMAP
Arrow Right positive rotation about Y axis (Enabled)
Arrow Left negative rotation about Y axis (Enabled)
Arrow Up positive rotation about X axis (Enabled)
Arrow Down negative rotation about X axis (Enabled)
Right clip ratio ++
Left clip ratio --
G Button toggle controller mode (0,1,2,3)
START Button reset parameters
Controller Mode: 2
Arrow Up Xpni screen width +4
Arrow Up Xpni screen width -4
Down Pad increment first screen scanline
Up Pad decrement first screen scanline
Left Pad decrement first scanline pixel
Right Pad incement first scanline pixel
A Button toggle VI mode (Lpni and Xpni)
B Button toggle global transformations
G Button toggle controller mode (0,1,2,3)
START Button reset parameters
Controller Mode: 3
A Button Toggle ucode
B Button Do a GBI hex dump (for gbi2mem)
G Button toggle controller mode (0,1,2,3)
Arrow Up increase DRAM FIFO buffer size
Arrow Down decrease DRAM FIFO buffer size
Arrow Right increase DRAM FIFO buffer size fast
Arrow Left decrease DRAM FIFO buffer size fast
Right increase variation in size among cubes
Left decrease variation in size among cubes
Pad Up increase number of tasks used to render
Pad Down decrease number of tasks used to render
START Button reset parameters
|
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 March 1998
|
|