diff options
author | Curt Coder <curtcoder@mail.com> | 2012-12-18 15:36:41 +0000 |
---|---|---|
committer | Curt Coder <curtcoder@mail.com> | 2012-12-18 15:36:41 +0000 |
commit | 6c2f23ebd0d9a7f3f0deed2fa36130e640edcc48 (patch) | |
tree | 52f29ce102a57190670b3fbf3caefc5b6796f59f | |
parent | 394ee300e4a9fb4c64ef28ec8e8b07cc2464ed72 (diff) |
(MESS) tdv2324: Floppy modernization. (nw)
-rw-r--r-- | src/mess/drivers/tdv2324.c | 58 | ||||
-rw-r--r-- | src/mess/includes/tdv2324.h | 43 |
2 files changed, 41 insertions, 60 deletions
diff --git a/src/mess/drivers/tdv2324.c b/src/mess/drivers/tdv2324.c index dd4ff3d691a..1ae9b1f3d29 100644 --- a/src/mess/drivers/tdv2324.c +++ b/src/mess/drivers/tdv2324.c @@ -129,7 +129,7 @@ WRITE8_MEMBER( tdv2324_state::tdv2324_main_io_e2 ) static ADDRESS_MAP_START( tdv2324_mem, AS_PROGRAM, 8, tdv2324_state ) AM_RANGE(0x0000, 0x07ff) AM_MIRROR(0x0800) AM_ROM AM_REGION(P8085AH_0_TAG, 0) /* when copying code to 4000 area it runs right off the end of rom; - * I'm not sure if its supposed to mirror or read as open bus */ + * I'm not sure if its supposed to mirror or read as open bus */ // AM_RANGE(0x4000, 0x5fff) AM_RAM // 0x4000 has the boot code copied to it, 5fff and down are the stack // AM_RANGE(0x6000, 0x6fff) AM_RAM // used by the relocated boot code; shared? AM_RANGE(0x0800, 0xffff) AM_RAM @@ -247,10 +247,10 @@ UINT32 tdv2324_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap, static I8085_CONFIG( i8085_intf ) { - DEVCB_NULL, /* STATUS changed callback */ - DEVCB_NULL, /* INTE changed callback */ - DEVCB_NULL, /* SID changed callback (I8085A only) */ - DEVCB_NULL /* SOD changed callback (I8085A only) */ + DEVCB_NULL, /* STATUS changed callback */ + DEVCB_NULL, /* INTE changed callback */ + DEVCB_NULL, /* SID changed callback (I8085A only) */ + DEVCB_NULL /* SOD changed callback (I8085A only) */ }; @@ -260,10 +260,10 @@ static I8085_CONFIG( i8085_intf ) static I8085_CONFIG( i8085_sub_intf ) { - DEVCB_NULL, /* STATUS changed callback */ - DEVCB_NULL, /* INTE changed callback */ - DEVCB_NULL, /* SID changed callback (I8085A only) */ - DEVCB_NULL /* SOD changed callback (I8085A only) */ + DEVCB_NULL, /* STATUS changed callback */ + DEVCB_NULL, /* INTE changed callback */ + DEVCB_NULL, /* SID changed callback (I8085A only) */ + DEVCB_NULL /* SOD changed callback (I8085A only) */ }; @@ -354,41 +354,24 @@ static Z80DART_INTERFACE( sio_intf ) //------------------------------------------------- -// wd17xx_interface fdc_intf +// tms9927_interface vtac_intf //------------------------------------------------- -static const floppy_interface tdv2324_floppy_interface = +static const tms9927_interface vtac_intf = { - DEVCB_NULL, - DEVCB_NULL, - DEVCB_NULL, - DEVCB_NULL, - DEVCB_NULL, - FLOPPY_STANDARD_8_DSDD, - LEGACY_FLOPPY_OPTIONS_NAME(default), - "floppy_8", + SCREEN_TAG, + 8, NULL }; -static const wd17xx_interface fdc_intf = -{ - DEVCB_NULL, - DEVCB_NULL, - DEVCB_NULL, - { FLOPPY_0, NULL, NULL, NULL } -}; - //------------------------------------------------- -// tms9927_interface vtac_intf +// SLOT_INTERFACE( tdv2324_floppies ) //------------------------------------------------- -static const tms9927_interface vtac_intf = -{ - SCREEN_TAG, - 8, - NULL -}; +static SLOT_INTERFACE_START( tdv2324_floppies ) + SLOT_INTERFACE( "8dsdd", FLOPPY_8_DSDD ) +SLOT_INTERFACE_END @@ -432,8 +415,9 @@ static MACHINE_CONFIG_START( tdv2324, tdv2324_state ) MCFG_PIT8253_ADD(P8253_5_0_TAG, pit0_intf) MCFG_PIT8253_ADD(P8253_5_1_TAG, pit1_intf) MCFG_Z80SIO2_ADD(MK3887N4_TAG, 8000000/2, sio_intf) - MCFG_FD1797_ADD(FD1797PL02_TAG, fdc_intf) - MCFG_LEGACY_FLOPPY_DRIVE_ADD(FLOPPY_0, tdv2324_floppy_interface) + MCFG_FD1797x_ADD(FD1797PL02_TAG, 8000000/4) + MCFG_FLOPPY_DRIVE_ADD(FD1797PL02_TAG":0", tdv2324_floppies, "8dsdd", NULL, floppy_image_device::default_floppy_formats) + MCFG_FLOPPY_DRIVE_ADD(FD1797PL02_TAG":1", tdv2324_floppies, "8dsdd", NULL, floppy_image_device::default_floppy_formats) // internal ram MCFG_RAM_ADD(RAM_TAG) @@ -490,4 +474,4 @@ ROM_END //************************************************************************** // YEAR NAME PARENT COMPAT MACHINE INPUT INIT COMPANY FULLNAME FLAGS -COMP( 1983, tdv2324, 0, 0, tdv2324, tdv2324, driver_device, 0, "Tandberg", "TDV 2324", GAME_NOT_WORKING|GAME_NO_SOUND) +COMP( 1983, tdv2324, 0, 0, tdv2324, tdv2324, driver_device, 0, "Tandberg", "TDV 2324", GAME_NOT_WORKING|GAME_NO_SOUND) diff --git a/src/mess/includes/tdv2324.h b/src/mess/includes/tdv2324.h index a0f3bd88b27..dbc86e1ac17 100644 --- a/src/mess/includes/tdv2324.h +++ b/src/mess/includes/tdv2324.h @@ -7,13 +7,11 @@ #include "emu.h" #include "cpu/i8085/i8085.h" #include "cpu/m6800/m6800.h" -#include "formats/basicdsk.h" -#include "imagedev/flopdrv.h" #include "imagedev/harddriv.h" #include "machine/pit8253.h" #include "machine/pic8259.h" #include "machine/ram.h" -#include "machine/wd17xx.h" +#include "machine/wd_fdc.h" #include "machine/z80dart.h" #include "video/tms9927.h" @@ -23,20 +21,20 @@ // MACROS / CONSTANTS //************************************************************************** -#define P8085AH_0_TAG "17f" -#define P8259A_TAG "17d" -#define P8253_5_0_TAG "17c" -#define P8253_5_1_TAG "18c" -#define ER3400_TAG "12a" +#define P8085AH_0_TAG "17f" +#define P8259A_TAG "17d" +#define P8253_5_0_TAG "17c" +#define P8253_5_1_TAG "18c" +#define ER3400_TAG "12a" -#define P8085AH_1_TAG "6c" -#define TMS9937NL_TAG "7e" -#define MK3887N4_TAG "15d" +#define P8085AH_1_TAG "6c" +#define TMS9937NL_TAG "7e" +#define MK3887N4_TAG "15d" -#define MC68B02P_TAG "12b" -#define FD1797PL02_TAG "fd1797" +#define MC68B02P_TAG "12b" +#define FD1797PL02_TAG "fd1797" -#define SCREEN_TAG "screen" +#define SCREEN_TAG "screen" @@ -49,14 +47,14 @@ class tdv2324_state : public driver_device public: tdv2324_state(const machine_config &mconfig, device_type type, const char *tag) : driver_device(mconfig, type, tag), - m_maincpu(*this, P8085AH_0_TAG), - m_subcpu(*this, P8085AH_1_TAG), - m_fdccpu(*this, MC68B02P_TAG), - m_sio(*this, MK3887N4_TAG), - m_pic(*this, P8259A_TAG), - m_pit0(*this, P8253_5_0_TAG), - m_pit1(*this, P8253_5_1_TAG), - m_video_ram(*this, "video_ram") + m_maincpu(*this, P8085AH_0_TAG), + m_subcpu(*this, P8085AH_1_TAG), + m_fdccpu(*this, MC68B02P_TAG), + m_sio(*this, MK3887N4_TAG), + m_pic(*this, P8259A_TAG), + m_pit0(*this, P8253_5_0_TAG), + m_pit1(*this, P8253_5_1_TAG), + m_video_ram(*this, "video_ram") { } required_device<cpu_device> m_maincpu; @@ -79,7 +77,6 @@ public: // video state required_shared_ptr<UINT8> m_video_ram; - UINT32 screen_update_tdv2324(screen_device &screen, bitmap_ind16 &bitmap, const rectangle &cliprect); }; |