Jump to content
Steeler

Bat Passer - a 2600 Homebrew

Recommended Posts

This is my first post on this forum; hello!

 

I started learning Atari programming a little less than 2 weeks ago with Kirk Israel's pretty great tutorial. Since then, I've been working on this, and I think it's finished enough to post.

 

It runs on Stella. /*I tried running it on Z26 and the graphics jigged up and down* (and the colors looked pretty bad). I doubt it would run well on a real 2600, but if someone would try and tell me how it does, I'd appreciate it.*/ EDIT: This has been fixed.

 

Anyway, the game has 7 levels. It doesn't have a title screen, and whether you lose or win, you have to close the game and start it up again to restart.

 

*It's done this on Stella too if you lose the last level. I don't know why.

 

Version 1.1 attached:

BATPASSR.BIN

Edited by Steeler
  • Like 2

Share this post


Link to post
Share on other sites

Fun! It seems to alternate between 260 and 261 scanlines (as accousticguitar mentioned) which is causing the picture to jump. It shouldn't be too hard to fix :)

Share this post


Link to post
Share on other sites

Fun! It seems to alternate between 260 and 261 scanlines (as accousticguitar mentioned) which is causing the picture to jump. It shouldn't be too hard to fix :)

Kirk Israel mentioned in his tutorial that the timers, which I use to determine when the two non-drawing times are done, had a margin of error... could this be the problem?

 

And does Stella specifically compensate for things like this, or how does it work so much better there?

Edited by Steeler

Share this post


Link to post
Share on other sites

Fun! It seems to alternate between 260 and 261 scanlines (as accousticguitar mentioned) which is causing the picture to jump. It shouldn't be too hard to fix :)

Kirk Israel mentioned in his tutorial that the timers, which I use to determine when the two non-drawing times are done, had a margin of error... could this be the problem?

 

And does Stella specifically compensate for things like this, or how does it work so much better there?

Press 'Alt l' in Stella to see the scanline count and associated framerate in real time. It clearly shows that the count is alternating between 260 and 261. During development, even if an image appears to be stable, you should manually verify that stability (either by checking as just described, or making use of a conditional breakpoint in the debugger with 'breakif {_scan > #262}').

Share this post


Link to post
Share on other sites

How would a helmet/skull/whatever it is walk? ;)

 

More seriously, I think the game would be too easy if you could choose where along your path to jump. And it does look kind of strange... shorter hops or more gravity might have worked better with the cartoon cliche of a hopping skull, but it would've been harder to get a jump like that which could actually clear the bat in as many cases.

 

Unrelated edit: I did some testing and the scanline problem seems to be caused by the bat; it's different for different levels. It doesn't seem to be triggered only by the direction the bat's moving or the position of the bat, but maybe a combination of the two. I sure don't know why... I'll go back into the code later. I tried a little bit of debugging with Stella, but the disassembly didn't quite look like my code, and I didn't take the time yet to understand it.

Edited by Steeler

Share this post


Link to post
Share on other sites

Unrelated edit: I did some testing and the scanline problem seems to be caused by the bat; it's different for different levels. It doesn't seem to be triggered only by the direction the bat's moving or the position of the bat, but maybe a combination of the two. I sure don't know why... I'll go back into the code later. I tried a little bit of debugging with Stella, but the disassembly didn't quite look like my code, and I didn't take the time yet to understand it.

Because of the way source code is compiled to raw machine code, the disassembly will never look quite the same as your original source. That being said, the next release of Stella will have a greatly improved disassembler (from the Distella project) that is much easier to read. I plan to release this by the end of the week.

  • Like 2

Share this post


Link to post
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.

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