Skip to content

Commit 27e22a2

Browse files
committed
bus/spectrum/zxbus.cpp more rafactoring
1 parent 05fa265 commit 27e22a2

File tree

10 files changed

+74
-77
lines changed

10 files changed

+74
-77
lines changed

src/devices/bus/spectrum/nemoide.cpp

+3-4
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,13 @@ class nemoide_device : public device_t, public device_zxbus_card_interface
2121
, m_ata(*this, "ata")
2222
{ }
2323

24+
virtual void io_map(address_map &map) override ATTR_COLD;
25+
2426
protected:
2527
virtual void device_add_mconfig(machine_config &config) override ATTR_COLD;
2628
virtual void device_start() override ATTR_COLD;
2729

2830
private:
29-
void map_io(address_map &map) ATTR_COLD;
3031

3132
u8 ata_r(offs_t offset);
3233
void ata_w(offs_t offset, u8 data);
@@ -51,7 +52,7 @@ void nemoide_device::ata_w(offs_t offset, u8 data)
5152
m_ata->cs0_w((offset >> 5) & 7, ata_data);
5253
}
5354

54-
void nemoide_device::map_io(address_map &map)
55+
void nemoide_device::io_map(address_map &map)
5556
{
5657
map(0x0011, 0x0011).mirror(0xff00).lrw8(NAME([this]() { return m_ata_data_latch; })
5758
, NAME([this](offs_t offset, u8 data) { m_ata_data_latch = data; }));
@@ -74,8 +75,6 @@ void nemoide_device::device_add_mconfig(machine_config &config)
7475
void nemoide_device::device_start()
7576
{
7677
save_item(NAME(m_ata_data_latch));
77-
78-
m_zxbus->install_device(0x0000, 0xffff, *this, &nemoide_device::map_io);
7978
}
8079

8180
} // anonymous namespace

src/devices/bus/spectrum/neogs.cpp

+3-5
Original file line numberDiff line numberDiff line change
@@ -85,15 +85,15 @@ class neogs_device : public device_t, public device_zxbus_card_interface
8585
, m_neogs_led(*this, "neogs_led")
8686
{ }
8787

88+
virtual void io_map(address_map &map) override ATTR_COLD;
89+
8890
protected:
8991
// device_t implementation
9092
virtual void device_start() override ATTR_COLD;
9193
virtual void device_reset() override ATTR_COLD;
9294
virtual const tiny_rom_entry *device_rom_region() const override ATTR_COLD;
9395
virtual void device_add_mconfig(machine_config &config) override ATTR_COLD;
9496

95-
void neogsmap(address_map &map) ATTR_COLD;
96-
9797
INTERRUPT_GEN_MEMBER(irq0_line_assert);
9898

9999
void map_memory(address_map &map) ATTR_COLD;
@@ -438,7 +438,7 @@ const tiny_rom_entry *neogs_device::device_rom_region() const
438438
return ROM_NAME( neogs );
439439
}
440440

441-
void neogs_device::neogsmap(address_map &map)
441+
void neogs_device::io_map(address_map &map)
442442
{
443443
map(0x00bb, 0x00bb).mirror(0xff00).rw(FUNC(neogs_device::neogs_status_r), FUNC(neogs_device::neogs_command_w));
444444
map(0x00b3, 0x00b3).mirror(0xff00).rw(FUNC(neogs_device::neogs_data_r), FUNC(neogs_device::neogs_data_w));
@@ -466,8 +466,6 @@ void neogs_device::device_start()
466466
}
467467
});
468468

469-
m_zxbus->install_device(0x0000, 0xffff, *this, &neogs_device::neogsmap);
470-
471469
m_neogs_led.resolve();
472470

473471
save_item(NAME(m_data_in));

src/devices/bus/spectrum/smuc.cpp

+2-6
Original file line numberDiff line numberDiff line change
@@ -25,16 +25,14 @@ class smuc_device : public device_t, public device_zxbus_card_interface
2525
, m_ata(*this, "ata")
2626
{ }
2727

