mirror of
https://github.com/holub/mame
synced 2025-04-25 01:40:16 +03:00
Merge branch 'master' of https://github.com/mamedev/mame
This commit is contained in:
commit
03c54b9ebc
@ -2160,6 +2160,10 @@ if (BUSES["NSCSI"]~=null) then
|
||||
files {
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cd.cpp",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cd.h",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cdd2000.cpp",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cdd2000.h",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cdrn820s.cpp",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cdrn820s.h",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cw7501.cpp",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/cw7501.h",
|
||||
MAME_DIR .. "src/devices/bus/nscsi/devices.cpp",
|
||||
|
54
src/devices/bus/nscsi/cdd2000.cpp
Normal file
54
src/devices/bus/nscsi/cdd2000.cpp
Normal file
@ -0,0 +1,54 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:AJR
|
||||
/*******************************************************************************
|
||||
|
||||
Skeleton device for Philips CDD2000/HP4020 CD-R.
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "bus/nscsi/cdd2000.h"
|
||||
#include "cpu/mc68hc11/mc68hc11.h"
|
||||
#include "machine/ncr5390.h"
|
||||
|
||||
DEFINE_DEVICE_TYPE(CDD2000, cdd2000_device, "cdd2000", "Philips CDD2000 CD-R")
|
||||
|
||||
cdd2000_device::cdd2000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
|
||||
: device_t(mconfig, CDD2000, tag, owner, clock)
|
||||
, nscsi_slot_card_interface(mconfig, *this, "scsic")
|
||||
, m_cdcpu(*this, "cdcpu")
|
||||
{
|
||||
}
|
||||
|
||||
void cdd2000_device::device_start()
|
||||
{
|
||||
}
|
||||
|
||||
void cdd2000_device::mem_map(address_map &map)
|
||||
{
|
||||
map(0x0400, 0x040f).m("scsic", FUNC(ncr53cf94_device::map));
|
||||
// 0x0800, 0x080f is another device
|
||||
map(0x1000, 0xffff).rom().region("flash", 0x31000); // TODO: banking
|
||||
map(0x2000, 0x3fff).ram();
|
||||
}
|
||||
|
||||
void cdd2000_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
MC68HC11(config, m_cdcpu, 8'000'000); // type and clock are total guesses
|
||||
m_cdcpu->set_addrmap(AS_PROGRAM, &cdd2000_device::mem_map);
|
||||
|
||||
NCR53CF94(config, "scsic", 25'000'000); // type and clock guessed
|
||||
}
|
||||
|
||||
ROM_START(cdd2000)
|
||||
ROM_REGION(0x40000, "flash", 0)
|
||||
ROM_SYSTEM_BIOS(0, "v126", "Firmware v1.26")
|
||||
ROMX_LOAD("cdd2_126.bin", 0x00000, 0x40000, CRC(8a9f0f85) SHA1(efc6c696b12af7d29fcc37c641bc5879517d6fd8), ROM_BIOS(0)) // 9F9E checksum
|
||||
ROM_SYSTEM_BIOS(1, "v125", "Firmware v1.25")
|
||||
ROMX_LOAD("cdd2_125.bin", 0x00000, 0x40000, CRC(17f1c04a) SHA1(882be4ed5daf70a686929fffcb66fa95b431bbe2), ROM_BIOS(1)) // A29B checksum
|
||||
ROM_END
|
||||
|
||||
const tiny_rom_entry *cdd2000_device::device_rom_region() const
|
||||
{
|
||||
return ROM_NAME(cdd2000);
|
||||
}
|
31
src/devices/bus/nscsi/cdd2000.h
Normal file
31
src/devices/bus/nscsi/cdd2000.h
Normal file
@ -0,0 +1,31 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:AJR
|
||||
|
||||
#ifndef MAME_BUS_NSCSI_CDD2000_H
|
||||
#define MAME_BUS_NSCSI_CDD2000_H 1
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "machine/nscsi_bus.h"
|
||||
|
||||
class cdd2000_device : public device_t, public nscsi_slot_card_interface
|
||||
{
|
||||
public:
|
||||
cdd2000_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
|
||||
|
||||
static constexpr feature_type unemulated_features() { return feature::DISK; }
|
||||
|
||||
protected:
|
||||
virtual void device_start() override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
private:
|
||||
void mem_map(address_map &map);
|
||||
|
||||
required_device<cpu_device> m_cdcpu;
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(CDD2000, cdd2000_device)
|
||||
|
||||
#endif // MAME_BUS_NSCSI_CDD2000_H
|
53
src/devices/bus/nscsi/cdrn820s.cpp
Normal file
53
src/devices/bus/nscsi/cdrn820s.cpp
Normal file
@ -0,0 +1,53 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:AJR
|
||||
/*******************************************************************************
|
||||
|
||||
Skeleton device for Sanyo/Caravalle CDR-N820s.
|
||||
|
||||
*******************************************************************************/
|
||||
|
||||
#include "emu.h"
|
||||
#include "bus/nscsi/cdrn820s.h"
|
||||
#include "machine/wd33c9x.h"
|
||||
|
||||
DEFINE_DEVICE_TYPE(CDRN820S, cdrn820s_device, "cdrn820s", "Caravalle CDR-N820s")
|
||||
|
||||
cdrn820s_device::cdrn820s_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock)
|
||||
: device_t(mconfig, type, tag, owner, clock)
|
||||
, nscsi_slot_card_interface(mconfig, *this, "scsic")
|
||||
, m_h8(*this, "h8")
|
||||
{
|
||||
}
|
||||
|
||||
cdrn820s_device::cdrn820s_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
|
||||
: cdrn820s_device(mconfig, CDRN820S, tag, owner, clock)
|
||||
{
|
||||
}
|
||||
|
||||
void cdrn820s_device::device_start()
|
||||
{
|
||||
}
|
||||
|
||||
void cdrn820s_device::mem_map(address_map &map)
|
||||
{
|
||||
map(0x00000, 0x1ffff).rom().region("program", 0);
|
||||
}
|
||||
|
||||
void cdrn820s_device::device_add_mconfig(machine_config &config)
|
||||
{
|
||||
H83048(config, m_h8, 8'000'000); // type and clock unknown
|
||||
m_h8->set_addrmap(AS_PROGRAM, &cdrn820s_device::mem_map);
|
||||
m_h8->set_mode_a20();
|
||||
|
||||
WD33C93A(config, "scsic", 10'000'000); // type and clock unknown
|
||||
}
|
||||
|
||||
ROM_START(cdrn820s)
|
||||
ROM_REGION(0x40000, "program", 0)
|
||||
ROM_LOAD16_WORD_SWAP("cdr_120.bin", 0x00000, 0x20000, CRC(8cac6862) SHA1(e498dcd9006d257ced6cd0b50c76608e9a8023f7)) // Caravelle CDR-N820S 1.20
|
||||
ROM_END
|
||||
|
||||
const tiny_rom_entry *cdrn820s_device::device_rom_region() const
|
||||
{
|
||||
return ROM_NAME(cdrn820s);
|
||||
}
|
34
src/devices/bus/nscsi/cdrn820s.h
Normal file
34
src/devices/bus/nscsi/cdrn820s.h
Normal file
@ -0,0 +1,34 @@
|
||||
// license:BSD-3-Clause
|
||||
// copyright-holders:AJR
|
||||
|
||||
#ifndef MAME_BUS_NSCSI_CDRN820S_H
|
||||
#define MAME_BUS_NSCSI_CDRN820S_H 1
|
||||
|
||||
#pragma once
|
||||
|
||||
#include "cpu/h8/h83048.h"
|
||||
#include "machine/nscsi_bus.h"
|
||||
|
||||
class cdrn820s_device : public device_t, public nscsi_slot_card_interface
|
||||
{
|
||||
public:
|
||||
cdrn820s_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
|
||||
|
||||
static constexpr feature_type unemulated_features() { return feature::DISK; }
|
||||
|
||||
protected:
|
||||
cdrn820s_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock);
|
||||
|
||||
virtual void device_start() override;
|
||||
virtual void device_add_mconfig(machine_config &config) override;
|
||||
virtual const tiny_rom_entry *device_rom_region() const override;
|
||||
|
||||
private:
|
||||
void mem_map(address_map &map);
|
||||
|
||||
required_device<h83048_device> m_h8;
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(CDRN820S, cdrn820s_device)
|
||||
|
||||
#endif // MAME_BUS_NSCSI_CDRN820S_H
|
@ -4,6 +4,8 @@
|
||||
#include "emu.h"
|
||||
|
||||
#include "bus/nscsi/cd.h"
|
||||
#include "bus/nscsi/cdd2000.h"
|
||||
#include "bus/nscsi/cdrn820s.h"
|
||||
#include "bus/nscsi/cw7501.h"
|
||||
#include "bus/nscsi/hd.h"
|
||||
#include "bus/nscsi/s1410.h"
|
||||
@ -15,4 +17,6 @@ void default_scsi_devices(device_slot_interface &device)
|
||||
device.option_add("s1410", NSCSI_S1410);
|
||||
device.option_add("cw7501", CW7501);
|
||||
device.option_add("cdr4210", CDR4210);
|
||||
device.option_add("cdrn820s", CDRN820S);
|
||||
device.option_add("cdd2000", CDD2000);
|
||||
};
|
||||
|
@ -32,7 +32,6 @@ h83048_device::h83048_device(const machine_config &mconfig, device_type type, co
|
||||
sci0(*this, "sci0"),
|
||||
sci1(*this, "sci1"),
|
||||
watchdog(*this, "watchdog"),
|
||||
mode_a20(false),
|
||||
ram_start(start),
|
||||
syscr(0)
|
||||
{
|
||||
|
@ -66,8 +66,6 @@ protected:
|
||||
required_device<h8_sci_device> sci1;
|
||||
required_device<h8_watchdog_device> watchdog;
|
||||
|
||||
bool mode_a20;
|
||||
|
||||
uint32_t ram_start;
|
||||
uint8_t syscr;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user