sms: Document the Sports Pad modes (and change the default) used by Sports Pad Soccer (Jpn) [Enik Land]

This commit is contained in:
MetalliC 2016-11-07 21:32:13 +02:00
parent 673e753621
commit 769810638a
3 changed files with 34 additions and 11 deletions

View File

@ -6165,7 +6165,18 @@
</part>
</software>
<!-- Notes: This has a player 2 input bug: it reads part of player 1 data instead (see sportsjp.cpp) -->
<!-- Notes: -->
<!-- This Japanese version of Sports Pad Soccer has code to operate the
Sports Pad controller in two diffent modes. When it detects a Japanese SMS,
the operation is the same used by US Sports Pad games. Otherwise, it uses
a mode compatible with the Sega Mark III, that lacks the TH line used by
the US Sports Pad mode. This Mark III mode is also used on other non-SMSJ
consoles, like the Korean SMS2 version. The two controller modes are
significantly different from each other and no information was found about
support for both modes on the Japanese Sports Pad model, so that model is
currently emulated as a different device: sportspadjp. -->
<!-- This ROM has a player 2 input bug when operates in Mark III compatible
mode: it reads part of player 1 data instead (see sportsjp.cpp). -->
<software name="sportssc" cloneof="worldsoc">
<description>Sports Pad Soccer (Jpn)</description>
<year>1988</year>
@ -6173,8 +6184,8 @@
<info name="serial" value="G-1365"/>
<info name="release" value="19881029"/>
<info name="alt_title" value="スポーツパッドサッカー" />
<sharedfeat name="ctrl1_default" value="sportspadjp" />
<sharedfeat name="ctrl2_default" value="sportspadjp" />
<sharedfeat name="ctrl1_default" value="sportspad" />
<sharedfeat name="ctrl2_default" value="sportspad" />
<part name="cart" interface="sms_cart">
<dataarea name="rom" size="131072">
<rom name="sports pad soccer (japan).bin" size="131072" crc="41c948bf" sha1="7634ce39e87049dad1ee4f32a80d728e4bd1f81f" offset="000000" />

View File

@ -21,8 +21,10 @@ Notes:
Games designed for the US model of the Sports Pad controller use the
TH line of the controller port to select which nibble, of the two axis
bytes, will be read at a time. The Japanese cartridge Sports Pad Soccer
uses a different mode, because the Sega Mark III lacks the TH line, so
there is a different Sports Pad model released in Japan (see sportsjp.c).
uses a different mode when not detect a SMSJ, because the Sega Mark III
lacks the TH line. There is a different Sports Pad model released in
Japan and no information was found about it supporting both modes, so
that model is currently emulated as a different device (see sportsjp.c).
It was discovered that games designed for the Paddle Controller, released
in Japan, switch to a mode incompatible with the original Paddle when

View File

@ -17,13 +17,23 @@ TODO:
Notes:
The Japanese Sports Pad controller is only required to play the cartridge
Sports Pad Soccer, released in Japan. It uses a different mode than the
used by the US model, due to the missing TH line on Sega Mark III
controller ports.
This Japanese Sports Pad controller device is only required to play the
cartridge Sports Pad Soccer, released in Japan, on non-SMSJ consoles without
ROM header validation, like the Sega Mark III and the Korean SMS2 version.
A bug was discovered in the player 2 input handling code of the only known
good ROM dump of Sports Pad Soccer (JP):
The Japanese version of Sports Pad Soccer has code to operate the Sports
Pad controller in two diffent modes. When it detects a Japanese SMS (testing
if port $F2 has two bits for mute control), the operation is the same used
by US Sports Pad games. Otherwise, it uses a mode that polls bits TR and TL
of the controller ports, compatible with the Sega Mark III, that lacks the
TH line used by the US Sports Pad mode. This Mark III mode is also used on
other non-SMSJ consoles, like the Korean SMS2 version. The two controller
modes are significantly different from each other and no information was
found about support for both modes on the Japanese Sports Pad model, so that
model is currently emulated as a different device.
A bug was discovered in the player 2 input handling code of the Mark III
compatible mode of the only known good ROM dump of Sports Pad Soccer (JP):
size="131072" crc="41c948bf" sha1="7634ce39e87049dad1ee4f32a80d728e4bd1f81f"
At address $12D1, instead read the upper 2 bits of port $DC and lower 2 bits
of port $DD (to obtain the lower nibble of the current axis for player 2),