Hello forum, im working trying to make a SS 6P multitap.
I'm using a Microchip PIC microcontroller model: 16F873A to simulate the MT & process info that'll be sended to SS.
The comunication between SS and my PIC(MT simulator) seems to be working fine. Aprox. 40 refresh per second(this speed really surprise me, because its really to slow for the PIC, but...40 is a respectable number)
Im simulating as if the PIC is the MT and haves a Digital SS pad connected on channel 1 ,all other 5 channels i'm sending them as UNNCONECTED TAP.
When i plug my electronic circuit on the SS, games recognize the simulation and shows one digital pad connected on game screen(the one i say is connected to channel 1) but when i press a button in the pad, the SS console doesn't do it. So...it all works fine, but...SS isn't detecting the buttons im pressing on the pad.
The protocol and the data im sending:
Multitap Protocol
Of course, i've connected a trigger on PORTA,0 of the microchip PIC microcontroller, so that if i press the button, it sends the Right arrow of the pad as pressed.This isn't shown in the tables.
Tech Definitions & structure im using:
*I'm comunicating with SS in SH-2 direct mode.
*Method of comunication: 3 line hand-shake method (between TH,TR & TL pins)
Each connected peripheric on each channel of the MT haves their own Saturn ID and must be sended one by one.
Info:
The Saturn ID(the size is 1 byte) have this struture:
High nibble(four bits) indicate the "Saturn peripheric Standard Format"(there are 4 avaiable):
Digital device(0 hex);
Analog device(1 hex);
Pointing device(2 hex);
and keyboard device(3 hex).
Low nibble(the other 4 bits) of Saturn ID indicates data size of connected peripheric:
for digital device, data size is 2 bytes;
for analog device, data size is 5 bytes;
for pointing device,data size is 3 bytes;
for keyboard device,data size is 4 bytes.
*So, Im sending 0 Hexadecimal to indicate Digital Device connected on channel 1.
* DATASIZE im sending for pad connected is 2 hexadecimal, this also taken of : "SATURN Digital Device Standard Format"
*For the channels im sending as unconnected tap: i use F hexadecimal as ID and F hexadecimal as data size. Why? The document(PDF file) says that when a channel of the Multitap have no peripheric connected to it, FF hexadecimal must be sended as Saturn ID.
Any help or sugestion will be really usefull.
Regards.
I'm using a Microchip PIC microcontroller model: 16F873A to simulate the MT & process info that'll be sended to SS.
The comunication between SS and my PIC(MT simulator) seems to be working fine. Aprox. 40 refresh per second(this speed really surprise me, because its really to slow for the PIC, but...40 is a respectable number)
Im simulating as if the PIC is the MT and haves a Digital SS pad connected on channel 1 ,all other 5 channels i'm sending them as UNNCONECTED TAP.
When i plug my electronic circuit on the SS, games recognize the simulation and shows one digital pad connected on game screen(the one i say is connected to channel 1) but when i press a button in the pad, the SS console doesn't do it. So...it all works fine, but...SS isn't detecting the buttons im pressing on the pad.
The protocol and the data im sending:
Multitap Protocol
Of course, i've connected a trigger on PORTA,0 of the microchip PIC microcontroller, so that if i press the button, it sends the Right arrow of the pad as pressed.This isn't shown in the tables.
Tech Definitions & structure im using:
*I'm comunicating with SS in SH-2 direct mode.
*Method of comunication: 3 line hand-shake method (between TH,TR & TL pins)
Each connected peripheric on each channel of the MT haves their own Saturn ID and must be sended one by one.
Info:
The Saturn ID(the size is 1 byte) have this struture:
High nibble(four bits) indicate the "Saturn peripheric Standard Format"(there are 4 avaiable):
Digital device(0 hex);
Analog device(1 hex);
Pointing device(2 hex);
and keyboard device(3 hex).
Low nibble(the other 4 bits) of Saturn ID indicates data size of connected peripheric:
for digital device, data size is 2 bytes;
for analog device, data size is 5 bytes;
for pointing device,data size is 3 bytes;
for keyboard device,data size is 4 bytes.
*So, Im sending 0 Hexadecimal to indicate Digital Device connected on channel 1.
* DATASIZE im sending for pad connected is 2 hexadecimal, this also taken of : "SATURN Digital Device Standard Format"
*For the channels im sending as unconnected tap: i use F hexadecimal as ID and F hexadecimal as data size. Why? The document(PDF file) says that when a channel of the Multitap have no peripheric connected to it, FF hexadecimal must be sended as Saturn ID.
Any help or sugestion will be really usefull.
Regards.