mirror of
https://github.com/holub/mame
synced 2025-06-07 13:23:50 +03:00
apricot: need to add ram this way, otherwise the iop can't access it
This commit is contained in:
parent
dced6eab22
commit
72dd919d34
@ -11,6 +11,7 @@
|
|||||||
|
|
||||||
#include "cpu/i86/i86.h"
|
#include "cpu/i86/i86.h"
|
||||||
#include "cpu/i8089/i8089.h"
|
#include "cpu/i8089/i8089.h"
|
||||||
|
#include "machine/ram.h"
|
||||||
#include "machine/pit8253.h"
|
#include "machine/pit8253.h"
|
||||||
#include "machine/i8255.h"
|
#include "machine/i8255.h"
|
||||||
#include "machine/pic8259.h"
|
#include "machine/pic8259.h"
|
||||||
@ -36,6 +37,7 @@ public:
|
|||||||
driver_device(mconfig, type, tag),
|
driver_device(mconfig, type, tag),
|
||||||
m_cpu(*this, "ic91"),
|
m_cpu(*this, "ic91"),
|
||||||
m_iop(*this, "ic71"),
|
m_iop(*this, "ic71"),
|
||||||
|
m_ram(*this, RAM_TAG),
|
||||||
m_sn(*this, "ic7"),
|
m_sn(*this, "ic7"),
|
||||||
m_crtc(*this, "ic30"),
|
m_crtc(*this, "ic30"),
|
||||||
m_ppi(*this, "ic17"),
|
m_ppi(*this, "ic17"),
|
||||||
@ -89,6 +91,7 @@ protected:
|
|||||||
private:
|
private:
|
||||||
required_device<i8086_cpu_device> m_cpu;
|
required_device<i8086_cpu_device> m_cpu;
|
||||||
required_device<i8089_device> m_iop;
|
required_device<i8089_device> m_iop;
|
||||||
|
required_device<ram_device> m_ram;
|
||||||
required_device<sn76489_device> m_sn;
|
required_device<sn76489_device> m_sn;
|
||||||
required_device<mc6845_device> m_crtc;
|
required_device<mc6845_device> m_crtc;
|
||||||
required_device<i8255_device> m_ppi;
|
required_device<i8255_device> m_ppi;
|
||||||
@ -299,6 +302,7 @@ MC6845_UPDATE_ROW( apricot_state::crtc_update_row )
|
|||||||
|
|
||||||
void apricot_state::machine_start()
|
void apricot_state::machine_start()
|
||||||
{
|
{
|
||||||
|
membank("ram")->set_base(m_ram->pointer());
|
||||||
}
|
}
|
||||||
|
|
||||||
IRQ_CALLBACK_MEMBER( apricot_state::irq_callback )
|
IRQ_CALLBACK_MEMBER( apricot_state::irq_callback )
|
||||||
@ -316,7 +320,7 @@ IRQ_CALLBACK_MEMBER( apricot_state::irq_callback )
|
|||||||
//**************************************************************************
|
//**************************************************************************
|
||||||
|
|
||||||
static ADDRESS_MAP_START( apricot_mem, AS_PROGRAM, 16, apricot_state )
|
static ADDRESS_MAP_START( apricot_mem, AS_PROGRAM, 16, apricot_state )
|
||||||
AM_RANGE(0x00000, 0x3ffff) AM_RAM
|
AM_RANGE(0x00000, 0x3ffff) AM_RAMBANK("ram")
|
||||||
AM_RANGE(0xf0000, 0xf0fff) AM_MIRROR(0x7000) AM_RAM AM_SHARE("screen_buffer")
|
AM_RANGE(0xf0000, 0xf0fff) AM_MIRROR(0x7000) AM_RAM AM_SHARE("screen_buffer")
|
||||||
AM_RANGE(0xfc000, 0xfffff) AM_MIRROR(0x4000) AM_ROM AM_REGION("bootstrap", 0)
|
AM_RANGE(0xfc000, 0xfffff) AM_MIRROR(0x4000) AM_ROM AM_REGION("bootstrap", 0)
|
||||||
ADDRESS_MAP_END
|
ADDRESS_MAP_END
|
||||||
@ -355,6 +359,10 @@ static MACHINE_CONFIG_START( apricot, apricot_state )
|
|||||||
MCFG_I8089_SINTR1(DEVWRITELINE("ic31", pic8259_device, ir0_w))
|
MCFG_I8089_SINTR1(DEVWRITELINE("ic31", pic8259_device, ir0_w))
|
||||||
MCFG_I8089_SINTR2(DEVWRITELINE("ic31", pic8259_device, ir1_w))
|
MCFG_I8089_SINTR2(DEVWRITELINE("ic31", pic8259_device, ir1_w))
|
||||||
|
|
||||||
|
// ram
|
||||||
|
MCFG_RAM_ADD(RAM_TAG)
|
||||||
|
MCFG_RAM_DEFAULT_SIZE("256k")
|
||||||
|
|
||||||
// video hardware
|
// video hardware
|
||||||
MCFG_SCREEN_ADD("screen", RASTER)
|
MCFG_SCREEN_ADD("screen", RASTER)
|
||||||
MCFG_SCREEN_SIZE(800, 400)
|
MCFG_SCREEN_SIZE(800, 400)
|
||||||
|
Loading…
Reference in New Issue
Block a user