Copy Link
Add to Bookmark
Report

N64d (v0.2) - The technical specs of the Nintendo 64

Nintendo64's profile picture
Published in 
N64 various
 · 25 Jan 2020

N64 Basic Architecture Document
Compiled by Bandages of Denary Notation
Sources: Too many to individually mention

Custom CPU


Custom 64-bit MIPS R4300i RISC CPU (clock speed 93.75 MHz)
64-bit data path/registers/buffer
5-stage pipeline
The benchmarks of the CPU are as follows:
125 Dhrystone MIPS - 93 million operations per second
60 SPECint92
45 SPECfp92

Co-Processor


Custom 64-bit MIPS RISC RCP (62.5 MHz)
Built-in Audio/Video Vector Processor (RSP)
The benchmarks of the RCP are as follows:
Over 500,000,000 operations per second (most Pentiums only achieve to 10% of this!)
Built-in Pixel-Drawing Processor (RDP) which handles:

Advanced Texture-Mapping


Detail Texturing
Environment Mapping
Perspective Correction
Tri-linear Mip-Map Interpolation
Depth Buffering
Environment mapping
Color Combining
Anti-Aliasing and Blending (eliminates jagged lines/edges, usually in a low res display)
Depth, color and texture clipping
Alpha channel effects (such as fog/transparency effects to a 256-level maximum)
Rasterizing
Gouraud Shading (for texture mapping)
Z-Buffering (handles polygons in x, y, z dimensions)
Automatic LOD Management
Vertex positioning and transformations

Note on Z-buffering: This particular aspect handles polygons on the z-axis as well as the standard x/y axis. The z-axis sets the depth of any object in a 3D landscape. This means when a 3D object is rendered the z-buffer calculates automatically the parts of the object that should be visible (and therefore the parts that have to be drawn on-screen) and displays only those.
This prevents processing time being wasted on drawing graphic elements that the gamesplayer will not see and also aids more precise collision detection.

Memory


Total RAM of 4 Megabytes or 36 megabits
Rambus DRAM subsystem - transferring up to 562.5 MBytes per second
Custom 9-bit Rambus Bus (to the DRAM) running to a maximum of 500 MHz
128-bit internal data bus to RCP

Note on memory: The Rambus DRAM used by the N64 is 9-bit* RAM (as opposed to 8-bit)

* 8 data bits + 1 parity bit

Sound


16-bit stereo output
ADPCM Compression
Wavetable Synthesis
Sampled at 48 KHz max

In theory, we could utilise up to 100 PCM channels - however this would work out at each channel taking 1% of CPU time. This being the case, it would be impractical to actually use the full 100. A useful "standard" if you like, would be to use 16-24 channels, thus achieving a balance between system speed and output quality.

Unique output generators:
Voice output with variable pitch
Reverb, chorus gain and pan are applicable to all sound output.

Display:


Video Output:
RF
Stereo A/V
S-Video
HDTV

Screen display:

256 x 224 low-res pixel resolution, 640 x 480 hi-res pixel resolution (with Flicker Free Interlace Mode support).
Maximum color palette of 16.8 million colors
21-bit color output with a 32-bit RGBA Pixel Color Frame Buffer.
This means the N64 can display 32000 colors (out of the 16.8 million total) on-screen at any one time.

User interface:

Standard N64 joypad;
Digital 8-direction crosskey pad
Six buttons on pad right (Two B and A buttons and Four C Group buttons)
Analogue thumbstick in center
Left and right fingerpads on top of controller
One finger-trigger on controller base
also:
Memory card port on c/back
Supports memory packs 256k - 2MB in size
Controller connection:
Via 4 controller ports each with three-prong feed
Other ports/hardware interfaces:
Cartridge slot (on top of main body)
Extension port (on base of main body)
Memory expansion option (top front of main body)

Basic Cartridge Specs:

256 Megabit carts max = four 64 meg ROMs, most carts are 32-128MB.
Uses JPEG image format for pre-rendered images
Possible on-board polygon-handling hardware
On-board hardware (optional software) decompression

Part of the N64d compilation of Nintendo64 documents.
1997 Denary Notation

← previous
next →
loading
sending ...
New to Neperos ? Sign Up for free
download Neperos App from Google Play
install Neperos as PWA

Let's discover also

Recent Articles

Recent Comments

Neperos cookies
This website uses cookies to store your preferences and improve the service. Cookies authorization will allow me and / or my partners to process personal data such as browsing behaviour.

By pressing OK you agree to the Terms of Service and acknowledge the Privacy Policy

By pressing REJECT you will be able to continue to use Neperos (like read articles or write comments) but some important cookies will not be set. This may affect certain features and functions of the platform.
OK
REJECT