Jump to content
IGNORED

How long to test if Demon Attack is the one that crashes?


ComputerSpaceFan

Recommended Posts

Alright I took a look at the Imagic roms with Activision on the screen, and posted my results in the rom comparisions thread:

 

http://www.atariage.com/forums/topic/103737-2600-rom-comparisions-and-dumps/page__view__findpost__p__1991322

 

Basically they all match the roms on the Activision Anthology release. Thank you Buzbard for helping me solve this. :)

Link to comment
Share on other sites

Alright I took a look at the Imagic roms with Activision on the screen, and posted my results in the rom comparisions thread:

 

http://www.atariage....ost__p__1991322

 

Basically they all match the roms on the Activision Anthology release. Thank you Buzbard for helping me solve this. :)

 

Always glad to help out.:)

Link to comment
Share on other sites

  • 6 years later...

Old thread I know I'm sorry, but I just experienced the first time the "end" of Demon Attack.

 

I never knew this version existed. I got Demon Attack as a birthday gift back in......1982 i think....but I live in Europe and so PAL territory.

I don't remember if my cartridge was text only, but it didn't have the end for sure as I scored pretty big scores BITD, much higher than what I just was at before reaching Level 84.

 

That cartridge (and 2600) have become "lost in space and time" though, a few years ago I decided to get a 2600 again so I bought one advertised at the Dutch equivalent of Craig's list. The one I chose to get wasn't the cheapest but it was in a nice shape box and the pictures showed it was in very good condition. Also it was not too far from my place.

When I arrived there to pick it up the woman who was selling it told me that her dad had brought it back from the US back in the early 80s...... She never advertised it as a US/NTSC model, probably because she simply didn't know about stuff like that.

 

But I was really pleased about it as I liked the US box.

 

Anyway, telling you all this because included with the sale were a few carts, including a boxed Demon Attack, which was in still great condition. So, this now turns out to be an early cartridge with the end. It is a text only label without any revision indicated.

 

Now I wonder:

- how much rarer are these compared to fixed ones ? If it only took two days until the boy complained about it it can't have been long until Rob fixed it.,,,..but I guess they didn't toss the first runs of cartridges over this bug....

- were there ever any PAL cartridges with the end ?

- were there text-only PAL cartridges ?

Link to comment
Share on other sites

The first and only time I was called out as a cheat was due ot this bug. Playing a Twin Galaxies 2600 contest I got a score way higher than everyone else on Demon Attack. Everyone started calling my scores 'doctored', etc... since all other players had the lvl 84 bug and my cart didnt.

 

Atleast the issue got cleared up before the tournament was over........then again all DA scores were tossed and that was the 1 game I had the top score :)

  • Like 2
Link to comment
Share on other sites

What did you score ?

 

I found back some negatives in a book about video-games on my parents attic a few years ago.

 

There were two pictures of my hi-score on (PAL) DA

 

I remember making these with the intention of sending them in to a Dutch game magazine, but I don't think I ever did.

 

http://www.flickr.com/photos/level_42/8585914059/

 

https://www.flickr.com/photos/level_42/8587015292/

 

Pretty decent score.....and I have a feeling I can even do better now....(I know I beat my DK high scores from BITD on the A8 recently, scoring higher than the official TG WR, on NTSC).

 

I'd still love to know if there's a crashing PAL version.

Link to comment
Share on other sites

Crazy ! Takes a long time to reach that I guess....

 

4-500K ? I reached 84 with a lot less score though AFAIR.....I'll try again...

 

 

About the Demon Attack versions: there are some differences in boxes too. Not only silver/black but my (silver) box says "NEW" turned sideways just before "Demon Attack" and I've seen pictures of boxes with PAL on that spot but also without any of that text.

My guess is the NEW was used for the first run (since it was new.. :D) and it disappeared "later", maybe with the fixed version ?

 

Anyone know the story of the black box ? I thought black boxes were used for the A8 versions of Imagic games.

Link to comment
Share on other sites

The "game over" bug in Demon Attack sprung from a sloppy bad idea, hatched literally two days before the code freeze, after which the game would officially leave Development and enter Production.

 

