Thanks, slowly getting there ...

I've reduced the number of floppy drives for the P1 and P2 to two ... unlike the ITT3030 from which this part of the code was copied, the Alphatronics have no provision for a third external floppy drive.

So out go m_floppy1 and m_floppy2, as well as the m_con stuff, in goes a required_device_array<floppy_connector, 2> m_floppy; and a matching m_floppy(*this, "fdc:%u", 0)

m_floppy[0] et al. replace m_con1 et al ... what I'm left with is this error message that is repeated for the second floppy connector:

Code
../../../../../src/mame/drivers/alphatpx.cpp:1027:58: error: no match for 'operator=' (operand types are 'device_finder<floppy_connector, true>' and 'floppy_connector*')
  m_floppy[0] = machine().device<floppy_connector>("fdc:0");
                                                          ^
In file included from ../../../../../src/emu/emu.h:70:0:
../../../../../src/emu/devfind.h:453:7: note: candidate: device_finder<floppy_connector, true>& device_finder<floppy_connector, true>::operator=(const device_finder<floppy_connector, true>&) <deleted>
 class device_finder : public object_finder_base<DeviceClass, Required>
       ^~~~~~~~~~~~~
../../../../../src/emu/devfind.h:453:7: note:   no known conversion for argument 1 from 'floppy_connector*' to 'const device_finder<floppy_connector, true>&'
../../../../../src/emu/devfind.h:453:7: note: candidate: device_finder<floppy_connector, true>& device_finder<floppy_connector, true>::operator=(device_finder<floppy_connector, true>&&) <deleted>
../../../../../src/emu/devfind.h:453:7: note:   no known conversion for argument 1 from 'floppy_connector*' to 'device_finder<floppy_connector, true>&&'
../../../../../src/mame/drivers/alphatpx.cpp:1028:58: error: no match for 'operator=' (operand types are 'device_finder<floppy_connector, true>' and 'floppy_connector*')


NCR DMV- DEC Rainbow- Siemens PCD- ITT 3030-Oly People- Acorn A5000- Olivetti M20