Schematics For Hard Drivin'/Race Drivin' ADSP, Motor Amplifier, and DSK Boards


        This page mentions several people who worked on Hard Drivin'/Race Drivin' so I want to mention the entire team: Rick Moncrief (Project Leader), Max Behensky (Programmer), Stephanie Mott (Programmer),  Jed Margolin (Engineer), and Erik Durfey (Technician). You can read more about us on the Hard Drivin'/Race Drivin' Credit Screen. Just press the Abort switch while the game is in Attract Mode and the Credit Screen will immediately appear. We also listed all the other people at Atari Games who helped us, which was about half the company.

        Because the schematics for several of the boards used in Hard Drivin'/Race Drivin' were not published in the game manuals I am posting them here.

        The original schematics were B Size (11"x17") so I am posting each one as two 8.5"x11" sheets. The left side of the sheet is first, followed by the right side.

        I regret that I am not able to provide very much in the way of support for people wanting to troubleshoot their boards.

Jed Margolin
March 9, 2002        Revised: 3/18/2002, 5/10/2002, 7/18/2002, 4/14/2004, 8/26/2004, 4/27/2009, 1/16/2010, 10/30/2010


Index 

Main Board GSP

ADSP Board

DSK Board

Motor Amplifier

The Motor

Driver Sound Board

Schematics

The Cockpit Seat

EPROMS and GALS Part Numbers

Game Videos



Main Board GSP


The circuit for the Main Board GSP system was not included as part of the published schematic package in an attempt to keep some of the details secret.

Hard Drivin'  used a 68010 main processor, a Texas Instruments TMS34010 Graphics Signal Processor for the graphics engine, an Analog Devices ADSP-2100 DSP for graphics math, and another TMS34010 solely to do the calculations for the car model.

When used as TI intended, the TMS34010 used for the graphics engine would not have been fast enough for the game. It had a 16-bit memory data bus, so the number of pixels you could fill in one memory operation depended on how many bits per pixel you used. If you had 4 bits per pixel you could fill a maximum of 4 pixels per memory operation. Four bits per pixel were not enough. And even then it was too slow.

To speed things up I took advantage of memory granularity. VRAMs were originally 64K x 1. Then they were 64K x 4. Those were the ones I used. In order to have enough memory for screen buffers that were  512 x 384 x 8 bits I needed 32 VRAMs. (The TMS34010 also used the VRAM memory for its program.)

So I paired them up as 16 banks of 64Kx8 (32 64Kx4 VRAMs).

By telling the TMS34010 that there was only one bit per pixel it could select 16 pixels per memory operation. In this mode, the actual color came from an 8-bit color register.

That required one memory organization.

However, making the pixels come out in the right order when shifted out of the VRAM shift registers required a different organization.

In addition, since the TMS34010 also used the VRAM for program storage, it required yet another memory organization.

Fortunately, the TMS34010 had a huge memory space, so I switched the memory organization according to the memory space used.

Programs used one memory space, polygon creation used another, and Graphic Display used a third. The memory organization was changed dynamically according to the address being selected. (I guess you would call it a dynamic dynamic memory.)

The first prototype used a handful of buffers. Later, Don Paauw put everything in a gate array, along with enough security features to keep the pirates occupied for awhile. The schematic refers to the part as a 34012. I did that so that the pirates would think it was a Texas Instruments part so when they tried to order it and Texas Instruments told them there was no such part, they would think Texas Instruments was lying and would waste time trying to find out what was going on.

Because of the granularity of the VRAMs I added circuitry to allow single-pixel scrolling.
 

 Here is the GSP section of the Main Board (496 KB PDF)

 

The GSP system in the MultiSync Main Board used a memory organization of only 8 banks of 64Kx8 (16 64Kx4 VRAMs) in order to save money. In addition to having less memory, the system could only fill 8 pixels at at time instead of 16.
 
 

 Here is the GSP section of the MultiSync Main Board (376 KB PDF)

 

For some reason the second TMS34010 (the MSP) was also left out of the Hard Drivin' schematic. However, it was shown on the Steel Talons schematic.

MSP stands for Model Signal Processor to distinguish it from the first TMS34010, the Graphics Signal Processor. The reason Hard Drivin' drives so much like a real car is that it models the physics of how cars work and interact with their environment. The TMS34010 is actually a 32-bit processor with extra instructions for doing graphics and has a nice interface for connecting to a host processor.  It also had a C Compiler.

