RGN_FRAC(1,3), 3, { RGN_FRAC(2,3), RGN_FRAC(1,3), RGN_FRAC(0,3) }, //maybe 120 { STEP8(0,1) }, { STEP8(0,8) }, 8*8 }; static struct GfxLayout marinedt_objlayout = { 32,32, RGN_FRAC(1,1), 2, { 0, 4 }, { STEP4(32*8*7,1), STEP4(32*8*6,1), STEP4(32*8*5,1), STEP4(32*8*4,1), STEP4(32*8*3,1), STEP4(32*8*2,1), STEP4(32*8*1,1), STEP4(32*8*0,1) }, { STEP16(0,8), STEP16(16*8,8) }, 32*32*2 }; static struct GfxDecodeInfo marinedt_gfxdecodeinfo[] = { { REGION_GFX1, 0, &marinedt_charlayout, 0, 4 }, //really only 1 colour set? { REGION_GFX2, 0, &marinedt_objlayout, 48, 4 }, { REGION_GFX3, 0, &marinedt_objlayout, 32, 4 }, { -1 } }; PALETTE_INIT( marinedt ) { int i,r,b,g;
RGN_FRAC(1,3), 3, { RGN_FRAC(0,3), RGN_FRAC(1,3), RGN_FRAC(2,3) }, { STEP8(0,1) }, { STEP8(0,8) }, 8*8 }; static const gfx_layout sprcros2_spritelayout = { 32,32, RGN_FRAC(1,3), 3, { RGN_FRAC(0,3), RGN_FRAC(1,3), RGN_FRAC(2,3) }, { STEP8(0,1), STEP8(256,1), STEP8(512,1), STEP8(768,1) }, { STEP16(0,8), STEP16(128,8) }, 32*32 }; static const gfx_layout sprcros2_fglayout = { 8,8, RGN_FRAC(1,1), 2, { 0, 4 }, { STEP4(64,1), STEP4(0,1) }, { STEP8(0,8) }, 8*8*2 }; static GFXDECODE_START( sprcros2 )
4, { RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) }, { 0, 1, 2, 3, 4, 5, 6, 7 }, { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, 8*8 }; static const gfx_layout bg1616_charlayout = { 16,16, RGN_FRAC(1,4), 4, { RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) }, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15 }, { STEP16(0,16) }, 16*16 }; static const gfx_layout bg3232_charlayout = { 32,32, RGN_FRAC(1,4), 4, { RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) }, { 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31 }, { STEP32(0,32) },
PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /*************************************************************************** Graphics Layout ***************************************************************************/ static const gfx_layout layout_8x16x8 = { 8, 16, RGN_FRAC(1, 1), 8, { STEP8(0,1) }, { STEP8(0,8) }, { STEP16(0,8*8) }, 8*16*8 }; static const gfx_layout layout_8x16x2 = { 8, 16, RGN_FRAC(1, 1), 2, { 0,1 }, { STEP4(3*2,-2),STEP4(7*2,-2) }, { STEP16(0,8*2) }, 8*16*2 }; static GFXDECODE_START( quizpun2 )
8,8, RGN_FRAC(1,1), 4, { 0, 1, 2, 3 }, { STEP8(0,4) }, { STEP8(0,32) }, 32*8 }; static const gfx_layout spritelayout = { 16,16, RGN_FRAC(1,1), 4, { 0, 1, 2, 3 }, { STEP16(0,4) }, { STEP16(0,64) }, 128*8 }; /* Graphics Decode Information */ static GFXDECODE_START( docastle ) GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 64 ) GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 0, 32*2 ) GFXDECODE_END /* Machine Drivers */ void docastle_state::machine_reset()
{ 8,8, RGN_FRAC(1,3), 3, { RGN_FRAC(0,3), RGN_FRAC(1,3),RGN_FRAC(2,3)}, {STEP8(7,-1)}, {STEP8(0,8)}, 8*8 }; static const gfx_layout spritelayout = { 16,16, RGN_FRAC(1,4), 4, { RGN_FRAC(1,4), RGN_FRAC(3,4),RGN_FRAC(0,4),RGN_FRAC(2,4)}, {STEP16(15,-1)}, {STEP16(0,16)}, 16*16 }; static GFXDECODE_START( mustache ) GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0x00, 16 ) GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 0x80, 8 ) GFXDECODE_END static TIMER_CALLBACK( clear_irq_cb ) { cputag_set_input_line(machine, "maincpu", 0, CLEAR_LINE); } static INTERRUPT_GEN( assert_irq )
#include "emu.h" #include "cpu/sh2/sh2.h" #include "machine/eepromser.h" #include "sound/ymf278b.h" #include "rendlay.h" #include "includes/psikyo4.h" static const gfx_layout layout_16x16x8 = { 16,16, RGN_FRAC(1,1), 8, {STEP8(0,1)}, {STEP16(0,8)}, {STEP16(0,16*8)}, 16*16*8 }; static GFXDECODE_START( ps4 ) GFXDECODE_ENTRY( "gfx1", 0, layout_16x16x8, 0x000, 0x80 ) // 8bpp tiles GFXDECODE_END WRITE32_MEMBER(psikyo4_state::ps4_eeprom_w) { if (ACCESSING_BITS_16_31) { m_eeprom->di_write((data & 0x00200000) ? 1 : 0); m_eeprom->cs_write((data & 0x00800000) ? ASSERT_LINE : CLEAR_LINE); m_eeprom->clk_write((data & 0x00400000) ? ASSERT_LINE : CLEAR_LINE);
PORT_BIT( 0x8000, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /************************************************************** GFX DECODING **************************************************************/ static const gfx_layout charlayout = { 16,16, /* 16*16 characters */ RGN_FRAC(1,1), 4, /* 4 bits per pixel */ { STEP4(0,1) }, { STEP16(0,4) }, { STEP16(0,4*16) }, 16*16*4 /* every sprite takes 128 consecutive bytes */ }; static const gfx_layout char_8x8_layout = { 8,8, /* 8*8 characters */ RGN_FRAC(1,1), 4, /* 4 bits per pixel */ { STEP4(0,1) }, { STEP8(0,4) }, { STEP8(0,4*8) }, 8*8*4 /* every sprite takes 32 consecutive bytes */ };
PORT_BIT( 0x40, IP_ACTIVE_LOW, IPT_UNKNOWN ) PORT_BIT( 0x80, IP_ACTIVE_LOW, IPT_UNKNOWN ) INPUT_PORTS_END /*************************************************************************** Graphics Layout ***************************************************************************/ static const gfx_layout layout_16x16x4 = { 16, 16, RGN_FRAC(1, 1), 4, { STEP4(0,1) }, { 4*1,4*0, 4*3,4*2, 4*5,4*4, 4*7,4*6, 4*9,4*8, 4*11,4*10, 4*13,4*12, 4*15,4*14 }, { STEP16(0,16*4) }, 16*16*4 }; static const gfx_layout layout_16x16x1 = { 16, 16, RGN_FRAC(1, 1), 1, { 0 }, { STEP8(7*1,-1),STEP8(15*1,-1) }, { STEP16(0,16*1) }, 16*16*1 }; static GFXDECODE_START( gfx_quizpun2 )
8,8, RGN_FRAC(1,1), 1, { 0 }, { 0, 1, 2, 3, 4, 5, 6, 7 }, { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, 8*8*1 }; */ static const gfx_layout wrong_layout3 = /* 16x16x9? seems to be some 18 bytes granularity in roms */ { 16,16, RGN_FRAC(1,1), 8/*9*/, { /*0,*/ 1, 2, 3, 4, 5, 6, 7, 8 }, { STEP16(0,1)/*STEP16(0,9)*/ }, { STEP16(0,16*9) }, 16*16*9 }; static const gfx_decode gfxdecodeinfo[] = { // { REGION_GFX1, 0, &wrong_layout, 0, 0x100 }, // sprites (8x8x?) // { REGION_GFX1, 0, &wrong_layout2, 0, 0x100 }, // tiles (16x16x?) { REGION_GFX1, 0, &wrong_layout3, 0, 0x100 }, // tiles (16x16x9) { -1 } }; /*************************************************************************** Machine driver
RGN_FRAC(1,1), 4, { 8, 0, 24, 16 }, { STEP8(0,1) }, { STEP8(0,32) }, 32*8 }; static const gfx_layout spritelayout = { 16,16, RGN_FRAC(1,4), 4, { RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) }, { STEP8(0,1), STEP8(16*8,1) }, { STEP16(0,8) }, 32*8 }; static const gfx_layout spritelayout2 = { 16,16, RGN_FRAC(1,4), 4, { RGN_FRAC(3,4), RGN_FRAC(2,4), RGN_FRAC(1,4), RGN_FRAC(0,4) }, { STEP8(8,1), STEP8(0,1) }, { STEP16(0,16) }, 32*8 }; static GFXDECODE_START( m107 )
8,8, RGN_FRAC(1,1), 4, { STEP4(0, 1) }, { STEP8(0, 4) }, { STEP8(0, 4*8) }, 8*8*4 }; static const gfx_layout layout_16x16x8 = { 16,16, RGN_FRAC(1,1), 8, { STEP8(0, 1) }, { STEP16(0, 8) }, { STEP16(0, 8*16) }, 16*16*8 }; static GFXDECODE_START( joystand ) GFXDECODE_ENTRY( "tiles", 0, layout_8x8x4, 0, 0x100 ) GFXDECODE_ENTRY( "cart.u5", 0, layout_16x16x8, 0, 0x10 ) GFXDECODE_ENTRY( "cart.u6", 0, layout_16x16x8, 0, 0x10 ) GFXDECODE_ENTRY( "cart.u3", 0, layout_16x16x8, 0, 0x10 ) GFXDECODE_ENTRY( "cart.u4", 0, layout_16x16x8, 0, 0x10 ) GFXDECODE_ENTRY( "cart.u1", 0, layout_16x16x8, 0, 0x10 ) GFXDECODE_ENTRY( "cart.u2", 0, layout_16x16x8, 0, 0x10 ) GFXDECODE_END
/*************************************************************************** Graphics Layouts ***************************************************************************/ static struct GfxLayout layout16x16x6 = { 16,16, RGN_FRAC(1,1), 6, { 0,1,2,3,4,5 }, { STEP4(3*6,-6),STEP4(7*6,-6),STEP4(11*6,-6),STEP4(15*6,-6) }, { STEP16(0,16*6) }, 16*16*6 }; static struct GfxDecodeInfo fantland_gfxdecodeinfo[] = { { REGION_GFX1, 0, &layout16x16x6, 0, 4 }, // [0] Sprites { -1 } }; /*************************************************************************** Machine Drivers ***************************************************************************/
RGN_FRAC(1,2), 4, { RGN_FRAC(1,2)+8,RGN_FRAC(1,2)+0,RGN_FRAC(0,2)+8,RGN_FRAC(0,2)+0 }, { STEP8(0,1) }, { STEP8(0,8*2) }, 8*16 }; static const gfx_layout tile_16x16_layout_5bpp = { 16,16, RGN_FRAC(1,3), 5, { RGN_FRAC(2,3), RGN_FRAC(1,3)+8,RGN_FRAC(1,3)+0,RGN_FRAC(0,3)+8,RGN_FRAC(0,3)+0 }, { STEP8(16*8*2,1), STEP8(0,1) }, { STEP16(0,8*2) }, 32*16 }; static const gfx_layout tile_16x16_layout = { 16,16, RGN_FRAC(1,2), 4, { RGN_FRAC(1,2)+8,RGN_FRAC(1,2)+0,RGN_FRAC(0,2)+8,RGN_FRAC(0,2)+0 }, { STEP8(16*8*2,1), STEP8(0,1) }, { STEP16(0,8*2) }, 32*16 }; static const gfx_layout spritelayout =
static struct GfxDecodeInfo gfxdecodeinfo[] = { { REGION_GFX1, 0, &tilelayout, 0, 16 }, { -1 } /* end of array */ }; /* Winter Bobble */ static struct GfxLayout tilelayout_wb = { 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 GfxDecodeInfo gfxdecodeinfo_wb[] = { { REGION_GFX1, 0, &tilelayout_wb, 0, 16 }, { -1 } }; /* SemiCom */ static struct GfxLayout hyperpac_tilelayout = { 16,16, RGN_FRAC(1,1),
RGN_FRAC(1,1), 4, //{ STEP4(0,8) }, { 24,8,16,0 }, { STEP8(7,-1) }, { STEP8(0,4*8) }, 8*8*4 }; #if 0 static const gfx_layout gfxlayout_16x16x16 = { 16,16, RGN_FRAC(1,1), 16, { STEP16(0,0) }, // >8planes not supported { STEP16(15,-1) }, { STEP16(0,16*1) }, 16*16*16 }; #endif static GFXDECODE_START( igs_m027 ) GFXDECODE_ENTRY( "gfx1", 0, gfxlayout_8x8x4, 0, 16 ) // GFXDECODE_ENTRY( "gfx2", 0, gfxlayout_16x16x16, 0, 16 ) GFXDECODE_END INTERRUPT_GEN_MEMBER(igs_m027_state::igs_majhong_interrupt) { generic_pulse_irq_line(device.execute(), ARM7_FIRQ_LINE, 1);
0x24, 0x25, 0x26, 0x27, 0x2c, 0x2d, 0x2e, 0x2f, 0x34, 0x35, 0x36, 0x37, 0x3c, 0x3d, 0x3e, 0x3f, 0x44, 0x45, 0x46, 0x47, 0x4c, 0x4d, 0x4e, 0x4f, 0x54, 0x55, 0x56, 0x57, 0x5c, 0x5d, 0x5e, 0x5f, 0x64, 0x65, 0x66, 0x67, 0x6c, 0x6d, 0x6e, 0x6f, 0x74, 0x75, 0x76, 0x77, 0x7c, 0x7d, 0x7e, 0x7f }; static const gfx_layout shiplayout = { 64, 16, /* 64x16 sprites */ 4, /* 4 sprites */ 2, /* 2 bits per pixel */ { 0, 0x2000 }, EXTENDED_XOFFS, { STEP16(0x000, 0x080) }, 0x800, /* step */ shiplayout_xoffset, NULL }; static GFXDECODE_START( starshp1 ) GFXDECODE_ENTRY( "gfx1", 0, tilelayout, 0, 1 ) GFXDECODE_ENTRY( "gfx2", 0, spritelayout, 2, 2 ) GFXDECODE_ENTRY( "gfx3", 0, shiplayout, 6, 2 ) GFXDECODE_END static MACHINE_CONFIG_START( starshp1, starshp1_state )
RGN_FRAC(0,3)+8, RGN_FRAC(0,3)+0 }, { STEP8(0,1) }, { STEP8(0,8*2) }, 8*8*2 }; static const gfx_layout lordgun_16x16x6_layout = { 16,16, RGN_FRAC(1,3), 6, { RGN_FRAC(2,3)+8, RGN_FRAC(2,3)+0, RGN_FRAC(1,3)+8, RGN_FRAC(1,3)+0, RGN_FRAC(0,3)+8, RGN_FRAC(0,3)+0 }, { STEP8(0,1),STEP8(8*16*2,1) }, { STEP16(0,8*2) }, 16*16*2 }; static const gfx_layout lordgun_32x32x6_layout = { 32,32, RGN_FRAC(1,3), 6, { RGN_FRAC(2,3)+8, RGN_FRAC(2,3)+0, RGN_FRAC(1,3)+8, RGN_FRAC(1,3)+0, RGN_FRAC(0,3)+8, RGN_FRAC(0,3)+0 }, { STEP8(0,1),STEP8(8*32*2,1),STEP8(8*32*2*2,1),STEP8(8*32*2*3,1) }, { STEP16(0,8*2),STEP16(16*8*2,8*2) }, 32*32*2 };
* * Graphics definitions * *************************************/ static const gfx_layout spritelayout = { 16,16, RGN_FRAC(1,4), 1, { 0 }, { STEP4(3*0x100*8+4,1), STEP4(2*0x100*8+4,1), STEP4(1*0x100*8+4,1), STEP4(0*0x100*8+4,1) }, { STEP16(0,8) }, 16*8 }; static const gfx_layout goallayout = { 8,32, 1, 4, { 4, 5, 6, 7 }, { STEP8(0,8) }, { STEP8(192*8,8*8), STEP16( 0*8,8*8), STEP8(128*8,8*8) }, 0 };
if (m_cause_interrupt) { device.execute().set_input_line(6, HOLD_LINE); m_cause_interrupt = 0; } } static const gfx_layout glass_tilelayout16 = { 16,16, /* 16x16 tiles */ RGN_FRAC(1,2), /* number of tiles */ 4, /* 4 bpp */ { RGN_FRAC(1,2)+8, RGN_FRAC(1,2), 8, 0 }, { STEP8(0,1), STEP8(8*2*16,1), }, { STEP16(0,8*2) }, 8*2*16*2 }; static GFXDECODE_START( gfx_glass ) GFXDECODE_ENTRY( "gfx", 0x000000, glass_tilelayout16, 0, 64 ) GFXDECODE_END WRITE8_MEMBER(glass_state::oki_bankswitch_w) { m_okibank->set_entry(data & 0x0f); } WRITE16_MEMBER(glass_state::coin_w) {
RGN_FRAC(1,2), 4, /* 4 bits per pixel */ { RGN_FRAC(1,2)+0, RGN_FRAC(1,2)+4, 0, 4 }, { STEP4(3,-1), STEP4(11,-1) }, { STEP8(0,16) }, 128 }; static const gfx_layout spritelayout = { 16,16, /* 16*16 tiles */ RGN_FRAC(1,1), 4, /* 4 bits per pixel */ { 8,12,0,4}, { STEP4(3,-1), STEP4(19,-1), STEP4(512+3,-1), STEP4(512+19,-1) }, { STEP16(0,32) }, 1024 }; static const gfx_layout popnrun_charlayout = { 8,8, /* 8*8 characters */ RGN_FRAC(1,1), 2, /* 2 bits per pixel */ { 4, 0 }, { STEP4(8,1), STEP4(0,1) }, { STEP8(0,16) }, 128 }; #ifdef UNUSED_DEFINITION
***************************************************************************/ /* 16x16x8 */ static const gfx_layout layout_16x16x8 = { 16,16, RGN_FRAC(1,4), 8, { RGN_FRAC(3,4)+8, RGN_FRAC(3,4)+0, RGN_FRAC(2,4)+8, RGN_FRAC(2,4)+0, RGN_FRAC(1,4)+8, RGN_FRAC(1,4)+0, RGN_FRAC(0,4)+8, RGN_FRAC(0,4)+0 }, { STEP8(0,1), STEP8(16,1) }, { STEP16(0,16*2) }, 16*16*2 }; static GFXDECODE_START( unico ) GFXDECODE_ENTRY( "gfx1", 0, layout_16x16x8, 0x0, 0x20 ) // [0] Sprites GFXDECODE_ENTRY( "gfx2", 0, layout_16x16x8, 0x0, 0x20 ) // [1] Layers GFXDECODE_END /*************************************************************************** Machine Drivers
{ 0 }, /* no bitplanes */ /* x offsets */ { 0, 1, 2, 3, 4, 5, 6, 7 }, /* y offsets */ { 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 }, 8*8 /* every char takes 8 bytes */ }; static const gfx_layout kanji_layout = { 16, 16, /* 8 x 8 characters */ RGN_FRAC(1,1), /* 512 characters */ 1, /* 1 bits per pixel */ { 0 }, /* no bitplanes */ /* x offsets */ { STEP16(0,1) }, /* y offsets */ { STEP16(0,16) }, 16*16 /* every char takes 8 bytes */ }; static GFXDECODE_START( pcjr ) GFXDECODE_ENTRY( "gfx1", 0x0000, pc_8_charlayout, 3, 1 ) GFXDECODE_END static ADDRESS_MAP_START(ibmpcjr_map, AS_PROGRAM, 8, pcjr_state) ADDRESS_MAP_UNMAP_HIGH AM_RANGE(0xb8000, 0xbffff) AM_DEVICE("pcvideo_pcjr:vram", address_map_bank_device, amap8) AM_RANGE(0xd0000, 0xdffff) AM_DEVREAD("cartslot2", generic_slot_device, read_rom) AM_RANGE(0xe0000, 0xeffff) AM_DEVREAD("cartslot1", generic_slot_device, read_rom)
RGN_FRAC(1,2), 8, { STEP4(RGN_FRAC(1,2),1), STEP4(RGN_FRAC(0,2),1) }, { STEP8(8*8*4*0,4), STEP8(8*8*4*1,4) }, { STEP8(8*8*4*0,4*8), STEP8(8*8*4*2,4*8) }, 16*16*4 }; static const gfx_layout torus_layout_16x16x8 = { 16,16, RGN_FRAC(1,2), 8, { STEP4(RGN_FRAC(1,2),1), STEP4(RGN_FRAC(0,2),1) }, { STEP8(0,4),STEP8(4*8,4) }, { STEP16(0,8*8) }, 128*8 }; static GFXDECODE_START( paradise ) GFXDECODE_ENTRY( "gfx1", 0, layout_16x16x8, 0x100, 1 ) // [0] Sprites GFXDECODE_ENTRY( "gfx2", 0, layout_8x8x4, 0x400, 16 ) // [1] Background GFXDECODE_ENTRY( "gfx3", 0, layout_8x8x8, 0x300, 1 ) // [2] Midground GFXDECODE_ENTRY( "gfx4", 0, layout_8x8x8, 0x000, 1 ) // [3] Foreground GFXDECODE_END static GFXDECODE_START( torus ) GFXDECODE_ENTRY( "gfx1", 0, torus_layout_16x16x8, 0x100, 1 ) // [0] Sprites GFXDECODE_ENTRY( "gfx2", 0, layout_8x8x4, 0x400, 16 ) // [1] Background GFXDECODE_ENTRY( "gfx3", 0, layout_8x8x8, 0x300, 1 ) // [2] Midground GFXDECODE_ENTRY( "gfx4", 0, layout_8x8x8, 0x000, 1 ) // [3] Foreground
/************************************* * * Graphics layouts * *************************************/ static const gfx_layout spritelayout = { 16,32, 64, 3, { RGN_FRAC(0,3), RGN_FRAC(1,3), RGN_FRAC(2,3) }, { STEP8(0,1), STEP8(16*8,1) }, { STEP16(0,8), STEP16(256*64,8) }, 32*8 }; static GFXDECODE_START( gfx_m57 ) GFXDECODE_ENTRY( "gfx1", 0x0000, gfx_8x8x3_planar, 0, 32 ) GFXDECODE_ENTRY( "gfx2", 0x0000, spritelayout, 32*8, 32 ) GFXDECODE_ENTRY( "gfx2", 0x1000, spritelayout, 32*8, 32 ) GFXDECODE_ENTRY( "gfx2", 0x2000, spritelayout, 32*8, 32 ) GFXDECODE_ENTRY( "gfx2", 0x3000, spritelayout, 32*8, 32 ) GFXDECODE_END /************************************* *
}; static const gfx_layout layout8x32x8 = { 8,32, RGN_FRAC(1,2), 8, { STEP8(0,1) }, { 8*0, 8*1, RGN_FRAC(1,2)+8*0, RGN_FRAC(1,2)+8*1, 8*2, 8*3, RGN_FRAC(1,2)+8*2, RGN_FRAC(1,2)+8*3 }, { STEP16(0,8*4), STEP16(16*8*4,8*4) }, 8*32*8/2 }; /* this will decode the big x2 x3 'correctly' however, maybe they're simply not meant to appear correct? */ static const gfx_layout layout8x32x8_rot = { 8,32, RGN_FRAC(1,2), 8, { STEP8(0,1) }, { 8*0, 8*1,
0x1000, // 0x1000 tiles are accessible 4, { STEP4(0,1) }, { STEP4(4*4,4), STEP4(0,4) }, { STEP8(0,4*8) }, 8*8*4 }; static const gfx_layout layout_16x16x4 = { 16, 16, 0x1000, // 0x1000 tiles are accessible 4, { STEP4(0,1) }, { STEP4(4*4,4), STEP4(0,4), STEP4(4*4+8*16*4,4), STEP4(0+8*16*4,4) }, { STEP16(0,4*8) }, 16*16*4 }; static GFXDECODE_START( galaxi ) GFXDECODE_ENTRY( "gfx1", 0x00000, layout_16x16x4, 0, 0x400/0x10 ) GFXDECODE_ENTRY( "gfx1", 0x80000, layout_8x8x4, 0, 0x400/0x10 ) GFXDECODE_END /*************************************************************************** Machine Drivers ***************************************************************************/ void galaxi_state::machine_start() {
1, { 0 }, { STEP8(0,1) }, { STEP32(0,8) }, 0x100 }; static const gfx_layout orbit_upper_sprite_layout = { 8, 16, RGN_FRAC(1,1), 1, { 0 }, { STEP8(0,1) }, { STEP16(0,8) }, 0x100 }; static const gfx_layout orbit_lower_sprite_layout = { 8, 16, RGN_FRAC(1,1), 1, { 0 }, { STEP8(0,1) }, { STEP16(0x80,8) }, 0x100 };
RGN_FRAC(1,2), 2, { RGN_FRAC(0,2), RGN_FRAC(1,2) }, { STEP8(0,1) }, { STEP8(0,8) }, 8*8 }; static const gfx_layout spritelayout = { 16,16, RGN_FRAC(1,2), 2, { RGN_FRAC(0,2), RGN_FRAC(1,2) }, { STEP8(0,1), STEP8(16*8,1) }, { STEP16(0,8) }, 32*8 }; static const UINT32 bgcharlayout_xoffset[256] = { STEP4(0x000,1), STEP4(0x008,1), STEP4(0x010,1), STEP4(0x018,1), STEP4(0x020,1), STEP4(0x028,1), STEP4(0x030,1), STEP4(0x038,1), STEP4(0x040,1), STEP4(0x048,1), STEP4(0x050,1), STEP4(0x058,1), STEP4(0x060,1), STEP4(0x068,1), STEP4(0x070,1), STEP4(0x078,1), STEP4(0x080,1), STEP4(0x088,1), STEP4(0x090,1), STEP4(0x098,1), STEP4(0x0a0,1), STEP4(0x0a8,1), STEP4(0x0b0,1), STEP4(0x0b8,1), STEP4(0x0c0,1), STEP4(0x0c8,1), STEP4(0x0d0,1), STEP4(0x0d8,1), STEP4(0x0e0,1), STEP4(0x0e8,1), STEP4(0x0f0,1), STEP4(0x0f8,1), STEP4(0x100,1), STEP4(0x108,1), STEP4(0x110,1), STEP4(0x118,1), STEP4(0x120,1), STEP4(0x128,1), STEP4(0x130,1), STEP4(0x138,1),
8,8, RGN_FRAC(1,1), 8, { STEP8(0,1) }, { STEP8(0,8) }, { STEP8(0,8*8) }, 8*8*8 }; static const gfx_layout tilelayout = { 16,16, RGN_FRAC(1,1), 4, { STEP4(0,1) }, { STEP16(0,4) }, { STEP16(0,4*16) }, 16*16*4 }; static const gfx_layout spritelayout = { 16,16, RGN_FRAC(1,1), 4, { STEP4(0,1) }, { 1*4, 0*4, 3*4, 2*4, 5*4, 4*4, 7*4, 6*4, 9*4, 8*4, 11*4, 10*4, 13*4, 12*4, 15*4, 14*4 }, { STEP16(0,4*16) }, 16*16*4 };