Interesting... I used the "dots are for timing" because of anomie's timing.txt; I didn't notice that it uses pixels and dots interchangeably. Maybe Nintendo (and hence the video linked above) used "dot" because most people were not familiar with pixels until they had a PC, or a device with a digital display (TV/smartphone). Or it's just a JP-to-EN translation issue.
Interestingly the development manual isn't 100% consistent either: "2133H: [...] An imaginary resolution of 512 (Horizontal) can be created by shifting the SUB screen half dot to the left [...]".
nocash goes one step further and divides the pixels: "the main/sub screen pixels are rendered as half-pixels of the high-resolution image".
512 pixels only applies to BGs though. The horizontal BG positions, the horizontal sprite positions and the windows still use a grid of 256 units. Also, color math treats each pair of pixels as one thing.
The main idea was probably to double the NES's BG rendering speed (one pixel on every phase transition of the 5.369MHz dot clock) and add color math for transparency effects; then some engineer had the idea to optionally output all the pixels early, subscreen pixels first (on a TV screen hi-res mode is actually shifted one pixel to the left compared to low-res mode); in fact it's so early that according to anomie's regs.txt the windows aren't applied correctly: "The 'subscreen' pixel is clipped (by windows) when the main-screen pixel to the LEFT is clipped, not when the one to the RIGHT is clipped as you'd expect. What happens with pixel column 0 is unknown."
https://archive.org/details/SNESDevManual/book1/jeffythedragonslayer wrote: ↑Fri Jan 13, 2023 4:04 pm I'd prefer an OCR'd copy that's searchable, tbh.
https://archive.org/details/snes_manual1
https://archive.org/details/SFX01SOFTWA ... RE_MANUAL/