I think I see the problem. Here is the code that reads the paddle. When INPT0 goes high you store Y in paddleVertPos, but as you continue through the loop you keep de-incrementing Y and since INPT0 stays high you keep updating paddleVertPos. So when you leave the loop paddleVertPos will always be either 200 or 0. DisplayKernel ldy #200 - MIN_Y .kernelLoop sta WSYNC lda INPT0 bpl .nextScanLine sty paddleVertPos .nextScanLine dey bne .kernelLoop Dan -----Original Message----- From: atari7800-bounce@xxxxxxxxxxxxx [mailto:atari7800-bounce@xxxxxxxxxxxxx] On Behalf Of Dennis Debro Sent: Monday, September 24, 2007 10:23 AM To: atari7800@xxxxxxxxxxxxx Subject: [personal] [atari7800] No luck with doing paddles on the 7800 Hi there, Apparently I'm missing something. I've gone over my code a number of times and can't seem to find my error. I've sent it to a friend to test on his 7800 and he can't get the paddles to work. I'd test it on my system but my power supply is blown at the moment :-( Could one of you take a look at this and point out where I'm missing it? The paddle should move up when the paddle is rotated clockwise and move down when rotated counter-clockwise. Take care, Dennis