81
votes
Accepted
How did the SNES do the “pixelate” transition effect?
Believe it or not, it's a dedicated hardware feature of the Super Nintendo — it's the mosaic register, at address $2106. The programmer can pick a pixellation value from 1 to 16, which will cause the ...
57
votes
Accepted
How could the SNES take advantage of in-cartridge coprocessors that weren't invented when the SNES came out?
The cartridge connector for the NES, SNES, and other consoles of that era directly exposed the main CPU's address and data busses to the cartridge, complete with the control signals you need to know ...
56
votes
Accepted
Why use static RAM addresses instead of the stack?
The 8 bit 6502 family doesn't have any stack-relative addressing modes that would make it easy to use the stack for variable storage. One can access values on the stack with a sequence such as TSX; ...
52
votes
Were the classic game consoles *technically* able to play both NTSC and PAL games, if ignoring artificial region lock-in?
They were different.
You probably already know that NTSC is 60 Hz and PAL is 50 Hz. The video generation hardware was much more 'bare metal' than today (the NES color palette implementation was so ...
48
votes
Why use static RAM addresses instead of the stack?
Off the top of my head I can think of two reasons, there are probably more.
The first reason is that these variables may be set by a routine each frame, and then a lot of code uses them during the ...
33
votes
Accepted
Why didn't SNES Doom use mode 7?
Mode 7 is just an image warp — the programmer sets a 2d offset that is applied between each pixel and the next when proceeding in raster order. That allows 2d rotation and scaling to be applied; if ...
33
votes
Accepted
How did SNES render more accurate perspective than PS1?
The SNES hardware doesn’t implement perspective, it implements affine transforms of the background layer. Affine transforms aren’t sufficient for perspective.
Perspective is implemented by changing ...
31
votes
How could the SNES take advantage of in-cartridge coprocessors that weren't invented when the SNES came out?
How did these chips actually transfer data to the SNES?
The cartridge connector is a bus interface. Much like ISA-Slots in a PC, it contains everything necessary to access memory or memory mapped ...
26
votes
Accepted
When did hardware antialiasing start being available?
There's something of a conflation here of antialiasing and filtering, I think. Antialiasing is literally preventing things from adopting aliases — e.g. if a diagonal line looks like a staircase rather ...
24
votes
Accepted
Why use repeated STZ instructions with the same operand on the 65C816 for the SNES (Super Nintendo)?
This is a “write-twice” register, a 16-bit register mapped into a single byte, which takes two 8-bit stores to populate. There are a number of these on the SNES, with varying write orders (high or low ...
23
votes
Why use static RAM addresses instead of the stack?
As mentioned previously the timing issue is the cause not to waste time in pushing up parameters, access them with cost-intensive addressing modes and pull them finally from stack. Too much action if ...
22
votes
Accepted
Game cartridge save-game battery lifetime
Yes, they can deplete. More modern games (starting with the Nintendo 64, for instance) used EEPROM (similar to flash memory) so don't have this issue, but in the days of the SNES this was too ...
21
votes
Accepted
Why can't special controllers or accessories be used with Super FX games?
SNES cartridges equipped with the Super FX processor use significantly more power than normal game cartridges. If a Super FX game is used with special controllers or accessories, which can use more ...
21
votes
Why didn't SNES Doom use mode 7?
Among other reasons: floors and ceilings of different heights would be very difficult due to the way Mode 7 is used to imitate a projective transformed plane.
The effect works by setting the rotation, ...
18
votes
Accepted
How does JSR actually work on the 65c816 CPU for the SNES (Super Nintendo)?
JSR works how you think — the program counter will head off to 80fa — but the SNES doesn't. The two most common memory mappers both mirror what's at $00xx at $80xx.
So when the processor reads from $...
17
votes
Were the classic game consoles *technically* able to play both NTSC and PAL games, if ignoring artificial region lock-in?
Basically the difference between PAL and NTSC consoles is the frame rate, 50 vs 60 Hz. The consequence of that is that PAL and NTSC mostly differ in number of cycles available for the CPU per frame, ...
15
votes
Accepted
If the Sega Genesis/MegaDrive could be overclocked so easily, why couldn't the SNES?
The Super NES (SNES) has a much different hardware architecture than the Sega Genesis, and is built around the custom Ricoh 5A22 ASIC. As opposed to the discrete, stock, Motorola 68000 CPU employed in ...
15
votes
What limited the performance of the SuperFX chip?
There are two main limitations with SuperFX that limited its performance and the level of 3D gaming that could thus be accomplished (e.g how many polygons/second).
The chip itself only provided ...
15
votes
Accepted
How does the Everdrive handle all the special chips and stuff that were put in cartridges?
Does it really have every single chip that any game ever used as hardware inside the Everdrive? Or does it actually emulate them somehow?
The latter.
In the Super Everdrive and SD2SNES cartridges, ...
14
votes
Why use static RAM addresses instead of the stack?
It's also worth pointing out that the intricacies of maintaining variables on the stack can result in slower code. And of course there are limits to how big the stack can be; even with the more ...
14
votes
Accepted
Did Nintendo change its mind about 68000 SNES?
Did Nintendo really change their mind about using the 68000?
Hard to say, as these decisions were never public.
If so, how does this square with that CPU being so cheap even two years before the ...
14
votes
How does the Everdrive handle all the special chips and stuff that were put in cartridges?
Most flashcarts (including the Everdrive) use an FPGA to emulate mappers, which is essentially a programmable ASIC -- a developer writes code in a hardware description language specifying the behavior ...
13
votes
What did the Super FX co-processor do?
The main tasks were:
Emulation of a bitmap framebuffer for the SNES. The SNES is tile-based, which means plotting arbitrary lines, polygons etc. and filling them with color or a pattern isn't easy. ...
13
votes
Accepted
How does one bypass the region lock on Japanese Super Famicom?
There is a tool called the Super UFO Pro 8 which claims to bypass the region lock, among other things. Unsure if it is only for North American consoles...
You can also use a Game Genie or T-...
12
votes
Reconditioning and cleaning old Nintendo (and other) game cartridges
I used to use a clean rubber eraser to clean golden contacts in general, not only cartridges but that can also leave residues if you don't clean it properly after.
There is a comprehensive article ...
12
votes
Accepted
Why do multiple SNES games share the same title screen music?
The reason for this is that Pocket Monster is an unlicensed SNES game released in September 1998, and in being an unlicensed game, it does not need to uphold itself to Nintendo's licensing standards. ...
12
votes
Accepted
Did any SNES games use the fast ROM?
Yes, actually! Probably not very many early/launch titles, but some later ones did. According to Donkey Kong Country's internal header, it does indeed use FastROM. The same can be said about Tales of ...
11
votes
How does one bypass the region lock on Japanese Super Famicom?
Electrically, the American Super NES and Super Famicom cartridge ports are the same. Their Checking Integrated Circuits (CIC) use the same random number generation key, but they use a differently ...
11
votes
Why use static RAM addresses instead of the stack?
Code written in high-level languages do a lot of stack-relative operations, because compilers are good at keeping track of which stack offset refers to which variable in the current context.
In hand-...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
snes × 51nintendo × 12
graphics × 9
nes × 9
hardware × 8
gaming × 5
game-cartridge × 5
assembly × 4
emulation × 4
sega-genesis × 4
chip × 3
maintenance × 3
game-boy × 2
nintendo-64 × 2
game-consoles × 2
ntsc × 2
pal × 2
compression × 2
history × 1
programming × 1
cpu × 1
rom × 1
memory-layout × 1
software-development × 1
arcade × 1