This page is intended for more advanced/curious users only, if you meet the system requirements then you already have everything covered and don't need to worry about this!

Project64 Legacy is compiled with Microsoft Visual Studio .NET with 6th gen, CPU ("Pentium Pro") optimisations and compressed.

Project64 uses the following extended CPU instruction sets if they are detected on your system:

  • MMX
  • SSE
  • 3Dnow!

....mostly in the video plugin and RSP. The emulator is tested to run without any of these intructions, but a minimum of MMX is recommended (any CPU without MMX is likely to be too old/slow to run Project64 well anyway).

The emulator makes heavy use of the FPU and requires a strong FPU to perform satisfactorily (so for example the AMD K6 series is not a good choice, but the K7 is an excellent choice). MMX etc. does not in any way make up for a weak FPU.

Jabo's Direct3D plugins use the following TextureOpCaps (your hardware and drivers must support all these features for good quality emulation, exactly which are used varies from game to game).

  • DISABLE
  • SELECTARG1
  • SELECTARG2
  • MODULATE
  • MODULATE2X
  • MODULATE4X
  • ADD
  • ADDSIGNED
  • ADDSIGNED2X
  • SUBTRACT
  • ADDSMOOTH
  • BLENDDIFFUSEALPHA
  • BLENDTEXTUREALPHA
  • BLENDFACTORALPHA
  • BLENDTEXTUREALPHAPM
  • BLENDCURRENTALPHA
  • MODULATEALPHA_ADDCOLOR
  • MODULATECOLOR_ADDALPHA
  • MODULATEINVALPHA_ADDCOLOR
  • MODULATEINVCOLOR_ADDALPHA

You can see which your hardware supports by downloading and running the Microsoft DirectX Caps Viewer. I list these because at the time of release these features are not present in a large number of installed systems.

Most of the other requirements of the graphics plugin are already fairly standard, such as at ability to do at least two textures per pass (multipass was removed in v1.2 because it's not possible to render fog properly with it). Texture memory usage is very efficient and shouldn't be a concern, but at least 16MB graphics RAM is suggested. The Internal geometry pipeline makes extensive use of SSE, and some (less effective) use of 3Dnow! It is important to have hardware clipping support if you use the internal pipeline (as by default) because it's not part of the software engine. Note that lighting is always done internally regardless of pipeline.

The performance of primary framebuffer emulation very much depends on how fast your hardware is at certain memory copy operations, and these are something not normally used by computer games - we have found Matrox to be unusually fast at this (despite the poor 3d feature set) and nVidia relatively slow, at the time of writing... you need a very fast system for such framebuffer use to be viable.

The OpenGL plugin (not included in v1.4+) requires an nVidia (TNT or higher) card because it uses proprietary extensions (not part of OGL 1.2/1.3 spec). The plugin is mostly an experiment and demonstration, there are very few times when the end user will find it better than the Direct3D. This is not because one API is inherently superior to the other, but rather the path the developer chose.

Secondary video devices (e.g. 3dfx Voodoo1/2) are not supported at all.

The default input plugin uses DirectInput and is thus (in theory!) not fussy about choice of input device, however, it doesn't support all possible DX controls - N-Rage Legacy plugin supports more controls.

Requirements Feature Lists Minimun Specs
   

Return to the top