28-
virtual void map_shadow_io(address_map &map) override ATTR_COLD;
28+
virtual void shadow_io_map(address_map &map) override ATTR_COLD;
2929

3030
protected:
3131
virtual void device_add_mconfig(machine_config &config) override ATTR_COLD;
3232
virtual void device_start() override ATTR_COLD;
3333
virtual void device_reset() override ATTR_COLD;
3434

3535
private:
36-
void map_io(address_map &map) ATTR_COLD {}
37-
3836
void port_ffba_w(offs_t offset, u8 data);
3937
u8 ata_r(offs_t offset);
4038
void ata_w(offs_t offset, u8 data);
@@ -83,7 +81,7 @@ void smuc_device::ata_w(offs_t offset, u8 data)
8381
m_ata->cs0_w(ata_offset, ata_data);
8482
}
8583

86-
void smuc_device::map_shadow_io(address_map &map)
84+
void smuc_device::shadow_io_map(address_map &map)
8785
{
8886
map(0x18a2, 0x18a2).mirror(0x4718) // 5fba | 0x011xxx101xx010 | Version: 2
8987
.lr8(NAME([]() { return 0x40; }));
@@ -125,8 +123,6 @@ void smuc_device::device_start()
125123
save_item(NAME(m_port_7fba_data));
126124
save_item(NAME(m_port_ffba_data));
127125
save_item(NAME(m_ide_hi));
128-
129-
m_zxbus->install_device(0x0000, 0xffff, *this, &smuc_device::map_io);
130126
}
131127

132128
void smuc_device::device_reset()

src/devices/bus/spectrum/zxbus.cpp

+9-10
Original file line numberDiff line numberDiff line change
@@ -40,8 +40,8 @@ zxbus_device::zxbus_device(const machine_config &mconfig, const char *tag, devic
4040

4141
zxbus_device::zxbus_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
4242
: device_t(mconfig, type, tag, owner, clock)
43-
, m_iospace(*this, finder_base::DUMMY_TAG, -1)
44-
, m_shadow_io_view(nullptr)
43+
, m_io(nullptr)
44+
, m_shadow_io(nullptr)
4545
{
4646
}
4747

@@ -52,10 +52,14 @@ void zxbus_device::device_start()
5252
void zxbus_device::add_slot(zxbus_slot_device &slot)
5353
{
5454
m_slot_list.push_front(&slot);
55-
if (m_shadow_io_view)
55+
56+
device_zxbus_card_interface *card = slot.get_card_device();
57+
if (card)
5658
{
57-
device_zxbus_card_interface *dev = slot.get_card_device();
58-
(*m_shadow_io_view).install_device(0x0000, 0xffff, *dev, &device_zxbus_card_interface::map_shadow_io);
59+
if (m_io)
60+
m_io->install_device(0x0000, 0xffff, *card, &device_zxbus_card_interface::io_map);
61+
if (m_shadow_io)
62+
m_shadow_io->install_device(0x0000, 0xffff, *card, &device_zxbus_card_interface::shadow_io_map);
5963
}
6064
}
6165

@@ -65,11 +69,6 @@ device_zxbus_card_interface::device_zxbus_card_interface(const machine_config &m
6569
{
6670
}
6771

68-
void zxbus_device::install_shadow_io(memory_view::memory_view_entry &io_view)
69-
{
70-
m_shadow_io_view = &io_view;
71-
}
72-
7372
void device_zxbus_card_interface::interface_pre_start()
7473
{
7574
if (!m_zxbus)

src/devices/bus/spectrum/zxbus.h

+7-7
Original file line numberDiff line numberDiff line change
@@ -85,23 +85,22 @@ class zxbus_device : public device_t
8585
public:
8686
zxbus_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock);
8787

88-
template <typename T> void set_iospace(T &&tag, int spacenum) { m_iospace.set_tag(std::forward<T>(tag), spacenum); }
89-
template<typename T> void install_device(offs_t addrstart, offs_t addrend, T &device, void (T::*map)(class address_map &map), u64 unitmask = ~u64(0))
88+
void set_io_space(address_space_installer &io, address_space_installer &shadow_io)
9089
{
91-
m_iospace->install_device(addrstart, addrend, device, map, unitmask);
90+
m_io = &io;
91+
m_shadow_io = &shadow_io;
9292
}
9393

9494
void add_slot(zxbus_slot_device &slot);
95-
void install_shadow_io(memory_view::memory_view_entry &io_view);
9695

9796
protected:
9897
zxbus_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock);
9998

10099
virtual void device_start() override ATTR_COLD;
101100

102101
private:
103-
required_address_space m_iospace;
104-
memory_view::memory_view_entry *m_shadow_io_view;
102+
address_space_installer *m_io;
103+
address_space_installer *m_shadow_io;
105104

106105
std::forward_list<zxbus_slot_device *> m_slot_list;
107106
};
@@ -114,7 +113,8 @@ class device_zxbus_card_interface : public device_interface
114113
friend class zxbus_slot_device;
115114

