Receiving
Getting data from the card
If the Clock Frequency Select isn't set to 0 or the Clock Multiplier Select isn't set to 0 (in the LoCoMo SPI Mode register)
- Wait for bit 0x1 to be set in LoCoMo SPI Status (max wait depends on clock)
- Read one byte from LoCoMo SPI RX Data Read
- Wait for bit 0x1 to be unset in LoCoMo SPI Status (max wait depends on clock)
- Repeat for each byte to receive from the card
Otherwise
- Busy loop 12 times (needed?)
- Wait for bit 0x1 to be set in LoCoMo SPI Status (up to 10 checks in a busy loop)
- Read one byte from LoCoMo SPI RX Data Read
- Repeat for each byte to receive from the card
Max Wait Table
Check the LoCoMo SPI Status register on each loop
Clock Frequency Select | Wait Loops |
4 | 0x10001 |
Others | 0xA |