Blue Azure Posted June 3, 2013 Share Posted June 3, 2013 BAM!BAM!BAM! BAM! BAM! BLUE AZURE MONDAY BAM! BAM! BAM!BAM!BAM!BAM! HISTORY & BACKGROUND "Dig Dug (ディグダグ, Digu Dagu?) is an arcade game developed and published by Namco in Japan in 1982 for Namco Galaga hardware. It was later published outside of Japan by Atari, Inc. A popular game based on a simple concept, it was also released as a video game on many consoles. The objective of Dig Dug is to eliminate underground-dwelling monsters by inflating them until they pop, or by dropping rocks on them. There are two kinds of enemies in the game: Pookas - A race of round red monsters (said to be modeled after tomatoes) who wear yellow goggles. Fygars - A race of green dragons who can breathe fire. The player's character is Dig Dug, dressed in white and blue, and able to dig tunnels through destructible environments. Dig Dug is killed if he is caught by either Pooka or Fygar, burned by a Fygar's fire, or crushed by a rock. A partially inflated monster will gradually deflate and recover after a few seconds, during which time the player can pass safely through it. The monsters normally crawl through the tunnels in the dirt but can turn into ghostly eyes and travel slowly through the dirt. The last enemy on a level will try to escape off the top left of the screen." credit - wikipedia ARCADE GAMEPLAY VIDEO THERE WAS A DIGDUG #2? I didn't know this... Here's the next one in the 7800 series: CX-7803 DIG DUG (1984 & recon 2013). I never played this one much as I mostly played the 5200 version which was released first. To me, this is a cute kid's game, the object is to dig your way to the next creature and using the fire button three times to pump them up and make them pop. The added strategy is to undermine the rocks and time it just right that you drop the rock onto the creature's head, and "poof" they're squashed. But be careful, your DigDug could get squashed! The problem is, the game was way too hard for the kid who would want to play the game in the first place, although there is a non-default kid's level which can be selected. If it took two pumps instead of three pumps to kill the creature, that would be easier but the animation wouldn't be as good. Need to call the Game Genie to do something about this! DISASSEMBLY Thanks to TEP392, the NTSC version was re-org'd and we have a binary matching the source list. Unlike most games, I didn't find any open blocks of code available for future development. There may be unused code, but this was undetermined. We'd have to grow to 32K to explore expanded gameplay options. The fully-commented disassembly has been created: DigDugDisassy5.rtf INTRODUCING DIGDOG, *NEW GAME*, from the producers of the movie WAG THE DOG... Now that the disassembly is complete and we begin to understand the inner workings of the game, it's time to go to work. We wanted a new name, a new character, a new FUN. What would it be? In this case, the title screen graphics design defined what we would/could do. To name a game and not have a matching title screen just doesn't cut it anymore, 30 years after 1983. So I set out to change the title screen, only to find out the change choices would be very limited. The "D" in Dig is cloned to the "D" in Dog, and the "G" in diG is cloned to the "G" in duG, a la Atari 2600 (!,?). The "I" and "U" are created separately. So really only the "I" and "U" could be easily changed. What could the name be changed to? I looked at my dog, I looked at the game, and I looked at my dog, and I looked at the game. What would the name be? DIGDOG (or come to think of it, DOGDIG might have worked). I hugged my dog, big smiles, and we're on our way. It's a lot of work, but once done, it's done. The title screen now says "DIGDOG" and now we need the new character stamp. In comes GAMBLER172. He's a veteran of stamping around here, the ultimate stamp collector, so I went to him for help. No one knows (exactly) how he does it with his tile modifier program, but I gave him a simple specification. "Think Dalmation" - a white dog with some black dots. Sure enough, GAMBLER172 knocks it out of the park with another design. He says "it's not too good" but I'm thinking this is great. Does the Tail wag the Dog or does the Dog wag the Tail? DIGDOG TITLE SCREEN PIC DIGDOG GAMEPLAY PIC This game is completely original stock (w/ TEPperware™ recon code), except for the title screen and the new character - Spot the Dog - you will spot the dog, won't you? Both NTSC and PAL versions available only here at ATARIAGE.com. Every dog lover will love this game! NOTE: THERE ARE TWO VERSIONS OF EVERYTHING - one version has the original harpoon that the DIGDOG throws at the creatures to pump them up. The other version has an invisible harpoon - you can shoot but you don't see anything. Which version do you prefer? NTSC DIGDOG binary (contains TEPperware™) w/ Harpoon DIGDOG_NTSC_HARP_3DB9.bin NTSC DIGDOG emulator (contains TEPperware™) w/ Harpoon DigDog_NTSC_HARP_16K.a78 NTSC DIGDOG binary (contains TEPperware™) w/o Harpoon DIGDOG_NTSC_noHARP_E69A.bin NTSC DIGDOG emulator (contains TEPperware™) w/o Harpoon DigDog_NTSC_noHARP_16K.a78 PAL DIGDOG binary w/ Harpoon DIGDOG_PAL_HARP_48D9.bin PAL DIGDOG emulator w/ Harpoon DigDog_PAL_HARP_32K.a78 PAL DIGDOG binary w/o Harpoon DIGDOG_PAL_noHARP_EF0A.bin PAL DIGDOG emulator w/o Harpoon DigDog_PAL_noHARP_32K.a78 TRANSLATING TO THE WORLD OF INVINCIBILITY Moving on, it's time to bring in the Mod Squad to modifix the game to be playable by any "kid." Some games are easy to make "invincible," however this one isn't. With fire bombs, multiple killer creatures and rocks dropping on your head, all of these need to be handled. First, for the collision detection: YESCOLL: F746--A9-01-----LDA #$01--------;MONSTER AND DIGDUG COLLIDE!!! F748--85-84-----STA DETHWISH F74A--A4-80-----LDY LASTMOVE F74C--BE-31-C0--LDX DANIMIX,Y F74F--BD-55-C1--LDA ADEATH,X F752--85-66-----STA DDINDX F754--20-C8-F7--JSR VANPUMP-----;STOP DISPLAYING PUMP F757--A0-0C-----LDY #SNG8-------;GOTCHA NOISE F759--4C-EF-FD--JMP NOISE-------;NOISE IS A SUBR To skip over the "death" shenanigans, simply jump over it by adding a jump at $F746 ($3746 on the EPROM), change $A9$01$$85$84 to $4C$57$F7$EA. Or, if you don't want to hear the "gotcha" noise every time you would have died (but didn't), change $A9$01$$85$84 to $4C$5C$F7$EA. ROCK SQUASHING Next, to disable the rock squashing routine. This occurs at around $F6D7. NOVEG: F6D7--A5-E3-----LDA SQUASH------;DIGDUG WANTS TO DIE FROM SQUASHING? F6D9--F0-07-----BEQ ROCKDETH F6DB--A0-00-----LDY #00 F6DD--84-E3-----STY SQUASH F6DF--C8--------INY F6E0--84-84-----STY DETHWISH "Death" occurs with DETHWISH ($84) = 1. If you don't want to die (ever), set DETHWISH = 0 (forever) and you'll never die. You can do this by deleting the increment instruction at $F6DF (change $C8 TO $EA). Now, we still get squashed at $F6DD, but I like that! If we use this as a trainer, to improve our DigDug gameplay we need to preserve as much of the original game as possible. So we keep the squash (or is it squish?). This means the squash will squish the DigDug (you) but then you bounce back to life again. It's great! To assure DETHWISH is never set, also change $F507 from $86$84 to $EA$EA and $D1F3 from $85$84 to $EA$EA. ESCAPE MODE The other "feature" of the original game [that I never liked] was the "escape mode" which generally prevents you from pumping the last creature. I thought that the waves/levels were timed, so you would always run out of time, possibly and/or probably preventing you from killing the last creature. But when I went into invincible mode and didn't shoot/pump any creatures, the level would go on forever waiting for me to do something (no need for the pause button any more). It took some time to find this in the code, but I got it! Escape mode happens around $F361, but to avoid the set-up for it, we need to go back further in the code to $F334 to avoid the speed-up of the last creature. The way I found this was the call to the "Escape Noise" which is #SNG9. Then it was just a matter of jumping around this part of the code. PREV2: F363--CA--------DEX F364--B5-B2-----LDA MONSTAT,X F366--A8--------TAY F367--30-FA-----BMI PREV2 F369--29-40-----AND #$40------;NO ESCAPE MUSIC IF LAST CR SQUASHING F36B--D0-0C-----BNE NOESCMUS F36D--98--------TYA F36E--29-06-----AND #$06------;NO ESCAPE MUSIC IF LAST CR GBNF F370--C9-02-----CMP #$02 F372--F0-05-----BEQ NOESCMUS F374--A0-0D-----LDY #SNG9-----;ESCAPING NOISE F376--20-EF-FD--JSR NOISE Change $F364 (EPROM $3364) from $B5$B2$A8 to $4C$79$F3 to bypass the whole escape routine. But now you must kill all the creatures to gain the next level! Creature Feature! EXTRA LIVES In the original game, I never achieved an extra life in the default level. You had to amass 20,000 points to do this. Now, I changed it from 20,000 to 10,000 so I can hear the bonus life jingle earlier. Bonuses now occur at 10,000 and 50,000 and 100,000 so there's a relatively constant flow of bonus lives. Maximum lives displayed is 9. DF92--C9-02-----CMP #02-------;DID WE JUST PASS 20,000? DF94--F0-08-----BEQ NEWMAN DF96--29-0F-----AND #$0F------;MULTIPLE OF 100,000? DF98--F0-04-----BEQ NEWMAN DF9A--C9-05-----CMP #05-------;MULTIPLE OF 50,000? DF9C--D0-13-----BNE ADDSDONE Change $DF92 (EPROM $1F92) from $C9$02 to $C9$01 to achieve a bonus life at 10,000 points. And here's the trap…I start you with 1 life. Will you ever achieve the maximum of 9 lives? Play on, and see!!! (What happens at a million points?) D212--A2-05-----LDX #05-------;SET UP NUMBER OF MEN LEFT. D214--86-9E-----STX NUMMEN----;PLAYER 0'S MEN. D216--A5-82-----LDA NUMPLAYR D218--D0-01-----BNE ISCORE D21A--AA--------TAX Change $D212 (EPROM $1212) from $A2$05 to $A2$02 to start with 1 bonus life. FRUIT BONUSES The only thing missing now is more FRUIT (aka VEGGIES) bonuses. The original game calls for 2 rocks to be dropped and then you get fruit. WE WANT MORE FRUIT. RFINISH: F6C4--A9-00-----LDA #00 F6C6--95-C3-----STA TUMBLE,X F6C8--95-49-----STA ROCKSY,X F6CA--C6-D4-----DEC ROCKSNOW---;DECREMENT # OF ROCKS FALLING F6CC--E6-C8-----INC FALLCNT F6CE--A5-C8-----LDA FALLCNT F6D0--C9-02-----CMP #02--------;EVERY 2 ROCKS DROPPED GETS FRUIT F6D2--D0-03-----BNE NOVEG F6D4--4A--------LSR A F6D5--85-F1-----STA FRUIT------;SET FRUIT = 1 TO GET FRUIT DISPLAYED From $F6D0 change $C9$02$D0$03$4A to $EA$EA$EA$A9$01 and you will get a bonus fruit displayed every time you drop a rock. Fruit is healthy - go get it! SQUASH Don't know exactly how to decipher the squash/crunch routine, so I made a simple mod to not allow the DIGDOG to squash so much in the y-axis. CRUNCH2: D62F--C9-06-----CMP #$06-------;REQUIRE OVERLAP OF 2 D631--B0-27-----BCS CRUNCH5 D633--B5-49-----LDA ROCKSY,X---;LDA DOES NOT AFFECT CARRY D635--69-06-----ADC #$06 D637--38--------SEC D638--E5-D1-----SBC VICTIMY D63A--90-1E-----BCC CRUNCH5 D63C--C9-11-----CMP #17 D63E--B0-1A-----BCS CRUNCH5 D640--B5-49-----LDA ROCKSY,X D642--E9-05-----SBC #$06-1-----;MIGHT NEED TO TWEAK THIS D644--85-D2-----STA RTEMP D646--C9-17-----CMP #MINDDY----;DON'T SQUASH OFF EDGE D648--90-12-----BCC MINSQSHY D64A--E5-D1-----SBC VICTIMY D64C--90-08-----BCC NEWSQSHY D64E--C9-04-----CMP #$04 D650--90-04-----BCC NEWSQSHY D652--A5-D1-----LDA VICTIMY D654--D0-02-----BNE NOCADJST Change $D642 (EPROM $1642) from $E9$05 to $E9$01 to disable DD squash. SOUND We're experimenting with the tunes in this game. One improvement is deleting the DIGDOG throwing the harpoon sound, SNG5. ASNG5F0 SNG5F0: EC30------------.BYTE $0B,$08,$06,$0B,$08,$06,$0B,$08 ;,$06 ;9 BYTES-1 F7E5--A0-08-----LDY #SNG5------;THROWN HARPOON F7E7--20-EF-FD--JSR NOISE Change $F7E7 (EPROM $37E7) from $20$EF$FD to $EA$EA$EA to disable the throwing the harpoon sound. Next, we attempt to modify the pumping creature sound, SNG4. The TIA volume and frequency controls are coded as follows: ASNG4V0 SNG4V0: EC71------------.BYTE $0A,$0A,$0A,$0A------------------;15 BYTES EC75------------.BYTE $0A,$0A,$0A,$0A EC79------------.BYTE $04,$04,$04,$04,$04,$04,$04 ASNG4F0 SNG4F0: EC80------------.BYTE $02,$99,$98,$97------------------;15 BYTES-1 EC84------------.BYTE $96,$95,$94,$93 EC88------------.BYTE $32,$17,$18,$19,$1A,$1B----------;,$1C Change freq control at $EC80 (EPROM $2C80) from $02,$99,$98,$97,$96,$95,$94,$93,$32,$17,$18,$19,$1A,$1B to $02,$1E,$1F,$1E,$1F,$1E,$1F,$1E,$0F,$0E,$0F,$10,$11,$10 to change the pumping sound. I was trying to make a dog bark sound. It's not great, but for the 15 minutes I spent on it - it will do. Remember, it's TIA. GLITCHES Unfortunately, this game is now a little glitchy. I tried fixing this and gained some improvement. I think the game expects that you must have died by now and loses some control of the creatures and Fygar's flaming breath is sometimes left behind. But the game doesn't seem to completely crash as I played 50 levels on my first try and made it all the way through. Beware there's some pixelization of the bonus fruit. The bonus fruit now arrives for every rock dropped, so you can go get the bonus even if the fruit is illegible, or not showing at all. This needs to be fixed by a DIGDUG expert, who probably has zero (0) bytes to work with. Good luck! FOR AGES 6 THRU 43 (so Bob can play): WARNING> THIS GAME IS ADDICTIVE, YOU MAY NEVER BE ABLE TO STOP PLAYING THIS GAME. It has unlimited levels and scoring. >DIGDOG INVINCIBLE < **NEW GAME** AVAILABLE ONLY AT ATARIAGE.COM NTSC DIGDOG INVINCIBLE binary (contains TEPperware™) w/ Harpoon DIGDOG_NTSC_INV_HARP_447A.bin NTSC DIGDOG INVINCIBLE emulator (contains TEPperware™) w/ Harpoon DigDog_NTSC_INV_HARP_16K.a78 NTSC DIGDOG INVINCIBLE binary (contains TEPperware™) w/o Harpoon DIGDOG_NTSC_INV_noHARP_EA34.bin NTSC DIGDOG INVINCIBLE emulator (contains TEPperware™) w/o Harpoon DigDog_NTSC_INV_noHARP_16K.a78 PAL DIGDOG INVINCIBLE binary w/ Harpoon DIGDOG_PAL_INV_HARP_4652.bin PAL DIGDOG INVINCIBLE emulator w/ Harpoon DigDog_PAL_INV_HARP_32K.a78 PAL DIGDOG INVINCIBLE binary w/o Harpoon DIGDOG_PAL_INV_noHARP_ED37.bin PAL DIGDOG INVINCIBLE emulator w/o Harpoon DigDog_PAL_INV_noHARP_32K.a78 ENJOY THE GAMES!!! ///BLUEMANGAMESGROUP/// 1 Quote Link to comment Share on other sites More sharing options...
Stun Runner 87 Posted June 4, 2013 Share Posted June 4, 2013 Can someone make a "Dig Cat" too? And a "Dig Squirl", "Dig Doug", "DugDig", "Pac Dig" and "DigStunRunner" as well. Thanks guys. Quote Link to comment Share on other sites More sharing options...
Goochman Posted June 4, 2013 Share Posted June 4, 2013 I think we really need a DigCyanCat 1 Quote Link to comment Share on other sites More sharing options...
gambler172 Posted June 8, 2013 Share Posted June 8, 2013 I think we really need a DigCyanCat If someone can do a reasonable CAT or CYAN CAT sprite,i could do a DIG CAT version,but remember,the CAT sprite may not be bigger,than the DIG DUG player sprite greetings Walter Quote Link to comment Share on other sites More sharing options...
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.