116115
public:
117-
virtual void map_shadow_io(address_map &map) ATTR_COLD {}
116+
virtual void io_map(address_map &map) ATTR_COLD {}
117+
virtual void shadow_io_map(address_map &map) ATTR_COLD {}
118118

119119
protected:
120120
device_zxbus_card_interface(const machine_config &mconfig, device_t &device);

src/mame/sinclair/pentevo.cpp

+17-14
Original file line numberDiff line numberDiff line change
@@ -158,7 +158,7 @@ void pentevo_state::atm_update_io()
158158
{
159159
if (BIT(m_port_bf_data, 0) || is_dos_active())
160160
{
161-
m_io_view.select(0);
161+
m_io_view.select(1);
162162
if (m_beta_drive_selected && m_beta_drive_virtual == m_beta_drive_selected)
163163
m_io_dos_view.disable();
164164
else
@@ -168,7 +168,7 @@ void pentevo_state::atm_update_io()
168168
}
169169
else
170170
{
171-
m_io_view.disable();
171+
m_io_view.select(0);
172172
if (BIT(m_port_eff7_data, 7))
173173
m_glukrs->enable();
174174
else
@@ -623,28 +623,32 @@ void pentevo_state::pentevo_io(address_map &map)
623623
map(0xffdf, 0xffdf).lr8(NAME([this]() -> u8 { return ~m_io_mouse[1]->read(); }));
624624
map(0x001f, 0x001f).mirror(0xff00).lr8(NAME([]() -> u8 { return 0x00; })); // TODO Kepmston Joystick
625625

626-
// PORTS: Shadow
627626
map(0x0000, 0xffff).view(m_io_view);
628-
m_io_view[0](0x0000, 0xffff).view(m_io_dos_view);
627+
m_io_view[0];
628+
629+
// PORTS: Shadow
630+
m_io_view[1](0x0000, 0xffff).view(m_io_dos_view);
629631
m_io_dos_view[0](0x001f, 0x001f).mirror(0xff00).rw(m_beta, FUNC(beta_disk_device::status_r), FUNC(beta_disk_device::command_w));
630632
m_io_dos_view[0](0x003f, 0x003f).mirror(0xff00).rw(m_beta, FUNC(beta_disk_device::track_r), FUNC(beta_disk_device::track_w));
631633
m_io_dos_view[0](0x005f, 0x005f).mirror(0xff00).rw(m_beta, FUNC(beta_disk_device::sector_r), FUNC(beta_disk_device::sector_w));
632634
m_io_dos_view[0](0x007f, 0x007f).mirror(0xff00).rw(m_beta, FUNC(beta_disk_device::data_r), FUNC(beta_disk_device::data_w));
633635
m_io_dos_view[0](0x00ff, 0x00ff).select(0xff00).r(m_beta, FUNC(beta_disk_device::state_r));
634636

635-
m_io_view[0](0x00ff, 0x00ff).select(0xff00).w(FUNC(pentevo_state::atm_port_ff_w));
636-
m_io_view[0](0x0077, 0x0077).select(0xff00).lr8(NAME([]() { return 0xff; })).w(FUNC(pentevo_state::atm_port_77_w));
637-
m_io_view[0](0x3ff7, 0x3ff7).select(0xc000).w(FUNC(pentevo_state::atm_port_f7_w)); // ATM
638-
m_io_view[0](0x37f7, 0x37f7).select(0xc000).w(FUNC(pentevo_state::pentevo_port_7f7_w)); // PENTEVO
639-
m_io_view[0](0x3bf7, 0x3bf7).select(0xc000).w(FUNC(pentevo_state::pentevo_port_bf7_w)); // RO
637+
m_io_view[1](0x00ff, 0x00ff).select(0xff00).w(FUNC(pentevo_state::atm_port_ff_w));
638+
m_io_view[1](0x0077, 0x0077).select(0xff00).lr8(NAME([]() { return 0xff; })).w(FUNC(pentevo_state::atm_port_77_w));
639+
m_io_view[1](0x3ff7, 0x3ff7).select(0xc000).w(FUNC(pentevo_state::atm_port_f7_w)); // ATM
640+
m_io_view[1](0x37f7, 0x37f7).select(0xc000).w(FUNC(pentevo_state::pentevo_port_7f7_w)); // PENTEVO
641+
m_io_view[1](0x3bf7, 0x3bf7).select(0xc000).w(FUNC(pentevo_state::pentevo_port_bf7_w)); // RO
640642

641643
// SPI
642-
m_io_view[0](0x0057, 0x0057).select(0xff00)
644+
m_io_view[1](0x0057, 0x0057).select(0xff00)
643645
.lw8(NAME([this](offs_t offset, u8 data) { if (BIT(offset, 15)) spi_port_77_w(offset, data); else spi_port_57_w(offset, data); }));
644646

645647
// Gluk
646-
m_io_view[0](0xdef7, 0xdef7).lw8(NAME([this](offs_t offset, u8 data) { m_glukrs->address_w(data); } ));
647-
m_io_view[0](0xbef7, 0xbef7).rw(FUNC(pentevo_state::gluk_data_r), FUNC(pentevo_state::gluk_data_w));
648+
m_io_view[1](0xdef7, 0xdef7).lw8(NAME([this](offs_t offset, u8 data) { m_glukrs->address_w(data); } ));
649+
m_io_view[1](0xbef7, 0xbef7).rw(FUNC(pentevo_state::gluk_data_r), FUNC(pentevo_state::gluk_data_w));
650+
651+
subdevice<zxbus_device>("zxbus")->set_io_space(m_io_view[0], m_io_view[1]);
648652
}
649653

650654
void pentevo_state::init_mem_write()
@@ -786,8 +790,7 @@ void pentevo_state::pentevo(machine_config &config)
786790
AT_KEYB(config, m_keyboard, pc_keyboard_device::KEYBOARD_TYPE::AT, 3);
787791

788792
zxbus_device &zxbus(ZXBUS(config, "zxbus", 0));
789-
zxbus.set_iospace("maincpu", AS_IO);
790-
ZXBUS_SLOT(config, "zxbus1", 0, "zxbus", zxbus_cards, nullptr);
793+
ZXBUS_SLOT(config, "zxbus1", 0, zxbus, zxbus_cards, nullptr);
791794
}
792795

