small cleanup + added note about some pad configuration

which is not detected correctly. nw.
This commit is contained in:
etabeta78 2016-04-24 07:39:05 +02:00
parent 10c5c6cfb9
commit c39549184f
2 changed files with 8 additions and 14 deletions

View File

@ -364,6 +364,13 @@ TIMER_CALLBACK_MEMBER( saturn_state::stv_smpc_intback )
- ID first controller, followed by the number of reads needed by the plugged controller
- ID second controller, followed by the number of reads needed by the plugged controller
- and so on... until the 4th (for SegaTap) or 6th (for Multitap) controller is read
TODO: how does the multitap check if a controller is connected? does it ask for the
controller status of each subport? how does this work exactly?
currently, there is a small problem in some specific controller config which seems to
lose track of one controller. E.g. if I put multitap in port2 with inserted joy1, joy2 and joy4
it does not see joy4 controller, but if I put joy1, joy2, joy4 and joy5 it sees
all four of them. The same happens if I skip controllers with id = 0xff...
how did a real unit behave in this case?
*/
TIMER_CALLBACK_MEMBER( saturn_state::intback_peripheral )

View File

@ -146,13 +146,6 @@ public:
UINT8 slave_on;
}m_smpc;
struct {
UINT8 status;
UINT8 data;
UINT8 prev_data;
UINT16 repeat_count;
}m_keyb;
/* Saturn specific*/
int m_saturn_region;
UINT8 m_cart_type;
@ -682,12 +675,6 @@ public:
TIMER_CALLBACK_MEMBER( smpc_change_clock );
TIMER_CALLBACK_MEMBER( stv_intback_peripheral );
TIMER_CALLBACK_MEMBER( stv_smpc_intback );
void smpc_digital_pad(UINT8 pad_num, UINT8 offset);
void smpc_analog_pad(UINT8 pad_num, UINT8 offset, UINT8 id);
void smpc_keyboard(UINT8 pad_num, UINT8 offset);
void smpc_mouse(UINT8 pad_num, UINT8 offset, UINT8 id);
void smpc_md_pad(UINT8 pad_num, UINT8 offset, UINT8 id);
void smpc_unconnected(UINT8 pad_num, UINT8 offset);
TIMER_CALLBACK_MEMBER( intback_peripheral );
TIMER_CALLBACK_MEMBER( saturn_smpc_intback );
void smpc_rtc_write();