⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 biomtoy.c

📁 十七种模拟器源代码 非常有用的作课程设计不可缺少的
💻 C
📖 第 1 页 / 共 3 页
字号:
/******************************************************************************//*                                                                            *//*                       BIOMECHANICAL TOY (C) 1995 ZEUS                      *//*                                                                            *//*                        MANIAC SQUARE (C) 1996 GAELCO                       *//*                                                                            *//******************************************************************************//* The maniac square story : * * It's a test driver due to the fact that the game was only a * prototype, and the person who dumped/released it would be obvious * to the powers-that-be, and would be subject to backlash.  * * This was confirmed from mame's team by this email : *  * From: "Manuel Abadia" <manu@mame.net> * To: <neohaze@haywood2.force9.co.uk> * Sent: Sunday, September 24, 2000 9:08 AM * Subject: New Raine - IMPORTANT - * * * > Hello Haze. * > * > I emulated biomechanical toy and maniac square for MAME. Maniac * > Square was disabled because of a VERY IMPORTANT reason. * > Please DO NOT ENABLE THAT GAME in your compiles. * * So well... Maniac square SHOULD stay as it is : GAME_PRIVATE, which * means it can be enabled only if PRIVATE is defined, and PRIVATE * should NEVER be defined in any public release. */#include "gameinc.h"#include "sasound.h"#include "taitosnd.h"#include "biomtoy.h"static struct DIR_INFO BiomToy_dirs[] ={   { "biomechanical_toy", },   { "Biomechanical_Toy", },   { "biomtoy", },   { "BiomToy", },   { NULL, },};static struct ROM_INFO BiomToy_roms[] ={   {          "d18",   0x080000, 0x4569ce64, 0, 0, 0, },   {          "d16",   0x080000, 0x739449bd, 0, 0, 0, },   {           "h6",   0x080000, 0x9416a729, 0, 0, 0, },   {           "j6",   0x080000, 0xe923728b, 0, 0, 0, },   {           "h7",   0x080000, 0x9c984d7b, 0, 0, 0, },   {           "j7",   0x080000, 0x0e18fac2, 0, 0, 0, },   {           "h9",   0x080000, 0x8c1f6718, 0, 0, 0, },   {           "j9",   0x080000, 0x1c93f050, 0, 0, 0, },   {          "h10",   0x080000, 0xaca1702b, 0, 0, 0, },   {          "j10",   0x080000, 0x8e3e96cc, 0, 0, 0, },   {           "c1",   0x080000, 0x0f02de7e, 0, 0, 0, },   {           "c3",   0x080000, 0x914e4bbc, 0, 0, 0, },   {           NULL,          0,          0, 0, 0, 0, },};static struct INPUT_INFO BiomToy_inputs[] ={   { KB_DEF_COIN1,        MSG_COIN1,               0x030004, 0x40, BIT_ACTIVE_0 },   { KB_DEF_COIN2,        MSG_COIN2,               0x030004, 0x80, BIT_ACTIVE_0 },   { KB_DEF_P1_START,     MSG_P1_START,            0x030006, 0x40, BIT_ACTIVE_0 },   { KB_DEF_P1_UP,        MSG_P1_UP,               0x030004, 0x01, BIT_ACTIVE_0 },   { KB_DEF_P1_DOWN,      MSG_P1_DOWN,             0x030004, 0x02, BIT_ACTIVE_0 },   { KB_DEF_P1_LEFT,      MSG_P1_LEFT,             0x030004, 0x08, BIT_ACTIVE_0 },   { KB_DEF_P1_RIGHT,     MSG_P1_RIGHT,            0x030004, 0x04, BIT_ACTIVE_0 },   { KB_DEF_P1_B1,        MSG_P1_B1,               0x030004, 0x20, BIT_ACTIVE_0 },   { KB_DEF_P1_B2,        MSG_P1_B2,               0x030004, 0x10, BIT_ACTIVE_0 },   { KB_DEF_P2_START,     MSG_P2_START,            0x030006, 0x80, BIT_ACTIVE_0 },   { KB_DEF_P2_UP,        MSG_P2_UP,               0x030006, 0x01, BIT_ACTIVE_0 },   { KB_DEF_P2_DOWN,      MSG_P2_DOWN,             0x030006, 0x02, BIT_ACTIVE_0 },   { KB_DEF_P2_LEFT,      MSG_P2_LEFT,             0x030006, 0x08, BIT_ACTIVE_0 },   { KB_DEF_P2_RIGHT,     MSG_P2_RIGHT,            0x030006, 0x04, BIT_ACTIVE_0 },   { KB_DEF_P2_B1,        MSG_P2_B1,               0x030006, 0x20, BIT_ACTIVE_0 },   { KB_DEF_P2_B2,        MSG_P2_B2,               0x030006, 0x10, BIT_ACTIVE_0 },   { 0,                   NULL,                    0,        0,    0            },};/* Dipswitch 2 */static struct DSW_DATA dsw_data_BiomToy_0[] ={   { MSG_SERVICE,	      0x01, 0x02 },   { MSG_OFF,		      0x01, 0x00 },   { MSG_ON,		      0x00, 0x00 },   { MSG_DEMO_SOUND,          0x08, 0x02 },   { MSG_ON,                  0x08, 0x00 },   { MSG_OFF,                 0x00, 0x00 },   { "Lives",                 0x30, 0x04 },   { "0",                     0x20, 0x00 },   { "1",                     0x10, 0x00 },   { "2",                     0x30, 0x00 },   { "3",                     0x00, 0x00 },   { MSG_DIFFICULTY,          0xC0, 0x04 },   { MSG_EASY,                0x40, 0x00 },   { MSG_NORMAL,              0xC0, 0x00 },   { MSG_HARD,                0x80, 0x00 },   { MSG_HARDEST,             0x00, 0x00 },   { NULL,                    0,    0,   },};/* Dipswitch 1 */static struct DSW_DATA dsw_data_BiomToy_1[] ={   { "Coinage B",             0x0F, 0x0C },	   { MSG_4COIN_1PLAY,         0x0E, 0x00 },   { MSG_3COIN_1PLAY,         0x01, 0x00 },   { MSG_2COIN_1PLAY,         0x09, 0x00 },   { MSG_3COIN_2PLAY,         0x0A, 0x00 },   { MSG_1COIN_1PLAY,         0x0F, 0x00 },   { MSG_2COIN_3PLAY,         0x06, 0x00 },   { MSG_1COIN_2PLAY,         0x07, 0x00 },   { MSG_1COIN_3PLAY,         0x0B, 0x00 },   { MSG_1COIN_4PLAY,         0x03, 0x00 },   { MSG_1COIN_5PLAY,         0x0D, 0x00 },   { MSG_1COIN_6PLAY,         0x05, 0x00 },   { MSG_FREE_PLAY,             0x00, 0x00 },   { "Coinage A",             0xF0, 0x0C },	   { MSG_4COIN_1PLAY,         0xE0, 0x00 },   { MSG_3COIN_1PLAY,         0x10, 0x00 },   { MSG_2COIN_1PLAY,         0x90, 0x00 },   { MSG_3COIN_2PLAY,         0xA0, 0x00 },   { MSG_1COIN_1PLAY,         0xF0, 0x00 },   { MSG_2COIN_3PLAY,         0x60, 0x00 },   { MSG_1COIN_2PLAY,         0x70, 0x00 },   { MSG_1COIN_3PLAY,         0xB0, 0x00 },   { MSG_1COIN_4PLAY,         0x30, 0x00 },   { MSG_1COIN_5PLAY,         0xD0, 0x00 },   { MSG_1COIN_6PLAY,         0x50, 0x00 },   { MSG_FREE_PLAY,             0x00, 0x00 },   { NULL,                    0,    0,   },};static struct DSW_INFO BiomToy_dsw[] ={   { 0x030000, 0xF7, dsw_data_BiomToy_0 },   { 0x030002, 0xFF, dsw_data_BiomToy_1 },   { 0,        0,    NULL,      },};static struct VIDEO_INFO BiomToy_video ={   DrawBiomToy,   320,              240,            32,       VIDEO_ROTATE_NORMAL, };void ClearBiomToy(void){}static struct OKIM6295interface m6295_interface ={	1,                  /* 1 chip */	{ 8000 },			/* 8000 KHz? */	{ 0 },  /* memory region (not yet !) */	{ 100 }				/* volume */};static struct SOUND_INFO BiomToy_sound[] ={   { SOUND_M6295,   &m6295_interface,     },   { 0,             NULL,                 },};static UINT8 *GFX_CHAR16;static UINT8 *GFX_CHAR16_SOLID;static UINT8 *GFX_TILE16;static UINT8 *GFX_TILE16_SOLID;static UINT8 *RAM_VIDEO;static UINT8 *RAM_SPR;static UINT8 *ADPCM;struct GAME_MAIN game_biomechanical_toy ={   BiomToy_dirs,   BiomToy_roms,   BiomToy_inputs,   BiomToy_dsw,   NULL,   LoadBiomToy,   ClearBiomToy,   &BiomToy_video,   ExecuteBiomToyFrame,   "biomtoy",   "Biomechanical Toy",   "Biomechanical Toy",   COMPANY_ID_ZEUS,   NULL,   1995,   BiomToy_sound,   GAME_PLATFORM,};static struct DIR_INFO Maniacsq_dirs[] ={   { "Maniac_Square", },   { "maniacsq", },   { NULL, },};static struct ROM_INFO Maniacsq_roms[] ={   {          "d18",    0x20000, 0x740ecab2, 0, 0, 0, },   {          "d16",    0x20000, 0xc6c42729, 0, 0, 0, },   {           "f3",    0x40000, 0xe7f6582b, 0, 0, 0, },   {           "f2",    0x40000, 0xca43a5ae, 0, 0, 0, },   {           "f1",    0x40000, 0xfca112e8, 0, 0, 0, },   {           "f0",    0x40000, 0x6e829ee8, 0, 0, 0, },   {           "c1",    0x80000, 0x2557f2d6, 0, 0, 0, },   {           NULL,          0,          0, 0, 0, 0, },};/* Dipswitch 2 */static struct DSW_DATA dsw_data_Maniacsq_0[] ={   { MSG_SERVICE,	      0x01, 0x02 },   { MSG_OFF,		      0x01, 0x00 },   { MSG_ON,		      0x00, 0x00 },   { MSG_DEMO_SOUND,          0x04, 0x02 },   { MSG_ON,                  0x04, 0x00 },   { MSG_OFF,                 0x00, 0x00 },   { "Sound type",            0x08, 0x02 },   { "Mono",                  0x08, 0x00 },   { "Stereo",                0x00, 0x00 },   { MSG_DIFFICULTY,          0xC0, 0x04 },   { MSG_EASY,                0x40, 0x00 },   { MSG_NORMAL,              0xC0, 0x00 },   { MSG_HARD,                0x80, 0x00 },   { MSG_HARDEST,             0x00, 0x00 },   { NULL,                    0,    0,   },};/* Dipswitch 1 */static struct DSW_DATA dsw_data_Maniacsq_1[] ={   { "Coinage B",             0x0F, 0x0C },	   { MSG_4COIN_1PLAY,         0x0E, 0x00 },   { MSG_3COIN_1PLAY,         0x01, 0x00 },   { MSG_2COIN_1PLAY,         0x09, 0x00 },   { MSG_3COIN_2PLAY,         0x0A, 0x00 },   { MSG_1COIN_1PLAY,         0x0F, 0x00 },   { MSG_2COIN_3PLAY,         0x06, 0x00 },   { MSG_1COIN_2PLAY,         0x07, 0x00 },   { MSG_1COIN_3PLAY,         0x0B, 0x00 },   { MSG_1COIN_4PLAY,         0x03, 0x00 },   { MSG_1COIN_5PLAY,         0x0D, 0x00 },   { MSG_1COIN_6PLAY,         0x05, 0x00 },   { "Freeplay (B too)",      0x00, 0x00 },   { "Coinage A",             0xF0, 0x0C },	   { MSG_4COIN_1PLAY,         0xE0, 0x00 },   { MSG_3COIN_1PLAY,         0x10, 0x00 },   { MSG_2COIN_1PLAY,         0x90, 0x00 },   { MSG_3COIN_2PLAY,         0xA0, 0x00 },   { MSG_1COIN_1PLAY,         0xF0, 0x00 },   { MSG_2COIN_3PLAY,         0x60, 0x00 },   { MSG_1COIN_2PLAY,         0x70, 0x00 },   { MSG_1COIN_3PLAY,         0xB0, 0x00 },   { MSG_1COIN_4PLAY,         0x30, 0x00 },   { MSG_1COIN_5PLAY,         0xD0, 0x00 },   { MSG_1COIN_6PLAY,         0x50, 0x00 },   { "Freeplay (A too)",      0x00,0x00 },   { NULL,                    0,    0,   },};static struct DSW_INFO Maniacsq_dsw[] ={   { 0x030000, 0xF7, dsw_data_Maniacsq_0 },   { 0x030002, 0xFF, dsw_data_Maniacsq_1  },   { 0,        0,    NULL,      },};static struct VIDEO_INFO Maniacsq_video ={   DrawManiacsq,   320,              240,            32,       VIDEO_ROTATE_NORMAL, };struct GAME_MAIN game_maniac_square ={   Maniacsq_dirs,   Maniacsq_roms,   BiomToy_inputs,   Maniacsq_dsw,   NULL,   LoadManiacsq,   ClearBiomToy,   &Maniacsq_video,   ExecuteManiacsqFrame,   "maniacsq",   "Maniac Square",   "Maniac Square",   COMPANY_ID_GAELCO,   NULL,   1996,   BiomToy_sound,

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -