[Coco] How do I program a new ECB ROM with minimal external hardware ?

coco at jechar.ca coco at jechar.ca
Mon Jul 29 15:15:19 EDT 2024


On 2024-07-28 20:48, RETRO Innovations via Coco wrote:
> On 7/28/2024 7:13 PM, coco--- via Coco wrote:
>> All
>> 
>> Ok reformulating my question as one cannot write a EEPROM for a 5V
>> system with 3.3V hardware such as the Raspberry Pi
>> Since I already have a raspberry pi I had been hoping this would be a
>> good solution.
> 
> Does it had to be an EEPROM?  As I noted, FRAM will work, and it's not
> that expensive.
> 
> Does it have to be 3v3 and 5v0 all the time?  Or, are you OK with
> putting the IC into a socket attached to the RPi, writing it, and then
> putting it in the CoCo3?  If this is OK, the RPI can work with a 5V
> EEPROM.  The trick is level shifting.  Writing a 5V EEPROM via the RPi
> is not that hard.
> 
> It turns out that 3v3 logic also works on 5v ICs, as the "1" is 
> anything
> above 2.0v, and both 3v3 and 5V ICs use the same threshold.
> 
> So, say you want to use a 28C series EEPROM (though, I really think you
> should use the 39SF0X0 series FLASH ROM, as they are cheaper and just 
> as
> easy to erase and program.)
> 
> You wire up the EEPROM to 5V and GND, and attach all the address lies,
> the OE, CE and WE lines to the RPi directly.  Why?  Because those lines
> are always input on the EEPROM, and they will never send a 5V signal to
> the RPI.
> 
> The only issue is the 8 data lines.  For those, you grab 16 resistors. 
> 8 3300 resistors and 8 1800 resistors. You connect them like this:
> 
> 
> Data line from EEPROM Data 0 <----> 1800 <----> RPi Data Line 0 <---->
> 3300 <----> Ground
> 
> Do the same for the other 7 data lines.
> 
> Write to your EEPROM from the RpI like normal, no 3v3 IC required
> 
> If you're wondering what's going on with the resistors and how this 
> will
> protect the RPi, it's the resistors...  They form a "voltage divider".
> 
> Here's a graphical page to show it:
> 
> https://ohmslawcalculator.com/voltage-divider-calculator
> 
> Your source voltage is the 5V coming from the EEPROM
> 
> R1 is 1800 ohms
> 
> R2 is 3300 ohms
> 
> Note that 1800 is about half of the 3300, so 3300/(3300+1800) = ~2/3. 
> As a result, the output voltage will be 2/3 of the source, which is 2/3
> of 5, or 3v3
> 
> If you're wondering why this is not used all the time:  Speed, power 
> draw
> 
> Voltage dividers like this seem like perfect, but the calculation
> ignores capacitance in the data lines and the wire used to connect
> things together.  BUt, there is capacitance, so the resistors (in
> conjuction with the capacitance), make an RC delay circuit. The larger
> the resistor, the more delay.  For these resistor amounts, you might be
> adding 30-70nS to the switching speed.  Not horrible, but not great.
> 
> You can improve the speed delay by using smaller resistors, but then 
> you
> use more power (that 1800 + 3300 ohm resistor network is taking that 5V
> to ground, which wastes power and creates heat). So, you have to 
> balance
> speed versus power draw, and neither is good.
> 
> But, in this case, if you don't need the RPi to program the EEPROM 
> while
> the EEPROM is installed in the CoCo, then you're fine.  Just write your
> RPi programmer to figure in the additional timing delay, and you're 
> good.
> 
> If you need the EEPROM to be in the CoCo when programmed, that's a much
> taller order, involving secondary ROM, buffers on all lines, and 
> voltage
> dividers on all lines.  Not recommended
> 
>> 
>> I am looking for something preferably cheep but more importantly easy
>> to use reading and writing coco3 ROM's.
>> 
>> Charlie.
>> 
> 
> --
> RETRO Innovations, Contemporary Gear for Classic Systems
> www.go4retro.com
> store.go4retro.com

No I do not need the RPi to program the EEPROM while while the  EEPROM 
is installed in the CoCo.
I do need to be able to read a ROM or EPROM into the RPi's Memory as I 
have a custom EPROM
I would like to recover. So my idea is to copy the original Tandy ECB 
ROM into the raspberry pi
and check that I get the same data as the emulator ROM, If I do then
I will make a copy of the  custom EPROM or to act as the template
for making another EEPROM or ( 39SF0X0 series FLASH ROM ).

Given your suggestions do you have any further comments on this plan ?

Charlie


More information about the Coco mailing list