You may have noticed that the Credit Screen lists Doug Milliken as a Test Driver. He is listed as a Test Driver because Atari didn't want anyone to know what he really did.

When we started Hard Drivin' we wanted it to be as accurate as possible. That meant doing an accurate car model to mathematically describe the physics of how the parts of the car (engine, transmission, springs, shock absorbers, tires, etc.) react to each other, to the road, and to the driver's inputs.

It also describes how the forces are transmitted back to the driver through the force-feedback steering wheel.

The pioneer in the field (in the 1950s) was William Milliken of Milliken Research. He son, Doug, has continued his father's work. Doug is probably the world's leading expert in car modeling. Doug and his father wrote the book on car modeling. And I mean that literally. (Go to Amazon.com and check out "Race Car Vehicle Dynamics (R146)" by William F. Milliken, Douglas L. Milliken).

Doug is also a good friend of Max's.

We hired Doug as a consultant to develop the car model. At the time (1980s) most of the work in car modeling was done to look at how the different parts of the car worked together within certain narrow speed ranges.

Our car had to work at all speeds. The way the car works at high speed is different than at slow speeds, such as when you are stopped and just starting to roll.

Doug and Max worked together to develop a car model that smoothly and dynamically changes depending on the mode. (Doug and Max are the smartest people I know.)

Atari had us list Doug as a Test Driver because they didn't want anyone to know we were doing real car modeling.

The modeling is so good (along with the moving dashboard contributed by Erik Durfey) that some people swear the game has a powered moving seat.

BTW, the seat position sensor scales the force feedback in the steering wheel. Presumably, a young person will have the seat forward and will get less force, and an adult will have it further back and get more force.
 
 

 Here is the MSP section of the Main Board (105 KB PDF)

 
 Here is the MSP section of the MultiSync Main Board (105 KB PDF)

The TMS34010 does not have floating point, so Max could only model the car as having two wheels.

For Race Drivin' I put an AT&T DSP32C on the DSK Board (DSK stands for Driver Speed Kit.) The DSP32C is faster than the TMS34010 and has floating point. Because Max wrote the Car Model in C he was able to port it to the DSP32C in an afternoon. After that, he was able to have it execute a car model with four wheels. It also has a faster update rate.

The difference is very apparent when you drive the Original Track in Race Drivin'.
 


ADSP Board

    The ADSP Board uses an Analog Devices ADSP-2100 in a Pin-Grid Array (PGA) package.

    The ADSP II Board is identical to the ADSP Board except it uses the ADSP-2100 in the Plastic-Quad-Flat-Pack (PQFP) package.

    ADSP and ADSP II Boards are electrically and mechanically equivalent.
 
 

ADSP Board (2.6 MB PDF)


DSK Board

    The DSK (Driver Speed Kit) Board was used in Race Drivin' only. It contains an AT&T DSP32C Floating Point DSP (ASIC61) to provide for a better car model, as well as extra RAM and ROM, and a Texas Instruments TMS320P15 single-chip DSP (ASIC65) for extra security. Atari called the DSP32C and TMS320P15 ASICxx  (or in some places (PLDxx) to  disguise the fact that they were commercially available ICs. I doubt it fooled anyone.

    The DSP32C was originally made by AT&T for their in-house use. Then they started selling it outside the company. Then they spun off their semiconductor business into Lucent Technologies. Then Lucent spun off semiconductors into a company called Agere. Unfortunately, the DSP32C seems to have been discontinued. The DSP32C documentation is a series of manuals about a foot wide.  However, I have posted the basic hardware datasheet here (DSP32C 2.9 MBytes PDF).

    The TMS320P15 was (is?) a single-chip version of the TMS32010, the first successful DSP. It had internal EPROM protected by a security bit. Once the security bit was programmed you were not supposed to be able to dump the contents of the EPROM. In the part with a window you could only erase the Security Bit by erasing the EPROM program. We used the part without a window so it could not be erased. (The OTP version was also lots cheaper.)

    If you ground pin 4 on the TMS320P15 (signal 'P2') and then reset the chip (turning the game off for a few seconds and then turning it on again will do the trick) the TMS320P15 will send the Atari Games copyright message in Morse code which can be received on a standard AM radio by holding it near the DSK Board. Tune around the AM band to get the best quality signal.

    I added this to my Self-Test code so that in the event Race Drivin' was pirated I would be able to tell if the program in the TMS320P15 had been reverse engineered or if the chip's security feature had been hacked. (The Morse code program is not accessible from the game code.)

    As far as I know, Race Drivin' was never pirated, although Hard Drivin' was.

    The TMS320P15 was used in another game (Road Riot) that was pirated. When I checked for the Morse code program in the pirated game, it was played loud and clear. So much for Texas Instrument's claim that the chip's security was actually worth a damn.
 
 