793796

src/mame/sinclair/scorpion.cpp

+21-23
Original file line numberDiff line numberDiff line change
@@ -243,10 +243,7 @@ void scorpion_state::update_io(bool dos_enable)
243243

244244
scorpion_update_memory();
245245

246-
if (dos())
247-
m_io_shadow_view.select(0);
248-
else
249-
m_io_shadow_view.disable();
246+
m_io_shadow_view.select(dos() ? 1 : 0);
250247
}
251248

252249
u8 scorpion_state::port_ff_r()
@@ -337,10 +334,7 @@ void scorpion_state::scorpion_mem(address_map &map)
337334
void scorpion_state::scorpion_io(address_map &map)
338335
{
339336
map.unmap_value_high();
340-
map(0x0022, 0x0022).select(0xffdc) // FE | xxxxxxxxxx1xxx10
341-
.rw(FUNC(scorpion_state::spectrum_ula_r), FUNC(scorpion_state::spectrum_ula_w));
342-
map(0x0023, 0x0023).mirror(0xffdc) // FF | xxxxxxxxxx1xxx11
343-
.r(FUNC(scorpion_state::port_ff_r));
337+
344338
map(0x0021, 0x0021).mirror(0x3fdc) // 1FFD | 00xxxxxxxx1xxx01
345339
.w(FUNC(scorpion_state::port_1ffd_w));
346340
map(0x4021, 0x4021).mirror(0x3fdc) // 7FFD | 01xxxxxxxx1xxx01
@@ -351,23 +345,28 @@ void scorpion_state::scorpion_io(address_map &map)
351345
map(0xe021, 0xe021).mirror(0x1fdc) // FFFD | 111xxxxxxx1xxx01
352346
.lr8(NAME([this]() { return m_ay[m_ay_selected]->data_r(); })).w(FUNC(scorpion_state::ay_address_w));
353347

354-
// Mouse
355-
map(0xfadf, 0xfadf).lr8(NAME([this]() -> u8 { return 0x80 | (m_io_mouse[2]->read() & 0x07); }));
356-
map(0xfbdf, 0xfbdf).lr8(NAME([this]() -> u8 { return m_io_mouse[0]->read(); }));
357-
map(0xffdf, 0xffdf).lr8(NAME([this]() -> u8 { return ~m_io_mouse[1]->read(); }));
358-
map(0x0003, 0x0003) // 1F | xxxxxxxx0x0xxx11
348+
map(0x0000, 0xffff).view(m_io_shadow_view);
349+
350+
// !Shadow
351+
m_io_shadow_view[0](0x0022, 0x0022).select(0xffdc) // FE | xxxxxxxxxx1xxx10
352+
.rw(FUNC(scorpion_state::spectrum_ula_r), FUNC(scorpion_state::spectrum_ula_w));
353+
m_io_shadow_view[0](0x0023, 0x0023).mirror(0xffdc) // FF | xxxxxxxxxx1xxx11
354+
.r(FUNC(scorpion_state::port_ff_r));
355+
m_io_shadow_view[0](0xfadf, 0xfadf).lr8(NAME([this]() -> u8 { return 0x80 | (m_io_mouse[2]->read() & 0x07); }));
356+
m_io_shadow_view[0](0xfbdf, 0xfbdf).lr8(NAME([this]() -> u8 { return m_io_mouse[0]->read(); }));
357+
m_io_shadow_view[0](0xffdf, 0xffdf).lr8(NAME([this]() -> u8 { return ~m_io_mouse[1]->read(); }));
358+
m_io_shadow_view[0](0x0003, 0x0003) // 1F | xxxxxxxx0x0xxx11
359359
.select(0xff5c).lr8(NAME([this]() -> u8 { return (m_beta->state_r() & 0xc0) | 0x00; })); // TODO Kepmston Joystick
360360

361361
// Shadow
362362
// DOS + xxxxxxxx0nnxxx11
363-
map(0x0000, 0xffff).view(m_io_shadow_view);
364-
m_io_shadow_view[0](0x0003, 0x0003).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::status_r), FUNC(beta_disk_device::command_w));
365-
m_io_shadow_view[0](0x0023, 0x0023).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::track_r), FUNC(beta_disk_device::track_w));
366-
m_io_shadow_view[0](0x0043, 0x0043).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::sector_r), FUNC(beta_disk_device::sector_w));
367-
m_io_shadow_view[0](0x0063, 0x0063).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::data_r), FUNC(beta_disk_device::data_w));
368-
m_io_shadow_view[0](0x00e3, 0x00e3).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::state_r), FUNC(beta_disk_device::param_w));
363+
m_io_shadow_view[1](0x0003, 0x0003).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::status_r), FUNC(beta_disk_device::command_w));
364+
m_io_shadow_view[1](0x0023, 0x0023).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::track_r), FUNC(beta_disk_device::track_w));
365+
m_io_shadow_view[1](0x0043, 0x0043).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::sector_r), FUNC(beta_disk_device::sector_w));
366+
m_io_shadow_view[1](0x0063, 0x0063).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::data_r), FUNC(beta_disk_device::data_w));
367+
m_io_shadow_view[1](0x00e3, 0x00e3).mirror(0xff1c).rw(m_beta, FUNC(beta_disk_device::state_r), FUNC(beta_disk_device::param_w));
369368

