Skip to content

Commit 83b5d1d

Browse files
committed
namco_c148: make ext read a callback
1 parent d3e6265 commit 83b5d1d

3 files changed

Lines changed: 8 additions & 6 deletions

File tree

src/mame/namco/namco_c148.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -70,6 +70,7 @@ DEFINE_DEVICE_TYPE(NAMCO_C148, namco_c148_device, "namco_c148", "Namco C148 Inte
7070

7171
namco_c148_device::namco_c148_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock) :
7272
device_t(mconfig, NAMCO_C148, tag, owner, clock),
73+
m_in_ext_cb(*this, 0x07),
7374
m_out_ext1_cb(*this),
7475
m_out_ext2_cb(*this),
7576
m_hostcpu(*this, finder_base::DUMMY_TAG),
@@ -185,7 +186,7 @@ void namco_c148_device::sci_irq_trigger() { m_hostcpu->set_input_line(m_irqle
185186

186187
uint8_t namco_c148_device::ext_r()
187188
{
188-
return 0xff; // TODO: bit 0 EEPROM bit ready
189+
return m_in_ext_cb() & 7;
189190
}
190191

191192
void namco_c148_device::ext1_w(uint8_t data)
@@ -196,7 +197,6 @@ void namco_c148_device::ext1_w(uint8_t data)
196197
void namco_c148_device::ext2_w(uint8_t data)
197198
{
198199
m_out_ext2_cb(data & 7);
199-
// TODO: bit 1/2 in Winning Run GPU might be irq enable?
200200
}
201201

202202
uint8_t namco_c148_device::bus_ctrl_r()

src/mame/namco/namco_c148.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -39,6 +39,7 @@ class namco_c148_device : public device_t
3939

4040
template <typename T> void link_c148_device(T &&tag) { m_linked_c148.set_tag(std::forward<T>(tag)); }
4141

42+
auto in_ext_callback() { return m_in_ext_cb.bind(); }
4243
auto out_ext1_callback() { return m_out_ext1_cb.bind(); }
4344
auto out_ext2_callback() { return m_out_ext2_cb.bind(); }
4445

@@ -55,6 +56,7 @@ class namco_c148_device : public device_t
5556
virtual void device_reset() override ATTR_COLD;
5657

5758
private:
59+
devcb_read8 m_in_ext_cb;
5860
devcb_write8 m_out_ext1_cb;
5961
devcb_write8 m_out_ext2_cb;
6062

src/mame/namco/namcos21.cpp

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@ a stream of quad descriptors.
3131
3232
Each quad has a reference color (shared across vertices), and for each vertex the tuple: (screenx,screeny,z-code).
3333
The z-code scalar accounts for depth bias. Quads are sorted by z-code before rendering quads, and depth cueing
34-
is used to shade pixels according to their depth.
34+
is used to shade quads according to their depth.
3535
3636
-------------------
3737
@@ -828,6 +828,9 @@ void namcos21_state::winrun(machine_config &config)
828828
M68000(config, m_slave, 49.152_MHz_XTAL / 4); // Slave
829829
m_slave->set_addrmap(AS_PROGRAM, &namcos21_state::slave_map);
830830

831+
M68000(config, m_gpu, 49.152_MHz_XTAL / 4); // Graphics coprocessor
832+
m_gpu->set_addrmap(AS_PROGRAM, &namcos21_state::gpu_map);
833+
831834
MC6809E(config, m_audiocpu, 49.152_MHz_XTAL / 24); // Sound
832835
m_audiocpu->set_addrmap(AS_PROGRAM, &namcos21_state::sound_map);
833836

@@ -854,9 +857,6 @@ void namcos21_state::winrun(machine_config &config)
854857
NAMCOS21_DSP(config, m_namcos21_dsp, 0);
855858
m_namcos21_dsp->set_renderer_tag("namcos21_3d");
856859

857-
M68000(config, m_gpu, 49.152_MHz_XTAL / 4); // graphics coprocessor
858-
m_gpu->set_addrmap(AS_PROGRAM, &namcos21_state::gpu_map);
859-
860860
NAMCO_C148(config, m_master_intc, 0, m_maincpu, true);
861861
m_master_intc->link_c148_device(m_slave_intc);
862862
m_master_intc->out_ext1_callback().set(FUNC(namcos21_state::sound_reset_w));

0 commit comments

Comments
 (0)