Jump to content
IGNORED

Atari 8-bit as a USB HID


David_P

Recommended Posts

Has anyone ever thought about writing the software to let an Atari 8-bit act as a USB HID? That is, for example, get one of these from SparkFun (http://www.sparkfun.com/commerce/product_info.php?products_id=718), connect it via SIO, and have the Atari feed the computer at the other end of the USB connection the keyboard information; that is, turn the Atari into a USB keyboard on the PC.

 

Added bonus in using a joystick as a one-button mouse.

 

Imagine: A fully pimiped-out PC, using an Atari 400 as the keyboard, and a CX-40 as the mouse...

Link to comment
Share on other sites

Such a thing is also possible without using USB.

 

On PC system you can redirect incoming serial data from a COM-port to keyboard. On Atari you need to run a driver to output it's keyboard to RSS32, something like:

 

(very simplified)

OPEN #1,4,0,"K:"

OPEN #2,4,8,"R:"

GET #1,K

PUT #2,K

Link to comment
Share on other sites

Yes, but USB HID devices work with no tweaking to the config. And, as I mentioned, you could have a joystick in place of a single button mouse. Picture a Mac Mini with an Atari 400 as the keyboard...

 

 

 

And besides, I'd love to see "System Reset" mapped to CTRL-ALT-DEL.

Link to comment
Share on other sites

I KNOW for sure I've seen this done before, the more I think about it, the more I remember seeing an add on a web page. It said something to the effect of "getting a new use out of old dead Atari hardware" and it had an 800XL I believe it was, hooked up to a PC's USB port.

 

Wish I could recall what I did with the link. :/

Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

Link to comment
Share on other sites

Yes, but USB HID devices work with no tweaking to the config.

For Windows and MacOS that is. I'm not sure when used with other O.S' but I assume any modern PC will support a USB keyboard through it's BIOS anyways.

 

And besides, I'd love to see "System Reset" mapped to CTRL-ALT-DEL.

The RESET key is not a regular key so this requires a bit of effort on A8, but not impossible.

Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

 

How did you post from the 1200XL?

Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

 

Pics or it didn't happen...

Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

 

Ideally, the Atari would have, say, an AtariMax flashcart that would contain the program for the Atari to provide the PC the appropriate codes on the USB bus (via SIO); on the PC side, it would only see a standard keyboard and not have to worry about it. Plus would be programmable, letting the user define the keyboard if they wanted to.

 

 

The challenge would be in capturing System Reset on the Atari and using it to feed CTRL-ALT-DEL to the PC... ;)

Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

 

How did you post from the 1200XL?

I have a programmable keyboard encoder hardwired into the atari keyboard matrix. The encoder detects the keypresses and send appropriate ps2 codes to my pc. The advantage of this approach is that I can use all of the atari's keys-- even reset (which is used for ctl alt del.) The encoder can be programmed to match any key with any ps2 code. The downside is that the encoder messes with and is messed up by the atari mb. If someone were to come up with a software solution, I think that would be the way to go. With my setup, I ended up having to remove the two chips on the keyboard to make things work for my pc. Obviously, this renders the keyboard useless for the atari. I plan to experiment with some optocouplers to see if I can isolate the two circuits and have both live together. Google hagstrom electronics lp24 to see what I used.

Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

 

Pics or it didn't happen...

post-9249-127678394397_thumb.jpg

Edited by yorgle
Link to comment
Share on other sites

(BTW, this post was typed on a 1200xl).

 

That's neat (I used Hagstrom stuff in my arcade cabinet) but if I understand your description, then the post was really typed on the keyboard of a zombie 1200XL. Do you still use the guts of the 1200 for anything? What's in the 1050 housing? What do you do about all the missing keys?

Link to comment
Share on other sites

(BTW, this post was typed on a 1200xl).

 

That's neat (I used Hagstrom stuff in my arcade cabinet) but if I understand your description, then the post was really typed on the keyboard of a zombie 1200XL. Do you still use the guts of the 1200 for anything? What's in the 1050 housing? What do you do about all the missing keys?

 

