Jump to content

Photo

Arkanoid 2600?


78 replies to this topic

#1 retrogoober OFFLINE  

retrogoober

    Star Raider

  • 99 posts

Posted Sun Mar 16, 2014 6:01 PM

Is it just me, or is this a NO BRAINER homebrew for the 2600 paddles?  Does it exist?  If not, programmers please consider!



#2 Albert OFFLINE  

Albert

    Quadrunner

  • 34,042 posts

Posted Sun Mar 16, 2014 6:02 PM

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

#3 save2600 OFFLINE  

save2600

    Quadrunner

  • 14,153 posts
  • Location:Wisconsin

Posted Sun Mar 16, 2014 6:06 PM

+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! :lol:

#4 dubxcube OFFLINE  

dubxcube

    Chopper Commander

  • 177 posts
  • Location:Napa, CA

Posted Sun Mar 16, 2014 10:24 PM

I always liked "pipe dream". Seems like one that could be done without too many hurdles

#5 Master Phruby OFFLINE  

Master Phruby

    Quadrunner

  • 7,959 posts
  • Location:Right behind you.

Posted Mon Mar 17, 2014 7:53 AM

Love the avatar dubxcube!



#6 Gemintronic OFFLINE  

Gemintronic

    Jason S. - Lead Developer & CEO

  • 8,833 posts

Posted Mon Mar 17, 2014 8:07 AM

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/...ri-brik-mockup/

 

bbbrik10.png
 
 
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?


#7 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 22,728 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Mon Mar 17, 2014 9:56 AM

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 by Thomas Jentzsch, Mon Mar 17, 2014 10:01 AM.


#8 enthusi OFFLINE  

enthusi

    Moonsweeper

  • 358 posts
  • Location:Potsdam, Germany

Posted Mon Mar 17, 2014 10:07 AM

hehe, and that is already quite smart :)

In that example you can also see that you have to reserve Y


Edited by enthusi, Mon Mar 17, 2014 10:09 AM.


#9 Jason_Atari OFFLINE  

Jason_Atari

    Moonsweeper

  • 288 posts
  • Location:Melbourne, Australia.

Posted Tue Mar 18, 2014 7:06 AM

From memory playing this game in the arcades in the 80s, wasnt there a level that had the space invaders alien?



#10 PacManPlus OFFLINE  

PacManPlus

    River Patroller

  • 4,633 posts
  • Atari 7800 & NES Developer
  • Location:Florida

Posted Tue Mar 18, 2014 7:21 AM

Yes.



#11 Rybags ONLINE  

Rybags

    Quadrunner

  • 15,177 posts
  • Location:Australia

Posted Tue Mar 18, 2014 7:28 AM

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.



#12 Bakasama OFFLINE  

Bakasama

    Stargunner

  • 1,622 posts
  • Kitava is just too hard

Posted Tue Mar 18, 2014 9:01 AM

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?



#13 Rybags ONLINE  

Rybags

    Quadrunner

  • 15,177 posts
  • Location:Australia

Posted Tue Mar 18, 2014 8:47 PM

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.



#14 Bakasama OFFLINE  

Bakasama

    Stargunner

  • 1,622 posts
  • Kitava is just too hard

Posted Tue Mar 18, 2014 11:50 PM

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?



#15 Rybags ONLINE  

Rybags

    Quadrunner

  • 15,177 posts
  • Location:Australia

Posted Wed Mar 19, 2014 12:43 AM

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.



#16 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 22,728 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Wed Mar 19, 2014 12:59 AM

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 by Thomas Jentzsch, Wed Mar 19, 2014 12:59 AM.


#17 maiki OFFLINE  

maiki

    Dragonstomper

  • 682 posts

Posted Wed Mar 19, 2014 9:57 AM

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



#18 Crazy Climber OFFLINE  

Crazy Climber

    Crazy Climberer

  • 12,174 posts
  • Metamuciler
  • Location:NICHIBUTSU DELUXE

Posted Wed Mar 19, 2014 10:04 AM

I swear John Harvey (Pressure Gauge) started this awhile back?



#19 Gemintronic OFFLINE  

Gemintronic

    Jason S. - Lead Developer & CEO

  • 8,833 posts

Posted Wed Mar 19, 2014 10:13 AM

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!



#20 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 22,728 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Wed Mar 19, 2014 10:45 AM

The bB code posted in that thread is much more versatile than efficient.



#21 SpiceWare OFFLINE  

SpiceWare

    Quadrunner

  • 11,492 posts
  • Medieval Mayhem
  • Location:Planet Houston

Posted Wed Mar 19, 2014 11:17 AM

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


#22 Thomas Jentzsch OFFLINE  

Thomas Jentzsch

    Thrust, Jammed, SWOOPS!, Boulder Dash, THREE·S, Star Castle

  • 22,728 posts
  • Always left from right here!
  • Location:Düsseldorf, Germany, Europe, Earth

Posted Wed Mar 19, 2014 1:11 PM

Maybe in overscan a binary search would be better here. Else you need up to ~1800 cycles just for finding the data.



#23 Gemintronic OFFLINE  

Gemintronic

    Jason S. - Lead Developer & CEO

  • 8,833 posts

Posted Wed Mar 19, 2014 1:22 PM

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



#24 Albert OFFLINE  

Albert

    Quadrunner

  • 34,042 posts

Posted Wed Mar 19, 2014 1:23 PM

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

#25 Random Terrain OFFLINE  

Random Terrain

    Visual batari Basic User

  • 28,180 posts
  • Controlled Randomness
    Replay Value
    Nonlinear
  • Location:North Carolina (USA)

Posted Wed Mar 19, 2014 1:30 PM

It's been 3 or 4 days since this thread was created. Has the game been finished and put on a cart yet? :D






0 user(s) are browsing this forum

0 members, 0 guests, 0 anonymous users