I've created a draft PR that is an attempt to be a minimal attempt to remove the emu_options reference from machine_config. Minimal means that it does not completely fix the problems with software list devices, but this is an attempt to improve things without making things worse.
Take note that because of a number of communications devices (e.g. - m3comm_device) that accessed emu_options in their constructors to identify socket settings. This is a bad pattern that should probably be addressed in a fashion that is not simply lazy loading them.
2. start the emulation with only the lha201 attached, bring TAB menu, disable IDE BIOS and move INT to anything that isn't INT3 and BIOS ROM location to anything that isn't 0xdc000 (those will clash later on).
3. attach the harddisk and install DOS 6.22 on it, as normal. Note that DOS can't recognize partitions bigger than 2047, it's a good idea to make it smaller (can always create a new partition later).
5. following are example screenshots of what a successful IPL detection should look. In particular if the device highlight isn't reversed but underscored it means that it's clashing with the configuration also mentioned in point 2.
People moan plenty, and Vas made a script for the Macs to sync the emulated pointer to the host, but it needs a lot more QA before we can ship it.
Similar scripts for other systems are probably possible, and the -mouse option will restrict the pointer to the emulated window. I believe pulling up the Tab menu will release the pointer temporarily in that state.
SDL doesn't seem to handle the full set of keys possible.
There's only a few that don't work, like KEY_CONFIG and KEY_FILE, and I can do 14 out of the 16 pushbutton media keys on the top of this keyboard. (without pkill gsd-media-keys, that number is about 7)
If you go to Menu/Input Settings/Input Devices/System Keyboard then you can see and test the full keys available.