Hmm, single-chip combo of TMS1x00 and SN76477? Or did they just recreate all the sounds digitally?

The codes are A1-J10, giving 100 preset positions. I think that's an index into a table, since there are constraints on how the grids are populated.

A grid bitmap would take about 13 bytes per game, which seems like too much. 2 bytes/ship (start x, start y, size, direction) would reduce that to 10 bytes per game, and you could crunch that data into 1.5 bytes/ship pretty easily.

Let me know when you've got the driver working and I'll help figure out the missing bytes in the O output PLA.