Primordial Ooze
Members-
Content Count
542 -
Joined
-
Last visited
Content Type
Profiles
Member Map
Forums
Blogs
Gallery
Calendar
Store
Everything posted by Primordial Ooze
-
You only need to draw the cross hairs for 1 frame after the player pulls the trigger - so just for that single frame skip drawing the dog. Or can you also shoot the dog? If so you could reuse Player 0 to draw the dog (assuming the duck is always in the air and the dog on the ground). The dog will most likely only appear after the duck is shot or gets away so most likely they will never appear at the same time. How to get the dog to show the duck being held in his hand after it drops is another question. Most kernals draw the sprites for a full frame, so how would i make it only draw for a single frame? Sincerely, Primordial Ooze
-
Does player1/ ball have to be drawn in order for collisions to register or can i just position the ball and check for a collision? The reason i ask is because i plan on extending the playfield so it uses multicolors, though it's just an idea at the moment. Sincerely, Primordial Ooze
-
This was my original idea, except then i can't use player 1 for the dog sprite Sincerely, Quacker Blaster
-
Hi guys, I've managed to attached Eckhard Stolberg's and it seems to be working. The next step is going to be how should i detect collisions? There are 2 possibilities for this. One is using the bounding box method: lda DuckX cp BulletX ; if the duck's x position is greater then then bullet's x position bcc SkipNoCollision lda BulletX cp DuckX ; if the bullet's x position is less then the duck's x position bcs SkipNoCollision lda DuckX cp BulletX ; if the duck's y position is greater then then bullet's y position bcc SkipNoCollision lda BulletX cp DuckX ;if the bullet's x position is less then the duck's x position bcs SkipNoCollision The other way is the "Atari 2600 way" which is done by making a crosshair sprite, setting it's position to where the gun was fired and test for a collision. My only problem with that is that it's not gonna be faithful to the original Qwak! and Duck Hunt games. Any input would be greatly appreciated. Sincerely, Primordial Ooze
-
The lightgun test routine exits once it has detected the lightgun position. If you are pointing the gun at the top of the screen, that might be after 50 scanlines or something. This is not enough for a full frame and therefore the screen starts to roll. To compensate for that my program sets a timer before executing the lightgun test routine and waits for that timer to expire afterwards. After having a quick look at your code, it seems that you moved the timer handling code and forgot to set the timer to a proper value before calling the lightgun test subroutine. Are you talking about these lines: lda INTIM ; wait for VBLANK period to end bne Check sta WSYNC lda #236 ; timer for 199 scanlines sta TIM64T lda #$00 sta WSYNC sta VBLANK Cause that is the only thing that resembles a timer for me. Please let me know if this is the timer you are talking about. Sincerely, Primordial Ooze
-
No need to apologize as this part of the code was borrowed from Sentinel. Of course you could do it differently. But in oder to get a reasonably high horizontal resolution you need to be able to check the lightgun sensor as often as possible during a scanline. And if you try to avoid all unnecessary loops and checks to be able to fit in more reads of the lightsensor, the code can get a little messy. Also you might have noticed that the AdjustHpos subroutine only is 75 cycles long. That way the reads in the scanlines following the first hit detection always happen one processor cycle before the check in the last scanline. Since the lightgun sensor would register a hit for several scanlines, you can increase the resolution of the check to single cycle precision, which is the best you can achieve on the VCS. And since you have to make sure that the reads of the lightgun sensor always happen after the same number of cycles after the last read no matter which of the branches was takes, the code gets a little more messy. I just finished adding your light checking routine to my lightgun game and am having a bit of trouble. When the lightgun's trigger isn't pressed in the right port, the screen is displayed correctly. However when i press the trigger well...... As you can see something funky is going on. I have attached the latest version of my source code for your enjoyment. Any assistance in this matter would be greatly appreciated. Sincerely, Primordial Ooze
-
I've been working on a parity type game and am having progem's trying to get it to work. For some reason the screen rolls when i try to run it. However all i'm doing is simply displaying 2 sprites which should be simple enough. If Anyone can get this working, it would be greatly appreciated. Sincerely, Primordial Ooze EDIT: Nevermind.
-
The 2600 can display 160 pixels in about 200 scanlines, but unfortunately you can't poll the light sensor that often. Also the Atari lightgun isn't that acurate to begin with. So a lightgun resolution of 53 x 40 seems realistic. A couple of years ago I took the lightgun routine from Sentinel, changed the values a bit to work better on my TV and made a lightgun test program out of it. It displays a grid with a resolution of 53 x 38 squares. If you pull the trigger of the lightgun in the left controller port, a hit marker should appear in one of the squares. I adjusted to position values so that, if you press the gun directly against the screen of your CRT and position it over one of the squares, the hit marker should appear in that square when you pull the trigger. It works fine on my multi-standard TV. If the marker is off on your TV, you need to adjust the position values accordingly. guntest.zip Thanks, i found this very useful. Question though, is this: CoarseTest: dex beq CEndRelay ; test is over with no hit detected nop nop nop nop nop nop nop bit INPT4 ; test lightgun sensor bpl HitX01to03 ; did we hit within the last 5 cycles bit INPT4 bpl HitX04to08 bit INPT4 bpl HitX09to13 bit INPT4 bpl HitX14to18 bit INPT4 bpl HitX19to23 bit INPT4 bpl HitX24to28 bit INPT4 bpl HitX29to33 bit INPT4 bpl HitX34to38 bit INPT4 bpl HitX39to43 bit INPT4 bpl HitX44to48 bit INPT4 bpl HitX49to53 jmp CoarseTest CEndRelay: jmp CEndFrame ; test is over with no hit detected HitX49to53: lda #158 ; hit was at pixel 158 or before bne AdjustHpos HitX44to48: lda #143 bne AdjustHpos HitX39to43: lda #128 bne AdjustHpos HitX34to38: lda #113 bne AdjustHpos HitX29to33: lda #98 bne AdjustHpos HitX24to28: lda #83 bne AdjustHpos HitX19to23: lda #68 bne AdjustHpos HitX14to18: lda #53 bne AdjustHpos HitX09to13: lda #38 bne AdjustHpos HitX04to08: lda #23 bne AdjustHpos HitX01to03: lda #8 bit INPT4 The only way to do it cause it seems to be a very messy way of doing it. Sorry if i sound rude but, i just want to know before i end up adding code that i will need to refix latter. Sincerely, Primordial Ooze
-
So how would i implement Cathode Ray Timing in 6508 assembly language? A simple example should be enough to get started, but i'll let you know as soon as i add it to my game code. Sincerely, Primordial Ooze
-
Say what????? So what i would need to do is create 2 variables. One would hold the x position of the electron beam. The other one would replace the y register for the y position of the electron beam. Is this correct or am i totally off? Also how many x and y positions are there in a CRT television screen? Sincerely, Primordial Ooze
-
Could you please explain this a little better, i don't quite understand what you mean. Sincerely, Primordial Ooze
-
Quacker Blaster Website is going offline
Primordial Ooze replied to Primordial Ooze's topic in Homebrew Discussion
Not anymore, i found a new cheap web hoster and have updated my domain's dns servers accordingly. The site will be down for a few hours be will continue to live on. @RevEng Yes, i post on that site too, but if you do some searching some games(Duck, Random Terrains games, Spiceware Games) as well of others i do have their own web site. So in a sense it is more of a standing out sort of thing. Sincerely, Primordial Ooze -
Quacker Blaster Website is going offline
Primordial Ooze replied to Primordial Ooze's topic in Homebrew Discussion
I can't afford paid hosting and seeing as my game is open source, it will generate no income for me so basically i will have to pay out of my pocket which i won't do. If you know of a free/one time upgrade service it would be greatly appreciated. Otherwise quacker blaster, a lightgun game in the style of Qwak! or Duck Hunt may never see the light and i would hate to see that. Sincerely, Primordial Ooze -
Unfortinately the web host where the quacker blaster website is hosted has decided to discontinue their "premium" web hosting service. Whats worse is they will continue to allow free accounts to freeload on their resources. What really grinds my gears is for a "one-time" fee they promised "lifetime premium" and now i find out they will discontinue all premium services after only 4 months of me paying. So with out further ranting can anyone please suggest some free web hosting services that aren't advertisement driven or click and build only(Google Sites) cause my entire site is custom build. Thanks for the support of such a great community! Sincerely, Primordial Ooze
-
Your development environment?
Primordial Ooze replied to Andrew Davie's topic in Atari 2600 Programming
Editor: ConText Editor Portable 0.98.6. Version control: None, backup is done via manually copy and pasting the project folder to a usb flash drive. Emulator: Stella 3.41 of course. Building: built in command shortcuts in ConText Editor. F9 runs a batch file which builds the source code. F10 runs the rom in stella. Hardware: Atari 7800 with Harmony Cartridge and Custom Atari XE Lightgun. Controller in left port for rummaging around Harmony. System: Windows XP Pro SP 2 on a IBM T22 Laptop. Screen resolution is 1024*768. Network: Library Wireless Connection Current Project: Quacker Blaster -
Hi, I am trying to get the screen to flash when the trigger on the lightgun is pressed. I tried the following: lda INPT5 ; a 0 in bit D4 means the fire button was pressed bmi SkipCheckFire ; if the fire button wasn't pressed then jump to SkipCheckFire lda #$01 sta FlashState ; set gun barrel anaimation to true lda WHITE sta COLUBK ; set the background color to white SkipCheckFire However it only works when the fire button is pressed on a joystick controller. Does anyone know how to check if the fire trigger was pressed on a lightgun? Sincerely, Primordial Ooze
-
Quacker Blaster Introduction Quacker Blaster is a port of Duck Hunt for the Atari 2600 News Mockup is now available for download Links Website Primordial Ooze
-
- quacker blaster
- duck hunt
-
(and 1 more)
Tagged with:
-
Unfortunately while cleaning up my hard-drive i accidentally deleted the source code to my homebrew game Quacker Blaster. I tried to recover the file using a file recovery program but, the source code was already partially overwritten. Whats worse is i thought i had a backup in one of my usb sticks, and when i checked i found out i didn't. So it looks like I'll be starting over from the beginning. With everything going on right now this is the worse possible thing that can happen to me. No matter I still plan on releasing the game and source code no matter what, it will just take much longer then expected. Sincerely, Quacker Blaster Developer
-
Hi, Could you please remove the attachment from my post at http://www.atariage....st__p__2378918? It is old code and since the problem has been solved(see post 3), it would confuse people who download it. I would've deleted it myself but my edit time has long expired and i can't seem to find an option in the user panel to remove it manually. Also a note stating the attachment was removed Reason "legacy code, problem solved." would be helpful to those viewing the thread. Any assistance in this matter would be greatly appreciated. Sincerely, Primordial Ooze EDIT: Never mind, i dug deeper and found the option buried under the Edit Profile button. I manged to remove the attachment from the post stated above. Please disregard this post.
-
Can't get background to flash
Primordial Ooze replied to Primordial Ooze's topic in Atari 2600 Programming
Thanks, with your information i managed to get it working. That was a silly mistake to assume that you can flicker the screen simply by changing the background color twice in succession expecting that the Atari would simply change to background twice and updating the screen twice in quick succession. Boy so i need to revisit Andrew Davies tutorials again, especially to refresh my memory about the television display basics. Thanks again for your help. Sincerely, Primordial Ooze -
Why can't we attach .asm files?
Primordial Ooze replied to atari2600land's topic in Site and Forum Feedback
I agree, you should add .asm as an allowed file extension. How much bandwidth are you saving on a 10k .asm file compared to everything else available for download? Plus it's a pain to have to zip it up all the time, especially if it relates to a problem I'm having. On top of that Firefox seems to be able to display .asm files in the browser as text which makes it much quicker to find the problem and respond compared to download, unzip, launch ConText, fix, zip, upload. Asm files pose no security thread and like batari said .asm and .s covser about 99% of the assembly extensions. According to "]http://filext.com/alphalist.php?extstart=^[0-9],http://www.fileinfo.com/list/1 and http://www.sharpened...nsions/browse/1 .65s is not a valid extension. Sincerely, Primordial Ooze -
Hi everyone, Getting close to getting a simple display up despite everything that's happening to me. The problem I'm having is for some reason i can't set my background to quickly change to white then back to blue when the fire button is pressed. Here's the bit of code that does it: lda INPT4 ; was the gun trigger pressed? bmi SkipCheckFire ; if the gun's trigger wasn't pressed then jump to SkipCheckFire lda #WHITE sta COLUBK ; set the background color to white lda #BLUE sta COLUBK ; then back to blue to simulate a gunfire SkipCheckFire In practice this should work, but it doesn't. I have attached my code for reference. Any assistance would be greatly appreciated. Sincerely, Primordial Ooze
-
Hi Pac-Man Red, I need two sprites made if you can for my Quacker Blaster game. One is a duck sprite and one is a dog sprite. I plan on using multicolor rows on each sprite so you may want to consider that when designing the sprite. I need the sprites in assembly language byte code. Any assistance in this matter would be greatly appreciated. Sincerely, Primordial Ooze
-
Hi everyone, I working on my Quacker Blaster game and need a bit of help. I'm trying to create a basic duck graphic that i can use for my game. It needs to be able to fly around up and down, left and right so a simple non-vertical graphic would be best. I plan on using multicolor so if you want to you can take that into consideration. Heres what i have come up with so far: duck .byte #%00000000 .byte #%11111100 .byte #%11111100 .byte #%01111100 .byte #%01111100 .byte #%00000111 .byte #%00000111 .byte #%00000111 Any assistance in this matter would be greatly appreciated. Sincerely, Primordial Ooze
-
I would like to know if it is possible to create a playfield similar to http://www.youtube.com/watch?v=mzLHdeKEHXk and if so how difficult would it be. The gun of course would be removed and replaced with the players score. If not then what would be the closest i can get to this? Any assistance in this matter would be greatly appreciated. Sincerely, Primordial Ooze
