Jesterhead said:
Im interested in understanding of some aspects of N64 and its emulation.
1. What exactly is meant with the famous µ-code?
Do the games change the way the N64 renders pictures?
2. What are those "D-lists" and "A-Lists" ?
If anyone knows a site with more aspects of N64 and emulating please post it too.
uCode (or microcode) are small programs that are uploaded to the RSP to perform a certain task. Those uCodes can do all the 3D geometry needed for graphics (before the RDP processes the graphics), produce audio (enveloping, mixing, and resampling), MP3 decoding (Perfect Dark, Conker's Bad Fur Day), JPEG decompression (Zelda OOT), or MPEG movie playback (Resident Evil II). Each game can use different uCodes for different things or a different uCode for the same thing (such as two uCodes to render one 3D scene).
Dlists and Alists are Display Lists and Audio Lists. Display lists are microcode specific lists to process/render the 3D Geometry/Graphics needed for the scene. They are not all the same. Alists are Audio Lists are microcode specific lists to process the Audio needed for one audio frame. And Audio frame is the amount of Audio data needed to be produced for one interval (usually in Sync with Vsync) or per audio dma interruption. Most standard uCodes for audio use the previous method, while MusyX games and some modified uCodes require accurate interruptions. Obviously the former is easier to emulate with any degree of satisfactory results.
I hope I answered your questions without being too wordy.