?? snowbros.c
字號:
/******************************************************************************//* *//* SNOW BROS/WINTER BOBBLE (C) 1990 TOAPLAN *//* *//******************************************************************************/#include "gameinc.h"#include "snowbros.h"#include "3812intf.h"#include "sasound.h" // sample support routines#ifdef RAINE_DEBUG#include "debug.h"#endifstatic struct DIR_INFO snow_bros_dirs[] ={ { "snow_bros", }, { "snowbros", }, { NULL, },};static struct ROM_INFO snow_bros_roms[] ={ { "sn6.bin", 0x00020000, 0x4899ddcf, REGION_ROM1, 0x000000, LOAD_8_16, }, { "sn5.bin", 0x00020000, 0xad310d3f, REGION_ROM1, 0x000001, LOAD_8_16, }, { "snowbros.4", 0x00008000, 0xe6eab4e4, REGION_ROM2, 0x000000, LOAD_NORMAL, }, { "ch0", 0x00020000, 0x36d84dfe, REGION_GFX1, 0x000000, LOAD_NORMAL, }, { "ch1", 0x00020000, 0x76347256, REGION_GFX1, 0x020000, LOAD_NORMAL, }, { "ch2", 0x00020000, 0xfdaa634c, REGION_GFX1, 0x040000, LOAD_NORMAL, }, { "ch3", 0x00020000, 0x34024aef, REGION_GFX1, 0x060000, LOAD_NORMAL, }, { NULL, 0, 0, 0, 0, 0, },};static struct INPUT_INFO snow_bros_inputs[] ={ { KB_DEF_COIN1, MSG_COIN1, 0x006405, 0x04, BIT_ACTIVE_0 }, { KB_DEF_COIN2, MSG_COIN2, 0x006405, 0x08, BIT_ACTIVE_0 }, { KB_DEF_TILT, MSG_TILT, 0x006405, 0x20, BIT_ACTIVE_0 }, { KB_DEF_P1_START, MSG_P1_START, 0x006405, 0x01, BIT_ACTIVE_0 }, { KB_DEF_P1_UP, MSG_P1_UP, 0x006401, 0x01, BIT_ACTIVE_0 }, { KB_DEF_P1_DOWN, MSG_P1_DOWN, 0x006401, 0x02, BIT_ACTIVE_0 }, { KB_DEF_P1_LEFT, MSG_P1_LEFT, 0x006401, 0x04, BIT_ACTIVE_0 }, { KB_DEF_P1_RIGHT, MSG_P1_RIGHT, 0x006401, 0x08, BIT_ACTIVE_0 }, { KB_DEF_P1_B1, MSG_P1_B1, 0x006401, 0x10, BIT_ACTIVE_0 }, { KB_DEF_P1_B2, MSG_P1_B2, 0x006401, 0x20, BIT_ACTIVE_0 }, { KB_DEF_P2_START, MSG_P2_START, 0x006405, 0x02, BIT_ACTIVE_0 }, { KB_DEF_P2_UP, MSG_P2_UP, 0x006403, 0x01, BIT_ACTIVE_0 }, { KB_DEF_P2_DOWN, MSG_P2_DOWN, 0x006403, 0x02, BIT_ACTIVE_0 }, { KB_DEF_P2_LEFT, MSG_P2_LEFT, 0x006403, 0x04, BIT_ACTIVE_0 }, { KB_DEF_P2_RIGHT, MSG_P2_RIGHT, 0x006403, 0x08, BIT_ACTIVE_0 }, { KB_DEF_P2_B1, MSG_P2_B1, 0x006403, 0x10, BIT_ACTIVE_0 }, { KB_DEF_P2_B2, MSG_P2_B2, 0x006403, 0x20, BIT_ACTIVE_0 }, { 0, NULL, 0, 0, 0 },};static struct DSW_DATA dsw_data_snow_bros_0[] ={ { "Country", 0x01, 0x02 }, { "America", 0x01, 0x00 }, { "Europe", 0x00, 0x00 }, { MSG_SCREEN, 0x02, 0x02 }, { MSG_NORMAL, 0x02, 0x00 }, { MSG_INVERT, 0x00, 0x00 }, { MSG_TEST_MODE, 0x04, 0x02 }, { MSG_OFF, 0x04, 0x00 }, { MSG_ON, 0x00, 0x00 }, { MSG_DEMO_SOUND, 0x08, 0x02 }, { MSG_ON, 0x08, 0x00 }, { MSG_OFF, 0x00, 0x00 }, { MSG_COIN1, 0x30, 0x04 }, { "1/1", 0x30, 0x00 }, { "1/2; 2/1", 0x20, 0x00 }, { "2/1; 3/1", 0x10, 0x00 }, { "2/3; 4/1", 0x00, 0x00 }, { MSG_COIN2, 0xC0, 0x04 }, { "1/1", 0xC0, 0x00 }, { "1/2; 1/3", 0x80, 0x00 }, { "2/1; 1/4", 0x40, 0x00 }, { "2/3; 1/6", 0x00, 0x00 }, { NULL, 0, 0, },};static struct DSW_DATA dsw_data_snow_bros_1[] ={ { MSG_DIFFICULTY, 0x03, 0x04 }, { MSG_NORMAL, 0x03, 0x00 }, { MSG_EASY, 0x02, 0x00 }, { MSG_HARD, 0x01, 0x00 }, { MSG_HARDEST, 0x00, 0x00 }, { "Extra Life at", 0x0C, 0x04 }, { "100k", 0x0C, 0x00 }, { "200k", 0x08, 0x00 }, { "100k 200k", 0x04, 0x00 }, { "Nothing", 0x00, 0x00 }, { "Lives", 0x30, 0x04 }, { "3", 0x30, 0x00 }, { "1", 0x20, 0x00 }, { "4", 0x10, 0x00 }, { "2", 0x00, 0x00 }, { "Cheat", 0x40, 0x02 }, { MSG_OFF, 0x40, 0x00 }, { MSG_ON, 0x00, 0x00 }, { "Continue", 0x80, 0x02 }, { MSG_ON, 0x80, 0x00 }, { MSG_OFF, 0x00, 0x00 }, { NULL, 0, 0, },};static struct DSW_INFO snow_bros_dsw[] ={ { 0x006400, 0xFF, dsw_data_snow_bros_0 }, { 0x006402, 0xFF, dsw_data_snow_bros_1 }, { 0, 0, NULL, },};static struct GFX_LAYOUT snow_bros_object ={ 16, 16, RGN_FRAC(1,1), 4, { 0, 1, 2, 3 }, { STEP8(0, 4 ), STEP8(8*32, 4 ) }, { STEP8(0, 32), STEP8(16*32, 32) }, 32*32,};static struct GFX_LIST snow_bros_gfx[] ={ { REGION_GFX1, &snow_bros_object, }, { 0, NULL, },};static struct VIDEO_INFO snow_bros_video ={ draw_snow_bros, 256, 224, 32, VIDEO_ROTATE_NORMAL | VIDEO_ROTATABLE, snow_bros_gfx,};static struct YM3812interface ym3812_interface ={ 1, // 1 chip 3600000, // 3.6 MHz { 255 }, // Volume (emu only) { NULL }};static struct SOUND_INFO snow_bros_sound[] ={ { SOUND_YM3812, &ym3812_interface, }, { 0, NULL, },};struct GAME_MAIN game_snow_bros ={ snow_bros_dirs, snow_bros_roms, snow_bros_inputs, snow_bros_dsw, NULL, load_snow_bros, clear_snow_bros, &snow_bros_video, execute_snow_bros_frame, "snowbros", "Snow Bros", "僗僲乕僽儔僓乕僘 American", COMPANY_ID_TOAPLAN, NULL, 1990, snow_bros_sound, GAME_PLATFORM,};static struct DIR_INFO snow_bros_alt_dirs[] ={ { "snow_bros_alt", }, { "snowbroa", }, { ROMOF("snowbros"), }, { CLONEOF("snowbros"), }, { NULL, },};static struct ROM_INFO snow_bros_alt_roms[] ={ { "snowbros.3a", 0x00020000, 0x10cb37e1, REGION_ROM1, 0x000000, LOAD_8_16, }, { "snowbros.2a", 0x00020000, 0xab91cc1e, REGION_ROM1, 0x000001, LOAD_8_16, }, { "snowbros.4", 0x00008000, 0xe6eab4e4, REGION_ROM2, 0x000000, LOAD_NORMAL, }, { "ch0", 0x00020000, 0x36d84dfe, REGION_GFX1, 0x000000, LOAD_NORMAL, }, { "ch1", 0x00020000, 0x76347256, REGION_GFX1, 0x020000, LOAD_NORMAL, }, { "ch2", 0x00020000, 0xfdaa634c, REGION_GFX1, 0x040000, LOAD_NORMAL, }, { "ch3", 0x00020000, 0x34024aef, REGION_GFX1, 0x060000, LOAD_NORMAL, }, { NULL, 0, 0, 0, 0, 0, },};struct GAME_MAIN game_snow_bros_alt ={ snow_bros_alt_dirs, snow_bros_alt_roms, snow_bros_inputs, snow_bros_dsw, NULL, load_snow_bros, clear_snow_bros, &snow_bros_video, execute_snow_bros_frame, "snowbroa", "Snow Bros (alternate)", "僗僲乕僽儔僓乕僘 (alternate)", COMPANY_ID_TOAPLAN, NULL, 1990, snow_bros_sound, GAME_PLATFORM,};static struct DIR_INFO snow_bros_japanese_dirs[] ={ { "snow_bros_japanese", }, { "snowbroj", }, { ROMOF("snowbros"), }, { CLONEOF("snowbros"), }, { NULL, },};static struct ROM_INFO snow_bros_japanese_roms[] ={ { "snowbros.3", 0x00020000, 0x3f504f9e, REGION_ROM1, 0x000000, LOAD_8_16, }, { "snowbros.2", 0x00020000, 0x854b02bc, REGION_ROM1, 0x000001, LOAD_8_16, }, { "snowbros.4", 0x00008000, 0xe6eab4e4, REGION_ROM2, 0x000000, LOAD_NORMAL, }, { "ch0", 0x00020000, 0x36d84dfe, REGION_GFX1, 0x000000, LOAD_NORMAL, }, { "ch1", 0x00020000, 0x76347256, REGION_GFX1, 0x020000, LOAD_NORMAL, }, { "ch2", 0x00020000, 0xfdaa634c, REGION_GFX1, 0x040000, LOAD_NORMAL, }, { "ch3", 0x00020000, 0x34024aef, REGION_GFX1, 0x060000, LOAD_NORMAL, }, { NULL, 0, 0, 0, 0, 0, },};struct GAME_MAIN game_snow_bros_japanese ={ snow_bros_japanese_dirs, snow_bros_japanese_roms, snow_bros_inputs, snow_bros_dsw, NULL, load_snow_bros, clear_snow_bros, &snow_bros_video, execute_snow_bros_frame, "snowbroj", "Snow Bros (Japanese)", "僗僲乕僽儔僓乕僘", COMPANY_ID_TOAPLAN, NULL, 1990, snow_bros_sound, GAME_PLATFORM,};static struct DIR_INFO snow_bros_alt_2_dirs[] ={ { "snow_bros_alt_2", }, { "snowbra2", }, { "snowbrob", }, { ROMOF("snowbros"), }, { CLONEOF("snowbros"), }, { NULL, },};static struct ROM_INFO snow_bros_alt_2_roms[] ={ { "sbros3-a", 0x00020000, 0x301627d6, REGION_ROM1, 0x000000, LOAD_8_16, }, { "sbros2-a", 0x00020000, 0xf6689f41, REGION_ROM1, 0x000001, LOAD_8_16, }, { "snowbros.4", 0x00008000, 0xe6eab4e4, REGION_ROM2, 0x000000, LOAD_NORMAL, }, { "ch0", 0x00020000, 0x36d84dfe, REGION_GFX1, 0x000000, LOAD_NORMAL, }, { "ch1", 0x00020000, 0x76347256, REGION_GFX1, 0x020000, LOAD_NORMAL, }, { "ch2", 0x00020000, 0xfdaa634c, REGION_GFX1, 0x040000, LOAD_NORMAL, }, { "ch3", 0x00020000, 0x34024aef, REGION_GFX1, 0x060000, LOAD_NORMAL, }, { NULL, 0, 0, 0, 0, 0, },};struct GAME_MAIN game_snow_bros_alt_2 ={ snow_bros_alt_2_dirs, snow_bros_alt_2_roms, snow_bros_inputs, snow_bros_dsw, NULL, load_snow_bros, clear_snow_bros, &snow_bros_video, execute_snow_bros_frame, "snowbrob", "Snow Bros (alternate 2)", "僗僲乕僽儔僓乕僘 (alternate 2)", COMPANY_ID_TOAPLAN, "MIN16-02", 1990, snow_bros_sound, GAME_PLATFORM,};static struct DIR_INFO winter_bobble_dirs[] ={ { "winter_bobble", }, { "wintbob", }, { ROMOF("snowbros"), }, { CLONEOF("snowbros"), }, { NULL, },};static struct ROM_INFO winter_bobble_roms[] ={ { "wb03.bin", 0x00010000, 0xdf56e168, REGION_ROM1, 0x000000, LOAD_8_16, }, { "wb01.bin", 0x00010000, 0x05722f17, REGION_ROM1, 0x000001, LOAD_8_16, }, { "wb04.bin", 0x00010000, 0x53be758d, REGION_ROM1, 0x020000, LOAD_8_16, }, { "wb02.bin", 0x00010000, 0xfc8e292e, REGION_ROM1, 0x020001, LOAD_8_16, }, { "wb05.bin", 0x00010000, 0x53fe59df, REGION_ROM2, 0x000000, LOAD_NORMAL, }, { "wb06.bin", 0x00010000, 0x68204937, REGION_GFX1, 0x000001, LOAD_8_16, }, { "wb07.bin", 0x00010000, 0x53f40978, REGION_GFX1, 0x020001, LOAD_8_16, }, { "wb08.bin", 0x00010000, 0x9497b88c, REGION_GFX1, 0x040001, LOAD_8_16, }, { "wb09.bin", 0x00010000, 0x9be718ca, REGION_GFX1, 0x060001, LOAD_8_16, }, { "wb10.bin", 0x00010000, 0x5fa22b1e, REGION_GFX1, 0x060000, LOAD_8_16, }, { "wb11.bin", 0x00010000, 0x41cb4563, REGION_GFX1, 0x040000, LOAD_8_16, }, { "wb12.bin", 0x00010000, 0xef4e04c7, REGION_GFX1, 0x020000, LOAD_8_16, }, { "wb13.bin", 0x00010000, 0x426921de, REGION_GFX1, 0x000000, LOAD_8_16, }, { NULL, 0, 0, 0, 0, 0, },};static struct GFX_LAYOUT winter_bobble_object ={ 16,16, RGN_FRAC(1,1), 4, { 0, 1, 2, 3 }, { STEP4(3*4,-4), STEP4(7*4,-4), STEP4(11*4,-4), STEP4(15*4,-4) }, { STEP16(0,64) }, 16*64};static struct GFX_LIST winter_bobble_gfx[] ={ { REGION_GFX1, &winter_bobble_object, }, { 0, NULL, },};static struct VIDEO_INFO winter_bobble_video ={ draw_snow_bros, 256,
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -