Is is ok to poke each peripheral slot in an attempt to determine a cards identity?
Does this have the potential to screw up the setup on other slotted cards (I'm thinking about I/O cards because poking will be driving physical external devices)?
Was there a best practise guide between developers for doing this?
Is there consolidated information anywhere on how A2 auto slot detection of cards was performed?
Is is ok to poke each peripheral slot in an attempt to determine a cards id= >entity?
Does this have the potential to screw up the setup on other slotted cards (= >I'm thinking about I/O cards because poking will be driving physical extern= >al devices)?
Cards which contain memory (ROM) are easy to be made auto detectable because the memory can be programmed to output a specific identifier to the peripheral slot memory locations ie $C0XX. However it is much more difficult to detect cards that do notcontain any memory chips.
The 4Play card is detectable because of luck. The unique pattern it generates by default produces $20, $20, $20, $20 for locations $C0X0 to $C0X3. So this is also easily read by the A2 to determine the slot.
However cards such as the SNES MAX do not produce any output until they are asked to do so ie poking addresses to determine what you get back. Therefore my questions are:-
Is is ok to poke each peripheral slot in an attempt to determine a cards identity?
Does this have the potential to screw up the setup on other slotted cards (I'm thinking about I/O cards because poking will be driving physical external devices)?
Was there a best practise guide between developers for doing this?
Is there consolidated information anywhere on how A2 auto slot detection of cards was performed?
Thank-you for your help.
Cheers,
Alex.
On 10/3/2021 1:26 AM, Lukazi wrote:
Cards which contain memory (ROM) are easy to be made auto detectable
because the memory can be programmed to output a specific identifier to
the peripheral slot memory locations ie $C0XX. However it is much more
difficult to detect cards that do not contain any memory chips.
The 4Play card is detectable because of luck. The unique pattern it
generates by default produces $20, $20, $20, $20 for locations $C0X0 to
$C0X3. So this is also easily read by the A2 to determine the slot.
However cards such as the SNES MAX do not produce any output until they
are asked to do so ie poking addresses to determine what you get back.
Therefore my questions are:-
Is is ok to poke each peripheral slot in an attempt to determine a cards identity?
Does this have the potential to screw up the setup on other slotted
cards (I'm thinking about I/O cards because poking will be driving
physical external devices)?
Yes, I would not do that.
I can't speak for other cards but I have used the $C0xx locations for
I/O on Carte Blanche projects. Some of the locations are used to send commands to the card. Randomly poking these locations could
theoretically cause something unwanted to happen.
In my projects, I like to put the value $CB in $C0xF to make it easy to locate the card.
Charlie
Was there a best practise guide between developers for doing this?
Is there consolidated information anywhere on how A2 auto slot detection
of cards was performed?
Thank-you for your help.
Cheers,
Alex.
Cards which contain memory (ROM) are easy to be made auto detectable
because the memory can be programmed to output a specific identifier to
the peripheral slot memory locations ie $C0XX. However it is much more difficult to detect cards that do not contain any memory chips.
Sysop: | Keyop |
---|---|
Location: | Huddersfield, West Yorkshire, UK |
Users: | 296 |
Nodes: | 16 (2 / 14) |
Uptime: | 42:21:14 |
Calls: | 6,648 |
Files: | 12,193 |
Messages: | 5,329,573 |