Jump to content
IGNORED

question about caverns of mars


Recommended Posts

How the heck did the programmer manage a nonreflected playfield with midscreen sprite repositioning? I didn't think that was even technically possible.

994517[/snapback]

 

What's the difficulty? There's plenty of time within the drawing of the playfield to stick in a RESPx. Simply use five different versions of the 'draw a scanline' code with RESPx around positions 0, 32, 64, 96, 128, and then use HMOVEs on the next two scanlines to nudge the sprite to its proper place.

True enough. Guess I was thinking about the general-purpose sprite positioning code, which absolutely won't work a non-reflected playfield. Since the object positions in CoM are predetermined, I can see how the positioning data could be embedded in the level data itself.

Link to comment
Share on other sites

Hello all,

 

Thanks for the positive feedback on the new version of CoM. This project started out in early November when I approached Curt with a proof-of-concept (explained below) of how I thought a better version of CoM could be programmed. The game is 99% complete, with all 5 stages from the 800 version, with a few added bonuses such as 2 player, difficultly settings, different cavern layouts per level, among other things.

 

 

Wow. That... is bloody awesome. Great attention to detail, right down to the faux GRAPHICS 2 text on the score screen.

 

Thanks - I did use the font from the 800 version. I thought it added a nice touch.

 

How the heck did the programmer manage a nonreflected playfield with midscreen sprite repositioning? I didn't think that was even technically possible.

994517[/snapback]

 

As supercat pointed out, it is possible to accomplish this if the number of positions for the objects is reasonably small. In this case, there are 8 custom reposition scanlines that I use to position the objects.

 

Reflected PF

PF0 contains %11100000 or something similar at all times (which "hides" the HMOVE lines and cuts down on the processing time to write the asym PF).  [EDIT: This is incorrect, I counted the pixels.  PF0 contains $F0 at all times.  So the lack of HMOVE lines is...interesting.  Possibly: HMOVE hit at cycle ~73, which may be what is happening.  This would only allow left-ward movements, though (without >8 scanlines between objects).  Or this could be screenshots from hardware that doesn't display HMOVE lines. :ponder:]

PF1 and PF2 are asymmetrical

Repositioning sprites during asym PF display is pretty impressive, my guess is that it's hitting HMOVE on every line and it uses that to move the sprites during the kernel, loading HMPx values from a table.

Thanks for the kind words. Actually, you're close. I am using a reflective playfield, hitting the update on PF2 at cycle 45. The lack of HMOVE lines is done by... not doing an HMOVE! :) I designed the levels so that the objects could be positioned using coarse positioning (3 pixel) so I only use a RESP1. I do, however, use the HMOVE hit at cycle 73 to remove the HMOVE bar prior to the display area (thanks to DEBRO for this tip).

 

The impressive thing to me is the screens where the PF color is being changed midscreen, you can tell on the "Activate Bomb" screen especially*.  That looks like a completely different kernel, with no asym PF but midscreen COLUPF changes.  :thumbsup:

 

*You can see that it isn't possible to get a symmetrical PF color change; on the right the color change comes 1 color clock too late.  Still looks good, though!

Thanks - and you are correct - it's a different kernel. I took the extra cycles gained from the symmetrical PF and the fact that I didn't need to do a reposition on the enemy sprites (only 1 at a time) and that you can't fire in the base level and used those to do the color change. And yes - since the resolution on the PF color change is 3 pixels, it happens to line up on the left side and be one off on the right. Oh well... :)

 

Anyway - thanks again for all the kind words and I hope everyone enjoys the results.

 

Thanks,

Edited by johnnywc
Link to comment
Share on other sites

How the heck did the programmer manage a nonreflected playfield with midscreen sprite repositioning? I didn't think that was even technically possible.

994517[/snapback]

 

What's the difficulty? There's plenty of time within the drawing of the playfield to stick in a RESPx. Simply use five different versions of the 'draw a scanline' code with RESPx around positions 0, 32, 64, 96, 128, and then use HMOVEs on the next two scanlines to nudge the sprite to its proper place.

Hmmm.. I wouldn't say plenty of time. :) The PF writes take up 32 cycles, the players take up 20 (using FlipDraw), and the missiles take up 10, so that left 14 cycles to do loop and index management, transition to the next screen, check for the reposition of the P1 objects and check for the missile reset (the ship uses P0 so I use M0 for the missiles, but I update the color and NUSIZ value to get the double shot and independent color). And the timing has to be perfect since there's no time for STA WSYNC. I don't think I could of accomplished this using HMOVE's (at least not without the bars or striping) but then again I'm sure the design could be improved upon.

 

 

Changing color registers mid-scan-line is nice, but again nothing particularly magical.  Save Mary changes COLUPF and COLUP1 twice per line; Strat-O-Gems writes COLUP0 and COLUP1 three times per line.

You are correct - this was not magic. The timing was a bit tricky, but there's plenty of time in this kernel to do other things.

 

BTW, I wonder if Atari needs a new Lunar Lander?  My LL demo might become something interesting given 16K and a Superchip.

995037[/snapback]

That sounds great - I checked out your demo from a couple months ago and I was impressed. My first project for Curt was to fix Lunar Lander so in a couple weeks I basically re-wrote the kernel to remove the flicker, improve on the physics and polish up the graphics and gameplay. I did squeeze it down to 8K (without the SuperChip) but if you had 16K with the SuperChip I'm sure you could do some amazing things with it.

 

PS - Great job on Strat-O-Gems!

Edited by johnnywc
Link to comment
Share on other sites

Okay, this is all great and everything... but the question hasn't been answered- will this new improved version of COM be on yet another revision of the FB2 or the FB3, or better yet, will it be available as a cart that we can order from the Atari Age store? BTW, I'm getting kind of tired of returning my FB2 to the store in exchange for a new improved version. I hope that at one point we will have the final version in the stores.

Link to comment
Share on other sites

Thanks for all the explanations, johnnywc! Clever idea to reposition w/o HMOVE. :)

 

