I am beginning to think that there is some kind of polling going on behind the scenes that switches between the three modes very quickly.
Exactly this is going on. The different technologies gets time-multiplexed. It's much more than three modes though. Typically a NFC device will poll for:
- Reader ISO14443 A
- Reader ISO14443 B
- Reader FeliCa (aka tag type 3)
- Reader ISO15693
- Card Emulation ISO14443 A
- Card Emulation ISO14443 B
- Card Emulation Felica
Peer-to-Peer mode uses Reader A, Reader FeliCa as initiator. Card emulation A and card emulation Felica are also used as Peer-to-Peer Target mode technology.
The exact timing of the polling is not public and you will not find much about that in the source-code. This is handled by the NFC chip internally.