370-
subdevice<zxbus_device>("zxbus")->install_shadow_io(m_io_shadow_view[0]);
369+
subdevice<zxbus_device>("zxbus")->set_io_space(m_io_shadow_view[0], m_io_shadow_view[1]);
371370
}
372371

373372
void scorpion_state::scorpion_switch(address_map &map)
@@ -531,9 +530,8 @@ void scorpion_state::scorpion(machine_config &config)
531530
config.device_remove("exp");
532531

533532
zxbus_device &zxbus(ZXBUS(config, "zxbus", 0));
534-
zxbus.set_iospace("maincpu", AS_IO);
535-
ZXBUS_SLOT(config, "zxbus:1", 0, "zxbus", zxbus_gmx_cards, nullptr);
536-
ZXBUS_SLOT(config, "zxbus:2", 0, "zxbus", zxbus_gmx_cards, nullptr);
533+
ZXBUS_SLOT(config, "zxbus:1", 0, zxbus, zxbus_gmx_cards, nullptr);
534+
ZXBUS_SLOT(config, "zxbus:2", 0, zxbus, zxbus_gmx_cards, nullptr);
537535
}
538536

539537
void scorpion_state::profi(machine_config &config)

src/mame/sinclair/specnext.cpp

+7-2
Original file line numberDiff line numberDiff line change
@@ -68,6 +68,7 @@ class specnext_state : public spectrum_128_state
6868
specnext_state(const machine_config &mconfig, device_type type, const char *tag)
6969
: spectrum_128_state(mconfig, type, tag)
7070
, m_maincpu(*this, "maincpu")
71+
, m_io_shadow_view(*this, "io_shadow_view")
7172
, m_bank_boot_rom(*this, "bootrom")
7273
, m_bank_ram(*this, "bank_ram%u", 0U)
7374
, m_view0(*this, "mem_view0")
@@ -289,6 +290,7 @@ class specnext_state : public spectrum_128_state
289290
memory_access<8, 0, 0, ENDIANNESS_LITTLE>::specific m_next_regs;
290291
memory_access<16, 0, 0, ENDIANNESS_LITTLE>::specific m_program;
291292
memory_access<16, 0, 0, ENDIANNESS_LITTLE>::specific m_io;
293+
memory_view m_io_shadow_view;
292294
memory_bank_creator m_bank_boot_rom;
293295
memory_bank_array_creator<8> m_bank_ram;
294296
memory_view m_view0, m_view1, m_view2, m_view3, m_view4, m_view5, m_view6, m_view7;
@@ -2755,6 +2757,10 @@ void specnext_state::map_io(address_map &map)
27552757
if (m_nr_08_dac_en)
27562758
m_dac[3]->data_w(data);
27572759
}));
2760+
2761+
map(0x0000, 0xffff).view(m_io_shadow_view);
2762+
subdevice<zxbus_device>("zxbus")->set_io_space(m_io_shadow_view[0], m_io_shadow_view[1]);
2763+
m_io_shadow_view.select(0);
27582764
}
27592765

