mirror of
https://github.com/holub/mame
synced 2025-04-21 07:52:35 +03:00
bfm_adr2 moved some logic around (nw)
This commit is contained in:
parent
eaa4b601be
commit
af868c882d
@ -198,7 +198,6 @@ public:
|
||||
#define VFD_DATA 0x40
|
||||
|
||||
#define MASTER_CLOCK (XTAL_4MHz)
|
||||
#define ADDER_CLOCK (XTAL_8MHz)
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
@ -1130,23 +1129,9 @@ static MACHINE_CONFIG_DERIVED( scorpion1_adder2, scorpion1 )
|
||||
MCFG_CPU_PROGRAM_MAP(sc1_adder2) // setup read and write memorymap
|
||||
|
||||
MCFG_DEFAULT_LAYOUT(layout_sc1_vid)
|
||||
MCFG_SCREEN_ADD("adder", RASTER)
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
MCFG_SCREEN_SIZE( 400, 300)
|
||||
MCFG_SCREEN_VISIBLE_AREA( 0, 400-1, 0, 300-1)
|
||||
MCFG_SCREEN_UPDATE_STATIC(adder2)
|
||||
|
||||
MCFG_VIDEO_START( adder2)
|
||||
MCFG_VIDEO_RESET( adder2)
|
||||
|
||||
MCFG_PALETTE_LENGTH(16)
|
||||
|
||||
MCFG_PALETTE_INIT(adder2)
|
||||
MCFG_GFXDECODE(adder2)
|
||||
|
||||
MCFG_CPU_ADD("adder2", M6809, ADDER_CLOCK/4 ) // adder2 board 6809 CPU at 2 Mhz
|
||||
MCFG_CPU_PROGRAM_MAP(adder2_memmap) // setup adder2 board memorymap
|
||||
MCFG_CPU_VBLANK_INT("adder",adder2_vbl) // board has a VBL IRQ
|
||||
|
||||
//MCFG_BFM_ADDER2_ADD("adder2")
|
||||
MCFG_FRAGMENT_ADD(adder2)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/////////////////////////////////////////////////////////////////////////////////////
|
||||
|
@ -2164,22 +2164,8 @@ static MACHINE_CONFIG_START( scorpion2_vid, bfm_sc2_state )
|
||||
MCFG_NVRAM_ADD_CUSTOM_DRIVER("e2ram", bfm_sc2_state, e2ram_init)
|
||||
MCFG_DEFAULT_LAYOUT(layout_sc2_vid)
|
||||
|
||||
MCFG_SCREEN_ADD("adder", RASTER)
|
||||
MCFG_SCREEN_SIZE( 400, 280)
|
||||
MCFG_SCREEN_VISIBLE_AREA( 0, 400-1, 0, 280-1)
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
|
||||
MCFG_VIDEO_START( adder2)
|
||||
MCFG_SCREEN_UPDATE_STATIC(adder2)
|
||||
MCFG_VIDEO_RESET( adder2)
|
||||
|
||||
MCFG_PALETTE_LENGTH(16)
|
||||
MCFG_PALETTE_INIT(adder2)
|
||||
MCFG_GFXDECODE(adder2)
|
||||
|
||||
MCFG_CPU_ADD("adder2", M6809, MASTER_CLOCK/4 ) // adder2 board 6809 CPU at 2 Mhz
|
||||
MCFG_CPU_PROGRAM_MAP(adder2_memmap) // setup adder2 board memorymap
|
||||
MCFG_CPU_VBLANK_INT("adder", adder2_vbl) // board has a VBL IRQ
|
||||
//MCFG_BFM_ADDER2_ADD("adder2")
|
||||
MCFG_FRAGMENT_ADD(adder2)
|
||||
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
MCFG_SOUND_ADD("upd", UPD7759, UPD7759_STANDARD_CLOCK)
|
||||
|
@ -96,6 +96,8 @@ E000-FFFF | R | D D D D D D D D | 8K ROM
|
||||
#include "video/bfm_adr2.h"
|
||||
#include "rendlay.h"
|
||||
#include "tilelgcy.h"
|
||||
#include "drivlgcy.h"
|
||||
#include "scrlegcy.h"
|
||||
|
||||
#ifdef MAME_DEBUG
|
||||
#define VERBOSE 1
|
||||
@ -110,6 +112,9 @@ E000-FFFF | R | D D D D D D D D | 8K ROM
|
||||
#define SL_DISPLAY 0x02 // displayed Adder screen, 1=screen1 0=screen0
|
||||
#define SL_ACCESS 0x01 // accessable Adder screen, 1=screen1 0=screen0
|
||||
|
||||
#define ADDER_CLOCK (XTAL_8MHz)
|
||||
|
||||
|
||||
static int adder2_screen_page_reg; // access/display select
|
||||
static int adder2_c101;
|
||||
static int adder2_rx;
|
||||
@ -176,7 +181,7 @@ static TILE_GET_INFO( get_tile1_info )
|
||||
|
||||
// video initialisation ///////////////////////////////////////////////////
|
||||
|
||||
VIDEO_RESET( adder2 )
|
||||
static VIDEO_RESET( adder2 )
|
||||
{
|
||||
adder2_screen_page_reg = 0;
|
||||
adder2_c101 = 0;
|
||||
@ -195,7 +200,7 @@ VIDEO_RESET( adder2 )
|
||||
}
|
||||
}
|
||||
|
||||
VIDEO_START( adder2 )
|
||||
static VIDEO_START( adder2 )
|
||||
{
|
||||
machine.save().save_item(NAME(adder2_screen_page_reg));
|
||||
machine.save().save_item(NAME(adder2_c101));
|
||||
@ -215,7 +220,7 @@ VIDEO_START( adder2 )
|
||||
}
|
||||
|
||||
// video update ///////////////////////////////////////////////////////////
|
||||
SCREEN_UPDATE_IND16( adder2 )
|
||||
static SCREEN_UPDATE_IND16( adder2 )
|
||||
{
|
||||
const rectangle visible1(0, 400-1, 0, 280-1); //minx,maxx, miny,maxy
|
||||
|
||||
@ -227,7 +232,7 @@ SCREEN_UPDATE_IND16( adder2 )
|
||||
|
||||
// adder2 palette initialisation //////////////////////////////////////////
|
||||
|
||||
PALETTE_INIT( adder2 )
|
||||
static PALETTE_INIT( adder2 )
|
||||
{
|
||||
palette_set_color(machine, 0,MAKE_RGB(0x00,0x00,0x00));
|
||||
palette_set_color(machine, 1,MAKE_RGB(0x00,0x00,0xFF));
|
||||
@ -249,7 +254,7 @@ PALETTE_INIT( adder2 )
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
INTERRUPT_GEN( adder2_vbl )
|
||||
static INTERRUPT_GEN( adder2_vbl )
|
||||
{
|
||||
if ( adder2_c101 & 0x01 )
|
||||
{
|
||||
@ -486,7 +491,7 @@ void adder2_decode_char_roms(running_machine &machine)
|
||||
// adder2 board memorymap /////////////////////////////////////////////////
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
ADDRESS_MAP_START( adder2_memmap, AS_PROGRAM, 8, driver_device )
|
||||
static ADDRESS_MAP_START( adder2_memmap, AS_PROGRAM, 8, driver_device )
|
||||
|
||||
AM_RANGE(0x0000, 0x0000) AM_WRITE_LEGACY(adder2_screen_page_w) // screen access/display select
|
||||
AM_RANGE(0x0000, 0x7FFF) AM_ROMBANK("bank2") // 8k paged ROM (4 pages)
|
||||
@ -523,8 +528,27 @@ static const gfx_layout charlayout =
|
||||
// characters are grouped by 64 (512 pixels)
|
||||
// there are max 128 of these groups
|
||||
|
||||
GFXDECODE_START( adder2 )
|
||||
static GFXDECODE_START( adder2 )
|
||||
GFXDECODE_ENTRY( "gfx1", 0, charlayout, 0, 16 )
|
||||
GFXDECODE_END
|
||||
|
||||
///////////////////////////////////////////////////////////////////////////
|
||||
|
||||
MACHINE_CONFIG_FRAGMENT( adder2 )
|
||||
MCFG_SCREEN_ADD("adder", RASTER)
|
||||
MCFG_SCREEN_SIZE( 400, 280)
|
||||
MCFG_SCREEN_VISIBLE_AREA( 0, 400-1, 0, 280-1)
|
||||
MCFG_SCREEN_REFRESH_RATE(50)
|
||||
|
||||
MCFG_VIDEO_START( adder2)
|
||||
MCFG_SCREEN_UPDATE_STATIC(adder2)
|
||||
MCFG_VIDEO_RESET( adder2)
|
||||
|
||||
MCFG_PALETTE_LENGTH(16)
|
||||
MCFG_PALETTE_INIT(adder2)
|
||||
MCFG_GFXDECODE(adder2)
|
||||
|
||||
MCFG_CPU_ADD("adder2", M6809, ADDER_CLOCK/4 ) // adder2 board 6809 CPU at 2 Mhz
|
||||
MCFG_CPU_PROGRAM_MAP(adder2_memmap) // setup adder2 board memorymap
|
||||
MCFG_CPU_VBLANK_INT("adder", adder2_vbl) // board has a VBL IRQ
|
||||
MACHINE_CONFIG_END
|
||||
|
@ -5,17 +5,6 @@ int adder2_receive(void);
|
||||
void adder2_send(int data);
|
||||
int adder2_status(void);
|
||||
|
||||
GFXDECODE_EXTERN( adder2 );
|
||||
void adder2_decode_char_roms(running_machine &machine);
|
||||
|
||||
MACHINE_RESET( adder2 );
|
||||
INTERRUPT_GEN( adder2_vbl );
|
||||
|
||||
ADDRESS_MAP_EXTERN( adder2_memmap, 8 );
|
||||
|
||||
VIDEO_START( adder2 );
|
||||
VIDEO_RESET( adder2 );
|
||||
SCREEN_UPDATE_IND16( adder2 );
|
||||
PALETTE_INIT( adder2 );
|
||||
|
||||
MACHINE_CONFIG_EXTERN(adder2);
|
||||
#endif
|
||||
|
Loading…
Reference in New Issue
Block a user