?
Solved

General Instruments PONG

Posted on 2003-02-21
6
Medium Priority
?
461 Views
Last Modified: 2013-12-09
Could someone please give me some info on the inner workings of the AY-3-8500 chip?
I am after a datasheet or doc from that era that will let me understand what it is that is happening within the chip to the point of being able to simulate accurately it in software.
0
Comment
Question by:TheBeaver
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 2
  • 2
6 Comments
 
LVL 1

Expert Comment

by:HWhacker
ID: 8113140
I'm not sure how much detail you want, and how accurate my memory of the thing is, but here goes:

The AY-3-8500(-1 for 525 line North American video) had a selection of games:
- Tennis (one paddle/player, open field ends);
- Soccer (two paddles/player, field end restricted to form a "goal";
- Squash (one player, one paddle, player side of field open);
- Two shooting games (my game didn't support, and my datasheet doesn't elaborate, so I can't help there);
 - Paddle positions are variable only vertically, over the full height of the field; there is no control of their horizontal position.

Player settings:
 - two ball speeds;
 - two paddle sizes (normal and half).

Score:
  Displayed near top of screen, on each player's side, was a 7-segment count that went up to 15 (I think).

Sound:
  One annoying "bleep" (~1KHz?) for paddle hits, a shorter one for wall bounces, a higher-pitched short "bip" for point scoring.

Datasheet:
  I have a GI book: I can scan the pages and EMail on request, but it is not the full sheet - evidently my copy came out toward the end of the product's life. It does elaborate on paddle positions and screen layout in general.

Hardware:
  I've still got one AY-3-8500-1 IC (without the game console... so things I throw away).  If you want wire it up and view the results for yourself, I could send it.
0
 
LVL 1

Author Comment

by:TheBeaver
ID: 8115332
Thanks for your response

There is heaps of info out there, on the net, about the external workings (how to wire it up, the games & settings), but nothing about what goes on inside the chip. I guess this is because GI assumed noone would care as you didn't have to code for it, just give it the inputs it needs.

I started this because I recently finished up getting one of these 70s consoles (with light gun), became facinated and decided to add the chip to my emulator, Mimic.

Hardware:
If you could send this chip it would be great. I could then wire it up to the parrallel port and check it out that way. As I said before, I have a working console but, because of its construction, am not able to access the component side of the PCB without destorying the unit. So desoldering the chip and putting in a socket is out :(
Realise that I am in Australia so the postage may be a few bucks. As a guide: I recently sent a unit the size of a null modem to the US and it cost A$6.00 (about US$3.00).

Datasheet:
Sounds good. Is this a sheet of what happens inside the chip, or how to wire up the chip to make a console? I am more interested in the former.

Either way, please email me (thebeaver@arcadeheaven.com) and let me know the size of the scans. If they are huge then I will setup some webspace for you upload them.

PS:I'm increasing the points for this question as 50 was all I had to offer when I asked :)
0
 
LVL 1

Accepted Solution

by:
HWhacker earned 300 total points
ID: 8121846
The data should be scanned and on its way in the next couple of days... but you'll probably be disappointed in the internal detail.  You may have to do a little reverse engineering:
 - record the video output and play it back on a machine that allows frame-by frame viewing.  From this you'll be able to extract the ball motions and how they relate to the video frame update rate.  Assume that the screen is an array of block pixels (ball-size) and determine the resolution of paddle and ball movement, and the screen size in pixels.

 My suspicion is that every element is resolved down to ball-size, and each "pixel" is a location with various attributes:
00 00 - empty: no interaction, 0% video;
11 10 - ball: 100% video; "hard" (bounces against X [or Y] hard surfaces reflect motion in Y [or X] direction while maintaining motion in the other direction);
11 10 - paddle center: hard; 100% video (same as ball);
01 10 - X wall: hard; 50% video - dashes
10 10 - Y wall: hard; 50% video - alternate horizontal lines;
11 01 - paddle edge: "firm" (ball's Y-direction motion toggles between normal and fast speeds on contact); 100% video;
11 00 - score: no interaction; 100% video (digits formed from a 3x5 pixel matrix).

(Bit pairs above: first = video 00=none 01=50%H 10=50%V 11=100%; second pair "hardness" 00=none 01=firm 10=hard; the presence of an unused state suggests I've neglected something, maybe hard-X and hard-Y to direct bounces...:)

 The ball's motion would have X and Y speed attributes, likely 0 (normal - 1 pixel jump per frame) and 1 (fast - 2 pixels jumped per frame). X speed is set by the expert setting, Y speed by bounces off paddle edges.

  Start with this set of assumptions and adjust the rules every time you uncover an exception. It's tedious (I've been there many times: the technique works on software too).  Just remember that the AY-3-8500 was the first worldwide large-volume single-chip device of its type - chances are it is a fairly straight-forward logic state machine on which everyone based their enhancements.
0
 
LVL 1

Author Comment

by:TheBeaver
ID: 8123324
Cool.

I did hook the unit up to my TV card, but the interferrence was huge.Could hardly see a picture let alone analise it. How I am thinking of reverse engineering it is to hook it up to the parrallell port (output lines to the data lines, and then have another line to the clock pin so I can control the timing from my own code). That would allow me to record the output.
0
 
LVL 13

Expert Comment

by:AlbertaBeef
ID: 9755980
No comment has been added lately, so it's time to clean up this TA.
I will leave a recommendation in the Cleanup topic area that this question is:

Answered by: HWHacker

Please leave any comments here within the next seven days.

PLEASE DO NOT ACCEPT THIS COMMENT AS AN ANSWER!

AlbertaBeef
EE Cleanup Volunteer
0

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

More and more people are using the enhanced small form-factor pluggable (SFP+) tranceivers, and speed is of utmost importance. Testing of speeds are critical to ensure that the devices will meet the speed requirements. There are some testing challen…
As cyber crime continues to grow in both numbers and sophistication, a troubling trend of optimization has emerged over the last year.
Michael from AdRem Software outlines event notifications and Automatic Corrective Actions in network monitoring. Automatic Corrective Actions are scripts, which can automatically run upon discovery of a certain undesirable condition in your network.…
This is my first video review of Microsoft Bookings, I will be doing a part two with a bit more information, but wanted to get this out to you folks.

801 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question