While the original GATO was written in BASIC for DOS computers, the Macintosh version was written from scratch in C and designed from scratch to take advantage of the Macintosh user interface. The authors of the Mac version (Bill Scott, James Rhodes and Sean Hill) used MacPaint to create all of the game graphics and MacDraw to generate the ship shapes.
A port to the 7800 system was evaluated by Atari, and several prototypes have been found, though they show only a series of still renditions of various screens in the game.
The highest difficulty levels of the game cause the opening mission briefing to be rendered *only* as Morse Code, forcing the player to decode it himself in real-time.
The title, Gato, is a class of the US "fleet" type long-range recon submarines. The most famous of which (in real life) is USS Wahoo.
While the submarine and the enemy ships are authentic, the terrain in GATO is a randomly generated series of islands that's supposed to be somewhere in the Pacific. We did not get realistic terrain until Sid Meier's Silent Service.
GATO was written in basic and compiled to an executable.
You can tell this because all of the sprites used in the game are flashed onto the screen in a rapid order before the game starts. This is common in basic games that use PUT and GET commands for sprite manipulation. Each sprite has to be on the screen and then GETed into a data array before it can be referenced as a sprite later on in the game.
(Editor's note: The sprites were stored as a series of relative directions -- up two pixels, left 7 pixels, draw filled circle at x,y, etc. -- so they took up less space. So they had to be drawn as well as GET'd. Another way to verify if a game was compiled BASIC was to search for BASIC keywords and errors; the string "RETURN without GOSUB" was found in GATO.EXE)
Featured a Run Speed parameter which you could change to run the game at "0", or 8088 speed, "1", or Compaq Deskpro speed (80286), or "2.5" (PCAT and AT&T 8086).