For a while, the 1200xl actually worked with the Hagstrom encoder attached, just not at the same time. I worked out a solution to switch back and forth between the two systems using a multi pole switch to "disconnect" the hagstrom from my pc when using the Atari. But after a while, strange behaviors developed when using the pc-- even with the keyboard disconnected from the Atari motherboard, e.g., pressing "u" yielded "uiop-". With helf from Hagstrom's support staff, I confirmed the problem to be the Hagstrom's signal jumping inside the two multiplexer ic's, causing the Hagstrom to think more than two contacts were being pressed. As a temporary "fix", I simply removed the ic's while I try to figure out some kind of circuit to isolate the two circuits.

 

The 1050 houses a DVD/CD drive and usb hub. I mapped the 1200xl to the most commonly used pc keys and keep a wireless pc keyboard nearby when I need to hit unmapped keys.

Link to comment
Share on other sites

For a while, the 1200xl actually worked with the Hagstrom encoder attached, just not at the same time. I worked out a solution to switch back and forth between the two systems using a multi pole switch to "disconnect" the hagstrom from my pc when using the Atari. But after a while, strange behaviors developed when using the pc-- even with the keyboard disconnected from the Atari motherboard, e.g., pressing "u" yielded "uiop-". With helf from Hagstrom's support staff, I confirmed the problem to be the Hagstrom's signal jumping inside the two multiplexer ic's, causing the Hagstrom to think more than two contacts were being pressed. As a temporary "fix", I simply removed the ic's while I try to figure out some kind of circuit to isolate the two circuits.

 

The 1050 houses a DVD/CD drive and usb hub. I mapped the 1200xl to the most commonly used pc keys and keep a wireless pc keyboard nearby when I need to hit unmapped keys.

 

Nice. Thanks for the details!

Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

 

Pics or it didn't happen...

 

So it did happen!

 

:)

 

Nice setup!

 

I wonder if you would have had better luck with an Ipac from Ultimarc; they have a keyboard passthrough built right into the unit...

Link to comment
Share on other sites

I have a programmable keyboard encoder hardwired into the atari keyboard matrix. The encoder detects the keypresses and send appropriate ps2 codes to my pc. The advantage of this approach is that I can use all of the atari's keys-- even reset (which is used for ctl alt del.) The encoder can be programmed to match any key with any ps2 code. The downside is that the encoder messes with and is messed up by the atari mb. If someone were to come up with a software solution, I think that would be the way to go. With my setup, I ended up having to remove the two chips on the keyboard to make things work for my pc. Obviously, this renders the keyboard useless for the atari. I plan to experiment with some optocouplers to see if I can isolate the two circuits and have both live together. Google hagstrom electronics lp24 to see what I used.

 

Fascinating. What about some kind of terminal software on the PC that redirects terminal output? (to anywhere you want to type) That way you could connect any old computer to use as a PC keyboard.

 

I've connected many old computers (Kaypro, TRS-80) to my Amiga using terminal to type text which I then cut & pasted into posts. It would be much neater if I could just redirect that text to the browser's text box to type directly. I'm sure there's a way to easily do that sort of thing.

Edited by Mr.Amiga500
Link to comment
Share on other sites

Wouldn't the signal sent to the pc from the atari have to be converted to ps2 codes somewhere along the line? As I recall, a pc keyboard encoder actually sends three values per keystroke to the pc whereas the atari only sends one. I suppose a driver on the pc side could be written to accomplish the conversion. (BTW, this post was typed on a 1200xl).

 

How did you post from the 1200XL?

I have a programmable keyboard encoder hardwired into the atari keyboard matrix. The encoder detects the keypresses and send appropriate ps2 codes to my pc. The advantage of this approach is that I can use all of the atari's keys-- even reset (which is used for ctl alt del.) The encoder can be programmed to match any key with any ps2 code. The downside is that the encoder messes with and is messed up by the atari mb. If someone were to come up with a software solution, I think that would be the way to go. With my setup, I ended up having to remove the two chips on the keyboard to make things work for my pc. Obviously, this renders the keyboard useless for the atari. I plan to experiment with some optocouplers to see if I can isolate the two circuits and have both live together. Google hagstrom electronics lp24 to see what I used.

 

I did it with software but I'm using it in reverse-- sending PC keystrokes to Atari during VBI. However, reverse should be do-able in software as well on Atari 400/800 since those allow you to lock-up the system-reset and read it via 54287. Probably need some IRQ to handle the break key but everything else should be simple:

 

PEEK(53769) and transmit to PC, PEEK(53279) and transmit to PC.

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