DSK Board (1.31 MB PDF)


Motor Amplifier

    After several months looking for a real copy of the Motor Amp, I finally found it! This is the Motor Amp used in the Cockpit versions of Hard Drivin' and Race Drivin'.

    The Steering Assembly Troubleshooting Guide in the Hard Drivin' and Race Drivin' game manuals helps you narrow down problems to either the Motor or the Motor Amp and then instructs you to contact Atari Customer Service. That is no longer an option since Atari Games no longer exists except as a game development group for home games. It isn't even called Atari Games; it's called Midway Games West.

    First a warning.

    The voltages used in the Motor and in the Motor Amp are hazardous. Unless you are experienced working with High Voltages, Don't Try to Fix it Yourself. (You really can kill yourself.) In addition, parts of the Motor Amp are NOT isolated from the power line. Working on these parts of the Motor Amp (especially using line-powered equipment like an oscilloscope) requires the use of an isolation transformer. Because the Motor can draw a Lot of current, the isolation transformer has to be a Big Mother. (Variacs are generally Not isolated.) It's not worth getting injured or killed over a video game.

    The Motor Amp is interfaced to the game board through the use of opto-isolators in the digital lines. The Motor Amp board was designed to meet U.L. safety standards for high voltage products.

    Start by checking the usual suspects (blown fuses, charred components, the smell of smoke, etc.) as well as whether the Force-Feedback has been turned off in the Disable Broken Controls screen in the Test Menu.

    The next thing is to determine if the problem is with the Motor, the Motor Amp, the Motor Position Pot, or the A/Ds.

    There is a screen in the Test Menu (Special Functions > Main Board Controls > Steering Wheel) that allows you to select various Motor tests that operate open-loop and do not use the position pot.

    If these tests work, you know the problem is not with the Motor or the Motor Amp.

    There are other screens to read the pots. The Motor position is read by both the 12-bit A/D and the 8-bit A/D. Both must be working or the program knows there is a problem and turns off the Force-Feedback Steering.

    There is also an Operator option to turn off Force-Feedback Steering in Disable Broken Controls.

    If the Steering Wheel Tests don't move the Motor, the problem is either with the Motor or the Motor Amp.

1.  Make sure  the ribbon cable is plugged in correctly with Pin 1 of J15 on the Main Board going to Pin 1 of J6 on the Motor Amp Board.

