• Please review our updated Terms and Rules here

EPROM-strapping an 8049

NeXT

Veteran Member
Joined
Oct 22, 2008
Messages
8,211
Location
Kamloops, BC, Canada
I'm having a bit of trouble figuring out how Intel intended this to work.
On an 8049 you have 2k x 8 of internal ROM. Under normal circumstances this is accessible normally for embedded programs. If however you wish to bypass the internal ROM (bitrot or it's a chip that's good but you want to run on variant code without swapping in an 8749), pin 7 is listed as "External access"
The Intel MCS-48 family databook said:
External Access input which forces all program memory fetches to reference external memory. Useful for emulation and debug, and essential for testing and program verification. (Active High) (Internal pullup "'" 10MD on 8048/8049, 8035L, 8039 only)

...so connecting that pin to +5 with a 1K resistor I think locks out the internal ROM and then allows an external data device (a 2716 EPROM) to exist in the same address space and act like nothing is different, correct?
The databook is a bit weird about how you could use this to piggyback a substitute program ROM rather than to expand the available ROM for the CPU. It gives this as an example but only for the regular ROMless 8048 and a 2316 ROM.
mcs_1.png
mcs_2.png

Would I be correct to assume that with the inclusion of the EA pullup it would otherwise be the same? What's really throwing me off is sure, chip select and the data bus but what is up with the 8212 generating the address signals and the eleven designated address lines going into the ROM? There's only A0 through A7.
 
Yes, don't confuse the chapter on expansion with the function of the EA pin. Asserting EA means that all program references, not just the ones above 2K, are forced to external memory. Of course, you need the 8212 (or 74LS374 or the like) to latch the address presented on the data bus during the negative transition of ALE.
 
To add just a bit more detail to Chuck(G)'s response.

The eleven address bits are the concatenation of A0-A7 latched with ALE and three bits A8-A10 from port 2 bits 0-2.
 
Yes, don't confuse the chapter on expansion with the function of the EA pin. Asserting EA means that all program references, not just the ones above 2K, are forced to external memory.
Which is want I want. That would allow me to run the 8049 as a ROMless 8039 and substitute with an EPROM containing the alternate code.

The eleven address bits are the concatenation of A0-A7 latched with ALE and three bits A8-A10 from port 2 bits 0-2.
Oof! I somehow missed the A8-A10 on the other side of the ROM/EPROM pinout. That makes more sense.
 
Back
Top