I posted this over on KLOV when VAC was being ported but thought it may be an idea to post it here too with it being about a UK-designed and built game that more people would remember.
I was recently reminded about Invader's Revenge that I remember playing in my younger days on holidaty in Scarborough. More than just a clone of Space Invaders, with "interesting" sounds and varied gameplay.
It was made by Zenitone Microsec from Burton-on-Trent. Whilst it ran on Taito or Midway Space Invaders hardware, it used a custom sound board, either a potted epoxy version for Taito 2/3 layer Space Invader's boards (giving colour or black & white game) or a single board that plugs in to either Taito or Midway L-shaped boards for a black and white game. Without the sound board, the game doesn't have any sound, in fact it doesn't even run and just crashes. Until recently, Mame didn't emulate the sound so I guess not many people played it in Mame as it was silent.
I set about a couple of things - 1-get my stack of Invader's Revenge sound boards working, and 2-spend a bit of quality time with the game code to find out why it wouldn't run, and convert it to have some sound with a standard SI sound board so more people can enjoy it.
I had to do approx. 75% disassembly of the game code to understand what was going on but all is now complete and you can play it on ordinary SI hardware and enjoy some sound, not as many sounds as the original but I've tried to make best use possible of the 6 or so sounds that are available on a standard SI sound board. It also took a lot longer than expected due to some devious code protection in the game (not surprising I guess considering the Stamper brothers were involved in making it...).
1 - A simple one, it checks for the presence of the sound board or else it crashes before even starting up. Code checks for a logic 0 on a particular input so simple to fix
2 - It does a slow running routine to make a checksum on the contents of the game ROM. If the checksum is wrong the game will crash, but not until a few minutes have passed.
3 - Text printed on screen looks up contents of the first 256 bytes of ROM, so if the ROM code has been changed, odd characters are printed
4 - A further, obfuscated code copied from ROM to RAM checks if the sound board is connected. But this time it checks for a logic 1 on the input mentioned in point 1. A command is written to the sound board to change the signal from 0 to 1. If it doesn't read the correct value it (very) slowly updates a timer and eventually the game will reboot, but only after a lot of games have been played. Mame doesn't emulate this properly as it always assumes the signal is logic level 0, and whilst it looks to be ok and plays fine, the game will eventually reboot.
There was very little spare space in the ROM to add the extra sound code but removing the above protection and some of the printed text in demo mode gave me enough space to play with. I also squeezed in a freeplay option selected using a spare DIP switch.
Photos of the different sound boards are attached as are a couple of youtube links showing gameplay using standard Space Invaders sounds.
It's undergoing a bit more testing at the moment, but code should be released soon for anyone who doesn't own one of the sound boards but wants to play the game. It will also star in the upcoming "alternate-SI multigame".
Normal gameplay
In freeplay mode


I was recently reminded about Invader's Revenge that I remember playing in my younger days on holidaty in Scarborough. More than just a clone of Space Invaders, with "interesting" sounds and varied gameplay.
It was made by Zenitone Microsec from Burton-on-Trent. Whilst it ran on Taito or Midway Space Invaders hardware, it used a custom sound board, either a potted epoxy version for Taito 2/3 layer Space Invader's boards (giving colour or black & white game) or a single board that plugs in to either Taito or Midway L-shaped boards for a black and white game. Without the sound board, the game doesn't have any sound, in fact it doesn't even run and just crashes. Until recently, Mame didn't emulate the sound so I guess not many people played it in Mame as it was silent.
I set about a couple of things - 1-get my stack of Invader's Revenge sound boards working, and 2-spend a bit of quality time with the game code to find out why it wouldn't run, and convert it to have some sound with a standard SI sound board so more people can enjoy it.
I had to do approx. 75% disassembly of the game code to understand what was going on but all is now complete and you can play it on ordinary SI hardware and enjoy some sound, not as many sounds as the original but I've tried to make best use possible of the 6 or so sounds that are available on a standard SI sound board. It also took a lot longer than expected due to some devious code protection in the game (not surprising I guess considering the Stamper brothers were involved in making it...).
1 - A simple one, it checks for the presence of the sound board or else it crashes before even starting up. Code checks for a logic 0 on a particular input so simple to fix
2 - It does a slow running routine to make a checksum on the contents of the game ROM. If the checksum is wrong the game will crash, but not until a few minutes have passed.
3 - Text printed on screen looks up contents of the first 256 bytes of ROM, so if the ROM code has been changed, odd characters are printed
4 - A further, obfuscated code copied from ROM to RAM checks if the sound board is connected. But this time it checks for a logic 1 on the input mentioned in point 1. A command is written to the sound board to change the signal from 0 to 1. If it doesn't read the correct value it (very) slowly updates a timer and eventually the game will reboot, but only after a lot of games have been played. Mame doesn't emulate this properly as it always assumes the signal is logic level 0, and whilst it looks to be ok and plays fine, the game will eventually reboot.
There was very little spare space in the ROM to add the extra sound code but removing the above protection and some of the printed text in demo mode gave me enough space to play with. I also squeezed in a freeplay option selected using a spare DIP switch.
Photos of the different sound boards are attached as are a couple of youtube links showing gameplay using standard Space Invaders sounds.
It's undergoing a bit more testing at the moment, but code should be released soon for anyone who doesn't own one of the sound boards but wants to play the game. It will also star in the upcoming "alternate-SI multigame".
Normal gameplay
In freeplay mode

