I don't know if water can be removed, but here's the principle on how water works.
There's a palette of 64 colors total that the Genesis may ever use at any given time. There are no natural transluency effects built in to the graphics processor, and it's be far too slow to hack something like that in software.
So how was the water effect accomplished?
Leaving out interlaced modes and more intricate facets on the matter, the screen is redrawn via the CRT gun, effectively an electronic beam that sweeps the area of the screen from the upper-left to the lower-right, follwing horizontal lines. At the end of every horizontal line, the gun seeks back to the left side of the next line and continues to draw until it reaches the the lower-right, where it returns to the starting position. This is called "vertical blank". "Horizontal blank" would be when it reaches the end of one horizontal line and goes to the next one.
So anyway, you set up an interrupt process (that is, something that can be called by the CPU to halt all other processes and be handled immediately and quickly) that waits for a particular row on the vertical scan period, probably on the
horizontal blank interrupt of the Genesis. When it reaches a certain line (which will change depending on your Y location within the level), it will suddenly change from the normal level 64 color palette to an alternate "water" palette for the level. This hardware hack will enable a virtual 128 colors, 64 above the water line, and 64 below. The palette is reset on the
vertical blank interrupt to the normal colors so when the scangun begins again the palette is correct for above the water line.
Now, the Genesis hardware also has no natural support for scaling. So the 2-Player split screen required a different sort of hack. I don't fully understand how this one works, but it pretty much is a hack that prevents either even or odd horizontal lines from being drawn, skipping over them and basically drawing the screen twice with only have the lines.
To answer your question, what can
basically be assumed is that either one of two conditions occur:
A) The hack to cut the scanlines (which is again done by horizontal blank monitoring) somehow prohibits the scanline position monitoring hack. (Not always an even/odd line?)
B)
It's too much load for the system! If you slow the Genesis down extremely in a water area where the water line is visible, you will often notice a "flicker" of the water temporarily engulfing the whole screen. This is due to the processor load making the system run too slowly to be able to set the palette quickly to the state required.
EDIT: Updated image links. This is a good post. :P
This post has been edited by Rob Jinnai: 04 December 2004 - 05:51 PM