:thumbsup:

 

EDIT: And no, there isn't anything particularly magical about changing COLUPF midscanline but:

-it isn't done very often

-the timings are tighter than drawing an asym playfield

 

;)

Edited by vdub_bobby
Link to comment
Share on other sites

Okay, this is all great and everything... but the question hasn't been answered- will this new improved version of COM be on yet another revision of the FB2 or the FB3, or better yet, will it be available as a cart that we can order from the Atari Age store?  BTW, I'm getting kind of tired of returning my FB2 to the store in exchange for a new improved version.  I hope that at one point we will have the final version in the stores.

995195[/snapback]

 

Glad improvements are being made, and honestly I have no idea what version my FB2 is. But I would like to know when this new version of CoM is being released.

 

In the mean time... Atari 800 version... awesome game.. really!

Link to comment
Share on other sites

Great looking job! :thumbsup:

 

Especially avoiding HMOVE blanks is very cool. Though... isn't FB2 suppressing HMOVE blanks anyway? :ponder:

 

Now, I can only hope for the physic being done right too. :)

995279[/snapback]

Thanks Thomas - glad you like it. And yes - even though the FB2 suppresses HMOVE bars, I can't be sure that the next revision (rev C) will do that as I think they're trying to make it 100% compatible.

 

As for the physics, I've played the heck out of this thing and I think it plays pretty close to the 800 version. I'll let my game testers chime in with their feedback as well... :)

Edited by johnnywc
Link to comment
Share on other sites

As for the physics, I've played the heck out of this thing and I think it plays pretty close to the 800 version.  I'll let my game testers chime in with their feedback as well... :)

I have to be honest...I can't get my work done from playing this game. I can tell you the game is dead on! Curt posted the Novice game selection. John has all the CoM selections implemented just like the A8 version. You will see the diamonds too. I can't get pass the maze without cheating. I'm not that good.

 

I have yet to run this baby through my CC but I can guarantee you it will happen tonight!

 

Now where are those other projects I'm to be working on?....Who cares, bring on CoM!

Link to comment
Share on other sites

even though the FB2 suppresses HMOVE bars, I can't be sure that the next revision (rev C) will do that as I think they're trying to make it 100% compatible.

995293[/snapback]

I hope that they are truly shooting for 100%. I've confirmed that undocumented opcodes SBX and ARR don't work on the Rev. B and most likely the others in this class don't work either: ANC, ASR, ANE, LXA. I'd also bet that SHA, SHS, SHX and SHY don't work either. But if nothing else, I'd like to see SBX, as this one is probably the most useful.

Edited by batari
Link to comment
Share on other sites

I just thought of one area where I'd rather 2600 CoM was NOT faithful to the original-- the "explosion" (ahem) of your ship.

 

For those who haven't played the original, when you die your ship is replaced with non-animated random hash, while a "hiss" sound plays for about a second. It's really quite terrible.

Link to comment
Share on other sites

I just thought of one area where I'd rather 2600 CoM was NOT faithful to the original-- the "explosion" (ahem) of your ship.

 

