Jump to content
IGNORED

The Celery Game (was:"Screen rolls at the start")


Recommended Posts

Minor update: I changed the look of the 1 digit and made sure the score rolled properly. Yes, I sat through the entire 10,000 numbers, but they were increasing 60 per second (I think) so it didn't take that long. I also played it on my Harmony cart and didn't notice anything weird (besides the score not being the way I wanted it to.) I have 756 bytes left, so what's left on my list of things I want to do to this game is to make the vegetarians move faster the longer you play the game. To do this, I'll put in a variable called Player0Speed and make it go higher depending on the value of the score, only having it increase if the first two digits of the score are 00. I'm a week into this game and almost done with the programming of the main game.

celery16.zip

Link to comment
Share on other sites

This is, believe it or not, the hardest coding I think I have ever done. But it's fun, it certainly does have advantages over bB, like you don't have to use no_blank_lines to get no blank lines and you get to keep both missiles. The trade off is having some even more difficult code that I am still trying to get the hang of. it reminds me of Odyssey 2 assembly which I have done stuff in, but this is harder.

Link to comment
Share on other sites

I have been thinking about making the speed of the vegetarians random. How would I utilize the first two bits of the Random variable to control the speed? Also keep in mind that I don't want 00 as a speed because then it wouldn't move at all. I call the Random variable, but then what?

Link to comment
Share on other sites

Per Stella guide:

 


12.1 Dumped Input Ports (INPT0 thru INPT3) These four ports are used to read up to four paddle controllers. Each paddle controller contains an adjustable pot controlled by the knob on the controller. The output of the pot is used to charge a capacitor in the console, and when the capacitor is charged the input port goes HI. The microprocessor discharges this capacitor by writing a "1" to D7 of VBLANK then measures the time it takes to detect a logic one at that port. This information can be used to position objects on the screen based on the position of the knob on the paddle controller.

So what do I use to measure the paddle position? INPT0? VBLANK? Both? I'm so confused...

Link to comment
Share on other sites

Added some more celery. This time, it's either a vegetarian or a small piece of celery. You're supposed to let the celery pass and not incinerate them, because it's not very nice to burn your kin. The vegetarians act the same, though. Both have low and high speeds. I was having a whole bunch of trouble with the score being all wacko when the first digit was 6-9. but I think that has gone now. I wonder how this tiny bit of code, though, can be about 200-300 bytes?

 

.POS    SET 0
    REPEAT 256
    .byte (.POS / 15) + 1
.POS    SET .POS + 1
    REPEND

celery23.zip

Link to comment
Share on other sites

If you look at the Stella Programmers Guide, you'll see that the audio circuitry on the VCS is literally a master frequency, divided down to produce the target pitch...Your effective frequencies are limited by the coarseness of the counter, and the particular polynomial transform that you use in AUDCx.

 

-Thom

Link to comment
Share on other sites

Added an ending sound.

@SpiceWare: Yes, please add paddle support. What I would like to have is if paddles are detected, then use them, otherwise, use the joystick. Is that possible?

 

 

 

Yes, Astroblast autodetects joystick or paddles when you turn on the Atari. It's probably similar to how we detect joystick or multi-button gamepad.

Link to comment
Share on other sites

How would I make it so the game starts once the fire button is pressed and then LET GO OF? Or is that even possible?

ProcessSwitches:
        ldx EndNoise
        cpx #63
        bcc StartOfFrame

        lda INPT4          ; read the player's fire button value    
        bmi StartOfFrame
        
StartTheGame:
        ;starting variables begin here.
Edited by atari2600land
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...