mirror of
https://github.com/holub/mame
synced 2025-07-04 01:18:59 +03:00
qvt201: Add SCN2672 device (nw)
This commit is contained in:
parent
f0b22a67f8
commit
b264c78526
@ -10,7 +10,7 @@ Skeleton driver for Qume QVT-201 & QVT-202 display terminals.
|
|||||||
#include "cpu/z80/z80.h"
|
#include "cpu/z80/z80.h"
|
||||||
#include "machine/mc68681.h"
|
#include "machine/mc68681.h"
|
||||||
#include "machine/nvram.h"
|
#include "machine/nvram.h"
|
||||||
//#include "video/scn2672.h"
|
#include "video/scn2674.h"
|
||||||
#include "screen.h"
|
#include "screen.h"
|
||||||
|
|
||||||
class qvt201_state : public driver_device
|
class qvt201_state : public driver_device
|
||||||
@ -25,11 +25,12 @@ public:
|
|||||||
, m_attram(*this, "attram")
|
, m_attram(*this, "attram")
|
||||||
{ }
|
{ }
|
||||||
|
|
||||||
u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
|
||||||
|
|
||||||
void qvt201(machine_config &config);
|
void qvt201(machine_config &config);
|
||||||
void mem_map(address_map &map);
|
|
||||||
private:
|
private:
|
||||||
|
SCN2672_DRAW_CHARACTER_MEMBER(draw_character);
|
||||||
|
|
||||||
|
void mem_map(address_map &map);
|
||||||
|
|
||||||
required_device<cpu_device> m_maincpu;
|
required_device<cpu_device> m_maincpu;
|
||||||
required_device<screen_device> m_screen;
|
required_device<screen_device> m_screen;
|
||||||
required_region_ptr<u8> m_p_chargen;
|
required_region_ptr<u8> m_p_chargen;
|
||||||
@ -38,16 +39,15 @@ private:
|
|||||||
};
|
};
|
||||||
|
|
||||||
|
|
||||||
u32 qvt201_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
|
SCN2672_DRAW_CHARACTER_MEMBER(qvt201_state::draw_character)
|
||||||
{
|
{
|
||||||
return 0;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void qvt201_state::mem_map(address_map &map)
|
void qvt201_state::mem_map(address_map &map)
|
||||||
{
|
{
|
||||||
map(0x0000, 0x7fff).rom().region("maincpu", 0);
|
map(0x0000, 0x7fff).rom().region("maincpu", 0);
|
||||||
map(0x8800, 0x8fff).ram().share("nvram");
|
map(0x8800, 0x8fff).ram().share("nvram");
|
||||||
//AM_RANGE(0x9000, 0x9007) AM_DEVREADWRITE("crtc", scn2672_device, read, write)
|
map(0x9000, 0x9007).rw("crtc", FUNC(scn2672_device::read), FUNC(scn2672_device::write));
|
||||||
map(0x9800, 0x980f).rw("duart", FUNC(scn2681_device::read), FUNC(scn2681_device::write));
|
map(0x9800, 0x980f).rw("duart", FUNC(scn2681_device::read), FUNC(scn2681_device::write));
|
||||||
map(0xc000, 0xdfff).ram().share("dataram");
|
map(0xc000, 0xdfff).ram().share("dataram");
|
||||||
map(0xe000, 0xffff).ram().share("attram");
|
map(0xe000, 0xffff).ram().share("attram");
|
||||||
@ -67,10 +67,12 @@ MACHINE_CONFIG_START(qvt201_state::qvt201)
|
|||||||
MCFG_SCREEN_ADD("screen", RASTER)
|
MCFG_SCREEN_ADD("screen", RASTER)
|
||||||
MCFG_SCREEN_RAW_PARAMS(XTAL(48'654'000) / 3, 102 * 10, 0, 80 * 10, 265, 0, 250)
|
MCFG_SCREEN_RAW_PARAMS(XTAL(48'654'000) / 3, 102 * 10, 0, 80 * 10, 265, 0, 250)
|
||||||
//MCFG_SCREEN_RAW_PARAMS(XTAL(48'654'000) / 2, 170 * 9, 0, 132 * 9, 265, 0, 250)
|
//MCFG_SCREEN_RAW_PARAMS(XTAL(48'654'000) / 2, 170 * 9, 0, 132 * 9, 265, 0, 250)
|
||||||
MCFG_SCREEN_UPDATE_DRIVER(qvt201_state, screen_update)
|
MCFG_SCREEN_UPDATE_DEVICE("crtc", scn2672_device, screen_update)
|
||||||
|
|
||||||
//MCFG_DEVICE_ADD("crtc", SCN2672, CHAR_CLOCK)
|
MCFG_DEVICE_ADD("crtc", SCN2672, XTAL(48'654'000) / 30)
|
||||||
//MCFG_SCN2672_CHAR_WIDTH(9 or 10)
|
MCFG_SCN2672_CHARACTER_WIDTH(10) // 9 in 132-column mode
|
||||||
|
MCFG_SCN2672_INTR_CALLBACK(INPUTLINE("maincpu", 0))
|
||||||
|
MCFG_VIDEO_SET_SCREEN("screen")
|
||||||
MACHINE_CONFIG_END
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user