mirror of
https://github.com/holub/mame
synced 2025-10-04 16:34:53 +03:00
New machines marked as NOT_WORKING:
- DECstation 5000/133 [R. Belmont, Al Kossow]
This commit is contained in:
parent
70b2f500f4
commit
13c73b2c5b
@ -1885,6 +1885,9 @@ files {
|
|||||||
createMESSProjects(_target, _subtarget, "dec")
|
createMESSProjects(_target, _subtarget, "dec")
|
||||||
files {
|
files {
|
||||||
MAME_DIR .. "src/mame/drivers/dct11em.cpp",
|
MAME_DIR .. "src/mame/drivers/dct11em.cpp",
|
||||||
|
MAME_DIR .. "src/mame/drivers/decstation.cpp",
|
||||||
|
MAME_DIR .. "src/mame/machine/decioga.cpp",
|
||||||
|
MAME_DIR .. "src/mame/machine/decioga.h",
|
||||||
MAME_DIR .. "src/mame/drivers/dectalk.cpp",
|
MAME_DIR .. "src/mame/drivers/dectalk.cpp",
|
||||||
MAME_DIR .. "src/mame/drivers/decwritr.cpp",
|
MAME_DIR .. "src/mame/drivers/decwritr.cpp",
|
||||||
MAME_DIR .. "src/mame/drivers/pdp11.cpp",
|
MAME_DIR .. "src/mame/drivers/pdp11.cpp",
|
||||||
|
145
src/mame/drivers/decstation.cpp
Normal file
145
src/mame/drivers/decstation.cpp
Normal file
@ -0,0 +1,145 @@
|
|||||||
|
// license:BSD-3-Clause
|
||||||
|
// copyright-holders:R. Belmont
|
||||||
|
/****************************************************************************
|
||||||
|
|
||||||
|
decstation.cpp: MIPS-based DECstation family
|
||||||
|
|
||||||
|
WANTED: all boot ROM dumps except 5000/133, all TURBOchannel card ROM dumps
|
||||||
|
|
||||||
|
Machine types:
|
||||||
|
DECstation 3100 (PMAX/KN01):
|
||||||
|
16.67 MHz R2000 with FPU and MMU
|
||||||
|
24 MiB max RAM
|
||||||
|
Serial: DEC "DZ" quad-UART (DC7085 gate array)
|
||||||
|
SCSI: DEC "SII" SCSI interface (DC7061 gate array)
|
||||||
|
Ethernet: AMD7990 "LANCE" controller
|
||||||
|
Monochrome or color video on-board
|
||||||
|
PMIN/KN01:
|
||||||
|
Cheaper PMAX, 12.5 MHz R2000, same as PMAX
|
||||||
|
|
||||||
|
Personal DECstation 5000/xx (MAXine/KN02BA):
|
||||||
|
20, 25, or 33 MHz R3000 or 100 MHz R4000
|
||||||
|
40 MiB max RAM
|
||||||
|
Serial: DEC "DZ" quad-UART for keyboard/mouse, SCC8530 for modem/printer
|
||||||
|
SCSI: NCR53C94
|
||||||
|
Ethernet: AMD7990 "LANCE" controller
|
||||||
|
Audio: AMD AM79C30
|
||||||
|
Color 1024x768 8bpp video on-board
|
||||||
|
2 TURBOchannel slots
|
||||||
|
|
||||||
|
DECstation 5000/1xx: (3MIN/KN02DA):
|
||||||
|
20, 25, or 33 MHz R3000 or 100 MHz R4000
|
||||||
|
128 MiB max RAM
|
||||||
|
Serial: 2x SCC8530
|
||||||
|
SCSI: NCR53C94
|
||||||
|
Ethernet: AMD7990 "LANCE" controller
|
||||||
|
No on-board video
|
||||||
|
3 TURBOchannel slots
|
||||||
|
|
||||||
|
DECstation 5000/200: (3MAX/KN02):
|
||||||
|
25 MHz R3000
|
||||||
|
480 MiB max RAM
|
||||||
|
Serial: DEC "DZ" quad-UART
|
||||||
|
SCSI: NCR53C94
|
||||||
|
Ethernet: AMD7990 "LANCE" controllor
|
||||||
|
|
||||||
|
DECstation 5000/240, 5000/261 (3MAX+/KN03)
|
||||||
|
40 MHz R3400, or 120 MHz R4400.
|
||||||
|
480 MiB max RAM
|
||||||
|
Serial: 2x SCC8530
|
||||||
|
SCSI: NCR53C94
|
||||||
|
Ethernet: AMD7990 "LANCE" controller
|
||||||
|
|
||||||
|
****************************************************************************/
|
||||||
|
|
||||||
|
#include "emu.h"
|
||||||
|
#include "cpu/mips/r3000.h"
|
||||||
|
#include "machine/decioga.h"
|
||||||
|
|
||||||
|
class decstation_state : public driver_device
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
decstation_state(const machine_config &mconfig, device_type type, const char *tag)
|
||||||
|
: driver_device(mconfig, type, tag) ,
|
||||||
|
m_maincpu(*this, "maincpu"),
|
||||||
|
m_ioga(*this, "ioga")
|
||||||
|
{ }
|
||||||
|
|
||||||
|
void kn02da(machine_config &config);
|
||||||
|
|
||||||
|
void init_decstation();
|
||||||
|
|
||||||
|
private:
|
||||||
|
virtual void machine_start() override;
|
||||||
|
virtual void machine_reset() override;
|
||||||
|
virtual void video_start() override;
|
||||||
|
required_device<cpu_device> m_maincpu;
|
||||||
|
required_device<dec_ioga_device> m_ioga;
|
||||||
|
void decstation_map(address_map &map);
|
||||||
|
};
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
VIDEO HARDWARE
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
void decstation_state::video_start()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
MACHINE FUNCTIONS
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
void decstation_state::machine_start()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void decstation_state::machine_reset()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
ADDRESS MAPS
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
void decstation_state::decstation_map(address_map &map)
|
||||||
|
{
|
||||||
|
map(0x00000000, 0x07ffffff).ram(); // full 128 MB
|
||||||
|
map(0x1c000000, 0x1dffffff).m(m_ioga, FUNC(dec_ioga_device::map));
|
||||||
|
map(0x1fc00000, 0x1fc3ffff).rom().region("user1", 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
MACHINE DRIVERS
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
MACHINE_CONFIG_START(decstation_state::kn02da)
|
||||||
|
MCFG_DEVICE_ADD( "maincpu", R3041, 33000000 ) // FIXME: Should be R2000
|
||||||
|
MCFG_R3000_ENDIANNESS(ENDIANNESS_LITTLE)
|
||||||
|
MCFG_DEVICE_PROGRAM_MAP( decstation_map )
|
||||||
|
|
||||||
|
MCFG_DEVICE_ADD("ioga", DECSTATION_IOGA, XTAL(12'500'000))
|
||||||
|
MACHINE_CONFIG_END
|
||||||
|
|
||||||
|
static INPUT_PORTS_START( decstation )
|
||||||
|
PORT_START("UNUSED") // unused IN0
|
||||||
|
PORT_BIT(0xffff, IP_ACTIVE_HIGH, IPT_UNUSED)
|
||||||
|
INPUT_PORTS_END
|
||||||
|
|
||||||
|
void decstation_state::init_decstation()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
/***************************************************************************
|
||||||
|
|
||||||
|
ROM definition(s)
|
||||||
|
|
||||||
|
***************************************************************************/
|
||||||
|
|
||||||
|
ROM_START( ds5k133 )
|
||||||
|
ROM_REGION32_LE( 0x40000, "user1", 0 )
|
||||||
|
ROM_LOAD( "ds5000-133_005eb.bin", 0x000000, 0x040000, CRC(76a91d29) SHA1(140fcdb4fd2327daf764a35006d05fabfbee8da6) )
|
||||||
|
ROM_END
|
||||||
|
|
||||||
|
// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
|
||||||
|
COMP( 1992, ds5k133, 0, 0, kn02da, decstation, decstation_state, init_decstation, "Digital Equipment Corporation", "DECstation 5000/133", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
|
49
src/mame/machine/decioga.cpp
Normal file
49
src/mame/machine/decioga.cpp
Normal file
@ -0,0 +1,49 @@
|
|||||||
|
// license:BSD-3-Clause
|
||||||
|
// copyright-holders:R. Belmont
|
||||||
|
/******************************************************************************
|
||||||
|
*
|
||||||
|
* MIPS DECstation I/O Gate Array emulation
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include "decioga.h"
|
||||||
|
|
||||||
|
DEFINE_DEVICE_TYPE(DECSTATION_IOGA, dec_ioga_device, "decioga", "DECstation I/O Gate Array")
|
||||||
|
|
||||||
|
void dec_ioga_device::map(address_map &map)
|
||||||
|
{
|
||||||
|
map(0x040100, 0x040103).rw(FUNC(dec_ioga_device::csr_r), FUNC(dec_ioga_device::csr_w));
|
||||||
|
}
|
||||||
|
|
||||||
|
dec_ioga_device::dec_ioga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
|
||||||
|
: device_t(mconfig, DECSTATION_IOGA, tag, owner, clock)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
void dec_ioga_device::device_start()
|
||||||
|
{
|
||||||
|
save_item(NAME(m_csr));
|
||||||
|
}
|
||||||
|
|
||||||
|
void dec_ioga_device::device_reset()
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
READ32_MEMBER(dec_ioga_device::csr_r)
|
||||||
|
{
|
||||||
|
return m_csr;
|
||||||
|
}
|
||||||
|
|
||||||
|
WRITE32_MEMBER(dec_ioga_device::csr_w)
|
||||||
|
{
|
||||||
|
COMBINE_DATA(&m_csr);
|
||||||
|
#if 0
|
||||||
|
printf("%08x to CSR: diag LEDs [", m_csr);
|
||||||
|
for (int i = 7; i >= 0; i--)
|
||||||
|
{
|
||||||
|
printf("%c", (m_csr & (1<<i)) ? 'O' : '.');
|
||||||
|
}
|
||||||
|
printf("]\n");
|
||||||
|
#endif
|
||||||
|
}
|
42
src/mame/machine/decioga.h
Normal file
42
src/mame/machine/decioga.h
Normal file
@ -0,0 +1,42 @@
|
|||||||
|
// license:BSD-3-Clause
|
||||||
|
// copyright-holders:R. Belmont
|
||||||
|
/******************************************************************************
|
||||||
|
*
|
||||||
|
* MIPS DECstation I/O Gate Array emulation
|
||||||
|
*
|
||||||
|
*
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef MAME_MACHINE_DECIOGA_H
|
||||||
|
#define MAME_MACHINE_DECIOGA_H
|
||||||
|
|
||||||
|
#pragma once
|
||||||
|
|
||||||
|
#include "emu.h"
|
||||||
|
|
||||||
|
class dec_ioga_device : public device_t
|
||||||
|
{
|
||||||
|
public:
|
||||||
|
dec_ioga_device(const machine_config &mconfig, const char *tag, device_t *owner)
|
||||||
|
: dec_ioga_device(mconfig, tag, owner, (uint32_t)0)
|
||||||
|
{
|
||||||
|
}
|
||||||
|
|
||||||
|
dec_ioga_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
|
||||||
|
|
||||||
|
void map(address_map &map);
|
||||||
|
|
||||||
|
protected:
|
||||||
|
virtual void device_start() override;
|
||||||
|
virtual void device_reset() override;
|
||||||
|
|
||||||
|
DECLARE_READ32_MEMBER(csr_r);
|
||||||
|
DECLARE_WRITE32_MEMBER(csr_w);
|
||||||
|
|
||||||
|
private:
|
||||||
|
uint32_t m_csr;
|
||||||
|
};
|
||||||
|
|
||||||
|
DECLARE_DEVICE_TYPE(DECSTATION_IOGA, dec_ioga_device)
|
||||||
|
|
||||||
|
#endif // MAME_MACHINE_DECIOGA_H
|
@ -11362,6 +11362,9 @@ czeroize // 37 1983.10 Zeroize
|
|||||||
decocass //
|
decocass //
|
||||||
decomult //
|
decomult //
|
||||||
|
|
||||||
|
@source:decstation.cpp
|
||||||
|
ds5k133 // 1993 Digital Equipment Corporation (DECstation 5000/133)
|
||||||
|
|
||||||
@source:dectalk.cpp
|
@source:dectalk.cpp
|
||||||
dectalk // 1983 Digital Equipment Corporation
|
dectalk // 1983 Digital Equipment Corporation
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user