27602766
void specnext_state::map_regs(address_map &map)
@@ -3493,8 +3499,7 @@ void specnext_state::tbblue(machine_config &config)
34933499
SPECNEXT_DIVMMC(config, m_divmmc, 0);
34943500

34953501
zxbus_device &zxbus(ZXBUS(config, "zxbus", 0));
3496-
zxbus.set_iospace("maincpu", AS_IO);
3497-
ZXBUS_SLOT(config, "zxbus:1", 0, "zxbus", zxbus_cards, nullptr);
3502+
ZXBUS_SLOT(config, "zxbus:1", 0, zxbus, zxbus_cards, nullptr);
34983503

34993504
const rectangle scr_full = { SCR_320x256.left() - 16, SCR_320x256.right() + 16, SCR_320x256.top() - 8, SCR_320x256.bottom() + 8 };
35003505
m_screen->set_raw(28_MHz_XTAL / 2, CYCLES_HORIZ, CYCLES_VERT, scr_full);

src/mame/sinclair/sprinter.cpp

+3-3
Original file line numberDiff line numberDiff line change
@@ -1709,7 +1709,7 @@ INPUT_PORTS_START( sprinter )
17091709
PORT_BIT(0x01, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("CAPS SHIFT") PORT_CODE(KEYCODE_LSHIFT) PORT_CODE(KEYCODE_RSHIFT) PORT_CHAR(UCHAR_SHIFT_1) PORT_CHAR(UCHAR_SHIFT_2)
17101710
PORT_BIT(0x02, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("z Z : LN BEEP COPY") PORT_CODE(KEYCODE_Z) PORT_CHAR('z') PORT_CHAR('Z') PORT_CHAR(':')
17111711
PORT_CODE(KEYCODE_BACKSLASH)
1712-
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("x X $ EXP INK CLEAR") PORT_CODE(KEYCODE_X) PORT_CHAR('x') PORT_CHAR('X') PORT_CHAR(U'£')
1712+
PORT_BIT(0x04, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("x X $ EXP INK CLEAR") PORT_CODE(KEYCODE_X) PORT_CHAR('x') PORT_CHAR('X') PORT_CHAR('$')
17131713
PORT_BIT(0x08, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("c C ? LPRINT PAPER CONT") PORT_CODE(KEYCODE_C) PORT_CHAR('c') PORT_CHAR('C') PORT_CHAR('?')
17141714
PORT_BIT(0x10, IP_ACTIVE_LOW, IPT_KEYBOARD) PORT_NAME("v V / LLIST FLASH CLS") PORT_CODE(KEYCODE_V) PORT_CHAR('v') PORT_CHAR('V') PORT_CHAR('/')
17151715
PORT_CODE(KEYCODE_SLASH) PORT_CODE(KEYCODE_SLASH_PAD)
@@ -1894,8 +1894,8 @@ void sprinter_state::sprinter(machine_config &config)
18941894
ISA8(config, m_isa[0], X_SP / 5);
18951895
m_isa[0]->set_custom_spaces();
18961896
zxbus_device &zxbus(ZXBUS(config, "zxbus", 0));
1897-
zxbus.set_iospace(m_isa[0], isa8_device::AS_ISA_IO);
1898-
ZXBUS_SLOT(config, "zxbus2isa", 0, "zxbus", zxbus_cards, nullptr);
1897+
//zxbus.set_iospace(m_isa[0], isa8_device::AS_ISA_IO);
1898+
ZXBUS_SLOT(config, "zxbus2isa", 0, zxbus, zxbus_cards, nullptr);
18991899

19001900
ISA8(config, m_isa[1], X_SP / 5);
19011901
m_isa[1]->set_custom_spaces();

0 commit comments

Comments
 (0)