For those who haven't played the original, when you die your ship is replaced with non-animated random hash, while a "hiss" sound plays for about a second. It's really quite terrible.

995339[/snapback]

 

Don't worry ZB - the explosion is fully animated and the sound is much better. I'm no artist or sound wizard, but I think it came out pretty good. I've tried to address a few things in the 800 version of CoM that always bugged me. The ship explosion was one of them; the other the escape sequence. It seems to get impossible the 2nd time around and if you crash anywhere in it your game is basically over (you usually only get enough time to get out without crashing). Both have been addressed in this version. Also, I have two cavern layouts for each stage and a few new patterns for the laser gates. There's also a survival bonus for reaching the base without getting killed and a timer bonus for each second left after you escape. I already mentioned the 2 player addition and the difficulty switches that makes your fuel consume faster, and I just finished the CONTINUE feature (like Vanguard). Heck - I even threw in a nice ending to the game if you're good enough to clear all 6 levels... :)

 

Whew! Now it's back to the basement! :D

Link to comment
Share on other sites

Don't worry ZB - the explosion is fully animated and the sound is much better.  I'm no artist or sound wizard, but I think it came out pretty good.  I've tried to address a few things in the 800 version of CoM that always bugged me.  The ship explosion was one of them; the other the escape sequence.  It seems to get impossible the 2nd time around and if you crash anywhere in it your game is basically over (you usually only get enough time to get out without crashing).  Both have been addressed in this version.  Also, I have two cavern layouts for each stage and a few new patterns for the laser gates.  There's also a survival bonus for reaching the base without getting killed and a timer bonus for each second left after you escape.  I already mentioned the 2 player addition and the difficulty switches that makes your fuel consume faster, and I just finished the CONTINUE feature (like Vanguard).  Heck - I even threw in a nice ending to the game if you're good enough to clear all 6 levels... :)

Wow, sounds like you (and Curt?) also invested a lot of thoughts into the game. :thumbsup: :thumbsup: :thumbsup:

 

BTW: If possible, make sure that you have to select the difficulty switches before starting the game. And then add some kind of indicator (e.g. colour) for the switch settings to the highscore. That way, highscores of the A version are verifyable too.

Link to comment
Share on other sites

Wow, sounds like you (and Curt?) also invested a lot of thoughts into the game. :thumbsup: :thumbsup: :thumbsup:

We've only had 8 weeks to do this, but it's almost done. Lot of late nights after work/kids/wife/holiday/sleep... :) Curt and Dennis both have been very helpful with their suggestions and game testing, even though both are very busy with their own projects. It's been much appreciated.

 

BTW: If possible, make sure that you have to select the difficulty switches before starting the game. And then add some kind of indicator (e.g. colour) for the switch settings to the highscore. That way, highscores of the A version are verifyable too.

995364[/snapback]

I agree completely and will see what I can do. Just need to find 2 bits to store the difficultly states during the game... :) I'll also put in some indicator on the high score screen as well (blinking score maybe?). We'll see...

 

Thanks for the suggestions!

Edited by johnnywc
Link to comment
Share on other sites

I just thought of one area where I'd rather 2600 CoM was NOT faithful to the original-- the "explosion" (ahem) of your ship.

 

For those who haven't played the original, when you die your ship is replaced with non-animated random hash, while a "hiss" sound plays for about a second. It's really quite terrible.

995339[/snapback]

 

To be fair, CoM was originally a homebrew. Atari just bought it and decided to release it (like Dandy).

 

Tempest

Link to comment
Share on other sites

Yah, I know. Greg Christensen wrote it, and the two sequels. It was originally published through the APX catalog.

 

The lousy explosion always struck me as odd, considering the quality of the rest of the game.

 

Hmmm, when this is released someone had better update the Wiki article.

Edited by ZylonBane
Link to comment
Share on other sites

I really hope Curt will be able to get Atari to license a new version of the FB2. This new version of CoM alone will make it worthwhile, along with the improvements in compatibility of the TIA in the FB2! :cool: And the other games - hurry up with those and stop playing CoM, Dennis! ;)

Link to comment
Share on other sites

Dammit! Tony was supposed to be beating... er, I mean watching him, Tony!!! Stop playing Haunted Adventure and go out and find John before he winds up releasing news about that other title he's working on, sheeezzzz....

 

 

;-)

 

 

 

Curt

 

*** WARNING***

Curt, John has escaped out of the basement!

995166[/snapback]

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