I had spent prior two weeks desperately crunching what had started as 4,500+ Bytes of compiled DA 6502 assembly into the 4,096 available on the ROM chip. So I spent two weeks trying to take out 9% of the Demon Attack code/data without losing game functionality or introducing any new bugs. It's the kind of work that is fun for awhile, and gets increasingly less fun the closer one gets to the end. Getting to 4,200 was easy, getting to 4150 Was much less so. The next 30 bytes come out one at a time, using byte-saving techniques that no dignified programmer would ever admit to. And then the final 25 bytes are pure examples of guerilla street coding in it's most raw form. In the case of Demon Attack I ended up stumbling across a pot of gold right at the end - finding a seven byte color data table that was originally intended to add more color variation to each game level, but never been used. So after deleting the unused table, the game was actually UNDER 4090 bytes, with six glorious bytes left over to spare! I remember walking into lunch that day feeling like a true 2600 Code BOSS, and bragging about my six unused bytes, So the challenge now became "what can be done in six bytes to improve the game?"

 

So I thought," hey I could have the game END! If somebody beat these angry demons, how would they respond? Maybe they would just shut the game off and go away, the equivalent of beating a five year old child at checkers, whose shame of being defeated combined with their immaturity results in them turning over the checkerboard and running away, thus taking the victory "away" from their opponent. So that was it! Turns out six extra bytes did the deed

 

------ next level initiation - run this code to set stuff up for the next level

 

LDA game_level. ; Retrieve current game level number

CMP #MAX_LEVELS ; Check if the last level of the has been completed

Loop. BGT Loop. ; If the new level number has bumped up over the maximum levels (84) then go into an endless loop

 

So the game essentially "Froze" after beating level 84. Ship it.

 

And yeah, so like three days later the game is shipped to Sears and ToysRUs, we started getting the "wtf, the screen goes black after my kid played DA for two days straight" calls. Whooooops. My bad. Two minutes later, the stewpid game over feature is gone - BUT OBVIOUSLY NOT FORGOTTEN as evidenced by this thread. Thanks a LOT, guys! I dunno how many units shipped in the first run - lots and lots of them - probably 100k - but I really don't know

  • Like 17
Link to comment
Share on other sites

The "game over" bug in Demon Attack sprung from a sloppy bad idea, hatched literally two days before the code freeze, after which the game would officially leave Development and enter Production.

 

I had spent prior two weeks desperately crunching what had started as 4,500+ Bytes of compiled DA 6502 assembly into the 4,096 available on the ROM chip. So I spent two weeks trying to take out 9% of the Demon Attack code/data without losing game functionality or introducing any new bugs. It's the kind of work that is fun for awhile, and gets increasingly less fun the closer one gets to the end. Getting to 4,200 was easy, getting to 4150 Was much less so. The next 30 bytes come out one at a time, using byte-saving techniques that no dignified programmer would ever admit to. And then the final 25 bytes are pure examples of guerilla street coding in it's most raw form. In the case of Demon Attack I ended up stumbling across a pot of gold right at the end - finding a seven byte color data table that was originally intended to add more color variation to each game level, but never been used. So after deleting the unused table, the game was actually UNDER 4090 bytes, with six glorious bytes left over to spare! I remember walking into lunch that day feeling like a true 2600 Code BOSS, and bragging about my six unused bytes, So the challenge now became "what can be done in six bytes to improve the game?"

 

So I thought," hey I could have the game END! If somebody beat these angry demons, how would they respond? Maybe they would just shut the game off and go away, the equivalent of beating a five year old child at checkers, whose shame of being defeated combined with their immaturity results in them turning over the checkerboard and running away, thus taking the victory "away" from their opponent. So that was it! Turns out six extra bytes did the deed

 

------ next level initiation - run this code to set stuff up for the next level

 

LDA game_level. ; Retrieve current game level number

CMP #MAX_LEVELS ; Check if the last level of the has been completed

Loop. BGT Loop. ; If the new level number has bumped up over the maximum levels (84) then go into an endless loop

 

So the game essentially "Froze" after beating level 84. Ship it.

 

And yeah, so like three days later the game is shipped to Sears and ToysRUs, we started getting the "wtf, the screen goes black after my kid played DA for two days straight" calls. Whooooops. My bad. Two minutes later, the stewpid game over feature is gone - BUT OBVIOUSLY NOT FORGOTTEN as evidenced by this thread. Thanks a LOT, guys! I dunno how many units shipped in the first run - lots and lots of them - probably 100k - but I really don't know

 

 

