When you have to store the image for a sprite, you usually want to save memory space. If possible too, you want to make your sprite driver software simple too. Arcades like Ghosts'n Goblins or Contra (Gryzor) achieves this by having two bits associated with each sprite on the screen: one for horizontal flip and the other for vertical.
When these bits are set, the sprite coordinates are reversed. The sprite pixels are not scanned from 0 to 15 but from 15 to 0. In the hardware design, this means having an XOR gate with the flip bit and other signals. It also means reversing the shift order of pixel shift registers. Flipping has a price in hardware complexity.
Enter 1942 and 1943. 1942 had no sprite flipping but it was an old arcade, maybe asking for hardware flipping was too much... but then 1943 does not have sprite flipping either! Why? Think about it: planes are symmetrical by nature. There is no difference between a plane and its mirror image. Well, that's true for horizontal flipping but how about vertical flipping? It would make sense to vertically flip a plane because that changes its tail from the top of the screen to the bottom. Why isn't that used in 1943? If you look at how planes in 1943 flee away from you, they always turn around and show the bottom of the plane. So you see the top and the bottom of the plane during the animation: two completely different drawings. Plus you also see the plane turning upside down before fleeing.
In 1943 the designer's choice was to use a bit more memory and have the planes stored facing up and down instead of having the face-up position flipped by the hardware. This makes the game more appealing, saves some logic parts on the PCB. It means using more ROM space, and ROM was not free either but overall the trade off worked well!
Rikard Bengtsson
2019-03-19 11:09:50 +0000 UTC