Jump to content
IGNORED

Programming "Trackball Mode" on the CX22 Trak-Ball


Recommended Posts

I recently acquired a lot of (2) Wico & (5) Atari CX22 trackballs. I'd like to use the CX22s as input devices on my 800, for controlling sound variables, and for experiments with sound & timing, which should be pretty cool, since the 800 has four joystick ports... I kinda wonder if anybody has ever plugged four trackballs into an 800... since its a little odd to have more than one or two.

 

I am aware that the Wico trackballs only work in "Joystick Mode". The Atari CX22s work in either "Joystick Mode" or "Trackball Mode". I'd like to experiment with "Trackball Mode", and could use some code examples, and technical info, to get started.

 

I've searched though the forum, but mostly only found 5200 trackball programming info.

 

Also, does anyone know if Missile Command's (Ctrl-T) Trackball Mode supports (2) trackballs? 

 

I'm busy soaking the bearings in some WD-40, right now. Once they're cleaned up, I'll apply a treatment of a heavier bearing oil, wipe 'em down, then get them all back together.

 

Thanks, in advance!

Link to comment
Share on other sites

They should be the same as using an Atari ST mouse... I'm sure I've played Missile Command using one.

 

If not, it would be a different combination of bits for each axis (like the Amiga) but I'm fairly sure they retained the same combinations between the trackball and ST mouse.

 

There's a few examples around - someone devised a nice efficient algorithm that can easily adapt between ST and Amiga mouse, IIRC it even worked OK at 50 or 60 samples per second.

 

If you're not happy with only VBlank sampling, then you just add a DLI or 2 or 3 at relevant timing intervals to improve the precision.

Link to comment
Share on other sites

I recently acquired a lot of (2) Wico & (5) Atari CX22 trackballs. I'd like to use the CX22s as input devices on my 800, for controlling sound variables, and for experiments with sound & timing, which should be pretty cool, since the 800 has four joystick ports... I kinda wonder if anybody has ever plugged four trackballs into an 800... since its a little odd to have more than one or two.

 

I am aware that the Wico trackballs only work in "Joystick Mode". The Atari CX22s work in either "Joystick Mode" or "Trackball Mode". I'd like to experiment with "Trackball Mode", and could use some code examples, and technical info, to get started.

 

I've searched though the forum, but mostly only found 5200 trackball programming info.

 

Also, does anyone know if Missile Command's (Ctrl-T) Trackball Mode supports (2) trackballs?

 

I'm busy soaking the bearings in some WD-40, right now. Once they're cleaned up, I'll apply a treatment of a heavier bearing oil, wipe 'em down, then get them all back together.

 

Thanks, in advance!

This should be more than enough to get you started.

 

http://www.atariarchives.org/cfn/05/07/0037.php

 

In a somewhat related area I've always wondered if the guts of a Kensington Expert Mouse could be converted to be an Atari trackball.

 

Anyone have a schematic for the CX22?

 

- Steve Sheppard

Link to comment
Share on other sites

Article and driver can be found on Mathy's site http://www.mathyvannisselroy.nl/special%20stuff.htm

 

No idea if it's the one I was thinking of earlier. Checked some of the other links from earlier threads here but they were no good.

 

I'm sure the efficient one I mentioned was only a few dozen lines of code with some tables buried in it.

Link to comment
Share on other sites

Hello guys

 

Look here for Florian Dingler's hardwaretester. It will test the Trakball too. I don't know if it's (Turbo)BASIC or if it's assembler with source code or whatever.

 

sincerely

 

Mathy

 

 

Well,

 

you can find this program (and others) on the attached disk above...

 

-Andreas Koch

Link to comment
Share on other sites

Hello Andreas

 

When I read this thread you hadn't entered you message yet. When I posted mine, I saw yours. Since I was to lazy to check if it was in the file you mentioned, I didn't feel like deleting my message.

 

sincerely

 

Mathy

Link to comment
Share on other sites

Hello Andreas

 

When I read this thread you hadn't entered you message yet. When I posted mine, I saw yours. Since I was to lazy to check if it was in the file you mentioned, I didn't feel like deleting my message.

 

sincerely

 

Mathy

 

I guess the mouse ARC file is the one for the trackball on your website. My set-up doesn't open those files. Don't see any A5200 trackball programming stuff anywhere.

Link to comment
Share on other sites

Hello Atariksi

 

I guess the mouse ARC file is the one for the trackball on your website. My set-up doesn't open those files. Don't see any A5200 trackball programming stuff anywhere.