2. There are jumpers on the Motor Amp Board in case we wanted to operate more than one Motor Amp (I don't think we ever did.) In order for it to work in the game, the jumper must be installed in E1 (the one closest to the connector).

3. A voltmeter across the Motor should tell you if the Motor Amp is producing drive for the Motor. (The Send-Force Tests can be used to output a steady drive.)

4.   A good way to test the Motor is to connect a DC voltage across it. (Disconnect it from the Motor Amp first.) I believe the motor is either a 60VDC or a  90VDC motor. However, since 60VDC (or 90VDC) produces full torque. I would guess something lower would work. A 24VAC transformer, when half-wave or full-wave rectified and filtered, will produce about 36VDC. That should be enough to test the Motor. (I would guess a 1000 uF filter capacitor would be sufficient.)

    Note that if you rectify and filter the 120VAC line you will get about 160 VDC. That is *way* too much for the Motor.

    The motor is a DC motor that uses brushes. When it stops working it is usually because the brushes are either worn out or just plain dirty.

    I have brought some brush motors back to life by spraying Contact Cleaner at the commutator and brushes. (These were not Hard Drivin' motors.)

    I have taken other brush motors apart (also not Hard Drivin' motors), carefully cleaned the brushes and the commutator, and put everything back. Warning, the brushes in a motor are usually spring-loaded.

    I don't know how easily this particular motor comes apart.

    There isn't much else to go wrong with a DC motor.

    If the brushes are worn out you should be able to buy new ones. I have never had to, so I don't know how that works.

    You may be able to find someone in your area who rebuilds electric motors. (Or maybe I'm just dating myself.)

    If I had to buy a new Motor, I would figure out exactly who made it and what size it is, and look for it online at places like McMaster-Carr. The last time I tried www.mcmaster.com they were still there.

    Sorry, I don't have any extra Motors, just the one in my own game.

5. If the Motor is ok, the next thing to look at is the Motor Amp.

    The Motor Amp can be tested without the Motor by connecting a small 120VAC light bulb to the output (25 Watt - 40 Watt) and by jumpering the Thermal Protector.  I suggest making your own cable to plug into J2 on the Motor Amp Board. (The wiring diagram in the manual shows it as P222.)  Pins 1 and 4 normally go to the Thermal Protector in the Motor. (The Thermal Protector opens up if the Motor overheats.) Therefore, P2 Pins 1 and 4 must be jumpered for the Light Bulb tester.

    If all you are going to do is plug in the Light Bulb Tester and look for it to light up during the Send Force Tests, then that's fine.

    If you are going to troubleshoot the Motor Amp, You Need An Isolation Transformer.

    If you don't have an isolation transformer, you can make your own by connecting two 24VAC 3Amp transformers back-to-back. This only works if you are using a light bulb as a load. The Motor draws too much current for this kludge.
 


 

    At this point you are on your own. Sorry. (I didn't design the Motor circuit. I just gave Rick the interface he asked for, and I also wrote the test software for it.)
 
 

Motor Amp PCB (802 KB PDF)

 

[Information on jumpering the Motor Thermal Protector, the ribbon cable orientation, and the Motor Amp Board jumpers provided by Tony Rossi. Thank you, Tony.]


The Motor

In April 2009 I received an email from Mike Grzehowiak with very good information about the motor. (Thank you, Mike.)

Subject:  Motor brushes source

Message:

1st, thanks for all the information supplied on this website. I'm sure it will be helpful at a time in the future when the machine decides to act up again. (Monitor just went out yesterday but I did get some racing in before it did that).

I had to replace the motor brushes just recently, so wanted to pass on the info if you wanted to add it on your site.

Ohio Electric Motors, Inc.
828-626-2901 Ext 235
fax 828-626-2155

are the original manufacturers of the motor and as of 4-2009 had a few brushes in stock (part# B-250407-02 at $18.60 each brush, plus a $100 minimum order).

I was able to locate them from another source at a reasonable price. They are:

Ohio Carbon Industries
705 US Hwy 224
Nova, OH 44859
Phone: (419) 736-3010
Toll free: (888) 248-5029
Fax: (419) 736-3011
www.ohiocarbon.com

Part number is 2220282 at $8.50 each. ($15 minimum order).

Hope this helps. I also have a pic of the replacement brushes, but they fit just fine.

Thanks,
Mike


Driver Sound Board

Hard Drivin' and Race Drivin' used the same Sound Board. I don't remember if Race Drivin' added more ROMS to the board.

  Driver Sound Board Schematics


Schematics

The complete set of Hard Drivin' schematics that came in the game manual used to be available at www.spies.com/arcade/schematics/ . They seem to have disappeared.

I have found another set at http://www.cityofberwyn.com/schematics/index.htm

Here is a mirrored copy.


There are several manuals available at:
http://tamdb.net/index.php?page=Manuals&PHPSESSID=0f35d13e3363213cf728ebd7edf3d459&lettre=H

Here is a mirrored copy of the Hard Drivin' Manual TM-327 3rd printing (13MB).

And here is a mirrored copy of the Hard Drivin' Compact Manual TM-329 2nd printing (5MB).


The Cockpit Seat

Thanks to the generosity of Bob Langelius I now have a new seat for my Race Drivin' . (One day the bottom of the old seat shattered.)

The new seat is from Summit Racing Equipment at www.SummitRacing.com . Warning, their Web site needs some work. The printed catalog is much easier to use.

The catalog number of the seat is SUM-G1100 . Mine is black; they are also available in red, yellow, and blue. They also have some snazzy looking seat covers for them.
 

The holes in my new seat do not match the holes in my old seat. I will describe what I did; you may be able to come up with a better method for installing the new seat. (Bear in mind that my game was a preproduction prototype; production games might have been done differently.)

1. I got some new bolts because the mounting nuts in the new seat are bigger than the ones in the old seat. The bolts for the new seat are 3/8 x 16 x 3/4" long. (The old ones were 5/16 x 18 x 3/4" .) I also bought new flat washers and tooth washers for the new bolts. (The store was out of split washers.)


 

2. My original plan was to drill new holes in the mounting plate. However, the mounting plate on the seat mechanism is 3/16" steel which is difficult to work using common tools, so I went with Plan B which was to enlarge one of the center holes and mount the new seat with just the two center holes. I did this by drilling an 1/8" hole (with a sharp drill bit) near the hole I wanted to enlarge and then using a 3/8" drill bit to enlarge it so that it encroached into the original hole. Then I used a file to smooth out the resulting elliptical  enlarged hole.
 
 



3. In the old seat, the captive mounting nuts appear to be epoxied to the inside bottom surface of the seat and they extend a small distance beyond the bottom side.  It appears to be designed to use mounting holes that are large enough to accommodate the nuts and the area immediately around it so that the remaining surface of the seat is supported by whatever it is mounted on. Otherwise, the seat and its occupant are supported solely by the mounting nuts which, under load, could possibly pop out. In any event it would place a great deal of stress around the nuts instead of it being evenly distributed around the larger seat surface.

This is probably why my seat was additionally secured by four toggle bolts through holes in the bottom of the seat.

(The seat bottom has two surfaces: the surface you sit on and the surface that is bolted to the mounting plate, with enough room between them to install a toggle bolt. )

Since I cannot see into the new seat I will assume the captive nuts were done in a similar way, as opposed to having the mounting nuts attached to a plate inside the seat. (On the other hand, since the seat is intended to be used in a moving vehicle, perhaps the seat can be mounted solely to the nuts.)

To avoid having the seat resting on the captive nuts I placed a sheet of 1/8" hard rubber between the seat and the mounting plate. (I would have used 1/4" hard rubber if I had had it.)  As a result, the seat and occupant are supported by the rubber sheet and not by the mounting nuts.

While this method might not withstand heavy arcade use and probably wouldn't pass the standard shipping drop test, it's ok for my use. If I ever need to ship it I will strap the seat down through the slots conveniently placed in the side of the seat.
 

Plan C would have been to fabricate some kind of adapter bracket. However, that would have been a lot of work. Besides, it would have raised the seat, which I didn't want to do.
 


EPROMS and GALS - Part Numbers

Race Drivin' Cockpit EPROMs and GALs  - Final North American Version (Linked Games)

This is for Version 2.4, the final version.

(Please do not ask me for ROM files.)

All ROMs are 137448-200 (27C512, 200 ns) unless otherwise noted.
==================================================================
Main Board:

  Loc.      P/N    Chksum ImageFile         Loc.     P/N     Chksum ImageFile
 210R  136077-5001  $5D01  5001.bin        200R  136077-5002  $F402  5002.bin
 210S  136077-5003  $5E03  5003.bin        200S  136077-5004  $8704  5004.bin
 210T  136077-5005  $9E05  5005.bin        200T  136077-5006  $7906  5006.bin
 210U  136077-4007  $5307  4007.bin        200U  136077-4008  $0608  4008.bin
 210V  136077-4009  $FA09  4009.bin        200V  136077-4010  $C110  4010.bin
 210W  136077-1011  $5111  1011.bin        200W  136077-1012  $C312  1012.bin
 210X  136077-1013  $D613  1013.bin        200X  136077-1014  $F214  1014.bin
 210Y  136077-4015  $E215  4015.bin        200Y  136077-4016  $3C16  4016.bin



ADSP Board:

Programmed    Board
Part Number  Checksum   Location  ImageFile
136077-1021  $6A21       10H      1021.bin
136077-1022  $CB22       10J      1022.bin
136077-1023  $1A23       10K      1023.bin
136077-1024  $A724       10L      1024.bin



DSK Board: -   Use 27C512-150ns

Programmed     Board
Part Number   Checksum  Location  ImageFile
136077-1028  $8028       30F      1028.bin
136077-1029  $8029       10F      1029.bin
136077-4030  $7E30       30E      4030.bin
136077-4031  $1C31       10E      4031.bin
 

GALs are GAL20V8, 15 ns

Programmed     User                          Board
Part Number  Checksum  Signature  Location  Function         File
136077-1025  $5133     077-1025    40B      Address Decode  dskx1.JED
136077-1026  $50B9     077-1026    60B      Address Decode  dskx2.JED



Sound Board:

Programmed              Board
Part Number  Checksum  Location  Version Function  ImageFile
136077-1032  $A832     70N (RH)    A     Program   1032.bin
136077-1033  $E533     45N (RL)    A     Program   1033.bin

Sound Data Memory is 8 bits.
136052-1123  $EE01     65A (8)     A     Sound Data  65A.bin
136052-1124  $5F02     55A (8)     A     Sound Data  55A.bin
136052-3125  $CC03     45A (8)     C     Sound Data  45A.bin
136052-1126  $2B09     30A (8)     A     Sound Data  30A.bin
136077-1017  $DB09     45C (8)     A     Sound Data  45C.bin
 

I think the order of the Sound Data ROMS doesn't matter. Mine are:
136052-1123  $EE01     65A
136052-1124  $5F02     55A
136052-3125  $CC03     55C (45A)
136052-1126  $2B09     65C (30A)
136077-1017  $DB09     45C

Self-Test may think there are supposed to be 6 ROMS. It is wrong.
 

GALs are GAL16V8, 25 ns

Programmed     User                Board
Part Number  Checksum  Signature  Location  Function        File
136052-1139  $6739     052-1139     95A     Address Decode sndx1.JED
136052-1140  $59E0     052-1140     95C     Address Decode sndx2.JED




Race Drivin' Cockpit EPROMs and GALs  - Final UK Version (Right-Hand Drive, Linked Games)

This is for Version 2.4, the final version. Note that there are only two ROMs (210W and 200W) that are different from the North American version.

(Please do not ask me for ROM files.)

All ROMs are 137448-200 (27C512, 200 ns) unless otherwise noted.
==================================================================
Main Board:

  Loc.      P/N    Chksum ImageFile         Loc.     P/N     Chksum ImageFile
 210R  136077-5001  $5D01  5001.bin        200R  136077-5002  $F402  5002.bin
 210S  136077-5003  $5E03  5003.bin        200S  136077-5004  $8704  5004.bin
 210T  136077-5005  $9E05  5005.bin        200T  136077-5006  $7906  5006.bin
 210U  136077-4007  $5307  4007.bin        200U  136077-4008  $0608  4008.bin
 210V  136077-4009  $FA09  4009.bin        200V  136077-4010  $C110  4010.bin
 210W  136077-1111  $AC11  1111.bin        200W  136077-1112  $EA12  1112.bin
 210X  136077-1013  $D613  1013.bin        200X  136077-1014  $F214  1014.bin
 210Y  136077-4015  $E215  4015.bin        200Y  136077-4016  $3C16  4016.bin



ADSP Board:   Same as North American
DSK Board:       Same as North American
Sound Board:   Same as North American



Race Drivin' Cockpit EPROMs and GALs  - Final German Version (Left-Hand Drive, Linked Games)

This is for Version G2.4, the final version.

(Please do not ask me for ROM files.)

All ROMs are 137448-200 (27C512, 200 ns) unless otherwise noted.
==================================================================
Main Board:

  Loc.      P/N    Chksum ImageFile         Loc.     P/N     Chksum ImageFile
 210R  136077-5201  $DC01  5201.bin        200R  136077-5202  $7602  5202.bin
 210S  136077-5203  $AB03  5203.bin        200S  136077-5204  $9704  5204.bin
 210T  136077-5205  $3F05  5205.bin        200T  136077-5206  $0206  5206.bin
 210U  136077-4007  $5307  4007.bin        200U  136077-4008  $0608  4008.bin
 210V  136077-4009  $FA09  4009.bin        200V  136077-4010  $C110  4010.bin
 210W  136077-1111  $AC11  1111.bin        200W  136077-1112  $EA12  1112.bin
 210X  136077-1013  $D613  1013.bin        200X  136077-1014  $F214  1014.bin
 210Y  136077-4015  $E215  4015.bin        200Y  136077-4016  $3C16  4016.bin



ADSP Board:   Same as North American
DSK Board:       Same as North American
Sound Board:   Same as North American

Race Drivin' Compact EPROMs  - Final North American Version (Linked Games)

This is for Version 1.9, the final version. Uses MultiSync Main Board.

(Please do not ask me for ROM files.)

All ROMs are 137448-200 (27C512, 200 ns) unless otherwise noted.
==================================================================
Main Board:

  Loc.      P/N    Chksum ImageFile         Loc.     P/N     Chksum ImageFile
 210R  136078-5001  $DE01  U5001.bin       200R  136078-5002  $A002  U5002.bin
 210S  136078-5003  $7903  U5003.bin       200S  136078-5004  $A204  U5004.bin
 210T  136078-5005  $B705  U5005.bin       200T  136078-5006  $E906  U5006.bin
 210U  136078-4007  $1B07  U4007.bin       200U  136078-4008  $7F08  U4008.bin
 210V  136078-4009  $B509  U4009.bin       200V  136078-4010  $6A10  U4010.bin
 210W  136078-1011  $5111  U1011.bin       200W  136078-1012  $C312  U1012.bin
 210X  136078-1013  $D613  U1013.bin       200X  136078-1014  $F214  U1014.bin
 210Y  136078-4015  $7815  U4015.bin       200Y  136078-4016  $E416  U4016.bin



DSK Board (-02 version):

Use 27C512-150ns

Programmed    Board
Part Number  Checksum  Location  ImageFile
136077-1027  $0527       30J      1027.bin
136078-1030  $7C30       30E      1030.bin
136078-1031  $1F31       10E      1031.bin
 

GALs are GAL20V8, 15 ns

Programmed     User                Board
Part Number  Checksum  Signature  Location  Function         File
136077-1025  $5133     077-1025     40B     Address Decode   dskx1.JED
136077-1026  $50B9     077-1026     60B     Address Decode   dskx2.JED


Race Drivin' Compact EPROMs  - Final UK Version (Right Hand Drive, Linked Games)

This is for Version UK1.9, the final version. Uses MultiSync Main Board. Note that there are only two ROMs (210W and 200W) that are different from the North American version.

(Please do not ask me for ROM files.)

All ROMs are 137448-200 (27C512, 200 ns) unless otherwise noted.
==================================================================
Main Board:

  Loc.      P/N    Chksum ImageFile         Loc.     P/N     Chksum ImageFile
 210R  136078-5001  $DE01  U5001.bin       200R  136078-5002  $A002  U5002.bin
 210S  136078-5003  $7903  U5003.bin       200S  136078-5004  $A204  U5004.bin
 210T  136078-5005  $B705  U5005.bin       200T  136078-5006  $E906  U5006.bin
 210U  136078-4007  $1B07  U4007.bin       200U  136078-4008  $7F08  U4008.bin
 210V  136078-4009  $B509  U4009.bin       200V  136078-4010  $6A10  U4010.bin
 210W  136078-1111  $AC11  U1111.bin       200W  136078-1112  $EA12  U1112.bin
 210X  136078-1013  $D613  U1013.bin       200X  136078-1014  $F214  U1014.bin
 210Y  136078-4015  $7815  U4015.bin       200Y  136078-4016  $E416  U4016.bin



Race Drivin' Compact EPROMs  - Final German Version (Left Hand Drive, Linked Games)

This is for Version G1.9, the final version. Uses MultiSync Main Board.

(Please do not ask me for ROM files.)

All ROMs are 137448-200 (27C512, 200 ns) unless otherwise noted.
==================================================================
Main Board:

  Loc.      P/N    Chksum ImageFile         Loc.     P/N     Chksum ImageFile
 210R  136078-5201  $0401  U5201.bin       200R  136078-5202  $FF02  U5202.bin
 210S  136078-5203  $E403  U5203.bin       200S  136078-5204  $B704  U5204.bin
 210T  136078-5205  $6A05  U5205.bin       200T  136078-5206  $7F06  U5206.bin
 210U  136078-4007  $1B07  U4007.bin       200U  136078-4008  $7F08  U4008.bin
 210V  136078-4009  $B509  U4009.bin       200V  136078-4010  $6A10  U4010.bin
 210W  136078-1011  $5111  U1011.bin       200W  136078-1012  $C312  U1012.bin
 210X  136078-1013  $D613  U1013.bin       200X  136078-1014  $F214  U1014.bin
 210Y  136078-4015  $7815  U4015.bin       200Y  136078-4016  $E416  U4016.bin


Hard Drivin'/Race Drivin' ROM Part Number System

Generally, 136052-xxxx was Hard Drivin' Cockpit
           136091-xxxx was Hard Drivin' Compact
           136088-xxxx was Panorama
           136077-xxxx was Race Drivin' Cockpit
           136078-xxxx was Race Drivin' Compact

Using Hard Drivin' Cockpit as an example:

136052-nxxx   where 'n' was the version number

For example:

       136052-0xxx  was a pre-production prototype

       136052-1xxx  was the first released version. This number increased every
                                        time a new version was released.
 

136052-xxnn  where 'nn' was which ROM it was in the game. (If there had been more than 99 Programmed parts in the game we would have had a problem.)
 

136052-xnxx  where n was the World Version Number. For example, 136052-x0xx  was the North American Version.

There were four versions that I know about.

Hard Drivin' Cockpit:
North American - 136052-x0xx  Left Hand Drive, English
UK             - 136052-x1xx  Right Hand Drive, English
German         - 136052-x2xx  LH Drive, German (Game and Self-Test)
Japanese       - 136052-x?xx  Right Hand Drive, Japanese (Game), English (Self Test)
 
 

Hard Drivin' Compact:
North American - 136091-x0xx  Left Hand Drive, English
UK             - 136091-x1xx  Right Hand Drive, English
German         - 136091-x2xx  Left Hand Drive, German (Game and Self-Test)
Japanese       - 136091-x?xx  Right Hand Drive, Japanese (Game), English (Self Test)
 

Race Drivin' Cockpit:
North American - 136077-x0xx  Left Hand Drive, English
UK             - 136077-x1xx  Right Hand Drive, English
German         - 136077-x2xx  Left Hand Drive, German (Game and Self-Test)
Japanese       - 136077-x?xx  Right Hand Drive, Japanese (Game), English (Self Test)
 

Race Drivin' Compact:
North American - 136078-x0xx  Left Hand Drive, English
UK             - 136078-x1xx  Right Hand Drive, English
German         - 136078-x2xx  Left Hand Drive, German (Game and Self-Test)
Japanese       - 136078-x?xx  Right Hand Drive, Japanese (Game), English (Self Test)
 

However, some ROMS were reused and given new part numbers to match the game.

Examples:
 

Main Board

Race Drivin' Cockpit and Race Drivin' Compact share the following ROMs:

136077-1011 = 136078-1011
136077-1012 = 136078-1012
136077-1013 = 136078-1013
136077-1014 = 136078-1014
 

Sound Board

All the ROMs on the Race Drivin' Compact Sound Board are identical to the Sound Board ROMs on Race Drivin' Cockpit. The final version should be backwards compatible with all previous versions.
 

DSK Board

The Cockpit ROMs  136077-4030  and 136077-4031  do not match the 136078-1030 and 136078-1031.

On Race Drivin' Cockpit the ROMs 136077-1028  and 136077-1029 contain encrypted data for a security program that was not used. The ROMs were inadvertantly left on the parts list so the game was built and shipped with them. The ROMs do not appear to be on the Compact Version.

A similar thing happened with the ZeroPower RAMs on the DSK Board. They were intended to save the challenge races of the winning players but we ran out of time so it was not implemented.
 


Game Videos

I have made some videos of Race Drivin'.

It wasn't easy. My first attempt was to mount the camera on a bar that I clamped across the cockpit struts. The field of view was too small and cut off part of the picture.

I don't have a spare monitor, and removing the monitor from the cockpit was more than I was willing to do.

I made an adapter to connect the game to a computer LCD VGA monitor, hoping that the LCD monitor could handle the game's sync (25 KHz Horizontal, 60 Hz Vertical). It refused to sync up. I tried several monitors. No Joy.

My last hope was a 19" Vizio LCD TV with a VGA input. Since the TV can handle 15.734 KHz for analog NTSC and a much higher frequency for VGA, maybe it would handle the 25KHz from the monitor.

It worked!

The adapter is a VGA connector with resistor pads to reduce the signals from the game to VGA levels.

After adjusting the TV for picture size and aspect the resulting picture is better than with the game monitor.

I don't know if all LCD TVs would work. Maybe I just got lucky with the Vizio.  The Vizio also allowed me considerable range in adjusting the width and the height. Not all LCD TVs allow you to do that. I have another LCD TV that provides only a few fixed sizes.

I converted the files from the Flip Camera AVI to WMV (losing picture quality but reducing file size).  
Depending on your browser you may need to right-click and select the appropriate option to save the file, and then play it. Besides, sometimes you get a better result if you download the file and then play it.

rd1990_track1.wmv
(17 MBytes)

rd1990_track1_house.wmv
(6 MBytes)

rd1990_track2.wmv
(7 MBytes)

1990_track3.wmv
(20 MBytes)



Here is the adapter I made:  vga_hd.pdf

I used a resistor divider on the RGB inputs. 


I got the VGA connector at http://www.jameco.com

The standard VGA cable that goes from PC to monitor is Male/Male. A VGA extension cable is Male/Female. The VGA connector has to match the one you decide to use. I used a standard VGA cable so my connector on the board is a female.

(Videos added January 16, 2010.)


Please send comments here


Copyright 2002, 2004, 2009, 2010 Jed Margolin