retrogoober Posted March 17, 2014 Share Posted March 17, 2014 Is it just me, or is this a NO BRAINER homebrew for the 2600 paddles? Does it exist? If not, programmers please consider! 3 Quote Link to comment Share on other sites More sharing options...
Albert Posted March 17, 2014 Share Posted March 17, 2014 Yes, it's a no brainer. I may have to program this myself if nobody else does it, as I love Arkanoid and there aren't enough good paddle games on the 2600. ..Al 8 Quote Link to comment Share on other sites More sharing options...
+save2600 Posted March 17, 2014 Share Posted March 17, 2014 +1 for Arkanoid with paddle support! Last homebrew attempt came close, but there wasn't enough room left in the coding to incorporate the most important aspect of a paddle game - paddle support! 2 Quote Link to comment Share on other sites More sharing options...
dubxcube Posted March 17, 2014 Share Posted March 17, 2014 I always liked "pipe dream". Seems like one that could be done without too many hurdles Quote Link to comment Share on other sites More sharing options...
Master Phruby Posted March 17, 2014 Share Posted March 17, 2014 Love the avatar dubxcube! 1 Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted March 17, 2014 Share Posted March 17, 2014 I started a mock-up of BRIK that could probably be finished into an actual game. Might be a little tweaking involved to support paddles. I posted the source: http://atariage.com/forums/topic/216654-batari-brik-mockup/ UPDATE: Personally I'd encourage paddle games that aren't "paddle" games. There's great untapped potential in the fact that 4 players can play. What about a 4 player Telengard/RPG type game? Or, maybe 4 player Spy vs. Spy? 4-player Smash Bros using the guy from Adventure? 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted March 17, 2014 Share Posted March 17, 2014 (edited) Most people skip because reading the paddle takes away precious kernel time (minimum 8 out of just 76 cycles ). So when you add paddle support, the game will have to look less impressive. And most people will not know why and probably blame the developer. Here is the minimum code. You have to make sure that the *address* of e.g. paddle1 is an 1 byte opcode, e.g. $ea (nop) or $d8 (cld). MAC READ_PADDLE_1 lda INPT0 ; 3 bmi .save+1 ; 2/3 .save sty paddle1 ; 3/2 ENDM Edited March 17, 2014 by Thomas Jentzsch 1 Quote Link to comment Share on other sites More sharing options...
enthusi Posted March 17, 2014 Share Posted March 17, 2014 (edited) hehe, and that is already quite smart In that example you can also see that you have to reserve Y Edited March 17, 2014 by enthusi Quote Link to comment Share on other sites More sharing options...
Jason_Atari Posted March 18, 2014 Share Posted March 18, 2014 From memory playing this game in the arcades in the 80s, wasnt there a level that had the space invaders alien? Quote Link to comment Share on other sites More sharing options...
PacManPlus Posted March 18, 2014 Share Posted March 18, 2014 Yes. 1 Quote Link to comment Share on other sites More sharing options...
Rybags Posted March 18, 2014 Share Posted March 18, 2014 hehe, and that is already quite smart In that example you can also see that you have to reserve Y In most kernal situations an index register is in use anyway so there's not really great inconvenience. I think the game can be done, probably fairly easily insofar as the graphical representation of what's needed. Of course there'd be flicker at times given that there can be 2 aliens, 3 balls and pickup objects on the screen at once but it shouldn't be anything the 2600 can't handle. Quote Link to comment Share on other sites More sharing options...
Bakasama Posted March 18, 2014 Share Posted March 18, 2014 I figure this might be an okay place to ask this, Is there any advantage/disadvantage to using paddle controllers vs. driving controllers for Arkanoid? Quote Link to comment Share on other sites More sharing options...
Rybags Posted March 19, 2014 Share Posted March 19, 2014 Driving controllers are somewhat a rarity, probably 75% or more of owners would have paddles but less than 20% owners would have driving controllers. Processing requirements should be much less for driving controllers. Probably 2-4 samples per frame equally spaced then process them during VBlank might be the ideal. Realistically this game should have a joystick option although IMO stick suck for such games. Actually, supporting all 3 control types shouldn't add greatly to the size. Processing requirement for joysticks is minimal, it can all be done in VBlank. Quote Link to comment Share on other sites More sharing options...
Bakasama Posted March 19, 2014 Share Posted March 19, 2014 I had a feeling that driving controllers weren't all that common. Still, wouldn't games that use driving controllers work as well with trakball controllers? Quote Link to comment Share on other sites More sharing options...
Rybags Posted March 19, 2014 Share Posted March 19, 2014 Not sure. Trakball is like a mouse turned upside down, in Atari implementation both use the Reed Code with 2 bits per axis for the movement. Driving controller is the same except only 1 axis - I think it only uses 2 bits, someone else should be able to indicate if that's the case. An Amiga or ST mouse mode would be possible too - but unsure if the movement is the same as a driving controller or if different calibration would be needed. The old mice had much lower DPI than modern ones, I suspect the driving controller was even less again. Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted March 19, 2014 Share Posted March 19, 2014 (edited) Both, DC and digital mouse/Trakball are using a two bit code per axis.The main difference is, that the DC has a very low resolution, just 32 changes on a full 360° rotation. So usually it cannot replace a paddle. The Trakball is much, much more sensitive (comparable to a paddle) and therefore has to be sampled about as frequent as a paddle. Instead of only once per frame for the DC.I have done Missile Command Trakball hacks which support three different 2 bit codes (CX22, CX80/Atari ST mouse, Amiga mouse). So they all work the same, just with a different 2 bit encoding sequence Edited March 19, 2014 by Thomas Jentzsch Quote Link to comment Share on other sites More sharing options...
maiki Posted March 19, 2014 Share Posted March 19, 2014 I wish there was a really decent breakout game with multiple levels and gameplay variety with full paddle support. Atari 2600 is a natural place for such games. The original Breakout games are... shallow. I would like to have that homebrew game: Belinoid with paddle support. If its kernel allows for that... Hopefully, one day... Quote Link to comment Share on other sites More sharing options...
Crazy Climber Posted March 19, 2014 Share Posted March 19, 2014 I swear John Harvey (Pressure Gauge) started this awhile back? Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted March 19, 2014 Share Posted March 19, 2014 I just learned batari BASIC doesn't allow playfield rows with different colors and reading paddles. There's no good way to shoe in Thomas's paddle code either. Drat! UPDATE: Wait, wait.. there may be hope. To be continued! Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted March 19, 2014 Share Posted March 19, 2014 The bB code posted in that thread is much more versatile than efficient. Quote Link to comment Share on other sites More sharing options...
+SpiceWare Posted March 19, 2014 Share Posted March 19, 2014 Most people skip because reading the paddle takes away precious kernel time (minimum 8 out of just 76 cycles ). So when you add paddle support, the game will have to look less impressive. And most people will not know why and probably blame the developer. Here is the minimum code. You have to make sure that the *address* of e.g. paddle1 is an 1 byte opcode, e.g. $ea (nop) or $d8 (cld). MAC READ_PADDLE_1 lda INPT0 ; 3 bmi .save+1 ; 2/3 .save sty paddle1 ; 3/2 ENDM While not much of a savings, if you're using DPC+ you can get the kernel requirement down to 7 cycles. No ARM usage required. ; prep datastream to hold paddle readings lda #<PaddleReadings sta DF0LOW lda #>PaddleReadings sta DF0HI ; in Kernel loop lda INPT0 ; 3 sta DF0WRITE; 4 save paddle readings ; in overscan evaluate the saved readings lda #<PaddleReadings sta DF0LOW lda #>PaddleReadings sta DF0HI ldy #255 PaddleLoop: iny lda #<DF0DATA ; fast fetch mode is turned on to save 2 cycles per trip through PaddleLoop bpl PaddleLoop ; Y has paddle position ; Display Data PaddleReadings: ds 200 ; adjust size based on how many readings of INPT0 your kernel will do 1 Quote Link to comment Share on other sites More sharing options...
Thomas Jentzsch Posted March 19, 2014 Share Posted March 19, 2014 Maybe in overscan a binary search would be better here. Else you need up to ~1800 cycles just for finding the data. Quote Link to comment Share on other sites More sharing options...
+Gemintronic Posted March 19, 2014 Share Posted March 19, 2014 Would anyone have ten kittens if the Arkanoid clone was sideways? I remember the BRiX game using up quite a few resources just to get those nice vertical lines between bricks.. Quote Link to comment Share on other sites More sharing options...
Albert Posted March 19, 2014 Share Posted March 19, 2014 Would anyone have ten kittens if the Arkanoid clone was sideways? I remember the BRiX game using up quite a few resources just to get those nice vertical lines between bricks.. I wouldn't publish an Arkanoid game if it was rendered sideways. Edit: Nor would I play it. ..Al 1 Quote Link to comment Share on other sites More sharing options...
+Random Terrain Posted March 19, 2014 Share Posted March 19, 2014 It's been 3 or 4 days since this thread was created. Has the game been finished and put on a cart yet? 1 1 Quote Link to comment Share on other sites More sharing options...
Recommended Posts
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.