mirror of
https://github.com/holub/mame
synced 2025-10-07 17:27:06 +03:00
(MESS) Refactored all drivers to use the new MOS6551 and removed the old implementation. (nw)
This commit is contained in:
parent
871d4c7ac6
commit
31257a208a
2
.gitattributes
vendored
2
.gitattributes
vendored
@ -1114,8 +1114,6 @@ src/emu/machine/6526cia.c svneol=native#text/plain
|
||||
src/emu/machine/6526cia.h svneol=native#text/plain
|
||||
src/emu/machine/6532riot.c svneol=native#text/plain
|
||||
src/emu/machine/6532riot.h svneol=native#text/plain
|
||||
src/emu/machine/6551acia.c svneol=native#text/plain
|
||||
src/emu/machine/6551acia.h svneol=native#text/plain
|
||||
src/emu/machine/6821pia.c svneol=native#text/plain
|
||||
src/emu/machine/6821pia.h svneol=native#text/plain
|
||||
src/emu/machine/6840ptm.c svneol=native#text/plain
|
||||
|
@ -147,7 +147,6 @@ EMUMACHINEOBJS = \
|
||||
$(EMUMACHINE)/6525tpi.o \
|
||||
$(EMUMACHINE)/6526cia.o \
|
||||
$(EMUMACHINE)/6532riot.o \
|
||||
$(EMUMACHINE)/6551acia.o \
|
||||
$(EMUMACHINE)/6821pia.o \
|
||||
$(EMUMACHINE)/6840ptm.o \
|
||||
$(EMUMACHINE)/6850acia.o \
|
||||
|
@ -1,505 +0,0 @@
|
||||
/*********************************************************************
|
||||
|
||||
6551.h
|
||||
|
||||
MOS Technology 6551 Asynchronous Communications Interface Adapter
|
||||
|
||||
A1 A0 Write Read
|
||||
0 0 Transmit Data Register Receiver Data Register
|
||||
0 1 Programmed Reset Status Register
|
||||
1 0 Command Register
|
||||
1 1 Control Register
|
||||
|
||||
*********************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "6551acia.h"
|
||||
|
||||
|
||||
//**************************************************************************
|
||||
// DEVICE DEFINITIONS
|
||||
//**************************************************************************
|
||||
|
||||
const device_type ACIA6551 = &device_creator<acia6551_device>;
|
||||
|
||||
//-------------------------------------------------
|
||||
// acia6551_device - constructor
|
||||
//-------------------------------------------------
|
||||
|
||||
acia6551_device::acia6551_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock)
|
||||
: device_t(mconfig, ACIA6551, "MOS Technology 6551 ACIA", tag, owner, clock),
|
||||
device_serial_interface(mconfig, *this)
|
||||
{
|
||||
}
|
||||
|
||||
/***************************************************************************
|
||||
IMPLEMENTATION
|
||||
***************************************************************************/
|
||||
|
||||
/*-------------------------------------------------
|
||||
input_callback - called when other side
|
||||
has updated state
|
||||
-------------------------------------------------*/
|
||||
void acia6551_device::input_callback(UINT8 state)
|
||||
{
|
||||
m_input_state = state;
|
||||
}
|
||||
|
||||
/*-------------------------------------------------
|
||||
timer_callback
|
||||
-------------------------------------------------*/
|
||||
void acia6551_device::timer_callback()
|
||||
{
|
||||
/* get bit received from other side and update receive register */
|
||||
receive_register_update_bit(get_in_data_bit());
|
||||
|
||||
if (is_receive_register_full())
|
||||
{
|
||||
receive_register_extract();
|
||||
receive_character(get_received_char());
|
||||
}
|
||||
|
||||
/* transmit register full? */
|
||||
if ((m_status_register & (1<<4))==0)
|
||||
{
|
||||
/* if transmit reg is empty */
|
||||
if (is_transmit_register_empty())
|
||||
{
|
||||
/* set it up */
|
||||
transmit_register_setup(m_transmit_data_register);
|
||||
/* acia transmit reg now empty */
|
||||
m_status_register |=(1<<4);
|
||||
/* and refresh ints */
|
||||
refresh_ints();
|
||||
}
|
||||
}
|
||||
|
||||
/* if transmit is not empty... transmit data */
|
||||
if (!is_transmit_register_empty())
|
||||
{
|
||||
// logerror("UART6551\n");
|
||||
transmit_register_send_bit();
|
||||
}
|
||||
}
|
||||
|
||||
static TIMER_CALLBACK(acia_6551_timer_callback)
|
||||
{
|
||||
reinterpret_cast<acia6551_device *>(ptr)->timer_callback();
|
||||
}
|
||||
|
||||
//-------------------------------------------------
|
||||
// device_start - device-specific startup
|
||||
//-------------------------------------------------
|
||||
|
||||
void acia6551_device::device_start()
|
||||
{
|
||||
/* transmit data reg is empty */
|
||||
m_status_register = (1<<4);
|
||||
m_timer = machine().scheduler().timer_alloc(FUNC(acia_6551_timer_callback), (void *) this);
|
||||
|
||||
transmit_register_reset();
|
||||
receive_register_reset();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
refresh_ints - update interrupt output
|
||||
-------------------------------------------------*/
|
||||
|
||||
void acia6551_device::refresh_ints()
|
||||
{
|
||||
int interrupt_state;
|
||||
|
||||
interrupt_state = 0;
|
||||
|
||||
/* receive interrupts */
|
||||
|
||||
/* receive data register full? */
|
||||
if (m_status_register & (1<<3))
|
||||
{
|
||||
/* receiver interrupt enable? */
|
||||
if ((m_command_register & (1<<1))==0)
|
||||
{
|
||||
/* trigger a interrupt */
|
||||
interrupt_state = 1;
|
||||
}
|
||||
}
|
||||
|
||||
/* set state of irq bit in status register */
|
||||
m_status_register &= ~(1<<7);
|
||||
|
||||
if (interrupt_state)
|
||||
{
|
||||
m_status_register |=(1<<7);
|
||||
}
|
||||
|
||||
//if (m_irq_callback != NULL)
|
||||
//(*m_irq_callback)(interrupt_state);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
receive_character
|
||||
-------------------------------------------------*/
|
||||
|
||||
void acia6551_device::receive_character(UINT8 ch)
|
||||
{
|
||||
/* receive register full? */
|
||||
if (m_status_register & (1<<3))
|
||||
{
|
||||
/* set overrun error */
|
||||
m_status_register |= (1<<2);
|
||||
return;
|
||||
}
|
||||
|
||||
/* set new byte */
|
||||
m_receive_data_register = ch;
|
||||
/* receive register is full */
|
||||
m_status_register |= (1<<3);
|
||||
/* update ints */
|
||||
refresh_ints();
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
read
|
||||
-------------------------------------------------*/
|
||||
|
||||
READ8_MEMBER(acia6551_device::read)
|
||||
{
|
||||
unsigned char data;
|
||||
|
||||
data = 0x0ff;
|
||||
switch (offset & 0x03)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
/* clear parity error, framing error and overrun error */
|
||||
/* when read of data reigster is done */
|
||||
m_status_register &=~((1<<0) | (1<<1) | (1<<2));
|
||||
/* clear receive data register full flag */
|
||||
m_status_register &=~(1<<3);
|
||||
/* return data */
|
||||
data = m_receive_data_register;
|
||||
}
|
||||
break;
|
||||
|
||||
/*
|
||||
Status cleared by
|
||||
b0 Parity error * (1: error) self clearing **
|
||||
b1 Framing error * (1: error) self clearing **
|
||||
b2 Overrun * (1: error) self clearing **
|
||||
b3 Receive Data Register Full (1: full) Read Receive Data Register
|
||||
b4 Transmit Data Reg Empty (1: empty) Write Transmit Data Register
|
||||
b5 DCD (0: DCD low, 1: DCD high) Not resettable, reflects DCD state
|
||||
b6 DSR (0: DSR low, 1: DCD high) Not resettable, reflects DSR state
|
||||
b7 IRQ (0: no int., 1: interrupt) Read Status Register
|
||||
*/
|
||||
case 1:
|
||||
{
|
||||
data = m_status_register;
|
||||
/* clear interrupt */
|
||||
m_status_register &= ~(1<<7);
|
||||
}
|
||||
break;
|
||||
|
||||
case 2:
|
||||
data = m_command_register;
|
||||
break;
|
||||
|
||||
case 3:
|
||||
data = m_control_register;
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
//logerror("6551 R %04x %02x\n",offset & 0x03,data);
|
||||
|
||||
return data;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
update_data_form
|
||||
-------------------------------------------------*/
|
||||
|
||||
void acia6551_device::update_data_form()
|
||||
{
|
||||
int word_length = 8-((m_control_register>>5) & 0x03);
|
||||
int stop_bit_count = (m_control_register>>7)+1;
|
||||
int parity = 0;
|
||||
if (m_command_register & (1<<5))
|
||||
{
|
||||
parity = SERIAL_PARITY_ODD;
|
||||
}
|
||||
else
|
||||
{
|
||||
parity = SERIAL_PARITY_NONE;
|
||||
}
|
||||
|
||||
set_data_frame(word_length, stop_bit_count, parity);
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*-------------------------------------------------
|
||||
write
|
||||
-------------------------------------------------*/
|
||||
|
||||
WRITE8_MEMBER(acia6551_device::write)
|
||||
{
|
||||
//logerror("6551 W %04x %02x\n",offset & 0x03, data);
|
||||
|
||||
switch (offset & 0x03)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
/* clear transmit data register empty */
|
||||
m_status_register &= ~(1<<4);
|
||||
/* store byte */
|
||||
m_transmit_data_register = data;
|
||||
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
{
|
||||
/* telstrat writes 0x07f! */
|
||||
}
|
||||
break;
|
||||
|
||||
|
||||
/*
|
||||
Command Register:
|
||||
|
||||
b0 Data Terminal Ready
|
||||
0 : disable receiver and all interrupts (DTR high)
|
||||
1 : enable receiver and all interrupts (DTR low)
|
||||
b1 Receiver Interrupt Enable
|
||||
0 : IRQ interrupt enabled from bit 3 of status register
|
||||
1 : IRQ interrupt disabled
|
||||
b3,b2 Transmitter Control
|
||||
Transmit Interrupt RTS level Transmitter
|
||||
00 disabled high off
|
||||
01 enabled low on
|
||||
10 disabled low on
|
||||
11 disabled low Transmit BRK
|
||||
b4 Normal/Echo Mode for Receiver
|
||||
0 : normal
|
||||
1 : echo (bits 2 and 3 must be 0)
|
||||
b5 Parity Enable
|
||||
0 : parity disabled, no parity bit generated or received
|
||||
1 : parity enabled
|
||||
b7,b6 Parity
|
||||
00 : odd parity receiver and transmitter
|
||||
01 : even parity receiver and transmitter
|
||||
10 : mark parity bit transmitted, parity check disabled
|
||||
11 : space parity bit transmitted, parity check disabled
|
||||
*/
|
||||
|
||||
case 2:
|
||||
{
|
||||
m_command_register = data;
|
||||
|
||||
/* update state of dtr */
|
||||
m_connection_state &=~SERIAL_STATE_DTR;
|
||||
if (m_command_register & (1<<0))
|
||||
{
|
||||
m_connection_state |=SERIAL_STATE_DTR;
|
||||
}
|
||||
|
||||
/* update state of rts */
|
||||
switch ((m_command_register>>2) & 0x03)
|
||||
{
|
||||
case 0:
|
||||
{
|
||||
m_connection_state &=~SERIAL_STATE_RTS;
|
||||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
case 2:
|
||||
case 3:
|
||||
{
|
||||
m_connection_state |=SERIAL_STATE_RTS;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
serial_connection_out();
|
||||
update_data_form();
|
||||
}
|
||||
break;
|
||||
|
||||
/*
|
||||
Control register:
|
||||
|
||||
b3-b0 baud rate generator:
|
||||
0000 : 16x external clock
|
||||
0001 : 50 baud
|
||||
0010 : 75 25
|
||||
0011 : 110 35
|
||||
0100 : 134.5
|
||||
0101 : 150
|
||||
0110 : 300 150
|
||||
0111 : 600 300
|
||||
1000 : 1200 600
|
||||
1001 : 1800 600
|
||||
1010 : 2400 600
|
||||
1011 : 3600 1200
|
||||
1100 : 4800 1200
|
||||
1101 : 7200 2400
|
||||
1110 : 9600 2400
|
||||
1111 : 19,200 9600
|
||||
b4 receiver clock source
|
||||
0 : external receiver clock
|
||||
1 : baud rate generator
|
||||
b6,b5 word length
|
||||
00 : 8 bits
|
||||
01 : 7
|
||||
10 : 6
|
||||
11 : 5
|
||||
b7 stop bits
|
||||
0 : 1 stop bit
|
||||
1 : 2 stop bits
|
||||
(1 stop bit if parity and word length = 8)
|
||||
(1 1/2 stop bits if word length = 5 and no parity)
|
||||
*/
|
||||
case 3:
|
||||
{
|
||||
unsigned char previous_control_register;
|
||||
|
||||
previous_control_register = m_control_register;
|
||||
|
||||
if (((previous_control_register^data) & 0x07)!=0)
|
||||
{
|
||||
int rate;
|
||||
|
||||
rate = data & 0x07;
|
||||
|
||||
/* baud rate changed? */
|
||||
m_timer->reset();
|
||||
|
||||
if (rate==0)
|
||||
{
|
||||
/* 16x external clock */
|
||||
logerror("6551: external clock not supported!\n");
|
||||
}
|
||||
else
|
||||
{
|
||||
int baud_rate;
|
||||
|
||||
switch (rate)
|
||||
{
|
||||
default:
|
||||
case 1:
|
||||
{
|
||||
baud_rate = 50;
|
||||
}
|
||||
break;
|
||||
|
||||
case 2:
|
||||
{
|
||||
baud_rate = 75;
|
||||
}
|
||||
break;
|
||||
|
||||
case 3:
|
||||
{
|
||||
baud_rate = 110;
|
||||
}
|
||||
break;
|
||||
|
||||
case 4:
|
||||
{
|
||||
baud_rate = 135;
|
||||
}
|
||||
break;
|
||||
|
||||
case 5:
|
||||
{
|
||||
baud_rate = 150;
|
||||
}
|
||||
break;
|
||||
|
||||
case 6:
|
||||
{
|
||||
baud_rate = 300;
|
||||
}
|
||||
break;
|
||||
|
||||
case 7:
|
||||
{
|
||||
baud_rate = 600;
|
||||
}
|
||||
break;
|
||||
|
||||
case 8:
|
||||
{
|
||||
baud_rate = 1200;
|
||||
}
|
||||
break;
|
||||
|
||||
case 9:
|
||||
{
|
||||
baud_rate = 1800;
|
||||
}
|
||||
break;
|
||||
|
||||
case 10:
|
||||
{
|
||||
baud_rate = 2400;
|
||||
}
|
||||
break;
|
||||
|
||||
case 11:
|
||||
{
|
||||
baud_rate = 3600;
|
||||
}
|
||||
break;
|
||||
|
||||
case 12:
|
||||
{
|
||||
baud_rate = 4800;
|
||||
}
|
||||
break;
|
||||
|
||||
case 13:
|
||||
{
|
||||
baud_rate = 7200;
|
||||
}
|
||||
break;
|
||||
|
||||
case 14:
|
||||
{
|
||||
baud_rate = 9600;
|
||||
}
|
||||
break;
|
||||
|
||||
case 15:
|
||||
{
|
||||
baud_rate = 19200;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
m_timer->adjust(attotime::zero, 0, attotime::from_hz(baud_rate));
|
||||
}
|
||||
}
|
||||
|
||||
m_control_register = data;
|
||||
update_data_form();
|
||||
}
|
||||
break;
|
||||
|
||||
default:
|
||||
break;
|
||||
}
|
||||
|
||||
}
|
@ -1,65 +0,0 @@
|
||||
/*********************************************************************
|
||||
|
||||
6551.h
|
||||
|
||||
MOS Technology 6551 Asynchronous Communications Interface Adapter
|
||||
|
||||
*********************************************************************/
|
||||
|
||||
#ifndef __6551_H__
|
||||
#define __6551_H__
|
||||
|
||||
//**************************************************************************
|
||||
// INTERFACE CONFIGURATION MACROS
|
||||
//**************************************************************************
|
||||
|
||||
#define MCFG_ACIA6551_ADD(_tag) \
|
||||
MCFG_DEVICE_ADD((_tag), ACIA6551, 0)
|
||||
|
||||
|
||||
/***************************************************************************
|
||||
TYPE DEFINITIONS
|
||||
***************************************************************************/
|
||||
|
||||
// ======================> acia6551_device
|
||||
|
||||
class acia6551_device : public device_t,
|
||||
public device_serial_interface
|
||||
{
|
||||
public:
|
||||
// construction/destruction
|
||||
acia6551_device(const machine_config &mconfig, const char *tag, device_t *owner, UINT32 clock);
|
||||
|
||||
/* read data register */
|
||||
DECLARE_READ8_MEMBER(read);
|
||||
|
||||
/* write data register */
|
||||
DECLARE_WRITE8_MEMBER(write);
|
||||
|
||||
void receive_character(UINT8 ch);
|
||||
|
||||
void timer_callback();
|
||||
|
||||
virtual void input_callback(UINT8 state);
|
||||
protected:
|
||||
// device-level overrides
|
||||
virtual void device_start();
|
||||
|
||||
void refresh_ints();
|
||||
void update_data_form();
|
||||
|
||||
private:
|
||||
UINT8 m_transmit_data_register;
|
||||
UINT8 m_receive_data_register;
|
||||
UINT8 m_status_register;
|
||||
UINT8 m_command_register;
|
||||
UINT8 m_control_register;
|
||||
|
||||
/* internal baud rate timer */
|
||||
emu_timer *m_timer;
|
||||
};
|
||||
|
||||
// device type definition
|
||||
extern const device_type ACIA6551;
|
||||
|
||||
#endif /* __6551_H__ */
|
@ -11,7 +11,7 @@
|
||||
#include "emu.h"
|
||||
#include "cpu/m6502/m6502.h"
|
||||
#include "machine/6522via.h"
|
||||
//#include "machine/6551acia.h"
|
||||
//#include "machine/mos6551.h"
|
||||
|
||||
#include "cops.lh"
|
||||
|
||||
@ -564,8 +564,8 @@ static ADDRESS_MAP_START( cops_map, AS_PROGRAM, 8, cops_state )
|
||||
AM_RANGE(0xb000, 0xb00f) AM_DEVREADWRITE("via6522_1", via6522_device, read, write) /* VIA 1 */
|
||||
AM_RANGE(0xb800, 0xb80f) AM_DEVREADWRITE("via6522_2", via6522_device, read, write) /* VIA 2 */
|
||||
AM_RANGE(0xc000, 0xcfff) AM_READWRITE(io2_r, io2_w)
|
||||
// AM_RANGE(0xd000, 0xd003) AM_DEVREADWRITE("acia6551_1", acia6551_device, read, write )
|
||||
// AM_RANGE(0xd004, 0xd007) AM_DEVREADWRITE("acia6551_2", acia6551_device, read, write )
|
||||
// AM_RANGE(0xd000, 0xd003) AM_DEVREADWRITE("acia6551_1", mos6551_device, read, write )
|
||||
// AM_RANGE(0xd004, 0xd007) AM_DEVREADWRITE("acia6551_2", mos6551_device, read, write )
|
||||
AM_RANGE(0xd000, 0xd007) AM_READWRITE(dacia_r, dacia_w)
|
||||
AM_RANGE(0xd800, 0xd80f) AM_DEVREADWRITE("via6522_3", via6522_device, read, write) /* VIA 3 */
|
||||
AM_RANGE(0xe000, 0xffff) AM_ROM AM_REGION("system", 0)
|
||||
@ -644,8 +644,8 @@ static MACHINE_CONFIG_START( cops, cops_state )
|
||||
MCFG_VIA6522_ADD("via6522_3", 0, via_3_interface)
|
||||
|
||||
/* acia */
|
||||
// MCFG_ACIA6551_ADD("acia6551_1")
|
||||
// MCFG_ACIA6551_ADD("acia6551_2")
|
||||
// MCFG_MOS6551_ADD("acia6551_1", XTAL_1_8432MHz, NULL)
|
||||
// MCFG_MOS6551_ADD("acia6551_2", XTAL_1_8432MHz, NULL)
|
||||
|
||||
/* sound hardware */
|
||||
MCFG_SPEAKER_STANDARD_MONO("mono")
|
||||
|
@ -48,7 +48,7 @@ The source code there implies that *maybe* ff7e and ff7f are also open bus.
|
||||
#include "includes/aim65_40.h"
|
||||
#include "cpu/m6502/m6502.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "aim65_40.lh"
|
||||
|
||||
/***************************************************************************
|
||||
@ -61,7 +61,7 @@ static ADDRESS_MAP_START( aim65_40_mem, AS_PROGRAM, 8, aim65_40_state )
|
||||
AM_RANGE(0xffa0, 0xffaf) AM_DEVREADWRITE(M6522_0_TAG, via6522_device, read, write)
|
||||
AM_RANGE(0xffb0, 0xffbf) AM_DEVREADWRITE(M6522_1_TAG, via6522_device, read, write)
|
||||
AM_RANGE(0xffc0, 0xffcf) AM_DEVREADWRITE(M6522_2_TAG, via6522_device, read, write)
|
||||
AM_RANGE(0xffd0, 0xffd3) AM_DEVREADWRITE(M6551_TAG, acia6551_device, read, write)
|
||||
AM_RANGE(0xffd0, 0xffd3) AM_DEVREADWRITE(M6551_TAG, mos6551_device, read, write)
|
||||
AM_RANGE(0xffe0, 0xffff) AM_ROM
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -145,7 +145,7 @@ static MACHINE_CONFIG_START( aim65_40, aim65_40_state )
|
||||
MCFG_VIA6522_ADD(M6522_0_TAG, 0, user_via_intf)
|
||||
MCFG_VIA6522_ADD(M6522_1_TAG, 0, system_via_intf)
|
||||
MCFG_VIA6522_ADD(M6522_2_TAG, 0, kb_via_intf)
|
||||
MCFG_ACIA6551_ADD(M6551_TAG)
|
||||
MCFG_MOS6551_ADD(M6551_TAG, XTAL_1_8432MHz, NULL)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
/***************************************************************************
|
||||
|
@ -16,7 +16,7 @@
|
||||
#include "includes/apple2.h"
|
||||
#include "imagedev/flopdrv.h"
|
||||
#include "formats/ap2_dsk.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/a2bus.h"
|
||||
#include "machine/ram.h"
|
||||
@ -98,7 +98,7 @@ static MACHINE_CONFIG_START( apple3, apple3_state )
|
||||
MCFG_APPLEFDC_ADD("fdc", apple3_fdc_interface)
|
||||
MCFG_LEGACY_FLOPPY_APPLE_4_DRIVES_ADD(apple3_floppy_interface,1,4)
|
||||
/* acia */
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
|
||||
/* via */
|
||||
MCFG_VIA6522_ADD("via6522_0", 1000000, apple3_via_0_intf)
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "emu.h"
|
||||
#include "cpu/m6502/m65c02.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "rendlay.h"
|
||||
|
||||
class clcd_state : public driver_device
|
||||
@ -178,7 +178,7 @@ private:
|
||||
static ADDRESS_MAP_START( clcd_mem, AS_PROGRAM, 8, clcd_state )
|
||||
AM_RANGE(0xf800, 0xf80f) AM_DEVREADWRITE("via0", via6522_device, read, write)
|
||||
AM_RANGE(0xf880, 0xf88f) AM_DEVREADWRITE("via1", via6522_device, read, write)
|
||||
AM_RANGE(0xf980, 0xf981) AM_DEVREADWRITE("acia", acia6551_device, read, write)
|
||||
AM_RANGE(0xf980, 0xf981) AM_DEVREADWRITE("acia", mos6551_device, read, write)
|
||||
AM_RANGE(0xff00, 0xff00) AM_WRITE(rombank_w)
|
||||
AM_RANGE(0xff80, 0xff83) AM_WRITE(rambank_w)
|
||||
AM_RANGE(0x0000, 0x3fff) AM_RAM AM_SHARE("ram")
|
||||
@ -345,7 +345,7 @@ static MACHINE_CONFIG_START( clcd, clcd_state )
|
||||
|
||||
MCFG_VIA6522_ADD("via0", 0, via0_intf)
|
||||
MCFG_VIA6522_ADD("via1", 0, via1_intf)
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
|
||||
/* video hardware */
|
||||
MCFG_SCREEN_ADD("screen", LCD)
|
||||
|
@ -146,8 +146,8 @@ static MACHINE_CONFIG_START( concept, concept_state )
|
||||
MCFG_VIA6522_ADD("via6522_0", 1022750, concept_via6522_intf)
|
||||
|
||||
/* ACIAs */
|
||||
MCFG_ACIA6551_ADD(ACIA_0_TAG)
|
||||
MCFG_ACIA6551_ADD(ACIA_1_TAG)
|
||||
MCFG_MOS6551_ADD(ACIA_0_TAG, XTAL_1_8432MHz, NULL)
|
||||
MCFG_MOS6551_ADD(ACIA_1_TAG, XTAL_1_8432MHz, NULL)
|
||||
|
||||
MCFG_FD1793_ADD("wd179x", concept_wd17xx_interface )
|
||||
|
||||
|
@ -42,7 +42,7 @@ documentation still exists.
|
||||
#include "cpu/m6809/m6809.h"
|
||||
#include "machine/6821pia.h"
|
||||
#include "includes/dgn_beta.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "formats/coco_dsk.h"
|
||||
#include "imagedev/flopdrv.h"
|
||||
#include "machine/ram.h"
|
||||
|
@ -60,7 +60,7 @@
|
||||
#include "machine/terminal.h"
|
||||
#include "sound/speaker.h"
|
||||
#include "machine/roc10937.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/mm74c922.h"
|
||||
#include "machine/ram.h"
|
||||
#include "digel804.lh"
|
||||
@ -84,7 +84,7 @@ public:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<generic_terminal_device> m_terminal;
|
||||
required_device<speaker_sound_device> m_speaker;
|
||||
required_device<acia6551_device> m_acia;
|
||||
required_device<mos6551_device> m_acia;
|
||||
required_device<roc10937_t> m_vfd;
|
||||
required_device<mm74c922_device> m_kb;
|
||||
required_device<ram_device> m_ram;
|
||||
@ -480,7 +480,7 @@ static ADDRESS_MAP_START(z80_io_1_4, AS_IO, 8, digel804_state)
|
||||
AM_RANGE(0x85, 0x85) AM_MIRROR(0x38) AM_READ(acia_command_r) // (ACIA command reg)
|
||||
AM_RANGE(0x86, 0x86) AM_MIRROR(0x38) AM_WRITE(acia_control_w) // (ACIA control reg)
|
||||
AM_RANGE(0x87, 0x87) AM_MIRROR(0x38) AM_READ(acia_control_r) // (ACIA control reg)
|
||||
//AM_RANGE(0x80,0x87) AM_MIRROR(0x38) AM_SHIFT(-1) AM_DEVREADWRITE("acia", acia6551_device, read, write) // this doesn't work since we lack an AM_SHIFT command
|
||||
//AM_RANGE(0x80,0x87) AM_MIRROR(0x38) AM_SHIFT(-1) AM_DEVREADWRITE("acia", mos6551_device, read, write) // this doesn't work since we lack an AM_SHIFT command
|
||||
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -507,7 +507,7 @@ static ADDRESS_MAP_START(z80_io_1_2, AS_IO, 8, digel804_state)
|
||||
AM_RANGE(0x85, 0x85) AM_MIRROR(0x38) AM_READ(acia_command_r) // (ACIA command reg)
|
||||
AM_RANGE(0x86, 0x86) AM_MIRROR(0x38) AM_WRITE(acia_control_w) // (ACIA control reg)
|
||||
AM_RANGE(0x87, 0x87) AM_MIRROR(0x38) AM_READ(acia_control_r) // (ACIA control reg)
|
||||
//AM_RANGE(0x80,0x87) AM_MIRROR(0x38) AM_SHIFT(-1) AM_DEVREADWRITE("acia", acia6551_device, read, write) // this doesn't work since we lack an AM_SHIFT command
|
||||
//AM_RANGE(0x80,0x87) AM_MIRROR(0x38) AM_SHIFT(-1) AM_DEVREADWRITE("acia", mos6551_device, read, write) // this doesn't work since we lack an AM_SHIFT command
|
||||
|
||||
ADDRESS_MAP_END
|
||||
|
||||
@ -561,7 +561,7 @@ INPUT_PORTS_END
|
||||
******************************************************************************/
|
||||
WRITE8_MEMBER(digel804_state::digel804_serial_put)
|
||||
{
|
||||
m_acia->receive_character(data);
|
||||
//m_acia->receive_character(data);
|
||||
}
|
||||
|
||||
static GENERIC_TERMINAL_INTERFACE( digel804_terminal_intf )
|
||||
@ -603,7 +603,7 @@ static MACHINE_CONFIG_START( digel804, digel804_state )
|
||||
MCFG_MM74C923_ADD("74c923", digel804_keypad_intf)
|
||||
|
||||
/* acia */
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
|
||||
MCFG_RAM_ADD(RAM_TAG)
|
||||
MCFG_RAM_DEFAULT_SIZE("256K")
|
||||
|
@ -174,7 +174,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( dragon64, dragon_base, dragon64_state )
|
||||
MCFG_COCO_CARTRIDGE_ADD(CARTRIDGE_TAG, dragon_state::cartridge_config, dragon_cart, "dragon_fdc", NULL)
|
||||
|
||||
// acia
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED_CLASS( d64plus, dragon_base, dragon64_state )
|
||||
@ -186,7 +186,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( d64plus, dragon_base, dragon64_state )
|
||||
MCFG_COCO_CARTRIDGE_ADD(CARTRIDGE_TAG, dragon_state::cartridge_config, dragon_cart, "dragon_fdc", NULL)
|
||||
|
||||
// acia
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
static MACHINE_CONFIG_DERIVED_CLASS( dgnalpha, dragon_base, dragon_alpha_state )
|
||||
@ -198,7 +198,7 @@ static MACHINE_CONFIG_DERIVED_CLASS( dgnalpha, dragon_base, dragon_alpha_state )
|
||||
MCFG_COCO_CARTRIDGE_ADD(CARTRIDGE_TAG, dragon_alpha_state::cartridge_config, dragon_cart, NULL, NULL)
|
||||
|
||||
// acia
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
|
||||
// floppy
|
||||
MCFG_LEGACY_FLOPPY_4_DRIVES_ADD(coco_floppy_interface)
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "video/mc6845.h"
|
||||
#include "machine/6821pia.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/6850acia.h"
|
||||
#include "machine/keyboard.h"
|
||||
|
||||
@ -53,7 +53,7 @@ static ADDRESS_MAP_START(ec65_mem, AS_PROGRAM, 8, ec65_state)
|
||||
AM_RANGE(0xe011, 0xe011) AM_DEVREADWRITE(ACIA6850_TAG, acia6850_device, data_read, data_write)
|
||||
AM_RANGE(0xe100, 0xe10f) AM_DEVREADWRITE(VIA6522_0_TAG, via6522_device, read, write)
|
||||
AM_RANGE(0xe110, 0xe11f) AM_DEVREADWRITE(VIA6522_1_TAG, via6522_device, read, write)
|
||||
AM_RANGE(0xe130, 0xe133) AM_DEVREADWRITE(ACIA6551_TAG, acia6551_device, read, write)
|
||||
AM_RANGE(0xe130, 0xe133) AM_DEVREADWRITE(ACIA6551_TAG, mos6551_device, read, write)
|
||||
AM_RANGE(0xe140, 0xe140) AM_DEVWRITE(MC6845_TAG, mc6845_device, address_w)
|
||||
AM_RANGE(0xe141, 0xe141) AM_DEVREADWRITE(MC6845_TAG, mc6845_device, register_r , register_w)
|
||||
AM_RANGE(0xe400, 0xe7ff) AM_RAM // 1KB on-board RAM
|
||||
@ -273,7 +273,7 @@ static MACHINE_CONFIG_START( ec65, ec65_state )
|
||||
MCFG_ACIA6850_ADD(ACIA6850_TAG, ec65_acia_intf)
|
||||
MCFG_VIA6522_ADD(VIA6522_0_TAG, XTAL_4MHz / 4, ec65_via_0_intf)
|
||||
MCFG_VIA6522_ADD(VIA6522_1_TAG, XTAL_4MHz / 4, ec65_via_1_intf)
|
||||
MCFG_ACIA6551_ADD(ACIA6551_TAG) // have XTAL of 1.8432MHz connected
|
||||
MCFG_MOS6551_ADD(ACIA6551_TAG, XTAL_1_8432MHz, NULL)
|
||||
MCFG_ASCII_KEYBOARD_ADD(KEYBOARD_TAG, keyboard_intf)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
|
@ -45,7 +45,7 @@
|
||||
#include "sound/dac.h"
|
||||
#include "sound/wave.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
|
||||
/* Devices */
|
||||
#include "imagedev/cassette.h"
|
||||
@ -60,7 +60,7 @@ static ADDRESS_MAP_START( microtan_map, AS_PROGRAM, 8, microtan_state )
|
||||
AM_RANGE(0xbc02, 0xbc02) AM_DEVWRITE_LEGACY("ay8910.2", ay8910_address_w)
|
||||
AM_RANGE(0xbc03, 0xbc03) AM_DEVREADWRITE_LEGACY("ay8910.2", ay8910_r, ay8910_data_w)
|
||||
AM_RANGE(0xbfc0, 0xbfcf) AM_DEVREADWRITE("via6522_0", via6522_device, read, write)
|
||||
AM_RANGE(0xbfd0, 0xbfd3) AM_DEVREADWRITE("acia", acia6551_device, read, write)
|
||||
AM_RANGE(0xbfd0, 0xbfd3) AM_DEVREADWRITE("acia", mos6551_device, read, write)
|
||||
AM_RANGE(0xbfe0, 0xbfef) AM_DEVREADWRITE("via6522_1", via6522_device, read, write)
|
||||
AM_RANGE(0xbff0, 0xbfff) AM_READWRITE(microtan_bffx_r, microtan_bffx_w)
|
||||
AM_RANGE(0xc000, 0xe7ff) AM_ROM
|
||||
@ -256,7 +256,7 @@ static MACHINE_CONFIG_START( microtan, microtan_state )
|
||||
MCFG_CASSETTE_ADD( CASSETTE_TAG, default_cassette_interface )
|
||||
|
||||
/* acia */
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
|
||||
/* via */
|
||||
MCFG_VIA6522_ADD("via6522_0", 0, microtan_via6522_0)
|
||||
|
@ -22,7 +22,7 @@ ToDo:
|
||||
|
||||
#include "emu.h"
|
||||
#include "cpu/m6800/m6800.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/terminal.h"
|
||||
|
||||
|
||||
@ -66,7 +66,7 @@ READ8_MEMBER( mits680b_state::terminal_r )
|
||||
static ADDRESS_MAP_START(mits680b_mem, AS_PROGRAM, 8, mits680b_state)
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE( 0x0000, 0x03ff ) AM_RAM // 1024 bytes RAM
|
||||
//AM_RANGE( 0xf000, 0xf003 ) AM_DEVREADWRITE("acia", acia6551_device, read, write )
|
||||
//AM_RANGE( 0xf000, 0xf003 ) AM_DEVREADWRITE("acia", mos6551_device, read, write )
|
||||
AM_RANGE( 0xf000, 0xf000 ) AM_READ(terminal_status_r)
|
||||
AM_RANGE( 0xf001, 0xf001 ) AM_READ(terminal_r) AM_DEVWRITE(TERMINAL_TAG, generic_terminal_device, write)
|
||||
AM_RANGE( 0xf002, 0xf002 ) AM_READ(status_check_r)
|
||||
|
@ -90,7 +90,7 @@ Bit 5+6 LED 1-8 enable
|
||||
#include "cpu/m6502/m65c02.h"
|
||||
#include "cpu/arm/arm.h"
|
||||
#include "sound/beep.h"
|
||||
//#include "machine/6551acia.h"
|
||||
//#include "machine/mos6551.h"
|
||||
#include "video/hd44780.h"
|
||||
|
||||
#include "rendlay.h"
|
||||
@ -1538,7 +1538,7 @@ static MACHINE_CONFIG_START( sfortea, polgar_state )
|
||||
MCFG_FRAGMENT_ADD( chess_common )
|
||||
|
||||
/* acia */
|
||||
// MCFG_ACIA6551_ADD("acia65c51")
|
||||
// MCFG_MOS6551_ADD("acia65c51", XTAL_1_8432MHz, NULL)
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("irq_timer", polgar_state, cause_M6502_irq, attotime::from_hz(600))
|
||||
MCFG_TIMER_START_DELAY(attotime::from_hz(60))
|
||||
@ -1601,7 +1601,7 @@ static MACHINE_CONFIG_START( diablo68, polgar_state )
|
||||
MCFG_FRAGMENT_ADD( chess_common )
|
||||
|
||||
/* acia */
|
||||
// MCFG_ACIA6551_ADD("acia65c51")
|
||||
// MCFG_MOS6551_ADD("acia65c51", XTAL_1_8432MHz, NULL)
|
||||
|
||||
MCFG_TIMER_DRIVER_ADD_PERIODIC("int_timer", polgar_state, timer_update_irq2, attotime::from_hz(60))
|
||||
MCFG_TIMER_START_DELAY(attotime::from_hz(30))
|
||||
|
@ -57,7 +57,7 @@ static ADDRESS_MAP_START(telestrat_mem, AS_PROGRAM, 8, oric_state )
|
||||
AM_RANGE( 0x0000, 0x02ff) AM_RAM
|
||||
AM_RANGE( 0x0300, 0x030f) AM_DEVREADWRITE("via6522_0", via6522_device, read, write)
|
||||
AM_RANGE( 0x0310, 0x031b) AM_READWRITE(oric_microdisc_r, oric_microdisc_w )
|
||||
AM_RANGE( 0x031c, 0x031f) AM_DEVREADWRITE("acia", acia6551_device, read, write)
|
||||
AM_RANGE( 0x031c, 0x031f) AM_DEVREADWRITE("acia", mos6551_device, read, write)
|
||||
AM_RANGE( 0x0320, 0x032f) AM_DEVREADWRITE("via6522_1", via6522_device, read, write)
|
||||
AM_RANGE( 0x0400, 0xbfff) AM_RAM
|
||||
AM_RANGE( 0xc000, 0xffff) AM_READ_BANK("bank1") AM_WRITE_BANK("bank2")
|
||||
@ -425,7 +425,7 @@ static MACHINE_CONFIG_DERIVED( telstrat, oric )
|
||||
MCFG_MACHINE_START_OVERRIDE(oric_state, telestrat )
|
||||
|
||||
/* acia */
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
|
||||
/* via */
|
||||
MCFG_VIA6522_ADD( "via6522_1", 1000000, telestrat_via2_interface )
|
||||
|
@ -10,7 +10,7 @@
|
||||
/* Core includes */
|
||||
#include "emu.h"
|
||||
#include "cpu/m6800/m6800.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
//#include "dectalk.lh" // hack to avoid screenless system crash
|
||||
#include "machine/terminal.h"
|
||||
|
||||
@ -329,7 +329,7 @@ static ADDRESS_MAP_START(hd63701_main_mem, AS_PROGRAM, 8, rvoice_state )
|
||||
ADDRESS_MAP_UNMAP_HIGH
|
||||
AM_RANGE(0x0000, 0x0027) AM_READWRITE(main_hd63701_internal_registers_r, main_hd63701_internal_registers_w) // INTERNAL REGS
|
||||
AM_RANGE(0x0040, 0x013f) AM_RAM // INTERNAL RAM (overlaps acia)
|
||||
AM_RANGE(0x0060, 0x007f) AM_DEVREADWRITE("acia65c51", acia6551_device, read, write) // ACIA 65C51
|
||||
AM_RANGE(0x0060, 0x007f) AM_DEVREADWRITE("acia65c51", mos6551_device, read, write) // ACIA 65C51
|
||||
AM_RANGE(0x2000, 0x7fff) AM_RAM // EXTERNAL SRAM
|
||||
AM_RANGE(0x8000, 0xffff) AM_ROM // 27512 EPROM
|
||||
ADDRESS_MAP_END
|
||||
@ -368,7 +368,7 @@ static MACHINE_CONFIG_START( rvoicepc, rvoice_state )
|
||||
//MCFG_CPU_IO_MAP(hd63701_slave_io)
|
||||
MCFG_QUANTUM_TIME(attotime::from_hz(60))
|
||||
|
||||
MCFG_ACIA6551_ADD("acia65c51")
|
||||
MCFG_MOS6551_ADD("acia65c51", XTAL_1_8432MHz, NULL)
|
||||
|
||||
/* video hardware */
|
||||
//MCFG_DEFAULT_LAYOUT(layout_dectalk) // hack to avoid screenless system crash
|
||||
|
@ -308,7 +308,7 @@ static ADDRESS_MAP_START ( to7, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xe7cc, 0xe7cf ) AM_DEVREADWRITE( "pia_1", pia6821_device, read_alt, write_alt )
|
||||
AM_RANGE ( 0xe7d0, 0xe7df ) AM_READWRITE_LEGACY(to7_floppy_r, to7_floppy_w )
|
||||
AM_RANGE ( 0xe7e0, 0xe7e3 ) AM_DEVREADWRITE( "pia_2", pia6821_device, read_alt, write_alt )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
AM_RANGE ( 0xe7f2, 0xe7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xe7f8, 0xe7fb ) AM_DEVREADWRITE( "pia_3", pia6821_device, read_alt, write_alt )
|
||||
AM_RANGE ( 0xe7fe, 0xe7ff ) AM_READWRITE_LEGACY(to7_modem_mea8000_r, to7_modem_mea8000_w )
|
||||
@ -672,7 +672,7 @@ static MACHINE_CONFIG_START( to7, thomson_state )
|
||||
MCFG_PIA6821_ADD( THOM_PIA_MODEM, to7_pia6821_modem )
|
||||
|
||||
/* acia */
|
||||
MCFG_ACIA6551_ADD("acia")
|
||||
MCFG_MOS6551_ADD("acia", XTAL_1_8432MHz, NULL)
|
||||
|
||||
/* to7 serial io line */
|
||||
MCFG_TO7_IO_LINE_ADD("to7_io")
|
||||
@ -769,7 +769,7 @@ static ADDRESS_MAP_START ( to770, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xe7d0, 0xe7df ) AM_READWRITE_LEGACY(to7_floppy_r, to7_floppy_w )
|
||||
AM_RANGE ( 0xe7e0, 0xe7e3 ) AM_DEVREADWRITE( "pia_2", pia6821_device, read_alt, write_alt )
|
||||
AM_RANGE ( 0xe7e4, 0xe7e7 ) AM_READWRITE_LEGACY(to770_gatearray_r, to770_gatearray_w )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
AM_RANGE ( 0xe7f2, 0xe7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xe7f8, 0xe7fb ) AM_DEVREADWRITE( "pia_3", pia6821_device, read_alt, write_alt )
|
||||
AM_RANGE ( 0xe7fe, 0xe7ff ) AM_READWRITE_LEGACY(to7_modem_mea8000_r, to7_modem_mea8000_w )
|
||||
@ -960,7 +960,7 @@ static ADDRESS_MAP_START ( mo5, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xa7d0, 0xa7df ) AM_READWRITE_LEGACY(to7_floppy_r, to7_floppy_w )
|
||||
AM_RANGE ( 0xa7e0, 0xa7e3 ) AM_DEVREADWRITE( "pia_2", pia6821_device, read_alt, write_alt )
|
||||
AM_RANGE ( 0xa7e4, 0xa7e7 ) AM_READWRITE_LEGACY(mo5_gatearray_r, mo5_gatearray_w )
|
||||
AM_RANGE ( 0xa7e8, 0xa7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xa7e8, 0xa7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
AM_RANGE ( 0xa7f2, 0xa7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xa7fe, 0xa7ff ) AM_DEVREADWRITE_LEGACY("mea8000", mea8000_r, mea8000_w)
|
||||
AM_RANGE ( 0xb000, 0xefff ) AM_READ_BANK ( THOM_CART_BANK) AM_WRITE_LEGACY(mo5_cartridge_w )
|
||||
@ -1165,7 +1165,7 @@ static ADDRESS_MAP_START ( to9, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xe7da, 0xe7dd ) AM_READWRITE_LEGACY(to9_vreg_r, to9_vreg_w )
|
||||
AM_RANGE ( 0xe7de, 0xe7df ) AM_READWRITE_LEGACY(to9_kbd_r, to9_kbd_w )
|
||||
AM_RANGE ( 0xe7e4, 0xe7e7 ) AM_READWRITE_LEGACY(to9_gatearray_r, to9_gatearray_w )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
/* AM_RANGE ( 0xe7f0, 0xe7f7 ) AM_READWRITE_LEGACY(to9_ieee_r, to9_ieee_w ) */
|
||||
AM_RANGE ( 0xe7f2, 0xe7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xe7f8, 0xe7fb ) AM_DEVREADWRITE( "pia_3", pia6821_device, read_alt, write_alt)
|
||||
@ -1489,7 +1489,7 @@ static ADDRESS_MAP_START ( to8, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xe7d0, 0xe7d9 ) AM_READWRITE_LEGACY(to8_floppy_r, to8_floppy_w )
|
||||
AM_RANGE ( 0xe7da, 0xe7dd ) AM_READWRITE_LEGACY(to8_vreg_r, to8_vreg_w )
|
||||
AM_RANGE ( 0xe7e4, 0xe7e7 ) AM_READWRITE_LEGACY(to8_gatearray_r, to8_gatearray_w )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
/* AM_RANGE ( 0xe7f0, 0xe7f7 ) AM_READWRITE_LEGACY(to9_ieee_r, to9_ieee_w ) */
|
||||
AM_RANGE ( 0xe7f2, 0xe7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xe7f8, 0xe7fb ) AM_DEVREADWRITE( "pia_3", pia6821_device, read_alt, write_alt)
|
||||
@ -1685,7 +1685,7 @@ static ADDRESS_MAP_START ( to9p, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xe7da, 0xe7dd ) AM_READWRITE_LEGACY(to8_vreg_r, to8_vreg_w )
|
||||
AM_RANGE ( 0xe7de, 0xe7df ) AM_READWRITE_LEGACY(to9_kbd_r, to9_kbd_w )
|
||||
AM_RANGE ( 0xe7e4, 0xe7e7 ) AM_READWRITE_LEGACY(to8_gatearray_r, to8_gatearray_w )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xe7e8, 0xe7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
/* AM_RANGE ( 0xe7f0, 0xe7f7 ) AM_READWRITE_LEGACY(to9_ieee_r, to9_ieee_w ) */
|
||||
AM_RANGE ( 0xe7f2, 0xe7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xe7f8, 0xe7fb ) AM_DEVREADWRITE( "pia_3", pia6821_device, read_alt, write_alt)
|
||||
@ -1845,7 +1845,7 @@ static ADDRESS_MAP_START ( mo6, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xa7d0, 0xa7d9 ) AM_READWRITE_LEGACY(to7_floppy_r, to7_floppy_w )
|
||||
AM_RANGE ( 0xa7da, 0xa7dd ) AM_READWRITE_LEGACY(mo6_vreg_r, mo6_vreg_w )
|
||||
AM_RANGE ( 0xa7e4, 0xa7e7 ) AM_READWRITE_LEGACY(mo6_gatearray_r, mo6_gatearray_w )
|
||||
AM_RANGE ( 0xa7e8, 0xa7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xa7e8, 0xa7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
/* AM_RANGE ( 0xa7f0, 0xa7f7 ) AM_READWRITE_LEGACY(to9_ieee_r, to9_ieee_w )*/
|
||||
AM_RANGE ( 0xa7f2, 0xa7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xa7fe, 0xa7ff ) AM_DEVREADWRITE_LEGACY("mea8000", mea8000_r, mea8000_w)
|
||||
@ -2160,7 +2160,7 @@ static ADDRESS_MAP_START ( mo5nr, AS_PROGRAM, 8, thomson_state )
|
||||
AM_RANGE ( 0xa7e1, 0xa7e1 ) AM_DEVREADWRITE("centronics", centronics_device, read, write)
|
||||
AM_RANGE ( 0xa7e3, 0xa7e3 ) AM_READWRITE_LEGACY(mo5nr_prn_r, mo5nr_prn_w )
|
||||
AM_RANGE ( 0xa7e4, 0xa7e7 ) AM_READWRITE_LEGACY(mo6_gatearray_r, mo6_gatearray_w )
|
||||
AM_RANGE ( 0xa7e8, 0xa7eb ) AM_DEVREADWRITE( "acia", acia6551_device, read, write )
|
||||
AM_RANGE ( 0xa7e8, 0xa7eb ) AM_DEVREADWRITE( "acia", mos6551_device, read, write )
|
||||
/* AM_RANGE ( 0xa7f0, 0xa7f7 ) AM_READWRITE_LEGACY(to9_ieee_r, to9_ieee_w ) */
|
||||
AM_RANGE ( 0xa7f2, 0xa7f3 ) AM_READWRITE_LEGACY(to7_midi_r, to7_midi_w )
|
||||
AM_RANGE ( 0xa7f8, 0xa7fb ) AM_DEVREADWRITE( "pia_3", pia6821_device, read_alt, write_alt)
|
||||
|
@ -15,7 +15,7 @@
|
||||
#include "cpu/m6502/m6502.h"
|
||||
#include "includes/microtan.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "sound/ay8910.h"
|
||||
#include "formats/m65_snqk.h"
|
||||
|
||||
|
@ -13,7 +13,7 @@
|
||||
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/wd17xx.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
|
||||
#define ACIA_0_TAG "acia0"
|
||||
#define ACIA_1_TAG "acia1"
|
||||
@ -43,8 +43,8 @@ public:
|
||||
m_acia1(*this, ACIA_1_TAG),
|
||||
m_videoram(*this,"videoram") { }
|
||||
|
||||
required_device<acia6551_device> m_acia0;
|
||||
required_device<acia6551_device> m_acia1;
|
||||
required_device<mos6551_device> m_acia0;
|
||||
required_device<mos6551_device> m_acia1;
|
||||
required_shared_ptr<UINT16> m_videoram;
|
||||
UINT8 m_pending_interrupts;
|
||||
char m_clock_enable;
|
||||
|
@ -14,7 +14,7 @@
|
||||
|
||||
#include "includes/coco12.h"
|
||||
#include "imagedev/printer.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
|
||||
|
||||
|
||||
@ -57,7 +57,7 @@ public:
|
||||
{
|
||||
}
|
||||
|
||||
required_device<acia6551_device> m_acia;
|
||||
required_device<mos6551_device> m_acia;
|
||||
|
||||
protected:
|
||||
virtual DECLARE_READ8_MEMBER( ff00_read );
|
||||
|
@ -12,7 +12,7 @@
|
||||
#include "sound/ay8910.h"
|
||||
#include "sound/wave.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/ctronics.h"
|
||||
#include "machine/wd17xx.h"
|
||||
//#include <stdio.h>
|
||||
|
@ -8,7 +8,7 @@
|
||||
#include "formats/cbm_snqk.h"
|
||||
#include "audio/t6721.h"
|
||||
#include "audio/mos7360.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/plus4exp.h"
|
||||
#include "machine/plus4user.h"
|
||||
#include "machine/cbmiec.h"
|
||||
|
@ -14,7 +14,7 @@
|
||||
#include "machine/6821pia.h"
|
||||
#include "machine/mc6846.h"
|
||||
#include "machine/6850acia.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "sound/dac.h"
|
||||
#include "audio/mea8000.h"
|
||||
#include "machine/ctronics.h"
|
||||
|
@ -26,7 +26,7 @@ const device_type A2BUS_SSC = &device_creator<a2bus_ssc_device>;
|
||||
|
||||
|
||||
MACHINE_CONFIG_FRAGMENT( ssc )
|
||||
MCFG_ACIA6551_ADD(SSC_ACIA_TAG)
|
||||
MCFG_MOS6551_ADD(SSC_ACIA_TAG, XTAL_1_8432MHz, NULL)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
ROM_START( ssc )
|
||||
|
@ -11,7 +11,7 @@
|
||||
|
||||
#include "emu.h"
|
||||
#include "machine/a2bus.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
|
||||
//**************************************************************************
|
||||
// TYPE DEFINITIONS
|
||||
@ -40,7 +40,7 @@ protected:
|
||||
virtual UINT8 read_cnxx(address_space &space, UINT8 offset);
|
||||
virtual UINT8 read_c800(address_space &space, UINT16 offset);
|
||||
|
||||
required_device<acia6551_device> m_acia;
|
||||
required_device<mos6551_device> m_acia;
|
||||
|
||||
private:
|
||||
UINT8 *m_rom;
|
||||
|
@ -21,7 +21,7 @@
|
||||
#include "machine/ay3600.h"
|
||||
#include "machine/applefdc.h"
|
||||
#include "devices/appldriv.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/ram.h"
|
||||
|
||||
|
||||
@ -103,7 +103,7 @@ void apple3_state::apple3_profile_w(offs_t offset, UINT8 data)
|
||||
|
||||
READ8_MEMBER(apple3_state::apple3_c0xx_r)
|
||||
{
|
||||
acia6551_device *acia = machine().device<acia6551_device>("acia");
|
||||
mos6551_device *acia = machine().device<mos6551_device>("acia");
|
||||
applefdc_base_device *fdc = machine().device<applefdc_base_device>("fdc");
|
||||
UINT8 result = 0xFF;
|
||||
|
||||
@ -188,7 +188,7 @@ READ8_MEMBER(apple3_state::apple3_c0xx_r)
|
||||
|
||||
WRITE8_MEMBER(apple3_state::apple3_c0xx_w)
|
||||
{
|
||||
acia6551_device *acia = machine().device<acia6551_device>("acia");
|
||||
mos6551_device *acia = machine().device<mos6551_device>("acia");
|
||||
applefdc_base_device *fdc = machine().device<applefdc_base_device>("fdc");
|
||||
|
||||
switch(offset)
|
||||
|
@ -21,7 +21,7 @@
|
||||
***************************************************************************/
|
||||
|
||||
static MACHINE_CONFIG_FRAGMENT(coco_rs232)
|
||||
MCFG_ACIA6551_ADD(UART_TAG)
|
||||
MCFG_MOS6551_ADD(UART_TAG, XTAL_1_8432MHz, NULL)
|
||||
MACHINE_CONFIG_END
|
||||
|
||||
//**************************************************************************
|
||||
|
@ -5,7 +5,7 @@
|
||||
|
||||
#include "emu.h"
|
||||
#include "machine/cococart.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
|
||||
//**************************************************************************
|
||||
// TYPE DEFINITIONS
|
||||
@ -31,7 +31,7 @@ protected:
|
||||
virtual DECLARE_WRITE8_MEMBER(write);
|
||||
private:
|
||||
// internal state
|
||||
required_device<acia6551_device> m_uart;
|
||||
required_device<mos6551_device> m_uart;
|
||||
};
|
||||
|
||||
|
||||
|
@ -63,7 +63,7 @@
|
||||
#include "cpu/m6809/m6809.h"
|
||||
#include "machine/6821pia.h"
|
||||
#include "includes/dgn_beta.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "machine/wd17xx.h"
|
||||
#include "imagedev/flopdrv.h"
|
||||
|
||||
|
@ -19,7 +19,7 @@
|
||||
/* Components */
|
||||
#include "cpu/m6502/m6502.h"
|
||||
#include "machine/6522via.h"
|
||||
#include "machine/6551acia.h"
|
||||
#include "machine/mos6551.h"
|
||||
#include "sound/ay8910.h"
|
||||
|
||||
/* Devices */
|
||||
|
Loading…
Reference in New Issue
Block a user