I love this video game. For a brief moment, about four years back, I was the top player on the Williams Defender Players Unite facebook group at hard difficulty settings:
<a href="https://www.youtube.com/watch?v=7iEqoYW013E" rel="nofollow">https://www.youtube.com/watch?v=7iEqoYW013E</a><p>And, for the hackers, here's a version of the Defender ROM, modified by a programmer named Jim Bowley, to render an impossibly difficult version of the game:
<a href="https://www.youtube.com/watch?v=LhZlOwEvd5M" rel="nofollow">https://www.youtube.com/watch?v=LhZlOwEvd5M</a><p>The above is running on JROK -- <a href="http://www.jrok.com/" rel="nofollow">http://www.jrok.com/</a> -- custom silicon to emulate the original chip (much better than MAME), it's contained in an original cabinet, with an original monitor, and a custom built control panel, designed to be as authentic to the original as possible, and hand-built by Jim Bowley <a href="https://www.jbgaming.co.uk" rel="nofollow">https://www.jbgaming.co.uk</a> .<p>Here's a player, mikeville66, whose video inspired me to get better. This is maximum difficulty on the first-run ROM chips, the infamous Green ROMs:
<a href="https://www.youtube.com/watch?v=yrkx6vuiMrE" rel="nofollow">https://www.youtube.com/watch?v=yrkx6vuiMrE</a><p>And if you're interested in an instructional video of how to play:
<a href="https://www.youtube.com/watch?v=8PEpDMgR9D0" rel="nofollow">https://www.youtube.com/watch?v=8PEpDMgR9D0</a><p>Defender was a big game back in the day, grossing about a billion dollars worldwide.
A bit disappointed to see this repo doesn't contain the source code for the sound effects. Defender's sound effects kicked ass and were a big part of what made the game experience so intense. Instantly memorable, quintessential sounds of the arcade era.<p>Williams used the same sound hardware (and many of the same sound effects as well) on all their arcade and pinball games from the late 1970s through the mid 1980s. And unlike other machines that used dedicated sound-generating chips like the AY-3-8910, the Williams sound board was just a 6800 CPU hooked up to an 8-bit DAC. It did <i>everything</i> in software. No square wave generators or hardware timers. The pitch of the sound was controlled by variable-length delay loops!<p>I spent a bit of time reverse-engineering the sound ROMs a while ago. From what I recall, there were a few different sound-generation algorithms. Some of them generated simple pulse waves or noise. Another was wavetable-based; it used samples in ROM and manipulated them in various clever ways. Another one, which was responsible for their coolest sounds, used a bonkers system of multiple nested loops generating variable-width pulse waves... I was never able to fully understand it...
Through a random work connection I got to chat with Larry DeMar (“LED”) who coauthored both Defender and Robotron and who, as such, was one of my personal idols. He was super personable and was pretty curious to learn what our challenges were in making Crash for PS1. It was definitely one of those unique life events I’ll never forget..
I felt that Defender and Robotron (designed by the same team) were on another plane of difficulty compared to other games of the era. They required more visual processing ability and faster reflexes owing to the speed and number of objects on the screen trying to kill you.<p>Asteroids and Galaga were walks in the park by comparison.
I've seen this exact source code in person! Eugene Jarvis and Sam Dicker brought the Defender source code (several boxes of tractor-feed printouts) to the California Extreme arcade convention in 2014.<p>Photos: <a href="https://twitter.com/txsector/status/1302421155391791104" rel="nofollow">https://twitter.com/txsector/status/1302421155391791104</a><p>You can see that the file in the first photo is an exact match of "BLK71.SRC".
I love reading about and being reminded of these classic games!<p>I played Defender on an Atari 2600 in Brazil in the early 1980s and remember the ship would disappear when you fired, probably because the 2600 could only draw a limited number of objects on the screen at once.<p>Here is a blog post with memories of some old games compared to recent ones: <a href="https://hypertexthero.com/space-invaders-brazilian-cerrado/" rel="nofollow">https://hypertexthero.com/space-invaders-brazilian-cerrado/</a>
There was a good article that I can't find any more about someone who got really good at defender by immediately shooting all of the humanoids, thereby triggering the swarm of mutants. It was a good lesson on how you can get good at something by leaning into the difficult parts instead of shying away from them.
Spent far too much time and money on Defender.<p>I noticed that Williams arcade machines were better in many ways than others. This applied even more to the pinball machines. There was a quality about them that put Bally and others in the shade.
> There were four versions of the game released: White Label, Blue Label, Green Label, and Red Label, in that order. Each release was a circuit board with the compiled code split across a number of different ROM chips, also referred to as 'ICs'.<p>Pedantry: Assembly code is <i>assembled</i>, not compiled. I believe I'm losing my personal war on this, and someone here will certainly try to equate the simple mnemonic->opcode substitution and 2-pass label resolution an assembler does with the more complex and in-depth code emittance a compiler does, but it still grinds my gears.
I received a broken Defender cab for free. Two memory chips, a better ground strap, and a powersupply and it was back in business. My 6 year old twins and I played it for several years...I realized that no matter how much practice I got, I was never going to get any better at it. It then helped fund christmas one year.
Random thought as I find myself returning to this thread, looking over at great 14'ish inch CRT I just finished tuning to peak performance, also musing about whether I want to put it into a cabinet just for this game. Has been a while since I last played it with the factory controls. Seems I really do miss this experience.<p>Maybe Ground Kontrol here locally has a Defender...<p>But I digress, and really want to pose a tech question:<p>How robust are the parts of the game managing resources?<p>Has anyone dropped a 6309 into their game, or run their CPU at a higher clock?<p>Secondly, have people made modifications, such as something like a lander from hell wave, where they just keep coming, or maybe all pods, that kind of thing?
Wow. Thanks for reminding me about Datastorm, the first Defender come I ever played (Amiga, around 1992). I just installed the Amiga emulator fs-uae and downloaded the ADF file. IT WORKS. It's amazing how much detail you remember from a game you played when you were in your teens 30 years ago. That intro tune, man.. they really knew how to make music on those things. The game rocks too. I remember it being a bitch, and I just got my ass kicked a by it again. In fairness, I'm using cursor keys and right ALT.
OMG! Yes!!<p>I was a master at this back in the day, and even better at StarGate (Defender2)<p>One of the things about StarGate was that you could write almost a whole sentence if you beat the high score instead of just your initials.<p>I was in fierce competition with my friend and we would troll each other by writing horrible stuff on the high score for everyone in the arcade to see.
skimming through the source code it is amazing to me that someone could write an entire game like this in assembly. I tried to figure out how things are drawn and how object collisions are detected - I can't
The github page is short on details of why or how this game is notable and important. To someone not familiar with the game, then the rest of the info on the page seems lacking in context.