Burning EPROMS

From PinWiki
Revision as of 11:29, 28 November 2016 by Scochar (talk | contribs)
Jump to navigation Jump to search

Pinball machines use three types of programmable devices. By far the most common are EPROMs, used to store code, sounds and graphics for solid state machines. The erasable versions can be erased and re-used many times. Early machines use bipolar PROMs, devices that can be programmed only once. Many machines use programmable logic with simpler devices (PALs and GALs) replacing a handful of TTL chips, and more complex devices carrying most of a video or sound subsystem.

For most people, programmers capable of handling mainstream EPROMs (2732 (32kb) - 27C080 (8Mb)) are sufficient.


Willem Programmers

These programmers are the least expensive available. They all run using open-source software. The simplest systems run from the parallel port and an external power supply, and have a tricky configuration using DIP switches and jumpers. Upgrades to the basic devices include USB power (you still need the parallel port); USB interface and power; and electronic configuration. The USB version will need a separate 9v power adapter to burn 27xx EPROMs.

Recommended: True USB version GQ-4X, $80 - $120


Pocket Programmer

Designed and built in the U.S., these devices have been the standard for the industry. Programs 2708 with an adapter.

Recommended: USB version, about $270


Wellon Programmers

Designed and made in China,these devices use programmable pin drivers rather than TTL to program the parts. This approach means that Wellons can program a wider range of devices than other programmers, including PALs and GALs used in the logic of many modern machines. This is a preferred device because of its flexibility and up-to-date software and drivers (Windows 7 64 is supported).

Recommended: VP280, $120

Conitec programmers

Conitec has some very good programmers and their software is very clear and stable. Software upgrades are free as long as the programmer is supported by the newest software version. Conitec programmers support a lot of EPROM's (and other programmables). If needed you can request Conitec to add a device to the list. Their programmers aren't cheap but the programmer and software quality are excellent.

Recommended: Galep-5, USB, up to 48-pins devices, $499 Recommended: Galep-4, parallel port, up to 40-pins devices, $399

Batronix programmers

Batronix programmers have a good name, the software works well and is stable. Their broad range starts with some low-cost affordable programmers and extends to models that can program 8 EPROM's at a time.

Recommended: BX32 Batupo, USB, up to 32-pins devices, $152

Elnec programmers

Elnec has very good programmers and software but they are actually quite expensive and therefore more suitable for production use. If you can get your hands on a used one for a reasonable price you'll have a great programmer.

There are significantly more expensive systems available that can program a full range of devices. However, these are unnecessary for most people, and the new low-cost programmers are just fine.

EPROMS

EPROMs are an obsolete technology but were the standard for embedded code and data from the mid-1970s until the emergence of flash memory. They made sophisticated pinball systems possible, providing digital storage for code, sound and graphics. They work by injecting electrons into a charge storage area using a relatively high voltage. EPROM programmers must generate these voltages, which is why some early devices are not supported by all programmers.

There are 2 types of EPROM's available, OTP and UV. OTP means "One Time Programmable" and as the name suggests these can only be programmed once as they can not be erased. UV types have a window on top of the chip, this windows is made of quartz glass and below the window is the actual chip. When the chip is exposed to short-wave UV light for a specified amount of time (see device's datasheet) all the data will be erased and the device can be programmed again.

8-bit vs 16-bit EPROM's

Without going too much into the details it's good to know that generally you will need 8-bit devices and NOT the 16-bit devices. They can be distinguished by the model number as well as the number of pins. In the list below are common model numbers of 8-bit EPROM's. For EPROM's in DIP packages; 8 bit EPROM's have 24, 28 or 32 pins whilst 16-bit devices have 42-pins. Other packages like surface mounted for instance are available but you will need the DIP versions.

EPROM part numbers The part number of an EPROM contains information about the manufacturer, capacity and access time along with some other information like the operating temperature range and package type. When selecting an EPROM it is important to have the right capacity and access time; the access time can be lower than needed but should not be higher.

