N64:
Then N64 is a relative simple system compared to other consoles. It
contains a CPU (MIPS III/64-bit, FPU), a DSP (sub MIPS I/32-bit, custom
Vector Unit), Rasterizer and A system controller (DMAC, Video Encoder,
Audio DAC). It does have not a sound chip of any kind. All sounds are
handled by software. Most games run at 320x240 and the video encoder
upscales it to 640x240, much like modern systems which have 1080p/720p on
the game box but the actual games renders at a much lower resolution and
then upscaled to 1080/720. Even though the active scan is 640, the
actual visible area is about 10% smaller.
Most features are implemented. Major features still lacking are CPU cache,
Rasterizer coverage calculation, anti-aliasing and Color Encoder filters.
There are still quite a bit of quirks of the Rasterizer that need to be
corrected, z buffer, color combiner, blender issues. Coverage and
anti-aliasing are CPU intensive but they should remove any tears or lines
in the images below, as well as smooth out the edges. The Color Encoder
Filter should further smooth out the image by removing any
disproportionately large pixels. The CPU still has some TLB issues that
needs to be resolved. The emulators' current status is on par with Saturn
and slightly behind Playstation.
Very few N64 games use FMVs, most likely due to the limited cartridge space.
Unlike the Playstation (and Saturn with the MPEG card), the N64 has no
video decoding hardware and all movies are played by software. Quality
and frame rate are quite poor due to the extreme compression.
Similar to the Playstation, the N64 does not have dedicated 2D hardware.
Although the 2D rectangle capability of the Rasterizer for sprites is
superior to both the Playstation's GPU and Saturn's VDP1, it has a handicap
of having a very small texture RAM, only 4KB. If CLUT is used, then the
available texture space is halved to only 2KB. Many 2D sprites would have
to be rendered by multiple operations, while on the Playstation and Saturn,
it would only require one operation.
The N64 is more known for it's 3D capabilities. It has many features not
available to the Playstation and Saturn, much more similar to a modern GPU.
Features such as bilinear filtering, coverage anti-aliasing, z buffering,
perspective correction, etc... The Rasterizer do not calculate it's
own interpolants, these are calculated by the DSP or CPU. Hence it can
rasterize not only triangles but concave quads, pentagons even hexagons.
However it's 3D capabilities are still affected by the limited texture RAM
mentioned above.
Very few games use high-res mode, Most of the ones that do use interlace
typically use it for menus and splash screens. Some games do use interlace
in game and like all other systems, when interlace are used during motion
the artifacts "mouse teeth" appear.