SIBO-SP Slave IDs
"Select" is kind of a misnomer, because in actual fact it's a question. The SIBO/EPOC16 device has a list of device IDs it knows how to speak to. Although these device IDs refer to specific ASICs and their modes, it's also possible to think of an ID as an ASIC's "language", For example, ASIC4 can "pretend" to be ASIC5 in Pack Mode. More on this later.
This SSel packet contains an ID number. This ID number refers to one of a number of different ASIC chips that could be in a slave device. Here's a list of the device IDs we've found so far and the devices they refer to.
|2||ASIC5 Pack Mode|
|3||ASIC5 Peripheral Mode (“ASIC5 Normal” in OSSIBO.INC)|
|4||ASIC6 (undocumented, mentioned only in OSSIBO.INC)|
|5||ASIC8 (undocumented, mentioned only in OSSIBO.INC)|
|31||Unknown (undocumented, detected on Workabout)|
|48||Unknown (undocumented, detected on Workabout and Workabout mx)|
|56||Unknown (undocumented, detected on Workabout mx)|
Each SIBO/EPOC16 device has a list of IDs it can speak to. When a SIBO-SP port is initialised, the SIBO machine first sends a "Reset All" command. This tells all slaves to stop what they're doing and listen for a SSel packet. Then, the SIBO/EPOC16 device goes through its list of IDs, starting from the top. It asks the slave, "Do you speak ID:x?". If there's no reply, it goes to the next ID on the list until it gets a reply or runs out of IDs.
The list of IDs is different for SIBO Serial Ports and SSD ports. This makes sense - the types of device that could be connected to a SIBO Serial Port are different to what would be put in an SSD port. However, the different types of SSel IDs that each device sends are interesting.
This is a list of SIBO devices with the IDs they send out on each port. Anything marked "unknown" is because I haven't been able to test it yet (I don't own an MC200 or Workabout 1MB and I don't have the right connectors for the MC or Workabout ranges).
|Model||SIBO Port||SSD Port|
|Series 3||3, 5||2, 1|
|Series 3a||3, 5, 6, 2, 6||6, 2|
|Series 3c||N/A||6, 2, 3|
|Series 3mx||N/A||6, 2, 3|
|Workabout||48, 6, 2, 3||Unknown|
|Workabout mx||31 (pause) 6, 3, 2, 5 (pause) 3, 5, 6, 2||48, 6, 2, 3 1|
1 Wmx also sends ID:56 at boot on the SSD port whether the door is open or closed.
What's interesting is that for every SSD port I could test, it asks for at least one ASIC that can handle some sort of peripheral, all the way back to the MC400, possibly even further. Although I don't know this for certain, I assume an ASIC2 in Slave Mode was a precursor to the ASIC4 in Extended Mixed Mode.