Jump to content
IGNORED

Snark Prototype Found


Tempest

Recommended Posts

Al Arroyo is at it again!  After releasing Sonar to the community he has graciously shared the only known copy of John Dunn's (of Superman fame) lost game Snark.  Snark was John's first game at Atari and went unreleased because Atari was afraid his 'Video Spin Mode' might cause seizures.  Atari was right in this case, the variations with this mode (5, 6, 7, 8 ) flash random colors in the background very quickly and might be very dangerous to people who are prone to seizures.  If you have such a condition you are strongly suggest you do not play those variations.

 

So how does the game itself play?  It's kind of odd and hard to describe.  My first impression was Combat meets Air-Sea Battle, but that's not quite right.   You'll have to read my review for more details: http://www.atariprotos.com/2600/software/snark/snark.htm

 

Special thanks to Al @thecomicsrack@gmail.com for releasing the rom and Thomas J @Thomas Jentzsch for figuring out all the ins and outs of the game!

 

 

snark_6.png.a3938d90993d4d90d5ee07ba30a71058.png

snark.bin

  • Like 11
Link to comment
Share on other sites

2 minutes ago, Wickeycolumbus said:

Very cool, its awesome that these early 2k games are being found.  Thank you so much for sharing!

Yeah it's unusual.  It's just dumb luck that an early employee saved these since I'm guessing that not many physical protos of these were made.  I'm also happy that Snark has finally been found, that one has been bugging me for a long time.

 

Speaking of protos for early 2600 games, how many are known to exist?  I found a Mini Golf proto, Curt found source code for Submarine Commander and Boggle, and I know a Steeplechase proto was released a long time ago with minor differences.  Computer Chess has also turned up.  I've seen pictures of a Championship Soccer, Dodge 'em and Superman proto but I don't know who owns those.

Link to comment
Share on other sites

43 minutes ago, Tempest said:

What bugs did you find?

Two bugs where instead of reading an immediate value, a TIA registers is accessed ("missing #"). Due to the way the data bus of the 2600 acts, this code might work on some or even most consoles, but not all.

 

And then another bug, which is hard to explain:

;---------------------------------------------------------------
UpdateScore SUBROUTINE
;---------------------------------------------------------------
    lda     CXPPMM                  ;3              M0 vs M1?
    asl                             ;2              or
    ora     CXM0P,x                 ;4              current player vs other missile?
    bpl     Lf19a                   ;2/3             no
    lda.wy  triggerLst,y            ;4              
    ror                             ;2              already checked?
    bcs     Lf19a                   ;2/3             yes, skip
    lda     #$81                    ;2        
    sta.wy  triggerLst,y            ;5        
    sed                             ;2        
    lda.wy  scoreLst,y              ;4        
    sec                             ;2        
    sbc     #$01                    ;2              -1 point 
    bcs     Lf196                   ;2/3      
    lda     #$01                    ;2   =  40
Lf196
    sta.wy  scoreLst,y              ;5        
    cld                             ;2   =   7
Lf19a
    lda.wy  CXP0FB,y                ;4        
    asl                             ;2              current player vs BL?
    bpl     Lf1b8                   ;2/3             no
  IF !ORIGINAL
    lda.wy  triggerLst,y            ;5              BUG! missing instruction
  ENDIF
    and     #$02                    ;2              already checked?
    bne     Lf1b8                   ;2/3             yes, skip
    lda     #$82                    ;2        
    sta.wy  triggerLst,y            ;5        
    sed                             ;2        
    lda.wy  scoreLst,y              ;4        
    sec                             ;2        
    sbc     #$05                    ;2              -5 points
    bcs     Lf1b4                   ;2/3      
    lda     #$00                    ;2   =  33
Lf1b4
    sta.wy  scoreLst,y              ;5        
    cld                             ;2   =   7
Lf1b8
    lda.wy  CXM0FB,y                ;4              current player's missile vs BL?  
    asl                             ;2        
    bpl     Lf200                   ;2/3!     
    lda.wy  triggerLst,y            ;4        
    and     #$04                    ;2              already checked?
    bne     Lf200                   ;2/3!            yes, skip
    lda     #$84                    ;2        
    sta.wy  triggerLst,y            ;5        

The code does three times about the same. It checks for certain collisions, penalizes or rewards the player and remembers the collision result in a trigger variable. If the same collision happens again (within a short time, the variable is reset afterwards), it is ignored.

 

The bug is, that for the 2nd check, the trigger variable is not loaded. Instead the result depends on an undefined bit in a collision register. The result is, that multiple immediate player/ball collisions deduct 5 points each time.

Edited by Thomas Jentzsch
Link to comment
Share on other sites

What about the shooting a player with 0 points gives them a point?  Is that a bug or do you think that's intended behavior?  I suppose it could be to keep someone from just constantly shooting someone to keep them at 0, but it sound more like a bug to me.

Link to comment
Share on other sites

1 minute ago, Tempest said:

What about the shooting a player with 0 points gives them a point?  Is that a bug or do you think that's intended behavior?  I suppose it could be to keep someone from just constantly shooting someone to keep them at 0, but it sound more like a bug to me.

It might be a bug, yes. But I prefer to keep things unchanged which are not 100% clear.

Link to comment
Share on other sites

7 minutes ago, Thomas Jentzsch said:

It might be a bug, yes. But I prefer to keep things unchanged which are not 100% clear.

I was just curious if the code associated with it had an obvious looking bug in it like a negative number that wasn't being accounted for properly.

Link to comment
Share on other sites

6 hours ago, Tempest said:

Yeah it's unusual.  It's just dumb luck that an early employee saved these since I'm guessing that not many physical protos of these were made.  I'm also happy that Snark has finally been found, that one has been bugging me for a long time.

 

Speaking of protos for early 2600 games, how many are known to exist?  I found a Mini Golf proto, Curt found source code for Submarine Commander and Boggle, and I know a Steeplechase proto was released a long time ago with minor differences.  Computer Chess has also turned up.  I've seen pictures of a Championship Soccer, Dodge 'em and Superman proto but I don't know who owns those.

Umm, I found the source for Boggle and Submarine Commander, I even compiled them.  

Link to comment
Share on other sites

2 hours ago, Tempest said:

We do?  Where did you hear that?


From José Wonder007:

 

“…I have the complete code for the atari 5200 Madden football game (it was a throw in to a big 2600 proto deal I completed years ago) . I just need to transfer the data so that it can be played. I am not really a 5200 guy, do you think it is worth pursuing?…”

  • Like 2
  • Thanks 1
Link to comment
Share on other sites

2 minutes ago, Supergun said:


From José Wonder007:

 

 

“…I have the complete code for the atari 5200 Madden football game (it was a throw in to a big 2600 proto deal I completed years ago) . I just need to transfer the data so that it can be played. I am not really a 5200 guy, do you think it is worth pursuing?…”

This would be too cool for school!

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...