Jump to content
IGNORED

Were Atari 8-bit joystick ports designed to be bi-directional serial ports


ACML

Recommended Posts

I am continually amazed at the features Atari put into these machines in the late 1970's. Either by design or by accident, users have found unique ways to make the Atari Home Computer do things the design team may not have envisioned. We know the joystick port are capable of bi-directional serial operation. First, the joystick port is an inceptor. The port receives input from the joysticks, paddles, etc. My older brother's PS Technologies printer interface connected to a joystick port. He had a small handler that overwrote the printer function in the OS and you were able to transmit printer data out the joystick port. Then there was Computer Eyes that used two joystick ports. I think the MPP 1000 modem used the joystick port as a bi-directional serial port. Does anyone know if this functionality was by design at Atari or spawned from the ingenuity of it's users?

Edited by ACML
Link to comment
Share on other sites

The interface is mainly to the PIA and the PIA predates the Atari computer and even 2600 by probably a few years. The 6520 as used by Atari is virtually identical to the 6820 which was intended for use with the 6800 CPU which itself came out in 1974.

 

So it'd be fair to say the 6820 wasn't long after that. Apple I used a PIA to interface it's keyboard. Like the name suggests, it's intended as a jack of all trades for interfacing to peripherals and that can be parallel or serial bit-banging.

 

Sure, Atari had/has the innovative users but so did the likes of Apple, Kim and plenty of other earlier machines in the 70s.

Link to comment
Share on other sites

The ports are implemented using a 6520 PIA, which is a very handy IO chip but has no serial capabilities. So, it's simply some clever bit-banging code that makes them usable for serial IO.

 

Of course, it was not all that uncommon for 8-bit computers to have bit-banged IO to save money on interface chips.

  • Like 1
Link to comment
Share on other sites

I seem to remember reading somewhere "back in the day" that the creators of the atari 8-bit version of gauntlet had a setup that transferred data from one atari to another at a massive 17k/second via the joystick ports. Does this ring a bell with anyone?

Don't know about that, but I have a "Dual Star Raiders" game from the early 80's that appears to use a null modem cable to play head to head. It requires the 400/800 OSB because it uses Port B (I think).

 

 

Star Raiders Dual (ATARI) OS-B.XEX

Edited by ACML
  • Like 3
Link to comment
Share on other sites

Don't forget the XEP80 80-column Text, high-res graphics mode and centronics printer port all-in-1 that used an Atari Joystick port too. Though the graphics could only utilize half the screen vertically, but you could still have 40-column text on the other side at the same time. IIRC, this had something to do with the XEP80's internal video ram rather than anything to do with the joystick port, but I don't know for sure.

 

And here's another device that's little known which utilizes the Atari Joystick ports. From the 400/800 era. A hard drive! See attached picture and video below.

 

But Atari and third parties found ways to utilize the ports in very unique ways. Mostly for compatibility among all 8-bits for the ones without PBI/ECI ports. And this was also why the cartridge port wasn't utilized instead, for 400/800 compatibility with their closing doors.There were right cartridge 80-column devices before.

 

post-149-0-65757200-1482527970_thumb.jpg

Edited by Gunstar
  • Like 2
Link to comment
Share on other sites

I've got an EPROM burner that works through the joystick ports as well. Quite versatile - ANALOG printed plans for a speech synthesizer that ran through the ports as well. Only complaint I have is that there are no interrupts. (In fact, I have the same complaint about the Atari cartridge port)

Link to comment
Share on other sites

In the 80s, i made a small program in Atari BASIC to be able to exchange data/programs from Atari to MSX computers. It worked very, very slow. But it worked.

I also made a simple program, where i would connect the Atari to the MSX joystick port, and then play a game on the MSX using the keyboard of the Atari. All joystick play was recorded in Atari RAM, and so I was able to replay the game I just played. Worked very good on MSX games like Nemesis or Salamander. As all enemy movement is scripted.

  • Like 4
Link to comment
Share on other sites

  • 3 weeks later...

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