📄 segar.c
字号:
{ 0, 0x2000*8 }, /* separated by 0x2000 bytes */
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
{ 7, 6, 5, 4, 3, 2, 1, 0 }, /* pretty straightforward layout */
8*8 /* every char takes 8 consecutive bytes */
};
static struct GfxLayout spacelayout =
{
8,8, /* 16*8 characters */
256*2, /* 256 characters */
6, /* 6 bits per pixel */
{ 0, 0x1000*8, 0x2000*8, 0x3000*8, 0x4000*8, 0x5000*8 }, /* separated by 0x1000 bytes (1 EPROM per bit) */
{ 0*8, 1*8, 2*8, 3*8, 4*8, 5*8, 6*8, 7*8 },
{ 7, 6, 5, 4, 3, 2, 1, 0 }, /* pretty straightforward layout */
8*8 /* every char takes 16 consecutive bytes */
};
static struct GfxDecodeInfo gfxdecodeinfo[] =
{
{ 0, 0xE800, &charlayout, 0x01, 0x10 }, /* offset into colors, # of colors */
{ -1 } /* end of array */
};
static struct GfxDecodeInfo monsterb_gfxdecodeinfo[] =
{
{ 0, 0xE800, &charlayout, 0x01, 0x10 }, /* offset into colors, # of colors */
{ 1, 0x0000, &backlayout, 0x41, 0x10 }, /* offset into colors, # of colors */
{ -1 } /* end of array */
};
static struct GfxDecodeInfo spaceod_gfxdecodeinfo[] =
{
{ 0, 0xE800, &charlayout, 0x01, 0x10 }, /* offset into colors, # of colors */
{ 1, 0x0000, &spacelayout, 0x41, 1 }, /* offset into colors, # of colors */
{ -1 } /* end of array */
};
/***************************************************************************
Game ROMs
***************************************************************************/
ROM_START( astrob_rom )
ROM_REGION(0x14000) /* 64k for code + space for background (unused) */
ROM_LOAD( "829b", 0x0000, 0x0800, 0x14ae953c ) /* U25 */
ROM_LOAD( "888", 0x0800, 0x0800, 0x42601744 ) /* U1 */
ROM_LOAD( "889", 0x1000, 0x0800, 0xdd9ab173 ) /* U2 */
ROM_LOAD( "890", 0x1800, 0x0800, 0x26f5b4cf ) /* U3 */
ROM_LOAD( "891", 0x2000, 0x0800, 0x6437c95f ) /* U4 */
ROM_LOAD( "892", 0x2800, 0x0800, 0x2d3c949b ) /* U5 */
ROM_LOAD( "893", 0x3000, 0x0800, 0xccdb1a76 ) /* U6 */
ROM_LOAD( "894", 0x3800, 0x0800, 0x66ae5ced ) /* U7 */
ROM_LOAD( "895", 0x4000, 0x0800, 0x202cf3a3 ) /* U8 */
ROM_LOAD( "896", 0x4800, 0x0800, 0xb603fe23 ) /* U9 */
ROM_LOAD( "897", 0x5000, 0x0800, 0x989198c6 ) /* U10 */
ROM_LOAD( "898", 0x5800, 0x0800, 0xef2bab04 ) /* U11 */
ROM_LOAD( "899", 0x6000, 0x0800, 0xe0d189ee ) /* U12 */
ROM_LOAD( "900", 0x6800, 0x0800, 0x682d4604 ) /* U13 */
ROM_LOAD( "901", 0x7000, 0x0800, 0x9ed11c61 ) /* U14 */
ROM_LOAD( "902", 0x7800, 0x0800, 0xb4d6c330 ) /* U15 */
ROM_LOAD( "903", 0x8000, 0x0800, 0x84acc38c ) /* U16 */
ROM_LOAD( "904", 0x8800, 0x0800, 0x5eba3097 ) /* U16 */
ROM_LOAD( "905", 0x9000, 0x0800, 0x4f08f9f4 ) /* U16 */
ROM_LOAD( "906", 0x9800, 0x0800, 0x58149df1 ) /* U16 */
ROM_REGION_DISPOSE(0x1000) /* temporary space for graphics (disposed after conversion) */
/* empty memory region - not used by the game, but needed because the main */
/* core currently always frees region #1 after initialization. */
ROM_REGION(0x10000) /* 64k for speech code */
ROM_LOAD( "808b", 0x0000, 0x0800, 0x5988c767 ) /* U7 */
ROM_LOAD( "809a", 0x0800, 0x0800, 0x893f228d ) /* U6 */
ROM_LOAD( "810", 0x1000, 0x0800, 0xff0163c5 ) /* U5 */
ROM_LOAD( "811", 0x1800, 0x0800, 0x219f3978 ) /* U4 */
ROM_LOAD( "812a", 0x2000, 0x0800, 0x410ad0d2 ) /* U3 */
ROM_END
ROM_START( astrob1_rom )
ROM_REGION(0x14000) /* 64k for code + space for background (unused) */
ROM_LOAD( "829", 0x0000, 0x0800, 0x5f66046e ) /* U25 */
ROM_LOAD( "837", 0x0800, 0x0800, 0xce9c3763 ) /* U1 */
ROM_LOAD( "838", 0x1000, 0x0800, 0x3557289e ) /* U2 */
ROM_LOAD( "839", 0x1800, 0x0800, 0xc88bda24 ) /* U3 */
ROM_LOAD( "840", 0x2000, 0x0800, 0x24c9fe23 ) /* U4 */
ROM_LOAD( "841", 0x2800, 0x0800, 0xf153c683 ) /* U5 */
ROM_LOAD( "842", 0x3000, 0x0800, 0x4c5452b2 ) /* U6 */
ROM_LOAD( "843", 0x3800, 0x0800, 0x673161a6 ) /* U7 */
ROM_LOAD( "844", 0x4000, 0x0800, 0x6bfc59fd ) /* U8 */
ROM_LOAD( "845", 0x4800, 0x0800, 0x018623f3 ) /* U9 */
ROM_LOAD( "846", 0x5000, 0x0800, 0x4d7c5fb3 ) /* U10 */
ROM_LOAD( "847", 0x5800, 0x0800, 0x24d1d50a ) /* U11 */
ROM_LOAD( "848", 0x6000, 0x0800, 0x1c145541 ) /* U12 */
ROM_LOAD( "849", 0x6800, 0x0800, 0xd378c169 ) /* U13 */
ROM_LOAD( "850", 0x7000, 0x0800, 0x9da673ae ) /* U14 */
ROM_LOAD( "851", 0x7800, 0x0800, 0x3d4cf9f0 ) /* U15 */
ROM_LOAD( "852", 0x8000, 0x0800, 0xaf88a97e ) /* U16 */
ROM_REGION_DISPOSE(0x1000) /* temporary space for graphics (disposed after conversion) */
/* empty memory region - not used by the game, but needed because the main */
/* core currently always frees region #1 after initialization. */
ROM_REGION(0x10000) /* 64k for speech code */
ROM_LOAD( "808b", 0x0000, 0x0800, 0x5988c767 ) /* U7 */
ROM_LOAD( "809a", 0x0800, 0x0800, 0x893f228d ) /* U6 */
ROM_LOAD( "810", 0x1000, 0x0800, 0xff0163c5 ) /* U5 */
ROM_LOAD( "811", 0x1800, 0x0800, 0x219f3978 ) /* U4 */
ROM_LOAD( "812a", 0x2000, 0x0800, 0x410ad0d2 ) /* U3 */
ROM_END
ROM_START( s005_rom )
ROM_REGION(0x14000) /* 64k for code + space for background (unused) */
ROM_LOAD( "1346b.u25", 0x0000, 0x0800, 0x8e68533e ) /* U25 */
ROM_LOAD( "5092.u1", 0x0800, 0x0800, 0x29e10a81 ) /* U1 */
ROM_LOAD( "5093.u2", 0x1000, 0x0800, 0xe1edc3df ) /* U2 */
ROM_LOAD( "5094.u3", 0x1800, 0x0800, 0x995773bb ) /* U3 */
ROM_LOAD( "5095.u4", 0x2000, 0x0800, 0xf887f575 ) /* U4 */
ROM_LOAD( "5096.u5", 0x2800, 0x0800, 0x5545241e ) /* U5 */
ROM_LOAD( "5097.u6", 0x3000, 0x0800, 0x428edb54 ) /* U6 */
ROM_LOAD( "5098.u7", 0x3800, 0x0800, 0x5bcb9d63 ) /* U7 */
ROM_LOAD( "5099.u8", 0x4000, 0x0800, 0x0ea24ba3 ) /* U8 */
ROM_LOAD( "5100.u9", 0x4800, 0x0800, 0xa79af131 ) /* U9 */
ROM_LOAD( "5101.u10", 0x5000, 0x0800, 0x8a1cdae0 ) /* U10 */
ROM_LOAD( "5102.u11", 0x5800, 0x0800, 0x70826a15 ) /* U11 */
ROM_LOAD( "5103.u12", 0x6000, 0x0800, 0x7f80c5b0 ) /* U12 */
ROM_LOAD( "5104.u13", 0x6800, 0x0800, 0x0140930e ) /* U13 */
ROM_LOAD( "5105.u14", 0x7000, 0x0800, 0x17807a05 ) /* U14 */
ROM_LOAD( "5106.u15", 0x7800, 0x0800, 0xc7cdfa9d ) /* U15 */
ROM_LOAD( "5107.u16", 0x8000, 0x0800, 0x95f8a2e6 ) /* U16 */
ROM_LOAD( "5108.u17", 0x8800, 0x0800, 0xd371cacd ) /* U17 */
ROM_LOAD( "5109.u18", 0x9000, 0x0800, 0x48a20617 ) /* U18 */
ROM_LOAD( "5110.u19", 0x9800, 0x0800, 0x7d26111a ) /* U19 */
ROM_LOAD( "5111.u20", 0xA000, 0x0800, 0xa888e175 ) /* U20 */
ROM_REGION_DISPOSE(0x1000) /* temporary space for graphics (disposed after conversion) */
/* empty memory region - not used by the game, but needed because the main */
/* core currently always frees region #1 after initialization. */
ROM_REGION(0x800) /* 2k for sound */
ROM_LOAD( "epr-1286.16", 0x0000, 0x0800, 0xfbe0d501 )
ROM_END
ROM_START( monsterb_rom )
ROM_REGION(0x14000) /* 64k for code + space for background */
ROM_LOAD( "1778cpu.bin", 0x0000, 0x0800, 0x19761be3 ) /* U25 */
ROM_LOAD( "1779.bin", 0x0800, 0x0800, 0x5b67dc4c ) /* U1 */
ROM_LOAD( "1780.bin", 0x1000, 0x0800, 0xfac5aac6 ) /* U2 */
ROM_LOAD( "1781.bin", 0x1800, 0x0800, 0x3b104103 ) /* U3 */
ROM_LOAD( "1782.bin", 0x2000, 0x0800, 0xc1523553 ) /* U4 */
ROM_LOAD( "1783.bin", 0x2800, 0x0800, 0xe0ea08c5 ) /* U5 */
ROM_LOAD( "1784.bin", 0x3000, 0x0800, 0x48976d11 ) /* U6 */
ROM_LOAD( "1785.bin", 0x3800, 0x0800, 0x297d33ae ) /* U7 */
ROM_LOAD( "1786.bin", 0x4000, 0x0800, 0xef94c8f4 ) /* U8 */
ROM_LOAD( "1787.bin", 0x4800, 0x0800, 0x1b62994e ) /* U9 */
ROM_LOAD( "1788.bin", 0x5000, 0x0800, 0xa2e32d91 ) /* U10 */
ROM_LOAD( "1789.bin", 0x5800, 0x0800, 0x08a172dc ) /* U11 */
ROM_LOAD( "1790.bin", 0x6000, 0x0800, 0x4e320f9d ) /* U12 */
ROM_LOAD( "1791.bin", 0x6800, 0x0800, 0x3b4cba31 ) /* U13 */
ROM_LOAD( "1792.bin", 0x7000, 0x0800, 0x7707b9f8 ) /* U14 */
ROM_LOAD( "1793.bin", 0x7800, 0x0800, 0xa5d05155 ) /* U15 */
ROM_LOAD( "1794.bin", 0x8000, 0x0800, 0xe4813da9 ) /* U16 */
ROM_LOAD( "1795.bin", 0x8800, 0x0800, 0x4cd6ed88 ) /* U17 */
ROM_LOAD( "1796.bin", 0x9000, 0x0800, 0x9f141a42 ) /* U18 */
ROM_LOAD( "1797.bin", 0x9800, 0x0800, 0xec14ad16 ) /* U19 */
ROM_LOAD( "1798.bin", 0xA000, 0x0800, 0x86743a4f ) /* U20 */
ROM_LOAD( "1799.bin", 0xA800, 0x0800, 0x41198a83 ) /* U21 */
ROM_LOAD( "1800.bin", 0xB000, 0x0800, 0x6a062a04 ) /* U22 */
ROM_LOAD( "1801.bin", 0xB800, 0x0800, 0xf38488fe ) /* U23 */
/* Background pattern ROM */
ROM_LOAD( "1518a.bin", 0x10000, 0x2000, 0x2d5932fe ) /* ??? */
ROM_REGION_DISPOSE(0x4000) /* 16k for background graphics */
ROM_LOAD( "1516.bin", 0x0000, 0x2000, 0xe93a2281 ) /* ??? */
ROM_LOAD( "1517.bin", 0x2000, 0x2000, 0x1e589101 ) /* ??? */
ROM_REGION(0x2000) /* 8k for sound */
ROM_LOAD( "1543snd.bin", 0x0000, 0x1000, 0xb525ce8f ) /* ??? */
ROM_LOAD( "1544snd.bin", 0x1000, 0x1000, 0x56c79fb0 ) /* ??? */
ROM_END
ROM_START( spaceod_rom )
ROM_REGION(0x14000) /* 64k for code + space for background */
ROM_LOAD( "so-959.dat", 0x0000, 0x0800, 0xbbae3cd1 ) /* U25 */
ROM_LOAD( "so-941.dat", 0x0800, 0x0800, 0x8b63585a ) /* U1 */
ROM_LOAD( "so-942.dat", 0x1000, 0x0800, 0x93e7d900 ) /* U2 */
ROM_LOAD( "so-943.dat", 0x1800, 0x0800, 0xe2f5dc10 ) /* U3 */
ROM_LOAD( "so-944.dat", 0x2000, 0x0800, 0xb5ab01e9 ) /* U4 */
ROM_LOAD( "so-945.dat", 0x2800, 0x0800, 0x6c5fa1b1 ) /* U5 */
ROM_LOAD( "so-946.dat", 0x3000, 0x0800, 0x4cef25d6 ) /* U6 */
ROM_LOAD( "so-947.dat", 0x3800, 0x0800, 0x7220fc42 ) /* U7 */
ROM_LOAD( "so-948.dat", 0x4000, 0x0800, 0x94bcd726 ) /* U8 */
ROM_LOAD( "so-949.dat", 0x4800, 0x0800, 0xe11e7034 ) /* U9 */
ROM_LOAD( "so-950.dat", 0x5000, 0x0800, 0x70a7a3b4 ) /* U10 */
ROM_LOAD( "so-951.dat", 0x5800, 0x0800, 0xf5f0d3f9 ) /* U11 */
ROM_LOAD( "so-952.dat", 0x6000, 0x0800, 0x5bf19a12 ) /* U12 */
ROM_LOAD( "so-953.dat", 0x6800, 0x0800, 0x8066ac83 ) /* U13 */
ROM_LOAD( "so-954.dat", 0x7000, 0x0800, 0x44ed6a0d ) /* U14 */
ROM_LOAD( "so-955.dat", 0x7800, 0x0800, 0xb5e2748d ) /* U15 */
ROM_LOAD( "so-956.dat", 0x8000, 0x0800, 0x97de45a9 ) /* U16 */
ROM_LOAD( "so-957.dat", 0x8800, 0x0800, 0xc14b98c4 ) /* U17 */
ROM_LOAD( "so-958.dat", 0x9000, 0x0800, 0x4c0a7242 ) /* U18 */
/* Background Pattern ROMs */
ROM_LOAD( "epr-09.dat", 0x10000, 0x1000, 0xa87bfc0a )
ROM_LOAD( "epr-10.dat", 0x11000, 0x1000, 0x8ce88100 )
ROM_LOAD( "epr-11.dat", 0x12000, 0x1000, 0x1bdbdab5 )
ROM_LOAD( "epr-12.dat", 0x13000, 0x1000, 0x629a4a1f )
ROM_REGION_DISPOSE(0x6000) /* for backgrounds */
ROM_LOAD( "epr-13.dat", 0x0000, 0x1000, 0x74bd7f9a )
ROM_LOAD( "epr-14.dat", 0x1000, 0x1000, 0xd2ebd915 )
ROM_LOAD( "epr-15.dat", 0x2000, 0x1000, 0xae0e5d71 )
ROM_LOAD( "epr-16.dat", 0x3000, 0x1000, 0xacdf203e )
ROM_LOAD( "epr-17.dat", 0x4000, 0x1000, 0x6c7490c0 )
ROM_LOAD( "epr-18.dat", 0x5000, 0x1000, 0x24a81c04 )
ROM_END
ROM_START( pignewt_rom )
ROM_REGION(0x14000) /* 64k for code + space for background */
ROM_LOAD( "cpu.u25", 0x0000, 0x0800, 0x00000000 ) /* U25 */
ROM_LOAD( "1888c", 0x0800, 0x0800, 0xfd18ed09 ) /* U1 */
ROM_LOAD( "1889c", 0x1000, 0x0800, 0xf633f5ff ) /* U2 */
ROM_LOAD( "1890c", 0x1800, 0x0800, 0x22009d7f ) /* U3 */
ROM_LOAD( "1891c", 0x2000, 0x0800, 0x1540a7d6 ) /* U4 */
ROM_LOAD( "1892c", 0x2800, 0x0800, 0x960385d0 ) /* U5 */
ROM_LOAD( "1893c", 0x3000, 0x0800, 0x58c5c461 ) /* U6 */
ROM_LOAD( "1894c", 0x3800, 0x0800, 0x5817a59d ) /* U7 */
ROM_LOAD( "1895c", 0x4000, 0x0800, 0x812f67d7 ) /* U8 */
ROM_LOAD( "1896c", 0x4800, 0x0800, 0xcc0ecdd0 ) /* U9 */
ROM_LOAD( "1897c", 0x5000, 0x0800, 0x7820e93b ) /* U10 */
ROM_LOAD( "1898c", 0x5800, 0x0800, 0xe9a10ded ) /* U11 */
ROM_LOAD( "1899c", 0x6000, 0x0800, 0xd7ddf02b ) /* U12 */
ROM_LOAD( "1900c", 0x6800, 0x0800, 0x8deff4e5 ) /* U13 */
ROM_LOAD( "1901c", 0x7000, 0x0800, 0x46051305 ) /* U14 */
ROM_LOAD( "1902c", 0x7800, 0x0800, 0xcb937e19 ) /* U15 */
ROM_LOAD( "1903c", 0x8000, 0x0800, 0x53239f12 ) /* U16 */
ROM_LOAD( "1913c", 0x8800, 0x0800, 0x4652cb0c ) /* U17 */
ROM_LOAD( "1914c", 0x9000, 0x0800, 0xcb758697 ) /* U18 */
ROM_LOAD( "1915c", 0x9800, 0x0800, 0x9f3bad66 ) /* U19 */
ROM_LOAD( "1916c", 0xA000, 0x0800, 0x5bb6f61e ) /* U20 */
ROM_LOAD( "1917c", 0xA800, 0x0800, 0x725e2c87 ) /* U21 */
/* Background Pattern ROMs? */
ROM_LOAD( "1906c.bg", 0x10000, 0x1000, 0xc79d33ce ) /* ??? */
ROM_LOAD( "1907c.bg", 0x11000, 0x1000, 0xbc839d3c ) /* ??? */
ROM_LOAD( "1908c.bg", 0x12000, 0x1000, 0x92cb14da ) /* ??? */
ROM_REGION_DISPOSE(0x4000) /* for background graphics */
ROM_LOAD( "1904c.bg", 0x0000, 0x2000, 0xe9de2c8b ) /* ??? */
ROM_LOAD( "1905c.bg", 0x2000, 0x2000, 0xaf7cfe0b ) /* ??? */
/* SOUND ROMS ARE PROBABLY MISSING! */
ROM_END
ROM_START( pignewta_rom )
ROM_REGION(0x14000) /* 64k for code + space for background */
ROM_LOAD( "cpu.u25", 0x0000, 0x0800, 0x00000000 ) /* U25 */
ROM_LOAD( "1888a", 0x0800, 0x0800, 0x491c0835 ) /* U1 */
ROM_LOAD( "1889a", 0x1000, 0x0800, 0x0dcf0af2 ) /* U2 */
ROM_LOAD( "1890a", 0x1800, 0x0800, 0x640b8b2e ) /* U3 */
ROM_LOAD( "1891a", 0x2000, 0x0800, 0x7b8aa07f ) /* U4 */
ROM_LOAD( "1892a", 0x2800, 0x0800, 0xafc545cb ) /* U5 */
ROM_LOAD( "1893a", 0x3000, 0x0800, 0x82448619 ) /* U6 */
ROM_LOAD( "1894a", 0x3800, 0x0800, 0x4302dbfb ) /* U7 */
ROM_LOAD( "1895a", 0x4000, 0x0800, 0x137ebaaf ) /* U8 */
ROM_LOAD( "1896", 0x4800, 0x0800, 0x1604c811 ) /* U9 */
ROM_LOAD( "1897", 0x5000, 0x0800, 0x3abee406 ) /* U10 */
ROM_LOAD( "1898", 0x5800, 0x0800, 0xa96410dc ) /* U11 */
ROM_LOAD( "1899", 0x6000, 0x0800, 0x612568a5 ) /* U12 */
ROM_LOAD( "1900", 0x6800, 0x0800, 0x5b231cea ) /* U13 */
ROM_LOAD( "1901", 0x7000, 0x0800, 0x3fd74b05 ) /* U14 */
ROM_LOAD( "1902", 0x7800, 0x0800, 0xd568fc22 ) /* U15 */
ROM_LOAD( "1903", 0x8000, 0x0800, 0x7d16633b ) /* U16 */
ROM_LOAD( "1913", 0x8800, 0x0800, 0xfa4be04f ) /* U17 */
ROM_LOAD( "1914", 0x9000, 0x0800, 0x08253c50 ) /* U18 */
ROM_LOAD( "1915", 0x9800, 0x0800, 0xde786c3b ) /* U19 */
/* Background Pattern ROMs? */
/* NOTE: No background ROMs for set A have been dumped, so the
ROMs from set C have been copied and renamed. This is to
provide a reminder that these ROMs still need to be dumped. */
ROM_LOAD( "1906a.bg", 0x10000, 0x1000, 0x00000000 ) /* ??? */
ROM_LOAD( "1907a.bg", 0x11000, 0x1000, 0x00000000 ) /* ??? */
ROM_LOAD( "1908a.bg", 0x12000, 0x1000, 0x00000000 ) /* ??? */
ROM_REGION_DISPOSE(0x4000) /* for background graphics */
ROM_LOAD( "1904a.bg", 0x0000, 0x2000, 0x00000000 ) /* ??? */
ROM_LOAD( "1905a.bg", 0x2000, 0x2000, 0x00000000 ) /* ??? */
/* SOUND ROMS ARE PROBABLY MISSING! */
ROM_END
/***************************************************************************
Security Decode "chips"
***************************************************************************/
void astrob_decode(void)
{
/* This game uses the 315-0062 security chip */
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -