mirror of
https://github.com/holub/mame
synced 2025-06-07 13:23:50 +03:00
(MESS) Kaypro : modernised floppy disk system (still doesn't work). This enables removal of yesterday's patch.
This commit is contained in:
parent
2cbb380d09
commit
0ef85ce1f4
@ -53,7 +53,7 @@ static ADDRESS_MAP_START( kayproii_io, AS_IO, 8, kaypro_state )
|
||||
AM_RANGE(0x04, 0x07) AM_READWRITE(kaypro_sio_r, kaypro_sio_w)
|
||||
AM_RANGE(0x08, 0x0b) AM_DEVREADWRITE("z80pio_g", z80pio_device, read_alt, write_alt)
|
||||
AM_RANGE(0x0c, 0x0f) AM_DEVWRITE("brg", com8116_device, str_w)
|
||||
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE_LEGACY("wd1793", wd17xx_r, wd17xx_w)
|
||||
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("fdc", fd1793_t, read, write)
|
||||
AM_RANGE(0x1c, 0x1f) AM_DEVREADWRITE("z80pio_s", z80pio_device, read_alt, write_alt)
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -64,7 +64,7 @@ static ADDRESS_MAP_START( kaypro2x_io, AS_IO, 8, kaypro_state )
|
||||
AM_RANGE(0x04, 0x07) AM_READWRITE(kaypro_sio_r, kaypro_sio_w)
|
||||
AM_RANGE(0x08, 0x0b) AM_DEVWRITE("brg", com8116_device, stt_w)
|
||||
AM_RANGE(0x0c, 0x0f) AM_DEVREADWRITE("z80sio_2x", z80sio_device, read, write)
|
||||
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE_LEGACY("wd1793", wd17xx_r, wd17xx_w)
|
||||
AM_RANGE(0x10, 0x13) AM_DEVREADWRITE("fdc", fd1793_t, read, write)
|
||||
AM_RANGE(0x14, 0x17) AM_READWRITE(kaypro2x_system_port_r,kaypro2x_system_port_w)
|
||||
AM_RANGE(0x18, 0x1b) AM_DEVWRITE("centronics", centronics_device, write)
|
||||
AM_RANGE(0x1c, 0x1c) AM_READWRITE(kaypro2x_status_r,kaypro2x_index_w)
|
||||
@ -176,6 +176,7 @@ static MC6845_INTERFACE( kaypro2x_crtc )
|
||||
Machine Driver
|
||||
|
||||
************************************************************/
|
||||
#if 0
|
||||
static LEGACY_FLOPPY_OPTIONS_START(kayproii)
|
||||
LEGACY_FLOPPY_OPTION(kayproii, "dsk", "Kaypro II disk image", basicdsk_identify_default, basicdsk_construct_default, NULL,
|
||||
HEADS([1])
|
||||
@ -220,9 +221,23 @@ static const floppy_interface kaypro2x_floppy_interface =
|
||||
NULL
|
||||
};
|
||||
|
||||
FLOPPY_FORMATS_MEMBER( kaypro_state::kayproii_floppy_formats )
|
||||
FLOPPY_KAYPROII_FORMAT
|
||||
FLOPPY_FORMATS_END
|
||||
|
||||
FLOPPY_FORMATS_MEMBER( kaypro_state::kaypro2x_floppy_formats )
|
||||
FLOPPY_KAYPRO2X_FORMAT
|
||||
FLOPPY_FORMATS_END
|
||||
#endif
|
||||
|
||||
static SLOT_INTERFACE_START( kaypro_floppies )
|
||||
SLOT_INTERFACE( "525dd", FLOPPY_525_DD )
|
||||
SLOT_INTERFACE_END
|
||||
|
||||
|
||||
static MACHINE_CONFIG_START( kayproii, kaypro_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", Z80, XTAL_2_5MHz)
|
||||
MCFG_CPU_ADD("maincpu", Z80, XTAL_20MHz / 8)
|
||||
MCFG_CPU_PROGRAM_MAP(kaypro_map)
|
||||
MCFG_CPU_IO_MAP(kayproii_io)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", kaypro_state, kay_kbd_interrupt) /* this doesn't actually exist, it is to run the keyboard */
|
||||
@ -250,14 +265,15 @@ static MACHINE_CONFIG_START( kayproii, kaypro_state )
|
||||
|
||||
/* devices */
|
||||
MCFG_QUICKLOAD_ADD("quickload", kaypro_state, kayproii, "com,cpm", 3)
|
||||
MCFG_FD1793_ADD("wd1793", kaypro_wd1793_interface )
|
||||
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
|
||||
MCFG_COM8116_ADD("brg", XTAL_5_0688MHz, NULL, NULL, NULL) // WD1943, SMC8116
|
||||
MCFG_Z80PIO_ADD( "z80pio_g", 2500000, kayproii_pio_g_intf )
|
||||
MCFG_Z80PIO_ADD( "z80pio_s", 2500000, kayproii_pio_s_intf )
|
||||
MCFG_Z80SIO_ADD( "z80sio", 4800, kaypro_sio_intf ) /* start at 300 baud */
|
||||
|
||||
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(kayproii_floppy_interface)
|
||||
MCFG_FD1793x_ADD("fdc", XTAL_20MHz / 20)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_SOFTWARE_LIST_ADD("flop_list","kayproii")
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
@ -268,7 +284,7 @@ MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_START( kaypro2x, kaypro_state )
|
||||
/* basic machine hardware */
|
||||
MCFG_CPU_ADD("maincpu", Z80, XTAL_4MHz)
|
||||
MCFG_CPU_ADD("maincpu", Z80, XTAL_16MHz / 4)
|
||||
MCFG_CPU_PROGRAM_MAP(kaypro_map)
|
||||
MCFG_CPU_IO_MAP(kaypro2x_io)
|
||||
MCFG_CPU_VBLANK_INT_DRIVER("screen", kaypro_state, kay_kbd_interrupt)
|
||||
@ -296,13 +312,13 @@ static MACHINE_CONFIG_START( kaypro2x, kaypro_state )
|
||||
/* devices */
|
||||
MCFG_MC6845_ADD("crtc", MC6845, "screen", 2000000, kaypro2x_crtc) /* comes out of ULA - needs to be measured */
|
||||
MCFG_QUICKLOAD_ADD("quickload", kaypro_state, kaypro2x, "com,cpm", 3)
|
||||
MCFG_FD1793_ADD("wd1793", kaypro_wd1793_interface )
|
||||
MCFG_CENTRONICS_PRINTER_ADD("centronics", standard_centronics)
|
||||
MCFG_COM8116_ADD("brg", XTAL_5_0688MHz, NULL, NULL, NULL) // WD1943, SMC8116
|
||||
MCFG_Z80SIO_ADD( "z80sio", 4800, kaypro_sio_intf )
|
||||
MCFG_Z80SIO_ADD( "z80sio_2x", 4800, kaypro_sio_intf ) /* extra sio for modem and printer */
|
||||
|
||||
MCFG_LEGACY_FLOPPY_2_DRIVES_ADD(kaypro2x_floppy_interface)
|
||||
MCFG_FD1793x_ADD("fdc", XTAL_16MHz / 16)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:0", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
MCFG_FLOPPY_DRIVE_ADD("fdc:1", kaypro_floppies, "525dd", floppy_image_device::default_floppy_formats)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED( omni2, kaypro4 )
|
||||
@ -310,6 +326,13 @@ static MACHINE_CONFIG_DERIVED( omni2, kaypro4 )
|
||||
MCFG_SCREEN_UPDATE_DRIVER(kaypro_state, screen_update_omni2)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
DRIVER_INIT_MEMBER( kaypro_state, kaypro )
|
||||
{
|
||||
m_fdc->setup_intrq_cb(fd1793_t::line_cb(FUNC(kaypro_state::fdc_intrq_w), this));
|
||||
m_fdc->setup_drq_cb(fd1793_t::line_cb(FUNC(kaypro_state::fdc_drq_w), this));
|
||||
}
|
||||
|
||||
|
||||
/***********************************************************
|
||||
|
||||
Game driver
|
||||
@ -399,12 +422,12 @@ ROM_START(kaypro10)
|
||||
ROM_LOAD("81-817.u31", 0x0000, 0x1000, CRC(5f72da5b) SHA1(8a597000cce1a7e184abfb7bebcb564c6bf24fb7) )
|
||||
ROM_END
|
||||
|
||||
/* YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME */
|
||||
COMP( 1982, kayproii, 0, 0, kayproii, kay_kbd, driver_device, 0, "Non Linear Systems", "Kaypro II - 2/83" , 0 )
|
||||
COMP( 1983, kaypro4, kayproii, 0, kaypro4, kay_kbd, driver_device, 0, "Non Linear Systems", "Kaypro 4 - 4/83" , 0 ) // model 81-004
|
||||
COMP( 1983, kaypro4p88, kayproii, 0, kaypro4, kay_kbd, driver_device, 0, "Non Linear Systems", "Kaypro 4 plus88 - 4/83" , GAME_NOT_WORKING ) // model 81-004 with an added 8088 daughterboard and rom
|
||||
COMP( 198?, omni2, kayproii, 0, omni2, kay_kbd, driver_device, 0, "Non Linear Systems", "Omni II" , 0 )
|
||||
COMP( 1984, kaypro2x, 0, 0, kaypro2x, kay_kbd, driver_device, 0, "Non Linear Systems", "Kaypro 2x" , GAME_NOT_WORKING ) // model 81-025
|
||||
COMP( 1984, kaypro4a, kaypro2x, 0, kaypro2x, kay_kbd, driver_device, 0, "Non Linear Systems", "Kaypro 4 - 4/84" , GAME_NOT_WORKING ) // model 81-015
|
||||
/* YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME */
|
||||
COMP( 1982, kayproii, 0, 0, kayproii, kay_kbd, kaypro_state, kaypro, "Non Linear Systems", "Kaypro II - 2/83" , 0 )
|
||||
COMP( 1983, kaypro4, kayproii, 0, kaypro4, kay_kbd, kaypro_state, kaypro, "Non Linear Systems", "Kaypro 4 - 4/83" , 0 ) // model 81-004
|
||||
COMP( 1983, kaypro4p88, kayproii, 0, kaypro4, kay_kbd, kaypro_state, kaypro, "Non Linear Systems", "Kaypro 4 plus88 - 4/83" , GAME_NOT_WORKING ) // model 81-004 with an added 8088 daughterboard and rom
|
||||
COMP( 198?, omni2, kayproii, 0, omni2, kay_kbd, kaypro_state, kaypro, "Non Linear Systems", "Omni II" , 0 )
|
||||
COMP( 1984, kaypro2x, 0, 0, kaypro2x, kay_kbd, kaypro_state, kaypro, "Non Linear Systems", "Kaypro 2x" , GAME_NOT_WORKING ) // model 81-025
|
||||
COMP( 1984, kaypro4a, kaypro2x, 0, kaypro2x, kay_kbd, kaypro_state, kaypro, "Non Linear Systems", "Kaypro 4 - 4/84" , GAME_NOT_WORKING ) // model 81-015
|
||||
// Kaypro 4/84 plus 88 goes here, model 81-015 with an added 8088 daughterboard and rom
|
||||
COMP( 1983, kaypro10, 0, 0, kaypro2x, kay_kbd, driver_device, 0, "Non Linear Systems", "Kaypro 10" , GAME_NOT_WORKING ) // model 81-005
|
||||
COMP( 1983, kaypro10, 0, 0, kaypro2x, kay_kbd, kaypro_state, kaypro, "Non Linear Systems", "Kaypro 10" , GAME_NOT_WORKING ) // model 81-005
|
||||
|
@ -5,12 +5,10 @@
|
||||
#include "machine/z80sio.h"
|
||||
#include "machine/com8116.h"
|
||||
#include "machine/ctronics.h"
|
||||
#include "machine/wd17xx.h"
|
||||
#include "formats/basicdsk.h"
|
||||
#include "imagedev/snapquik.h"
|
||||
#include "imagedev/flopdrv.h"
|
||||
#include "sound/beep.h"
|
||||
#include "video/mc6845.h"
|
||||
#include "machine/wd_fdc.h"
|
||||
|
||||
struct kay_kbd_t;
|
||||
|
||||
@ -24,26 +22,20 @@ public:
|
||||
|
||||
kaypro_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||
: driver_device(mconfig, type, tag),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_pio_g(*this, "z80pio_g"),
|
||||
m_pio_s(*this, "z80pio_s"),
|
||||
m_sio(*this, "z80sio"),
|
||||
m_sio2x(*this, "z80sio_2x"),
|
||||
m_centronics(*this, "centronics"),
|
||||
m_fdc(*this, "wd1793"),
|
||||
m_crtc(*this, "crtc"),
|
||||
m_beep(*this, "beeper"),
|
||||
m_p_videoram(*this, "p_videoram"){ }
|
||||
m_p_videoram(*this, "p_videoram"),
|
||||
m_maincpu(*this, "maincpu"),
|
||||
m_pio_g(*this, "z80pio_g"),
|
||||
m_pio_s(*this, "z80pio_s"),
|
||||
m_sio(*this, "z80sio"),
|
||||
m_sio2x(*this, "z80sio_2x"),
|
||||
m_centronics(*this, "centronics"),
|
||||
m_fdc(*this, "fdc"),
|
||||
m_floppy0(*this, "fdc:0"),
|
||||
m_floppy1(*this, "fdc:1"),
|
||||
m_crtc(*this, "crtc"),
|
||||
m_beep(*this, "beeper")
|
||||
{}
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<z80pio_device> m_pio_g;
|
||||
optional_device<z80pio_device> m_pio_s;
|
||||
required_device<z80sio_device> m_sio;
|
||||
optional_device<z80sio_device> m_sio2x;
|
||||
required_device<centronics_device> m_centronics;
|
||||
required_device<fd1793_device> m_fdc;
|
||||
optional_device<mc6845_device> m_crtc;
|
||||
required_device<beep_device> m_beep;
|
||||
DECLARE_READ8_MEMBER(kaypro2x_87_r);
|
||||
DECLARE_READ8_MEMBER(kaypro2x_system_port_r);
|
||||
DECLARE_READ8_MEMBER(kaypro2x_status_r);
|
||||
@ -60,26 +52,14 @@ public:
|
||||
DECLARE_WRITE_LINE_MEMBER(kaypro_fdc_drq_w);
|
||||
DECLARE_READ8_MEMBER(kaypro_videoram_r);
|
||||
DECLARE_WRITE8_MEMBER(kaypro_videoram_w);
|
||||
const UINT8 *m_p_chargen;
|
||||
required_shared_ptr<UINT8> m_p_videoram;
|
||||
UINT8 m_system_port;
|
||||
UINT8 m_mc6845_cursor[16];
|
||||
UINT8 m_mc6845_reg[32];
|
||||
UINT8 m_mc6845_ind;
|
||||
UINT8 m_speed;
|
||||
UINT8 m_flash;
|
||||
UINT8 m_framecnt;
|
||||
UINT16 m_cursor;
|
||||
UINT16 m_mc6845_video_address;
|
||||
kay_kbd_t *m_kbd;
|
||||
void mc6845_cursor_configure();
|
||||
void mc6845_screen_configure();
|
||||
DECLARE_MACHINE_START(kayproii);
|
||||
DECLARE_MACHINE_RESET(kayproii);
|
||||
DECLARE_VIDEO_START(kaypro);
|
||||
DECLARE_MACHINE_RESET(kaypro2x);
|
||||
DECLARE_PALETTE_INIT(kaypro);
|
||||
DECLARE_MACHINE_RESET(kay_kbd);
|
||||
DECLARE_DRIVER_INIT(kaypro);
|
||||
DECLARE_FLOPPY_FORMATS(floppy_formats);
|
||||
UINT32 screen_update_kayproii(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
UINT32 screen_update_kaypro2x(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect);
|
||||
UINT32 screen_update_omni2(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect);
|
||||
@ -87,11 +67,40 @@ public:
|
||||
DECLARE_WRITE_LINE_MEMBER(kaypro_interrupt);
|
||||
DECLARE_READ8_MEMBER(kaypro_sio_r);
|
||||
DECLARE_WRITE8_MEMBER(kaypro_sio_w);
|
||||
DECLARE_QUICKLOAD_LOAD_MEMBER(kayproii );
|
||||
DECLARE_QUICKLOAD_LOAD_MEMBER(kaypro2x );
|
||||
DECLARE_QUICKLOAD_LOAD_MEMBER(kayproii);
|
||||
DECLARE_QUICKLOAD_LOAD_MEMBER(kaypro2x);
|
||||
const UINT8 *m_p_chargen;
|
||||
UINT8 m_mc6845_cursor[16];
|
||||
UINT8 m_mc6845_reg[32];
|
||||
UINT8 m_mc6845_ind;
|
||||
UINT8 m_speed;
|
||||
UINT8 m_flash;
|
||||
UINT8 m_framecnt;
|
||||
UINT16 m_cursor;
|
||||
required_shared_ptr<UINT8> m_p_videoram;
|
||||
|
||||
protected:
|
||||
virtual void device_timer(emu_timer &timer, device_timer_id id, int param, void *ptr);
|
||||
private:
|
||||
UINT8 m_system_port;
|
||||
UINT16 m_mc6845_video_address;
|
||||
kay_kbd_t *m_kbd;
|
||||
floppy_image_device *m_floppy;
|
||||
void mc6845_cursor_configure();
|
||||
void mc6845_screen_configure();
|
||||
void fdc_intrq_w(bool state);
|
||||
void fdc_drq_w(bool state);
|
||||
required_device<cpu_device> m_maincpu;
|
||||
optional_device<z80pio_device> m_pio_g;
|
||||
optional_device<z80pio_device> m_pio_s;
|
||||
required_device<z80sio_device> m_sio;
|
||||
optional_device<z80sio_device> m_sio2x;
|
||||
required_device<centronics_device> m_centronics;
|
||||
required_device<fd1793_t> m_fdc;
|
||||
required_device<floppy_connector> m_floppy0;
|
||||
required_device<floppy_connector> m_floppy1;
|
||||
optional_device<mc6845_device> m_crtc;
|
||||
required_device<beep_device> m_beep;
|
||||
};
|
||||
|
||||
|
||||
@ -110,7 +119,6 @@ extern const z80pio_interface kayproii_pio_g_intf;
|
||||
extern const z80pio_interface kayproii_pio_s_intf;
|
||||
extern const z80pio_interface kaypro4_pio_s_intf;
|
||||
extern const z80sio_interface kaypro_sio_intf;
|
||||
extern const wd17xx_interface kaypro_wd1793_interface;
|
||||
|
||||
/*----------- defined in video/kaypro.c -----------*/
|
||||
|
||||
|
@ -60,22 +60,25 @@ WRITE8_MEMBER( kaypro_state::common_pio_system_w )
|
||||
membank("bank3")->set_base(memregion("rambank")->base());
|
||||
}
|
||||
|
||||
wd17xx_dden_w(m_fdc, BIT(data, 5));
|
||||
|
||||
m_centronics->strobe_w(BIT(data, 4));
|
||||
|
||||
m_floppy = NULL;
|
||||
if (BIT(data, 0))
|
||||
wd17xx_set_drive(m_fdc, 0);
|
||||
|
||||
m_floppy = m_floppy0->get_device();
|
||||
else
|
||||
if (BIT(data, 1))
|
||||
wd17xx_set_drive(m_fdc, 1);
|
||||
m_floppy = m_floppy1->get_device();
|
||||
|
||||
m_fdc->set_floppy(m_floppy);
|
||||
m_fdc->dden_w(BIT(data, 5));
|
||||
|
||||
if (m_floppy)
|
||||
{
|
||||
m_floppy->mon_w(BIT(data, 6) ? 0 : 1); // motor on
|
||||
}
|
||||
|
||||
output_set_value("ledA", BIT(data, 0)); /* LEDs in artwork */
|
||||
output_set_value("ledB", BIT(data, 1));
|
||||
|
||||
/* CLEAR_LINE means to turn motors on */
|
||||
floppy_mon_w(floppy_get_device(machine(), 0), BIT(data, 6) ? ASSERT_LINE : CLEAR_LINE);
|
||||
floppy_mon_w(floppy_get_device(machine(), 1), BIT(data, 6) ? ASSERT_LINE : CLEAR_LINE);
|
||||
m_centronics->strobe_w(BIT(data, 4));
|
||||
|
||||
m_system_port = data;
|
||||
}
|
||||
@ -85,7 +88,7 @@ WRITE8_MEMBER( kaypro_state::kayproii_pio_system_w )
|
||||
common_pio_system_w(space, offset, data);
|
||||
|
||||
/* side select */
|
||||
wd17xx_set_side(m_fdc, !BIT(data, 2));
|
||||
m_floppy->ss_w(!BIT(data, 2));
|
||||
}
|
||||
|
||||
WRITE8_MEMBER( kaypro_state::kaypro4_pio_system_w )
|
||||
@ -93,7 +96,7 @@ WRITE8_MEMBER( kaypro_state::kaypro4_pio_system_w )
|
||||
common_pio_system_w(space, offset, data);
|
||||
|
||||
/* side select */
|
||||
wd17xx_set_side(m_fdc, BIT(data, 2));
|
||||
m_floppy->ss_w(BIT(data, 2));
|
||||
}
|
||||
|
||||
const z80pio_interface kayproii_pio_g_intf =
|
||||
@ -172,25 +175,26 @@ WRITE8_MEMBER( kaypro_state::kaypro2x_system_port_w )
|
||||
membank("bank3")->set_base(memregion("rambank")->base());
|
||||
}
|
||||
|
||||
wd17xx_dden_w(m_fdc, BIT(data, 5));
|
||||
|
||||
m_centronics->strobe_w(BIT(data, 3));
|
||||
|
||||
m_floppy = NULL;
|
||||
if (BIT(data, 0))
|
||||
wd17xx_set_drive(m_fdc, 0);
|
||||
m_floppy = m_floppy0->get_device();
|
||||
else
|
||||
if (BIT(data, 1))
|
||||
wd17xx_set_drive(m_fdc, 1);
|
||||
m_floppy = m_floppy1->get_device();
|
||||
|
||||
wd17xx_set_side(m_fdc, BIT(data, 2) ? 0 : 1);
|
||||
m_fdc->set_floppy(m_floppy);
|
||||
m_fdc->dden_w(BIT(data, 5));
|
||||
|
||||
if (m_floppy)
|
||||
{
|
||||
m_floppy->mon_w(BIT(data, 6) ? 0 : 1); // motor on
|
||||
m_floppy->ss_w(BIT(data, 2));
|
||||
}
|
||||
|
||||
output_set_value("ledA", BIT(data, 0)); /* LEDs in artwork */
|
||||
output_set_value("ledB", BIT(data, 1));
|
||||
|
||||
/* CLEAR_LINE means to turn motors on */
|
||||
// commented out because turning the motors on causes an assert... turning them off is ok though??
|
||||
//floppy_mon_w(floppy_get_device(machine(), 0), BIT(data, 4) ? CLEAR_LINE : ASSERT_LINE);
|
||||
//floppy_mon_w(floppy_get_device(machine(), 1), BIT(data, 4) ? CLEAR_LINE : ASSERT_LINE);
|
||||
m_centronics->strobe_w(BIT(data, 3));
|
||||
|
||||
m_system_port = data;
|
||||
}
|
||||
@ -292,7 +296,8 @@ void kaypro_state::device_timer(emu_timer &timer, device_timer_id id, int param,
|
||||
}
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( kaypro_state::kaypro_fdc_intrq_w )
|
||||
void kaypro_state::fdc_intrq_w (bool state)
|
||||
//WRITE_LINE_MEMBER( kaypro_state::kaypro_fdc_intrq_w )
|
||||
{
|
||||
if (state)
|
||||
timer_set(attotime::from_usec(25), TIMER_FLOPPY);
|
||||
@ -300,7 +305,8 @@ WRITE_LINE_MEMBER( kaypro_state::kaypro_fdc_intrq_w )
|
||||
m_maincpu->set_input_line(INPUT_LINE_NMI, CLEAR_LINE);
|
||||
}
|
||||
|
||||
WRITE_LINE_MEMBER( kaypro_state::kaypro_fdc_drq_w )
|
||||
void kaypro_state::fdc_drq_w (bool state)
|
||||
//WRITE_LINE_MEMBER( kaypro_state::kaypro_fdc_drq_w )
|
||||
{
|
||||
if (state)
|
||||
timer_set(attotime::from_usec(25), TIMER_FLOPPY);
|
||||
@ -309,14 +315,6 @@ WRITE_LINE_MEMBER( kaypro_state::kaypro_fdc_drq_w )
|
||||
|
||||
}
|
||||
|
||||
const wd17xx_interface kaypro_wd1793_interface =
|
||||
{
|
||||
DEVCB_NULL,
|
||||
DEVCB_DRIVER_LINE_MEMBER(kaypro_state, kaypro_fdc_intrq_w),
|
||||
DEVCB_DRIVER_LINE_MEMBER(kaypro_state, kaypro_fdc_drq_w),
|
||||
{FLOPPY_0, FLOPPY_1, NULL, NULL}
|
||||
};
|
||||
|
||||
|
||||
/***********************************************************
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user