Dyna Blaster ※ reverse engineering on DOS ※ Cracking VG Passwords S2e3

108,358
0
Published 2019-09-14
In the advent of 1990 I played NES games a lot. Knowing nothing about programming but being geekish by nature, I obsessed over cracking the password systems in those games. In this series we will reverse engineer some of these password generators.

Become a member: youtube.com/Bisqwit/join

Twitter: twitter.com/RealBisqwit
Patreon: patreon.com/Bisqwit (alternatives at iki.fi/bisqwit/donate.html)
Twitch: twitch.tv/RealBisqwit
Homepage: iki.fi/bisqwit/

You can contribute subtitles: youtube.com/timedtext_video?ref=share&v=JMz_PYnpJP…

Downloads:
bisqwit.iki.fi/jkp2/dynablaster-passwords.php
github.com/bisqwit/password_codecs/

Channels of the guest star Toni Rosendahl, man of gadgets:
   / @tonirosendahl3714   youtube.com/user/trflight

More DOS stuff on my channel:
   • I wrote a Raytracer for DOS, 16 VGA c...   Raytracer
   • I wrote an OpenGL first-person demo f...   OpenGL
   • Creating a MIDI player in MS-DOS / BASIC   MIDI player
More cracking of VG passwords:
   • Cracking Videogame Passwords Season 1  
   • Cracking Videogame Passwords Season 2  

All Comments (21)
  • @GodofWar1515
    Wow, I never saw the actual process of reverse engineering before. This was such an educational video. Thanks for posting Bisqwit.
  • @artwork79
    UNP is now my new favorite Bisqwit word. Thank you for a wonderful video B-man
  • @vitaawl
    Hello Bisqwit. I would like to talk about unused bits. This game is a port with TurboGrafx-16. The console version has a checksum, which checks the correctness of the entered password. Checksum is not in the DOS version, so there are many bits that do nothing. In the console version, significant bits are not lost due to randomization. Also in the DOS version, you can create a password with 0 bombs, which cannot be done in the TurboGrafx-16 version.
  • @Bisqwit
    First! (Placeholder comment reserved for announcements.) Note: In the latter parts of the narration there are some noises on the background, which head-phone users will identify as rain. That is correct. It was raining very heavily while I recorded those lines — and the raindrops hitting the aluminium window sill produced loud sounds, which were picked up even by the directional microphone — and I decided to keep it. Many a car got damaged on the flooding roads that day.
  • @qwertyuiop4991
    Don't have a clue what is going on here, but still impressed :)
  • @SoftBreadSoft
    Love this series. Cracking video game password systems is one of the perfect examples for edutainment of reversing asm algorithms/encryptions, in my opinion. Take care
  • @bioteqns928
    Love this series of episodes, truly. As a programmer who grew up with ASM and C back in the "let's see how much we can pack in to 1k of memory" days, seeing what they came up with, as far as algorithms / encryption inside a game for the sheer purpose of extending play-time, truly amazes me. Not to mention, your methods of breaking it down are just gold to the ears. Keep it up, good sir. You're an inspiration to us all. Hopefully the new coders (if you can call them that) these days will latch on to this kind of knowledge as well.
  • @duuqnd
    I think the reason why it's called "Dyna Blaster" was that they didn't want to call it "Bomberman" in Europe (I don't remember why, terrorism probably). Dyna Blaster was the second name change. The first was to "Eric and the Floaters", which is obviously not a good name.
  • @Wattstone
    2:28 "Code that makes sense". Well, I'll have to take your word for it. 😂
  • @DavidvanDeijk
    In the 90s i once had a program that was packed 3 times with different packers. UNP unpacked all three and it revealed a master password in plain text. Great memories. Thanks for this video
  • @vgp128
    Inspiring as always! This is the kind of wizardry I had wished I understood when I was In my teens. I wanted to thank you again for all your hard work and going over the process in detail so we viewers can follow. I especially like how you show the tracing of some code and commenting in your disassembly as you go along. It helps me as a viewer follow along, and also showed me how I can comment better when I am doing a disassembly.
  • @LightTheMars
    I really enjoy you using different programming languages for your encoder/decoder through the episodes. It's just a minor detail but it adds a lot to these videos.
  • @antonnym214
    In those days, I was coding in z-80 and 8080 assembly and I have to say you are a smart cookie! Good investigation!
  • @nrdtec7152
    Glad I found your channel. I've been struggling for inspiration lately and you have invigorated me. Thanks so much for what your doing!
  • @sucersdungeon
    Best video I've seen this month. These are not only very interesting but educational as well. Thank you Bisqwit!
  • @G-F-D
    This series is one of my favourites of yours. These videos are always very interesting deep-dives into often unusual programming practices and errors, while still being relatively accessible for those less experienced in these tasks. If you fancy an obscure SNES game for this series, Mohawk & Headphone Jack might be interesting—that game is something of a programming marvel. It has a TCRF article that lists some "joke" passwords, as a potential starting point. While the game's only speedrunner was given a copy of the source code by the game's developer (D.Scott Williamson), I don't think it's ever been leaked onto the public internet.
  • You should definitely keep this series going for a long time. Really like the education intros to most of your videos. Chag Sameach! Happy Sukkot
  • @ricardo.mazeto
    I like how you took care of explaining step by step the process of reverse engineering. Kudos you for having the patience. So, we'll not going to see more scheme code in the future? Didn't you fall in love with functional programming?
  • @jemakrol
    So fun to watch these videos. I never really got into cracking but I managed to write a save game editor for UFO - Enemy Unknown for PC in the early 90's (I believe it was). It was so much fun, don't know why I didn't continue to do things like that. That very game had a very simple save game format, it was uncompressed, unencrypted fixed size files so just a matter of play, save, play save again and then check diff. Really not hard, but the feeling of eventually having identified the workings is wonderful. A feeling I can recognize here too - especiellay considering you failed back then and got a chance to redo it properly this time. Thanks again, great as always.