*\r
* You should have received a copy of the GNU General Public License\r
* along with this program; if not, write to the Free Software\r
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA\r
+ * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA\r
+ *\r
+ * A98402 board, A9711, A9746 similar\r
+ * King of Fighters 96, The (Unl), Street Fighter Zero 2 (Unl)\r
+ * \r
*/\r
\r
#include "mapinc.h"\r
{\r
uint8 bank=EXPREGS[0]&0x1F;\r
if(EXPREGS[0]&0x20)\r
- setprg32(0x8000,bank>>2);\r
+ {\r
+ if(EXPREGS[0]&0x40)\r
+ setprg32(0x8000,bank>>2);\r
+ else\r
+ setprg32(0x8000,bank>>1); // hacky hacky! two mappers in one! need real hw carts to test\r
+ }\r
else\r
{\r
setprg16(0x8000,bank);\r
\r
static DECLFW(M187Write8000)\r
{\r
- EXPREGS[2]=1;\r
+ EXPREGS[1]=1;\r
MMC3_CMDWrite(A,V);\r
}\r
\r
static DECLFW(M187Write8001)\r
{\r
- if(EXPREGS[2])\r
+ if(EXPREGS[1])\r
MMC3_CMDWrite(A,V);\r
}\r
\r
-static DECLFW(M187Write8003)\r
-{\r
- EXPREGS[2]=0;\r
- if(V==0x28)setprg8(0xC000,0x17);\r
- else if(V==0x2A)setprg8(0xA000,0x0F);\r
-}\r
-\r
-\r
static DECLFW(M187WriteLo)\r
{\r
- EXPREGS[1]=V;\r
- if(A==0x5000)\r
+ if((A==0x5000)||(A==0x6000))\r
{\r
EXPREGS[0]=V;\r
FixMMC3PRG(MMC3_cmd);\r
\r
static void M187Power(void)\r
{\r
- EXPREGS[0]=EXPREGS[1]=EXPREGS[2]=0;\r
+ EXPREGS[0]=EXPREGS[1]=0;\r
GenMMC3Power();\r
SetReadHandler(0x5000,0x5FFF,M187Read);\r
- SetWriteHandler(0x5000,0x5FFF,M187WriteLo);\r
+ SetWriteHandler(0x5000,0x6FFF,M187WriteLo);\r
SetWriteHandler(0x8000,0x8000,M187Write8000);\r
SetWriteHandler(0x8001,0x8001,M187Write8001);\r
- SetWriteHandler(0x8003,0x8003,M187Write8003);\r
}\r
\r
void Mapper187_Init(CartInfo *info)\r