There is no 5200 stuff on my site. We were taking about the XL/XE mouse code, which could serve as a starting point for a TrakBall routine. Check out MOUSE.ARC, MOUSEINT.ARC and STM18BIT.ARC.

 

BTW you can find plug ins for WinZip etc. or even different Unzippers that will UnArc whatever you want to UnArc.

 

sincerely

 

Mathy

Link to comment
Share on other sites

Arc2zip command line program will convert ARC files to ZIP files and then can be opened with any unzipper.

 

ARC2ZIP.zip

 

I have been using it a lot since Vista windows. Suxxxks

Just drop into your System32 folder or any path folder.

 

 

Or this one for 64bit windows 7 vista

 

arc.zip

Edited by rdea6
Link to comment
Share on other sites

Hello Atariksi

 

I guess the mouse ARC file is the one for the trackball on your website. My set-up doesn't open those files. Don't see any A5200 trackball programming stuff anywhere.

There is no 5200 stuff on my site. We were taking about the XL/XE mouse code, which could serve as a starting point for a TrakBall routine. Check out MOUSE.ARC, MOUSEINT.ARC and STM18BIT.ARC.

 

BTW you can find plug ins for WinZip etc. or even different Unzippers that will UnArc whatever you want to UnArc.

 

sincerely

 

Mathy

Okay, there were two points-- one was that trackball info (for A8) was actually in the MOUSE.ARC since there's nothing about trackball mentioned on that site. And second point is that original poster claimed that A5200 trackball programming was available, but I see the reverse. I don't see any A5200 trackball programming info on any site when I do a search.

Link to comment
Share on other sites

I recently acquired a lot of (2) Wico & (5) Atari CX22 trackballs. I'd like to use the CX22s as input devices on my 800, for controlling sound variables, and for experiments with sound & timing, which should be pretty cool, since the 800 has four joystick ports... I kinda wonder if anybody has ever plugged four trackballs into an 800... since its a little odd to have more than one or two.

 

I am aware that the Wico trackballs only work in "Joystick Mode". The Atari CX22s work in either "Joystick Mode" or "Trackball Mode". I'd like to experiment with "Trackball Mode", and could use some code examples, and technical info, to get started.

 

I've searched though the forum, but mostly only found 5200 trackball programming info.

 

Also, does anyone know if Missile Command's (Ctrl-T) Trackball Mode supports (2) trackballs?

 

I'm busy soaking the bearings in some WD-40, right now. Once they're cleaned up, I'll apply a treatment of a heavier bearing oil, wipe 'em down, then get them all back together.

 

Thanks, in advance!

This should be more than enough to get you started.

 

http://www.atariarchives.org/cfn/05/07/0037.php

 

In a somewhat related area I've always wondered if the guts of a Kensington Expert Mouse could be converted to be an Atari trackball.

 

Anyone have a schematic for the CX22?

 

- Steve Sheppard

 

That link contains error in the source code VBITBALL.SRC. It seems like they missed a "BNE" instruction.

Link to comment
Share on other sites

Anyone have a schematic for the CX22?

 

http://www.atariage...._CX22_High.html

 

Not sure I quite understand it but thanks Fox-1!

 

- Steve Sheppard

Well I took a simpler approach than attempting to modify a Kensington trackball. Instead I simply replaced the proprietary connector of an old Logitech Bus Mouse with a female DB9 making the Logitech mouse ST compatible.

 