Thanks for the follow-up. 20 years later in a high score contest I got called a cheat due to these 6 bytes :). Trying to save 30 bytes after months of work must've been a brain splitting activity!

  • Like 1
Link to comment
Share on other sites

Thanks for that awesome story Rob....love that kind of stuff !

Reminds me of when I was a trainee at a company that developed dedicated computers for the greenhouse industry (climate and substrate control computers).

We had Basis computers as workstations, those were German Apple ][ clones and a huge Motorola 68000 machine which was pretty special at that time. They used the 68000 for faster compiling but the final code was for the 6502 which was used on the (Eurocard sized !!!) greenhouse computers.

 

The guys working there made some routines in C language but it took like 15 seconds to perform while they only had 1 second for it. Next they went optimizing the C code and got it back to 8 seconds. Next they went into the assembly code generated by the C compiler just as long optimizing stuff and including tricks until they reached their goal.

For me those guys are wizards :) Just like you :D

 

These guys also regularly called with the Motorla guys when they found some bugs in the 68000 machine's OS etc...... I was impressed as a young guy :)

Awesome to be able to have contact with the man who created one of my favorite games of my youth (and still !), thanks for so much fun !!! :)

Edited by Level42
  • Like 1
Link to comment
Share on other sites

The "game over" bug in Demon Attack sprung from a sloppy bad idea, hatched literally two days before the code freeze, after which the game would officially leave Development and enter Production.

 

 

Rob would you mind if I asked some questions about Demon Attack ?

 

- I have always wondered why there were some Demons who never bomb or attack (come down on the player's canon)....

I mean, I really like it as it gives you a possibility to go to the toilet during long games but I always wondered why :)

 

- I'm not a programmer but I understand a little bit about the 2600 hardware. I guess it's pretty clear the canon and the player's shots are player/missile graphics. But are the demon's and their bombs actually player graphics or dit you use some clever tricks ?

 

- is there any reason why it was at level 84 you decided to put in the end ? (I happened to notice 84= 2x42 (notice my forum name ;))

 

- were you aware of the bug that sometimes when you hit a demon, another one actually "explodes" or splits up ?

 

- were you in any way involved in the conversions ? I know they were done by others but did they consult you, was the idea of adding background graphics and "the second level" with the "mothership" discussed BITD ? Was it an idea you had that simply didn't fit in the 2600's 4k ?

 

- do you know why in most conversions that have the extra level the demons never come down at the player's canon ?

 

- do you know if any of your code was re-used for the Atari 800 computer version ? Since the processors are (almost) identical and the games are so very similar. Of course I understand the graphics and sound differences but even so, the main code for game mechanics might have made the conversion ?

 

Cheers, André

Edited by Level42
Link to comment
Share on other sites

I think the class of demons in the top row don't ever transform into the class of demons that can dive - this was originally a big and then later left as a feature for exactly the reason you state- to give experienced players a potty break.

 

If I recall the dropping bombs used different variations of the missile register - the player shot used the ball register

 

I was aware of the wrong demon sometimes explodes feature - that particular feature crept in during the code crunch phase - I think it had something to do with the hoiziontal speed of the demons at the time - there was some race conditions where the wrong demon was detected as "hit" - I think it depended on WHEN the code checked for collision and WHEN where demon states updated - moving code around at the end becomes too risky so I let it go.

 

No way mothership bonus level was gonna fit ito 2600 4K ROM

 

Nothing reused in 400/800 version - so much more memory means most of the techniques employed in 2600 version had no practical value. For those interested in topics like this, the early days of talking pictures - movies with soundtracks- borrowed very little from silent pictures. Once filmmakers learned how sound could be used to improve storytelling, many of the lovely silent techniques of letting the audience "hear" a sound that was never uttered were no longer needed. So many of our 2600 innovations were not needed in a world where the constraints were not do onorous

  • Like 5
Link to comment
Share on other sites

Thanks Rob !

 

By the way, I just found a very nice documentary about Imagic, not sure if you've seen it before but I sure hadn't and it's awesome !!

 

I notice (as I read on an interview with you) that an Atari 800 was used to design the sprites. I can also see an 850 interface in use...

 

Little bit surprised that actual production of the cartridges was all done by hand !

 

  • Like 1
Link to comment
Share on other sites

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.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...