Previous 199869 Revisions Next

r23915 Monday 24th June, 2013 at 19:55:23 UTC by Fabio Priuli
harddriv.c: converted to use modern n68681 device. [Osso]
[src/mame/drivers]harddriv.c
[src/mame/includes]harddriv.h
[src/mame/machine]harddriv.c

trunk/src/mame/machine/harddriv.c
r23914r23915
484484 *
485485 *************************************/
486486
487void harddriv_duart_irq_handler(device_t *device, int state, UINT8 vector)
487WRITE_LINE_MEMBER(harddriv_state::harddriv_duart_irq_handler)
488488{
489   harddriv_state *hd_state = device->machine().driver_data<harddriv_state>();
490   hd_state->m_duart_irq_state = state;
491   hd_state->update_interrupts();
489   m_duart_irq_state = state;
490   update_interrupts();
492491}
493492
494493
trunk/src/mame/includes/harddriv.h
r23914r23915
1111#include "cpu/dsp32/dsp32.h"
1212#include "sound/dac.h"
1313#include "machine/atarigen.h"
14#include "machine/n68681.h"
1415
1516#define HARDDRIV_MASTER_CLOCK   XTAL_32MHz
1617#define HARDDRIV_GSP_CLOCK      XTAL_48MHz
r23914r23915
4647         m_gsp_paletteram_hi(*this, "gsp_palram_hi"),
4748         m_ds3sdsp_internal_timer(*this, "ds3sdsp_timer"),
4849         m_ds3xdsp_internal_timer(*this, "ds3xdsp_timer"),
49         m_dac(*this, "dac") { }
50         m_dac(*this, "dac"),
51         m_duart(*this, "duartn68681") { }
5052
5153   required_device<cpu_device> m_maincpu;
5254   required_device<tms34010_device> m_gsp;
r23914r23915
261263   TIMER_CALLBACK_MEMBER(rddsp32_sync_cb);
262264   DECLARE_WRITE16_MEMBER(hdsnddsp_dac_w);
263265   optional_device<dac_device> m_dac;
266   required_device<duartn68681_device> m_duart;
267   DECLARE_WRITE_LINE_MEMBER(harddriv_duart_irq_handler);
264268};
265269
266270
r23914r23915
296300DECLARE_READ16_HANDLER( hd68k_zram_r );
297301DECLARE_WRITE16_HANDLER( hd68k_zram_w );
298302
299void harddriv_duart_irq_handler(device_t *device, int state, UINT8 vector);
300
301303DECLARE_WRITE16_HANDLER( hdgsp_io_w );
302304
303305DECLARE_WRITE16_HANDLER( hdgsp_protection_w );
trunk/src/mame/drivers/harddriv.c
r23914r23915
326326#include "emu.h"
327327#include "machine/atarigen.h"
328328#include "machine/asic65.h"
329#include "machine/68681.h"
330329#include "audio/atarijsa.h"
331330#include "sound/dac.h"
332331#include "includes/slapstic.h"
r23914r23915
408407 *
409408 *************************************/
410409
411static const duart68681_config duart_config =
410static const duartn68681_config duart_config =
412411{
413   harddriv_duart_irq_handler,     /* irq callback */
414   NULL,                           /* serial transmit */
415   NULL,                           /* output port */
416   NULL                            /* input port */
412   DEVCB_DRIVER_LINE_MEMBER(harddriv_state, harddriv_duart_irq_handler),     /* irq callback */
413   DEVCB_NULL,                           /* serial transmit A */
414   DEVCB_NULL,                     /* serial transmit B */
415   DEVCB_NULL,                     /* input port */
416   DEVCB_NULL,                     /* output port */
417417};
418418
419419
r23914r23915
437437   AM_RANGE(0xb80000, 0xbfffff) AM_READWRITE_LEGACY(hd68k_adc12_r, hd68k_adc_control_w)
438438   AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE_LEGACY(hd68k_gsp_io_r, hd68k_gsp_io_w)
439439   AM_RANGE(0xc04000, 0xc07fff) AM_READWRITE_LEGACY(hd68k_msp_io_r, hd68k_msp_io_w)
440   AM_RANGE(0xff0000, 0xff001f) AM_DEVREADWRITE8_LEGACY("duart68681", duart68681_r, duart68681_w, 0xff00)
440   AM_RANGE(0xff0000, 0xff001f) AM_DEVREADWRITE8("duartn68681", duartn68681_device, read, write, 0xff00)
441441   AM_RANGE(0xff4000, 0xff4fff) AM_READWRITE_LEGACY(hd68k_zram_r, hd68k_zram_w) AM_SHARE("eeprom")
442442   AM_RANGE(0xff8000, 0xffffff) AM_RAM
443443ADDRESS_MAP_END
r23914r23915
485485   AM_RANGE(0xb80000, 0xbfffff) AM_READWRITE_LEGACY(hd68k_adc12_r, hd68k_adc_control_w)
486486   AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE_LEGACY(hd68k_gsp_io_r, hd68k_gsp_io_w)
487487   AM_RANGE(0xc04000, 0xc07fff) AM_READWRITE_LEGACY(hd68k_msp_io_r, hd68k_msp_io_w)
488   AM_RANGE(0xff0000, 0xff001f) AM_DEVREADWRITE8_LEGACY("duart68681", duart68681_r, duart68681_w, 0xff00)
488   AM_RANGE(0xff0000, 0xff001f) AM_DEVREADWRITE8("duartn68681", duartn68681_device, read, write, 0xff00)
489489   AM_RANGE(0xff4000, 0xff4fff) AM_READWRITE_LEGACY(hd68k_zram_r, hd68k_zram_w) AM_SHARE("eeprom")
490490   AM_RANGE(0xff8000, 0xffffff) AM_RAM
491491ADDRESS_MAP_END
r23914r23915
523523   AM_RANGE(0xb80000, 0xbfffff) AM_READWRITE_LEGACY(hd68k_adc12_r, hd68k_adc_control_w)
524524   AM_RANGE(0xc00000, 0xc03fff) AM_READWRITE_LEGACY(hd68k_gsp_io_r, hd68k_gsp_io_w)
525525   AM_RANGE(0xc04000, 0xc07fff) AM_READWRITE_LEGACY(hd68k_msp_io_r, hd68k_msp_io_w)
526   AM_RANGE(0xfc0000, 0xfc001f) AM_DEVREADWRITE8_LEGACY("duart68681", duart68681_r, duart68681_w, 0xff00)
526   AM_RANGE(0xfc0000, 0xfc001f) AM_DEVREADWRITE8("duartn68681", duartn68681_device, read, write, 0xff00)
527527   AM_RANGE(0xfd0000, 0xfd0fff) AM_MIRROR(0x004000) AM_READWRITE_LEGACY(hd68k_zram_r, hd68k_zram_w) AM_SHARE("eeprom")
528528   AM_RANGE(0xff0000, 0xffffff) AM_RAM
529529ADDRESS_MAP_END
r23914r23915
13531353   MCFG_MACHINE_RESET_OVERRIDE(harddriv_state,harddriv)
13541354   MCFG_NVRAM_ADD_1FILL("eeprom")
13551355
1356   MCFG_DUART68681_ADD("duart68681", XTAL_3_6864MHz, duart_config)
1356   MCFG_DUARTN68681_ADD("duartn68681", XTAL_3_6864MHz, duart_config)
13571357
13581358   /* video hardware */
13591359   MCFG_VIDEO_ATTRIBUTES(VIDEO_UPDATE_BEFORE_VBLANK)

Previous 199869 Revisions Next


© 1997-2024 The MAME Team