Part number example and break-down: M27C4001-10F1 is a common model number and here's the break-down of the part number: -Letter(s) at the start for the manufacturer: M = ST Microelectronics (other examples are TMS for Texas Instruments and AM for AMD) -Numbers after the first letter(s) for the device type: 27 = EPROM -Letter for the supply voltage: C = 5V -Numbers for the capacity and memory organization: 4001 = 4Mbit, 512kb x 8 (the 8 means it's an 8-bit device) -Numbers after the "-" for the access time: 10 means 100ns (12 for 120ns, 90 for 90ns and 80 for 80ns are also quite common) -Letter for the package: F means FDIP32W and that's a package with an erasing window (B would mean PDIP32 and would be an OTP version) -number for the temperature range: 1 means 0 to 70°C which is common Please note that some model numbers may contain extra letters containing more specifications.

Common part numbers in the 8kb to 8Mb range (without all the descriptive letters and numbers):

  • 2532 = 32kb (4k x 8-bits)
  • 2708 = 8kb (1k x 8-bits)
  • 2716 = 16kb (2k x 8-bits)
  • 2732 = 32kb (4k x 8-bits)
  • 2764 = 64kb (8k x 8-bits)
  • 27128 = 128kb (16k x 8-bits)
  • 27256 = 256kb (32k x 8-bits)
  • 27512 = 512kb (64k x 8-bits)
  • 27C010 = 1Mb (128k x 8-bits)
  • 27C1000 = 1Mb (128k x 8-bits)
  • 27C1001 = 1Mb (128k x 8-bits)
  • 27C020 = 2Mb (256k x 8-bits)
  • 27C2001 = 2Mb (256k x 8-bits)
  • 27C040 = 4Mb (512k x 8-bits)
  • 27C4001 = 4Mb (512k x 8-bits)
  • 27C080 = 8Mb (1M x 8-bits)
  • 27C801 = 8Mb (1M x 8-bits)

Model numbers like 27C1002, 27C2002, 27C4002 and 27C802 are 16-bit versions.

Buying EPROMS

New EPROMS are very rare, but "pulls" - used EPROMs taken from obsolete electronic devices - are regularly available on eBay or from online sellers. The best pulls have been erased, tested, have had labels and residue removed, and their legs straightened. Expect to pay a little more for this service. Almost all of the new EPROM's available nowadays (2011) are from ST microelectronics and start with part number M. Availability ranges from 256k to 8M. Smaller capacities from 8k up to 128k are rarely available new but can be bought as pulls. Always check the supported devices list of your programmer before you buy EPROM's as a single letter or number difference can cause your programmer to refuse programming them.

EPROMs can be obtained from epromman.com, jameco.com, ebay, and various other pinball vendors.


Erasing EPROMS

You don't have to have an EPROM eraser. But they are helpful if you need to erase some pulls that were not cleaned, programmed the wrong code, or want to recycle some parts. EPROM erasers use a short wavelength UV light to neutralize the charges stored in the EPROM cells. Cheap ones capable of doing a few EPROMS at a time are available for about $20. Much bigger erasers - used - pop up on eBay for about $50.


Using EPROMS

You can 'double-up' certain eproms' images (example: you need 2716 but you only have 2732 - you can burn the 2716 image into both halves of the 2732 and it will work) if you don't have stock or your burner can't use them. Additionally it is possible to use many different types of eproms on boards either utilizing adapters or creative wiring. For examples, see: Romblaster, Warp Zone 27256 on a Bally board, Warp Zone 2764 on a Bally board, 27256 on Stern mpu200, Leon's methods for various eproms in various boards, Adapter for Williams system 6 to 2764

As you can see on the various pages you are not limited to specific eproms if you can get the correct address, data line, and selection signals to your eprom. Be aware that many online vendors of licensed pinball roms are not permitted to change the type of chip specified (at least folding smaller sizes into bigger ones) due to licensing restrictions. You might have to do this yourself, following directions at the various links depending on your system.