M100ROM: Difference between revisions

From Bitchin100 DocGarden
Jump to navigationJump to search
Line 38: Line 38:
   Installation using 27C256 requires that the track between via CE1 and adjacent via IC1 be cut.
   Installation using 27C256 requires that the track between via CE1 and adjacent via IC1 be cut.
   Use a dremel tool or sharp hobby knife to remove the copper track.
   Use a dremel tool or sharp hobby knife to remove the copper track.
Steps:
*  pre-program your device; for 27C256, burn in your presumably updated image.  For 27C512, burn in your updated main ROM image in the lower 32k, and program your Option ROM into the upper 32k.
*  if 27C256 is planned, cut track between via CE1 and adjacent via IC1.
*  solder your 28 pins to the PCB.  Ensure you place the pins in the rows that make sense.  For early M100 use the rows marked "OLD" and for late M100 that have the standard pinout, use "NEW".  Lots of ways to do this, but keep in mind that the pins have to be very low profile.  The board has to sit right on top of the socket for clearance.
  Solutions for pins include small guage stripped wire, or if you can find them, some stake pins.
  If someone finds a good solution for pins, please post here.
  http://www.ebay.com/itm/50x-Batten-and-Allen-BA3760-Dill-Leadframe-DIP-PCB-Edge-Clip-Pins-BASIC-Stamp-/261518387239?pt=LH_DefaultDomain_0&hash=item3ce3b5e827
  this is a good solution; you'd have to clip off the bottom, insert through the board into the socket, and solder from the top.  The, trim flush.
*  insert the IC in the row marked IC, and solder away.  Ensure orientation is correct.
*  for 27C512, insert resistor and diodes where indicated, paying attention to orientation, and solder.


== Board ==
== Board ==

Revision as of 10:53, 28 March 2015

NEWS!

  • Mike Stein has graciously released his board design through Oshpark so that people can get access to boards and build themselves a ROM adapter for Model 100!

Supported Models

  • Model 100 only
  • Note: when used with a 27C512 as an Option ROM device, this becomes incompatible with REX

About

M100rom1.jpg

This is a DIY project; by getting all the parts, you can assemble this yourself without much effort. The M100ROM adapter has several (fixed at assembly time) options:

 1 - Just convert non-standard pinout to standard JEDEC, to use a 256Kb (32KB) (E)EPROM in an old M100.
 2 - Same as #1, but using a 512Kb (64KB) (E)EPROM with an option ROM image in the upper half.
 3 - Same as #2, but without pinout conversion, for use in a 'new' M100.

If you have a 'new' M100 with the standard socket you can accomplish #3 with a simple 'shim' socket that goes between the system ROM socket and the EPROM and breaks the chip select connection, replacing it with a diode-and connection (with pull-up) to both the original system and the option ROM select signals and a connection to the '512's uppermost address line. The only added connection to the board is a clip lead to the ROM select at M5 pin 5.

How to Get One

You need the following parts-

 1x M100ROM PCB from Oshpark
 2x 1N4148 diode or equivalent
 1x 10K 1/8W or 1/4W leaded resistor
 1x 27C256 or 27C512 (pre-programmed ideally)
 28x pins for connecting the module to the M100 ROM socket

A bit about EEPROM Pinouts

The table below shows the standard pinouts for 27C256 and 27C512, included for reference.

Eeproms.png

Assembly

 Installation using 27C256 requires that the track between via CE1 and adjacent via IC1 be cut.
 Use a dremel tool or sharp hobby knife to remove the copper track.


Steps:

  • pre-program your device; for 27C256, burn in your presumably updated image. For 27C512, burn in your updated main ROM image in the lower 32k, and program your Option ROM into the upper 32k.
  • if 27C256 is planned, cut track between via CE1 and adjacent via IC1.
  • solder your 28 pins to the PCB. Ensure you place the pins in the rows that make sense. For early M100 use the rows marked "OLD" and for late M100 that have the standard pinout, use "NEW". Lots of ways to do this, but keep in mind that the pins have to be very low profile. The board has to sit right on top of the socket for clearance.
 Solutions for pins include small guage stripped wire, or if you can find them, some stake pins.
 If someone finds a good solution for pins, please post here.
 http://www.ebay.com/itm/50x-Batten-and-Allen-BA3760-Dill-Leadframe-DIP-PCB-Edge-Clip-Pins-BASIC-Stamp-/261518387239?pt=LH_DefaultDomain_0&hash=item3ce3b5e827
 this is a good solution; you'd have to clip off the bottom, insert through the board into the socket, and solder from the top.  The, trim flush.
  • insert the IC in the row marked IC, and solder away. Ensure orientation is correct.
  • for 27C512, insert resistor and diodes where indicated, paying attention to orientation, and solder.

Board

The bare PCB can be ordered here:

 https://www.oshpark.com/shared_projects/Kil9S1ya

Cost is 7.50$ USD for 3 boards.

Pri.png Sec.png

The copper for this board is shown here for wiring clarity.

Pri copper.png Sec copper.png

Programming the EEPROM after assembly

If you did not pre-program the EEPROM, then you can do so after assembly with a little extra effort. The vias at the bottom are used to program the device after it is assembled.

 On a 27C256, to program the device you must tie pin 1 to Vpp.
 Ensure that the track between via CE1 and adjacent via IC1 is cut.
 Apply Vpp to either IC-1 via.
 On a 27C512, to program the device you must tie pin 22 to Vpp.
 No track cuts are required.
 Apply Vpp to PGM via.

Of course you must have valid signals on the address and data lines, and you also have to apply 5V to Vcc via, and ground at socket pin 14.

Schematic

Schematic was lost unfortunately. However an earlier version, without the extra vias for programming the device after manufacture, is here. Note that the schematic shows the pinout for the 27C512, and pin 22 is also used as programming voltage. On the 27C256, programming voltage is on Pin 1, which in this case is connected to via marked CE1.

M100rom schem.jpg



Installation

Installation of the hardware is a piece of cake.

Step 1

 Flip over the 


Step 2

 Replace the cover. 


Done!