mirror of
https://github.com/holub/mame
synced 2025-04-25 09:50:04 +03:00
Merge remote-tracking branch 'mainline/release0205' into mainline-master
This commit is contained in:
commit
ab82d9d15a
@ -106,10 +106,7 @@ public:
|
||||
, m_screen(*this, "screen")
|
||||
, m_p_videoram(*this, "video")
|
||||
, m_p_chargen(*this, "gfx1")
|
||||
{ }
|
||||
|
||||
DECLARE_MACHINE_START(hp95lx);
|
||||
DECLARE_MACHINE_RESET(hp95lx);
|
||||
{ }
|
||||
|
||||
DECLARE_WRITE8_MEMBER(d300_w);
|
||||
DECLARE_READ8_MEMBER(d300_r);
|
||||
@ -125,6 +122,9 @@ public:
|
||||
void hp95lx_romdos(address_map &map);
|
||||
|
||||
protected:
|
||||
virtual void machine_start() override;
|
||||
virtual void machine_reset() override;
|
||||
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<address_map_bank_device> m_bankdev_c000;
|
||||
required_device<address_map_bank_device> m_bankdev_d000;
|
||||
@ -253,7 +253,7 @@ uint32_t hp95lx_state::screen_update(screen_device &screen, bitmap_ind16 &bitmap
|
||||
}
|
||||
|
||||
|
||||
MACHINE_START_MEMBER(hp95lx_state, hp95lx)
|
||||
void hp95lx_state::machine_start()
|
||||
{
|
||||
save_item(NAME(m_mapper));
|
||||
save_item(NAME(m_rtcram));
|
||||
@ -271,7 +271,7 @@ MACHINE_START_MEMBER(hp95lx_state, hp95lx)
|
||||
memcpy(m_p_chargen + 0x0400, memregion("romdos")->base() + 0xfb200, 0x0400);
|
||||
}
|
||||
|
||||
MACHINE_RESET_MEMBER(hp95lx_state, hp95lx)
|
||||
void hp95lx_state::machine_reset()
|
||||
{
|
||||
std::fill(std::begin(m_mapper), std::end(m_mapper), 0);
|
||||
std::fill(std::begin(m_rtcram), std::end(m_rtcram), 0);
|
||||
@ -714,9 +714,6 @@ MACHINE_CONFIG_START(hp95lx_state::hp95lx)
|
||||
MCFG_DEVICE_IO_MAP(hp95lx_io)
|
||||
MCFG_DEVICE_IRQ_ACKNOWLEDGE_DEVICE("pic8259", pic8259_device, inta_cb)
|
||||
|
||||
MCFG_MACHINE_START_OVERRIDE(hp95lx_state, hp95lx)
|
||||
MCFG_MACHINE_RESET_OVERRIDE(hp95lx_state, hp95lx)
|
||||
|
||||
ADDRESS_MAP_BANK(config, "bankdev_c000").set_map(&hp95lx_state::hp95lx_romdos).set_options(ENDIANNESS_LITTLE, 8, 32, 0x10000);
|
||||
ADDRESS_MAP_BANK(config, "bankdev_d000").set_map(&hp95lx_state::hp95lx_romdos).set_options(ENDIANNESS_LITTLE, 8, 32, 0x10000);
|
||||
ADDRESS_MAP_BANK(config, "bankdev_e000").set_map(&hp95lx_state::hp95lx_romdos).set_options(ENDIANNESS_LITTLE, 8, 32, 0x4000);
|
||||
@ -733,8 +730,6 @@ MACHINE_CONFIG_START(hp95lx_state::hp95lx)
|
||||
PIC8259(config, m_pic8259, 0);
|
||||
m_pic8259->out_int_callback().set_inputline(m_maincpu, 0);
|
||||
|
||||
MCFG_MACHINE_RESET_OVERRIDE(hp95lx_state, hp95lx)
|
||||
|
||||
ISA8(config, m_isabus, 0);
|
||||
m_isabus->set_cputag("maincpu");
|
||||
|
||||
|
@ -627,8 +627,8 @@ MACHINE_CONFIG_START(hp9825_state::hp9825b)
|
||||
MCFG_QUANTUM_TIME(attotime::from_hz(5000));
|
||||
|
||||
HP98X5_IO_SYS(config , m_io_sys , 0);
|
||||
m_io_sys->irl().set([this](int state) { m_cpu->set_input_line(HPHYBRID_IRL , state); });
|
||||
m_io_sys->irh().set([this](int state) { m_cpu->set_input_line(HPHYBRID_IRH , state); });
|
||||
m_io_sys->irl().set_inputline(m_cpu, HPHYBRID_IRL);
|
||||
m_io_sys->irh().set_inputline(m_cpu, HPHYBRID_IRH);
|
||||
m_io_sys->sts().set(m_cpu , FUNC(hp_09825_67907_cpu_device::status_w));
|
||||
m_io_sys->flg().set(m_cpu , FUNC(hp_09825_67907_cpu_device::flag_w));
|
||||
m_io_sys->dmar().set(m_cpu , FUNC(hp_09825_67907_cpu_device::dmar_w));
|
||||
|
@ -3639,8 +3639,8 @@ MACHINE_CONFIG_START(hp9845_base_state::hp9845_base)
|
||||
m_ppu->pa_changed_cb().set(m_io_sys , FUNC(hp98x5_io_sys_device::pa_w));
|
||||
|
||||
HP98X5_IO_SYS(config , m_io_sys , 0);
|
||||
m_io_sys->irl().set([this](int state) { m_ppu->set_input_line(HPHYBRID_IRL , state); });
|
||||
m_io_sys->irh().set([this](int state) { m_ppu->set_input_line(HPHYBRID_IRH , state); });
|
||||
m_io_sys->irl().set_inputline(m_ppu, HPHYBRID_IRL);
|
||||
m_io_sys->irh().set_inputline(m_ppu, HPHYBRID_IRH);
|
||||
m_io_sys->sts().set(m_ppu , FUNC(hp_5061_3001_cpu_device::status_w));
|
||||
m_io_sys->flg().set(m_ppu , FUNC(hp_5061_3001_cpu_device::flag_w));
|
||||
m_io_sys->dmar().set(m_ppu , FUNC(hp_5061_3001_cpu_device::dmar_w));
|
||||
|
@ -8,9 +8,8 @@
|
||||
https://sites.google.com/site/att6300shrine/Home
|
||||
http://www.ti99.com/exelvision/website/index.php?page=logabax-persona-1600
|
||||
|
||||
The AT&T PC6300, the Xerox 6060 and the Logabax Persona 1600 were badge
|
||||
engineered Olivetti M24s.
|
||||
|
||||
The AT&T PC6300, the Xerox 6060 and the Logabax Persona 1600 were
|
||||
badge-engineered Olivetti M24s.
|
||||
|
||||
****************************************************************************/
|
||||
|
||||
@ -44,6 +43,9 @@ public:
|
||||
|
||||
void olivetti(machine_config &config);
|
||||
|
||||
protected:
|
||||
void machine_reset() override;
|
||||
|
||||
private:
|
||||
required_device<cpu_device> m_maincpu;
|
||||
required_device<pc_noppi_mb_device> m_mb;
|
||||
@ -51,6 +53,9 @@ private:
|
||||
required_device<m24_keyboard_device> m_keyboard;
|
||||
optional_device<m24_z8000_device> m_z8000_apb;
|
||||
|
||||
uint8_t m_sysctl, m_pa, m_kbcin, m_kbcout;
|
||||
bool m_kbcibf, m_kbdata, m_i86_halt, m_i86_halt_perm;
|
||||
|
||||
DECLARE_READ8_MEMBER(keyboard_r);
|
||||
DECLARE_WRITE8_MEMBER(keyboard_w);
|
||||
DECLARE_READ8_MEMBER(pa_r);
|
||||
@ -63,10 +68,6 @@ private:
|
||||
DECLARE_WRITE_LINE_MEMBER(halt_i86_w);
|
||||
DECLARE_FLOPPY_FORMATS( floppy_formats );
|
||||
|
||||
void machine_reset() override;
|
||||
|
||||
uint8_t m_sysctl, m_pa, m_kbcin, m_kbcout;
|
||||
bool m_kbcibf, m_kbdata, m_i86_halt, m_i86_halt_perm;
|
||||
static void cfg_m20_format(device_t *device);
|
||||
void kbc_map(address_map &map);
|
||||
void m24_io(address_map &map);
|
||||
|
@ -6,10 +6,13 @@
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
#include "math.h"
|
||||
#include "machine/3dom2.h"
|
||||
#include "emu.h"
|
||||
#include "video/3dom2_te.h"
|
||||
|
||||
#include "machine/3dom2.h"
|
||||
|
||||
#include <math.h>
|
||||
|
||||
/*
|
||||
TODO:
|
||||
|
||||
|
@ -2,16 +2,13 @@
|
||||
// copyright-holders:Philip Bennett
|
||||
/***************************************************************************
|
||||
|
||||
3DO M2 BDA Triangle Engine
|
||||
3DO M2 BDA Triangle Engine
|
||||
|
||||
***************************************************************************/
|
||||
|
||||
#pragma once
|
||||
|
||||
#ifndef MAME_VIDEO_3DOM2_TE_H
|
||||
#define MAME_VIDEO_3DOM2_TE_H
|
||||
|
||||
#include "emu.h"
|
||||
#pragma once
|
||||
|
||||
/***************************************************************************
|
||||
FORWARD DECLARATIONS
|
||||
@ -65,28 +62,28 @@ private:
|
||||
|
||||
enum misc
|
||||
{
|
||||
PIP_RAM_WORDS = 256,
|
||||
TEXTURE_RAM_WORDS = 4096,
|
||||
PIP_RAM_BYTEMASK = PIP_RAM_WORDS * 4 - 1,
|
||||
TEXTURE_RAM_BYTEMASK = TEXTURE_RAM_WORDS * 4 - 1,
|
||||
PIP_RAM_WORDS = 256,
|
||||
TEXTURE_RAM_WORDS = 4096,
|
||||
PIP_RAM_BYTEMASK = PIP_RAM_WORDS * 4 - 1,
|
||||
TEXTURE_RAM_BYTEMASK = TEXTURE_RAM_WORDS * 4 - 1,
|
||||
};
|
||||
|
||||
enum inst_type
|
||||
{
|
||||
INST_WRITE_REG = 0x10000000,
|
||||
INST_VTX_SHORT = 0x20000000,
|
||||
INST_VTX_LONG = 0x30000000,
|
||||
INST_VTX_POINT = 0x40000000,
|
||||
INST_MASK = 0xf0000000,
|
||||
INST_WRITE_REG = 0x10000000,
|
||||
INST_VTX_SHORT = 0x20000000,
|
||||
INST_VTX_LONG = 0x30000000,
|
||||
INST_VTX_POINT = 0x40000000,
|
||||
INST_MASK = 0xf0000000,
|
||||
};
|
||||
|
||||
enum vtx_flag
|
||||
{
|
||||
VTX_FLAG_SHAD = 0x00010000,
|
||||
VTX_FLAG_TEXT = 0x00020000,
|
||||
VTX_FLAG_PRSP = 0x00040000,
|
||||
VTX_FLAG_NEW = 0x00080000,
|
||||
VTX_FLAG_RM = 0x00100000,
|
||||
VTX_FLAG_SHAD = 0x00010000,
|
||||
VTX_FLAG_TEXT = 0x00020000,
|
||||
VTX_FLAG_PRSP = 0x00040000,
|
||||
VTX_FLAG_NEW = 0x00080000,
|
||||
VTX_FLAG_RM = 0x00100000,
|
||||
};
|
||||
|
||||
struct se_vtx
|
||||
@ -192,14 +189,14 @@ private:
|
||||
uint32_t readbits_from_ram(uint32_t & src_addr, uint32_t & bit_offs, uint32_t bits);
|
||||
void load_texture();
|
||||
|
||||
m2_bda_device *m_bda;
|
||||
m2_bda_device *m_bda;
|
||||
const address_space_config m_space_config; // TODO: Why is this still here?
|
||||
|
||||
devcb_write_line m_general_int_handler;
|
||||
devcb_write_line m_dfinstr_int_handler;
|
||||
devcb_write_line m_iminstr_int_handler;
|
||||
devcb_write_line m_listend_int_handler;
|
||||
devcb_write_line m_winclip_int_handler;
|
||||
devcb_write_line m_general_int_handler;
|
||||
devcb_write_line m_dfinstr_int_handler;
|
||||
devcb_write_line m_iminstr_int_handler;
|
||||
devcb_write_line m_listend_int_handler;
|
||||
devcb_write_line m_winclip_int_handler;
|
||||
|
||||
// Registers
|
||||
union
|
||||
@ -225,9 +222,9 @@ private:
|
||||
{
|
||||
struct
|
||||
{
|
||||
se_vtx vertices[3];
|
||||
uint32_t reserved[16];
|
||||
uint32_t vertex_state;
|
||||
se_vtx vertices[3];
|
||||
uint32_t reserved[16];
|
||||
uint32_t vertex_state;
|
||||
};
|
||||
uint32_t m_regs[65];
|
||||
} m_se;
|
||||
@ -394,28 +391,28 @@ private:
|
||||
// Destination blender state
|
||||
struct
|
||||
{
|
||||
uint32_t x;
|
||||
uint32_t y;
|
||||
uint32_t w;
|
||||
uint32_t x;
|
||||
uint32_t y;
|
||||
uint32_t w;
|
||||
|
||||
rgba ti;
|
||||
uint8_t ssb;
|
||||
rgba ti;
|
||||
uint8_t ssb;
|
||||
|
||||
rgba src;
|
||||
uint8_t dsb;
|
||||
rgba src;
|
||||
uint8_t dsb;
|
||||
|
||||
rgba srcpath;
|
||||
rgba texpath;
|
||||
rgba blend;
|
||||
rgba dst;
|
||||
rgba srcpath;
|
||||
rgba texpath;
|
||||
rgba blend;
|
||||
rgba dst;
|
||||
} m_dbstate;
|
||||
|
||||
te_state m_state;
|
||||
te_state m_state;
|
||||
|
||||
uint32_t *m_pipram;
|
||||
uint32_t *m_tram;
|
||||
uint32_t *m_pipram;
|
||||
uint32_t *m_tram;
|
||||
};
|
||||
|
||||
DECLARE_DEVICE_TYPE(M2_TE, m2_te_device)
|
||||
|
||||
#endif // MAME_VIDEO_3DOM2_TE_H
|
||||
#endif // MAME_VIDEO_3DOM2_TE_H
|
||||
|
@ -4,10 +4,11 @@
|
||||
#include "emu.h"
|
||||
#include "includes/xavix.h"
|
||||
|
||||
#include <cmath>
|
||||
|
||||
// #define VERBOSE 1
|
||||
#include "logmacro.h"
|
||||
|
||||
#include <cmath>
|
||||
|
||||
inline void xavix_state::set_data_address(int address, int bit)
|
||||
{
|
||||
|
Loading…
Reference in New Issue
Block a user