| Posted By
Spektro on 2013-04-16 06:00:15
| Flash memory through 3+1 ROM sockets?
Hi,
After reading this thread http://plus4world.powweb.com/forum/25350 I started to wonder if it's possible to replace the Plus 4 3+1 ROMs with flash memory. If it's somehow possible, you could not only retrieve data but to store as well.
Can someone who understand hardware issues comment on this? Why it cannot work or how it can work.
|
|
Posted By
Luca on 2013-04-16 06:18:56
| Re: Flash memory through 3+1 ROM sockets?
Oh well, I'm not of the hardware side's knowledge, but I remember several EPROM stuff plugging there, like New-ROM...
|
|
|
Posted By
siz on 2013-04-17 03:38:57
| Re: Flash memory through 3+1 ROM sockets?
EasyFlash is a nice thing but adapting it to a plus/4 is impossible (with the same functionality). On the plus/4 you can't replace the KERNAL with an external device. Our BSz recently did an internal hack in his plus/4, you can read about it in his blog. Sadly it is in hungarian but a hungarian-english tranlation probably helps a bit.
|
|
Posted By
Spektro on 2013-04-17 08:37:57
| Re: Flash memory through 3+1 ROM sockets?
EasyFlash does the job but it looks quite complicated -- a lot of parts.
I was hoping that the ROMs could be removed and new chips installed which would act like RAM chips, except that they don't lose their content when Plus/4 is turned off.
The blog post was still mostly foreign to me after Google Translate translation. Didn't get much out of it
|
|
Posted By
JamesD on 2013-04-20 15:18:20
| Re: Flash memory through 3+1 ROM sockets?
It is certainly possible to replace the ROMs with Flash memory. You could fit every ROM in the Plus/4 and then some on a single FLASH chip. There are some potential issues though.
The most obvious problem is you have to have a circuit to convert from one pinout to the other. This isn't difficult but you either have to hand wire a board or use a printed circuit board. The board will also need to accommodate any new circuitry.
You need to convert from separate chip selects to a single chip select with additional address lines. This isn't that difficult, if any chip select is active then you activate the chip select on the FLASH (active low signal I believe) and you pass the existing chip selects through something like a 74LS148 (or 147) to output the new address lines on the FLASH chip. You just need to have the inputs in the proper order for the content of the FLASH chip to make some sense when you create the original content for the FLASH chip.
And last but certainly not least, you can't write to the FLASH memory while it's in the machine without running a write signal from the CPU to the FLASH chip. And that assumes the existing address decoding doesn't ignore writes. If it doesn't activate the chip selects during a write to those addresses, you'd have to create completely new address decoding and I suggest you skip the idea of writing to the FLASH memory while it's in the machine.
|
|
Posted By
Spektro on 2013-04-21 09:00:56
| Re: Flash memory through 3+1 ROM sockets?
Thanks James! So writing is the issue even if you would use RAM memory instead of FLASH memory? The ROM sockets have been built for reading only?
|
|
Posted By
JamesD on 2013-04-24 12:53:48
| Re: Flash memory through 3+1 ROM sockets?
ROM chips don't have a connection for a write line so there would be no need to have them on the sockets. Technically, it's a read/write line but since ROMs are only read... there is no need. FLASH or RAM makes no difference.
I would hope that in order to keep address decoding simple, writes would also activate the chip selects but it doesn't require a lot of gates to disable the chip selects on write. I don't have the right equipment to capture the buss signals to test this though.
Given the capacity of the ROMs vs the capacity of FLASH chips, you could use a switch to select between the default Plus/4 ROMs and other ROM sets. That switch could be mechanical or electronic in nature. This could be used to make things like custom editors, assemblers, graphics utilities, better word processors, spreadsheets, or games available at the flick of a switch or with a simple POKE.
[edit] Page 10 of the Service Manual shows the ROM selection logic. http://www.pagetable.com/docs/ted/Service%20Manual%20Model%20Plus%204%20Computer.pdf
[edit] The OCR of the document is poor but I didn't do it so... not my fault. From page 5(?): "Selectior, of either ROM or RAM is accomplished bw writir,.:3 a bit. in Q Ted resister,. When RAM is selected, the whole 64K men.ory m2P is coalPrised of RAM with the exception of 1 re~ist~rs for 7501 portl 1 page for Ted control resistersJ ~rld 1 pa!e for I/O. This alethad yields 60,671 bytes of RAM avail;;ble for Basi,c progralT, storage. When ROM is selected, the prosr~~1 residin~ irl ROM ap?ears in pla~e of RAM. Tht e:(ception to this is a write a~eratiDrl to ROM will alwa~s 'bleed throlJsh tc 'Jrld,erl~ir.g RAM." http://www.pagetable.com/docs/ted/TED%20System%20Hardware%20Manual.pdf
The last sentence is important. All writes to ROM bleed through to RAM. You won't be able to use FLASH like a disk drive because you'll corrupt RAM but you could program it while in the system. This behavior could be changed but I'm sure existing software depends on it and I recommend against it.
[edit] I looked around and the smallest FLASH memory chip I could find is 128K and uses 16K sectors. That means you'd need to rewrite sectors 16K at a time.
|
|
| |
Copyright © Plus/4 World Team, 2001-2024. Support Plus/4 World on Patreon |