summaryrefslogtreecommitdiffstatshomepage
path: root/src/mame/drivers/decstation.cpp
diff options
context:
space:
mode:
author Vas Crabb <vas@vastheman.com>2018-07-22 20:41:57 +1000
committer Vas Crabb <vas@vastheman.com>2018-07-22 20:41:57 +1000
commitc0ab1c5aa4c172aa9e3e0deec5c2cc19d4f278d1 (patch)
tree359e7b0d6560d05a1872c2e18773a6e2e5038b7f /src/mame/drivers/decstation.cpp
parent6d39a913e54c73640e4b5e7493b223c87a14c64a (diff)
(nw) srcclean and some cleanup:
* Make more #include guards follow standard format - using MAME_ as the prefix makes it easy to see which ones come from our code in a preprocessor dump, and having both src/devices/machine/foo.h and src/mame/machine/foo.h causes issues anyway * Get #include "emu.h" out of headers - it should only be the first thing in a complilation unit or we get differences in behaviour with PCH on/off * Add out-of-line destructors to some devices - it forces the compiler to instantiate the vtable in a certain location and avoids some non-deterministic compiler behaviours
Diffstat (limited to 'src/mame/drivers/decstation.cpp')
-rw-r--r--src/mame/drivers/decstation.cpp114
1 files changed, 57 insertions, 57 deletions
diff --git a/src/mame/drivers/decstation.cpp b/src/mame/drivers/decstation.cpp
index b7596a3f4d0..43d4973902c 100644
--- a/src/mame/drivers/decstation.cpp
+++ b/src/mame/drivers/decstation.cpp
@@ -4,55 +4,55 @@
decstation.cpp: MIPS-based DECstation family
- WANTED: all boot ROM dumps except 5000/133, all TURBOchannel card ROM dumps
-
- NOTE: after all the spew of failing tests (it really wants a VT102 terminal),
- press 'q' at the MORE prompt and wait a few seconds for the PROM monitor to appear.
- Type 'ls' for a list of commands (this is a very UNIX-flavored PROM monitor).
-
- 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
+ WANTED: all boot ROM dumps except 5000/133, all TURBOchannel card ROM dumps
+
+ NOTE: after all the spew of failing tests (it really wants a VT102 terminal),
+ press 'q' at the MORE prompt and wait a few seconds for the PROM monitor to appear.
+ Type 'ls' for a list of commands (this is a very UNIX-flavored PROM monitor).
+
+ 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
****************************************************************************/
@@ -95,7 +95,7 @@ protected:
private:
virtual void machine_start() override;
virtual void machine_reset() override;
-
+
required_device<cpu_device> m_maincpu;
required_device<dec_ioga_device> m_ioga;
required_device<mc146818_device> m_rtc;
@@ -145,20 +145,20 @@ READ32_MEMBER(decstation_state::cfb_r)
switch (addr)
{
- case 0x3c03e0: return 1; // ROM width
- case 0x3c03e4: return 4; // ROM stride
- case 0x3c03e8: return 1; // ROM size in 8 KiB units
- case 0x3c03ec: return 1; // card address space in 4 MiB units
+ case 0x3c03e0: return 1; // ROM width
+ case 0x3c03e4: return 4; // ROM stride
+ case 0x3c03e8: return 1; // ROM size in 8 KiB units
+ case 0x3c03ec: return 1; // card address space in 4 MiB units
case 0x3c03f0: return 0x55555555; // TURBOchannel ID bytes
case 0x3c03f4: return 0x00000000;
case 0x3c03f8: return 0xaaaaaaaa;
case 0x3c03fc: return 0xffffffff;
- case 0x3c0470: return 0; // does card support parity?
+ case 0x3c0470: return 0; // does card support parity?
}
return 0xffffffff;
}
-
+
WRITE32_MEMBER(decstation_state::cfb_w)
{
logerror("cfb: %08x (mask %08x) @ %x\n", data, mem_mask, offset);
@@ -182,7 +182,7 @@ void decstation_state::machine_reset()
void decstation_state::decstation_map(address_map &map)
{
- map(0x00000000, 0x07ffffff).ram(); // full 128 MB
+ map(0x00000000, 0x07ffffff).ram(); // full 128 MB
map(0x10000000, 0x103cffff).rw(FUNC(decstation_state::cfb_r), FUNC(decstation_state::cfb_w));
map(0x1c000000, 0x1c07ffff).m(m_ioga, FUNC(dec_ioga_device::map));
map(0x1c100000, 0x1c100003).rw(m_scc0, FUNC(z80scc_device::ca_r), FUNC(z80scc_device::ca_w)).umask32(0x0000ff00);