(No I didn't figure out how to do this myself. I found a couple of documents on the internet)

 

- Steve Sheppard

Link to comment
Share on other sites

I would think that the 5200 trackball uses the pot inputs, probably in some sort of "Delta" mode like the analog Commodore mouse.

 

Alternatively, you could probably have some system that uses keypress returns, although doesn't the 5200 only allow something like a 4x3 matrix?

 

 

I was close:

 

http://www.atarihq.com/danb/52trakball.htm

 

It was designed to appear to the system as a normal 5200 joystick so that games would not have to be specifically written to support the trak-ball.

 

Rolling the ball faster in one direction corresponds to pushing an analog joystick further in the corresponding direction. The board has two circuits that act as tachometers with digital inputs and analog outputs.

Edited by Rybags
Link to comment
Share on other sites

I would think that the 5200 trackball uses the pot inputs, probably in some sort of "Delta" mode like the analog Commodore mouse.

 

Alternatively, you could probably have some system that uses keypress returns, although doesn't the 5200 only allow something like a 4x3 matrix?

 

 

I was close:

 

http://www.atarihq.com/danb/52trakball.htm

 

It was designed to appear to the system as a normal 5200 joystick so that games would not have to be specifically written to support the trak-ball.

 

Rolling the ball faster in one direction corresponds to pushing an analog joystick further in the corresponding direction. The board has two circuits that act as tachometers with digital inputs and analog outputs.

 

The cx5200 Field Service Manual has a very detailed description of how the trackball works. The only thing special that the program code needs to do is pull one of the connector pins low to perform a calibration for the ball not moving.

Link to comment
Share on other sites

I would think that the 5200 trackball uses the pot inputs, probably in some sort of "Delta" mode like the analog Commodore mouse.

 

Alternatively, you could probably have some system that uses keypress returns, although doesn't the 5200 only allow something like a 4x3 matrix?

 

 

I was close:

 

http://www.atarihq.com/danb/52trakball.htm

 

It was designed to appear to the system as a normal 5200 joystick so that games would not have to be specifically written to support the trak-ball.

 

Rolling the ball faster in one direction corresponds to pushing an analog joystick further in the corresponding direction. The board has two circuits that act as tachometers with digital inputs and analog outputs.

 

The cx5200 Field Service Manual has a very detailed description of how the trackball works. The only thing special that the program code needs to do is pull one of the connector pins low to perform a calibration for the ball not moving.

 

I haven't seen code-- just schematics and engineering articles. If I connect Atari 5200 trackball to Atari 800, and do:

 

1 ? PADDLE(0),PADDLE(1):GOTO 1

 

It does not show correct position of where ball is so it seems you need to do something else.

Link to comment
Share on other sites

I would think that the 5200 trackball uses the pot inputs, probably in some sort of "Delta" mode like the analog Commodore mouse.

 

Alternatively, you could probably have some system that uses keypress returns, although doesn't the 5200 only allow something like a 4x3 matrix?

 

 

I was close:

 

http://www.atarihq.com/danb/52trakball.htm

 

It was designed to appear to the system as a normal 5200 joystick so that games would not have to be specifically written to support the trak-ball.

 

Rolling the ball faster in one direction corresponds to pushing an analog joystick further in the corresponding direction. The board has two circuits that act as tachometers with digital inputs and analog outputs.

 

The cx5200 Field Service Manual has a very detailed description of how the trackball works. The only thing special that the program code needs to do is pull one of the connector pins low to perform a calibration for the ball not moving.

 

I haven't seen code-- just schematics and engineering articles. If I connect Atari 5200 trackball to Atari 800, and do:

 

1 ? PADDLE(0),PADDLE(1):GOTO 1

 

It does not show correct position of where ball is so it seems you need to do something else.

 

 

You should be able to read ball speed, not position. There is a signal line, don't remember the pin number, that you need to pull high so the track ball is not in calibration mode. I know it works because I once built a cx22 - 5200 trackball adapter on a bread board and it worked with my 800xl with the paddle inputs. I built it based on the schematic from the field manual.

Link to comment
Share on other sites

With regard to the 5200 trackball references, I believe that i did searches for: 

 

trackball

track-ball

track ball

trakball

trak-ball

trak ball

 

In the "Advanced" section of the forum search feature (to the right of the Search entry field, at the top of this page.). Then I went through all of the pages listed, incrementally. 

Link to comment
Share on other sites

Just an update. WD-40 alone lets the rollers spin faster, but MUCH noisier, and has a horrible feel. Additionally, as a skater, I will tell you that WD-40 is OK as a quick fix, but will wear out bearings. I like to clean bearings in an old glass coffee jar, using WD-40, though. Swish them in circles like a mini centrifuge for a while, then let them sit hours or days, swishing once in a while. to get all the crud out.

 

I found that WD-40 cleaning, then soaking overnight in a "3-in-1" oil treatment works great on the trackball rollers. They roll a bit slower, but feel waaay better, very precise, like a "Brand New" feel. Just be sure to wipe off the excess oil from the exterior of the bearings before you reassemble.

 

I have had excellent luck with skateboard bearings by cleaning with WD-40, as described above, then putting the bearings into a ziplock filled a third of the way with Castrol 20W50 motor oil, and letting them sit overnight. Powell makes the best bearing grease, for their Swiss bearings, so if you have a budget, get that.

 

I've been having a fun time learning to play "Defender" with the trackball. It has got to be one of the most difficult shoot-em-up games ever made. Frustrating, but very fun & addictive. 

 

 

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