Jump to content
IGNORED

Atari 5200 Programming Tutorial Series


Ryan Witmer

Recommended Posts

23 hours ago, Traxx said:

Damn Stephen,tell us what you really think

He's basically stating the publically-acceptable version of how I view people who willingly refuse to remain employed.

 

We currently have a dozen individual job openings for a position at my company.  Week after week, we see qualified candidates apply then never follow up on phone or in-person interviews.  Why?  Because filling out two job applications per week is enough to keep unemployment rolling in.  Never mind that we're offering above-average pay, flexible shifts, paid ongoing training (a legal requirement to maintain the licensing necessary to do the job), benefits, and long-term stability: apparently, there's more integrity to be had in sponging off of others than making your own way in the world.

 

In any event, this thread is about 5200 programming.  It'd be appreciated to see it stay that way, despite yet another 'it's all about me' moment brought to you by Ray Jackson.

  • Like 4
Link to comment
Share on other sites

Thank you for this tutorial series!

 

I've been avoiding assembly most of my personal and professional life.  Still, I've gotten to the point where hacking other developers routines on the 2600 is a must.

 

Taught me a lot about DASM and 6502 assembly in the first hour.  Will be going through the rest on YouTube.

 

Any thoughts on FastBASIC since they added 5200 support?

https://github.com/dmsc/fastbasic

Link to comment
Share on other sites

Back to it this week.

 

 

This week I focused on the slightly frightening topic of display list interrupts.  I also took some time to discuss how to use the other buttons on the controller and demonstrated how to make a pause loop.  At the end, I got some enemies on the screen, and next week I'll start working on making them do something.

 

image.thumb.png.65090fb6863978f1b904887360a7908e.png

 

Attached is this week's code and binary.

5200lesson4code.zip

  • Like 4
Link to comment
Share on other sites

1 hour ago, Crazy Climber said:

Cool topic!

 

Man, makes me almost want to try something I thought was impossible for me...

 

I doubt I ever will but you make it seem like I  maybe could, or at least actually give it a try, and maybe just see what happens...

 

I'll just keep following for now 😃 

Trust me you can, I'm doing it and learning a lot. Don't let it pass you by

Link to comment
Share on other sites

Here's last night's video.

 

 

This week I did some player collision stuff, a little bit of sound, and demonstrated some basic sprite multiplexing.  This is as far as I plan to go with this little game project.  Final code is attached.

 

I have some plans for Veteran's Day, so there will be no video next week, but the following week I plan to start a new project that will demonstrate some other ANTIC modes that games often use.

 

5200lesson6code.zip

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

  • 1 month later...

After a little bit of a break, here's a new episode.  Sadly, my microphone decide to cut out at the beginning, but I do fix the problem once I notice it.

 

 

Starting a new project here to demonstrate ANTIC mode 4, which is very commonly used for games.  Doing a simple Tetris clone.

 

Here's the code for this week's video:

 

 

5200lesson7code.zip

  • Like 3
Link to comment
Share on other sites

Testing on real hardware and the controls aren't as horrible as you thought they would be, it is pretty easy to over run the piece on move timer 5 though. 

I adjusted to this,

 1- 50               down timer

 2- 8                 move timer

 3- 60               left movement point

 4- 160             right movement point

these changes feel pretty good, at least up to this point in development.

 

what do think about this, for possible vertical controls

1- down stick         speed up down timer by however much

2- up stick             instant piece placement

  • Like 1
Link to comment
Share on other sites

  • 2 weeks later...

Here's a new video:

 

 

Implemented fast drop and piece rotation, but not without some difficulty.  There is a bug around rotations at the very top of the pit, I'll probably clean that up next time.

 

Here's the code and binary for this video:

 

5200lesson9code.zip

  • Like 4
Link to comment
Share on other sites

  • 2 weeks later...

Made this last night:

 

 

Got line detection and clearing done for the little Tetris game, but not as cleanly as I would have liked.

 

Either way, this is going to be the end of these videos.  I think I've exhausted all the stuff I wanted to cover.  I hope they've been helpful, or at least entertaining.

 

Attached is the code and binary for this video.

 

5200lesson10code.zip

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

Thank you for making these videos and sharing your knowledge. They have indeed been very helpful, I hope maybe someday you'll think of something else to teach and return to this programming series.

 

again, thank you.

Link to comment
Share on other sites

  • 9 months later...

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