summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author mooglyguy <therealmogminer@gmail.com>2018-11-14 22:12:08 +0100
committer mooglyguy <therealmogminer@gmail.com>2018-11-14 22:12:41 +0100
commitd987469554c8279b7092472343ed4ca5063ed2a3 (patch)
treec490ffc5a2704d4249899222d8d90b34bc8ddd40
parent7513f0789cf65c6d0360b2aedbb9e46e83f48515 (diff)
New machines marked as NOT_WORKING
---------------------------------- SGI 4D/20 (Version 4.0 Fri Apr 26 17:12:22 PDT 1991) SGI O2 (version 4.18) SGI Octane (Version 6.5 Rev 4.9 05/22/03)
-rw-r--r--src/mame/drivers/4d20.cpp62
-rw-r--r--src/mame/drivers/o2.cpp64
-rw-r--r--src/mame/drivers/octane.cpp64
-rw-r--r--src/mame/mame.lst9
-rw-r--r--src/mame/mess.flt3
5 files changed, 202 insertions, 0 deletions
diff --git a/src/mame/drivers/4d20.cpp b/src/mame/drivers/4d20.cpp
new file mode 100644
index 00000000000..119bf06506b
--- /dev/null
+++ b/src/mame/drivers/4d20.cpp
@@ -0,0 +1,62 @@
+// license:BSD-3-Clause
+// copyright-holders:Ryan Holtz
+/**********************************************************************
+
+ SGI 4D/20 IP15 workstation skeleton driver
+
+ To Do: Everything
+
+ Memory map:
+ 1fc00000 - 1fc1ffff Boot ROM
+
+**********************************************************************/
+
+#include "emu.h"
+#include "cpu/mips/mips1.h"
+
+#define ENABLE_ENTRY_GFX (1)
+
+#define LOG_UNKNOWN (1 << 0)
+#define LOG_ALL (LOG_UNKNOWN)
+
+#define VERBOSE (LOG_UNKNOWN)
+#include "logmacro.h"
+
+class ip15_state : public driver_device
+{
+public:
+ ip15_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ {
+ }
+
+ void ip15(machine_config &config);
+
+protected:
+ void mem_map(address_map &map);
+
+ required_device<r3000_device> m_maincpu;
+};
+
+void ip15_state::mem_map(address_map &map)
+{
+ map(0x1fc00000, 0x1fc1ffff).rom().region("user1", 0);
+}
+
+static INPUT_PORTS_START( 4d20 )
+INPUT_PORTS_END
+
+void ip15_state::ip15(machine_config &config)
+{
+ R3000(config, m_maincpu, 12500000);
+ m_maincpu->set_addrmap(AS_PROGRAM, &ip15_state::mem_map);
+}
+
+ROM_START( 4d20 )
+ ROM_REGION32_BE( 0x20000, "user1", 0 )
+ ROMX_LOAD( "ip15prom.070-040x-008.bin", 0x000000, 0x20000, CRC(7290eb66) SHA1(af4285e8db2a9b44fd0fb8a1df4f92faffe87e45), ROM_GROUPDWORD )
+ROM_END
+
+// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
+COMP( 1991, 4d20, 0, 0, ip15, 4d20, ip15_state, empty_init, "Silicon Graphics Inc", "4D/20 (Version 4.0 Fri Apr 26 17:12:22 PDT 1991)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
diff --git a/src/mame/drivers/o2.cpp b/src/mame/drivers/o2.cpp
new file mode 100644
index 00000000000..7fd7145fd95
--- /dev/null
+++ b/src/mame/drivers/o2.cpp
@@ -0,0 +1,64 @@
+// license:BSD-3-Clause
+// copyright-holders:Ryan Holtz
+/**********************************************************************
+
+ SGI O2 workstation skeleton driver
+
+ To Do: Everything
+
+ Memory map:
+ 1fc00000 - 1fc7ffff Boot ROM
+
+**********************************************************************/
+
+#include "emu.h"
+#include "cpu/mips/mips3.h"
+
+#define ENABLE_ENTRY_GFX (1)
+
+#define LOG_UNKNOWN (1 << 0)
+#define LOG_ALL (LOG_UNKNOWN)
+
+#define VERBOSE (LOG_UNKNOWN)
+#include "logmacro.h"
+
+class o2_state : public driver_device
+{
+public:
+ o2_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ {
+ }
+
+ void o2(machine_config &config);
+
+protected:
+ void mem_map(address_map &map);
+
+ required_device<rm7000be_device> m_maincpu;
+};
+
+void o2_state::mem_map(address_map &map)
+{
+ map(0x1fc00000, 0x1fc7ffff).rom().region("user1", 0);
+}
+
+static INPUT_PORTS_START( o2 )
+INPUT_PORTS_END
+
+void o2_state::o2(machine_config &config)
+{
+ RM7000BE(config, m_maincpu, 50000000*6); // Unknown CPU speed
+ m_maincpu->set_icache_size(32768); // Unknown cache size
+ m_maincpu->set_dcache_size(32768);
+ m_maincpu->set_addrmap(AS_PROGRAM, &o2_state::mem_map);
+}
+
+ROM_START( o2 )
+ ROM_REGION32_BE( 0x80000, "user1", 0 )
+ ROMX_LOAD( "ip32prom.rev4.18.bin", 0x000000, 0x080000, CRC(02b3c53d) SHA1(f2cfa7246d67f88fe5490e40dac6c04b1deb4d28), ROM_GROUPDWORD )
+ROM_END
+
+// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
+COMP( 1996, o2, 0, 0, o2, o2, o2_state, empty_init, "Silicon Graphics Inc", "O2 (version 4.18)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
diff --git a/src/mame/drivers/octane.cpp b/src/mame/drivers/octane.cpp
new file mode 100644
index 00000000000..e6a0247b357
--- /dev/null
+++ b/src/mame/drivers/octane.cpp
@@ -0,0 +1,64 @@
+// license:BSD-3-Clause
+// copyright-holders:Ryan Holtz
+/**********************************************************************
+
+ SGI Octane workstation skeleton driver
+
+ To Do: Everything
+
+ Memory map:
+ 1fc00000 - 1fc7ffff Boot ROM
+
+**********************************************************************/
+
+#include "emu.h"
+#include "cpu/mips/mips3.h"
+
+#define ENABLE_ENTRY_GFX (1)
+
+#define LOG_UNKNOWN (1 << 0)
+#define LOG_ALL (LOG_UNKNOWN)
+
+#define VERBOSE (LOG_UNKNOWN)
+#include "logmacro.h"
+
+class octane_state : public driver_device
+{
+public:
+ octane_state(const machine_config &mconfig, device_type type, const char *tag)
+ : driver_device(mconfig, type, tag)
+ , m_maincpu(*this, "maincpu")
+ {
+ }
+
+ void octane(machine_config &config);
+
+protected:
+ void mem_map(address_map &map);
+
+ required_device<r5000be_device> m_maincpu;
+};
+
+void octane_state::mem_map(address_map &map)
+{
+ map(0x1fc00000, 0x1fc7ffff).rom().region("user1", 0);
+}
+
+static INPUT_PORTS_START( octane )
+INPUT_PORTS_END
+
+void octane_state::octane(machine_config &config)
+{
+ R5000BE(config, m_maincpu, 50000000*4); // NOTE: Wrong - should be R10000BE!
+ m_maincpu->set_icache_size(32768); // Unknown CPU cache size
+ m_maincpu->set_dcache_size(32768);
+ m_maincpu->set_addrmap(AS_PROGRAM, &octane_state::mem_map);
+}
+
+ROM_START( octane )
+ ROM_REGION32_BE( 0x80000, "user1", 0 )
+ ROMX_LOAD( "ip30prom.rev4.9.bin", 0x000000, 0x080000, CRC(10bafb52) SHA1(de250875c608add63749d3f9fb81a82cb58c3586), ROM_GROUPDWORD )
+ROM_END
+
+// YEAR NAME PARENT COMPAT MACHINE INPUT CLASS INIT COMPANY FULLNAME FLAGS
+COMP( 1997, octane, 0, 0, octane, octane, octane_state, empty_init, "Silicon Graphics Inc", "Octane (Version 6.5 Rev 4.9 05/22/03)", MACHINE_NOT_WORKING | MACHINE_NO_SOUND )
diff --git a/src/mame/mame.lst b/src/mame/mame.lst
index b90fbf91114..b9e612b15eb 100644
--- a/src/mame/mame.lst
+++ b/src/mame/mame.lst
@@ -89,6 +89,9 @@ casanova //
fieldday // A23 (c) 1984 Taito
undoukai // A17 (c) 1984 Taito
+@source:4d20.cpp
+4d20 // (c) SGI 1991
+
@source:4dpi.cpp
sgi_ip6 // IP6: 4D/PI, R2000, 20MHz
@@ -30546,9 +30549,15 @@ nyny // (c) 1980 Sigma Ent. Inc.
nynyg // (c) 1980 Sigma Ent. Inc. + Gottlieb
warcadia // (c) 1982 Sigma Ent. Inc.
+@source:o2.cpp
+o2 // (c) 1996 SGI
+
@source:ob68k1a.cpp
ob68k1a //
+@source:octane.cpp
+octane // (c) 1997 SGI
+
@source:octopus.cpp
octopus //
diff --git a/src/mame/mess.flt b/src/mame/mess.flt
index 5ea0c102d8d..70e5cac7402 100644
--- a/src/mame/mess.flt
+++ b/src/mame/mess.flt
@@ -1,5 +1,6 @@
3do.cpp
4004clk.cpp
+4d20.cpp
4dpi.cpp
68ksbc.cpp
a2600.cpp
@@ -490,7 +491,9 @@ novag6502.cpp
novag68k.cpp
novagf8.cpp
novagmcs48.cpp
+o2.cpp
ob68k1a.cpp
+octane.cpp
octopus.cpp
odyssey2.cpp
okean240.cpp