Five select lines => so that's up to 32 cards independently available at any one time. More than enough, I'm sure.
I totally grok the plaintext (e.g. "SEQ") AUTOBOOT file that gets read and dumped into the BASIC keyboard buffer. This is kinda how the emulator loads in programs using -bas. Reasonable and you get a lot of power for free.
Quote
Standardized ways of utilizing certain types of hardware and making it accessible to software may be desired"
...
[RE Loading ROM from an expansion card]. You'd have to use a protocol e.g. I2C, and the card would have to boostrap itself into loading data off the ROM and into a safe part of RAM on the X16.
Sounds to me like a KERNAL routine would be helpful here. Uh, maybe.
Quote
Consider an INSTALLER, that asks how the hardware's DIP switches are set for example, and then injects some lines into your CONFIG file and "place the files where they need to be."
Sounds to me like a SHELL program would be helpful here! I'll get back to debugging my experiment...
Data Transfer In Particular
So in thinking about data transfer, I tend to think in terms of price and usability. Assume I can program the "far" side of the protocol, then what's it take to program the X16 side, and then what's the cost of the bridging hardware?
One example is the SD2IEC, a solved problem at $70. Assuming it runs in "burst mode" or "jiffy mode" or "kwik-load mode" then that's the price to beat.
Another example is figuring out an SPI or I2C connection with, say, a Raspberry Pi. I can get a Wifi Pi Zero for $5, and it has I2C in Raspbian... more than enough power for my needs, and I can write code on the Pi end for file transfer. So THAT solution comes down to "what's it take to support that on the X16"? Can it be done in software? A ROM? Does it need a card? Etc.