Page 12 of 17

Re: 27C400/27C800 EPROM emulator

Posted: 03 Jun 2020 22:18
by cmorley
The module might be in "no wire rom switch" mode and when the USB powers it and the H4 is off it sees that as a long reset press (>3s) - which always goes to ROM 0.

In the options menu check...
a) reset wire free ROM switch is N (disabled)
b) ROM switch pull up is Y (enabled)

Then C to commit these options to the STM FLASH.

With nothing connected to the ROM switch pad then it should never ROM switch unless commanded to from USB with W.

If that's not it, is A17 not connected/open circuit on the socket? If that is pulled low (for compatability with a 27C400 say) then all odd banks (A17 high) will be inaccessible as the STM output pin will be shorted low...

Re: 27C400/27C800 EPROM emulator

Posted: 03 Jun 2020 22:44
by terriblefire
Ah it’s v possible that A17 is not floating. Will try slot 2

Re: 27C400/27C800 EPROM emulator

Posted: 03 Jun 2020 23:25
by PaulJ
terriblefire wrote: 03 Jun 2020 22:44 Ah it’s v possible that A17 is not floating. Will try slot 2
Here's a schematic that always starts where you set it and all 8 slots work including diagram. @rubber_jonnie here's the schematic for the adaptor.
sch.jpg

Re: 27C400/27C800 EPROM emulator

Posted: 04 Jun 2020 09:00
by rubber_jonnie
@PaulJ Brilliant, thanks!

Re: 27C400/27C800 EPROM emulator

Posted: 04 Jun 2020 12:04
by terriblefire
I think my impression was that A17-A19 are "broken" through the cpld when in 27C200 mode. But i guess thats not the case.

Re: 27C400/27C800 EPROM emulator

Posted: 04 Jun 2020 13:30
by cmorley
terriblefire wrote: 04 Jun 2020 12:04 I think my impression was that A17-A19 are "broken" through the cpld when in 27C200 mode. But i guess thats not the case.
No I don't have enough pins to do that. The STM 32, pads (A18, A19) and pin 1/A17 pad (A17) are wire ORed on the 5v side of the buffers.

I thought about putting solder jumpers but thought that would cause more confusion than problem it would solve.

A17 does route through the CPLD (none of the others do), for the non-JEDEC rev 3 & 5 Amiga pinout compatability, so I might be able to fix it in firmware... I only have 1 macrocell free so it might not be possible. I have no option bits left in the STM32 option FLASH either so I'd need to repurpose the security byte to steal some more bits to store any more config options. It might be a bridge too far.

edit: the other reason for not breaking the pads->FLASH is so users can use their own control signals in systems to select ROMs. e.g. simulate 2 ROMs in different memory areas with one device with some external decode but make them still switchable.

Re: 27C400/27C800 EPROM emulator

Posted: 04 Jun 2020 14:40
by terriblefire
Yeah understood.

Re: 27C400/27C800 EPROM emulator

Posted: 16 Jun 2020 19:35
by cmorley
Right so I've hit a brick wall with these things. The problem is that with headers you can't stop a user connecting the USB at the header end (rather than the USB plug) if they are using a non-earth referenced computer and the module is installed in an earth referenced device (e.g. retro computer).

The issue is that "ground" can easily float to 90v on an laptop type PSU... without guaranteeing that GND is connected first you could blow up the module's USB or indeed the laptop's USB I think. A charged up Y-class cap is a decent chunk of energy.

There is little space to put a micro B socket on the module. Even if I could which way do you point it so you could plug something in? What works on one machine won't work on everything. I can't go up because there isn't the height on all computers. Putting in the instructions "connect the module then plug into the PC" won't stop people doing it the other order. I don't think USB is robust to connecting data first which is why the connectors have longer pins on the power to prevent that ever happening.

Pre-soldering wires is a non-started due to assembly practicality. Mezzanine boards won't fit every target.

I don't see how to solve this and make the USB connection foolproof.

Re: 27C400/27C800 EPROM emulator

Posted: 16 Jun 2020 19:39
by exxos
The only way around the earth issue I think would be to use a opto isolator.

Re: 27C400/27C800 EPROM emulator

Posted: 17 Jun 2020 09:40
by cmorley
I am so cramped for space on this thing there is no chance to fit on any isolation... I don't think it would entirely mitigate the risk to the PC of hot plugging the 0.1" headers. The solution is to use a connector designed for hot plugging - but I don't see how to physically fit one!

I could shuffle things enough to put a USB micro B recepticle at the notch end of the EPROM emu... but the problem with that is that the plug will likely clash with other bits of computer in many installations. Maybe prefitting a USB breakout board would be the least worst option (see photo). Height is an issue in machines like the A600/A1200 (clearance to the keyboard) but I might be able to source shorter turned pin headers.
104419208_1196256500711103_6014199549391038693_n.jpg