From e98145d9d8e6cec0c98883d5b5c887fd21d01d27 Mon Sep 17 00:00:00 2001 From: Vas Crabb Date: Sun, 31 Jul 2022 02:31:40 +1000 Subject: Various minor cleanups. There's something wrong when derived classes need to be friends... --- src/devices/bus/cbmiec/c1541.cpp | 4 +++- src/lib/formats/fs_cbmdos.cpp | 6 ++--- src/lib/formats/fs_coco_os9.cpp | 6 +++-- src/lib/formats/fs_coco_rsdos.cpp | 10 +++++---- src/lib/util/corestr.cpp | 6 ++--- src/lib/util/corestr.h | 20 ++++++----------- src/mame/apple/maclc.cpp | 12 +++++----- src/mame/apple/v8.cpp | 47 ++++++++++++++++++--------------------- src/mame/apple/v8.h | 35 ++++++++++++++++------------- src/mame/pinball/newcanasta.cpp | 2 +- 10 files changed, 76 insertions(+), 72 deletions(-) diff --git a/src/devices/bus/cbmiec/c1541.cpp b/src/devices/bus/cbmiec/c1541.cpp index ba2fa5318d0..a547fc6f208 100644 --- a/src/devices/bus/cbmiec/c1541.cpp +++ b/src/devices/bus/cbmiec/c1541.cpp @@ -138,9 +138,11 @@ #include "emu.h" #include "c1541.h" -#include "formats/fs_cbmdos.h" + #include "bus/centronics/ctronics.h" +#include "formats/fs_cbmdos.h" + //************************************************************************** diff --git a/src/lib/formats/fs_cbmdos.cpp b/src/lib/formats/fs_cbmdos.cpp index 1801c0b269a..387cbe6b863 100644 --- a/src/lib/formats/fs_cbmdos.cpp +++ b/src/lib/formats/fs_cbmdos.cpp @@ -80,9 +80,9 @@ private: // methods std::string_view strtrimright_cbm(std::string_view str); -template std::string_view strtrimright_cbm(const char(&str)[N]); +template std::string_view strtrimright_cbm(const char (&str)[N]); -}; +} // anonymous namespace //------------------------------------------------- @@ -473,4 +473,4 @@ u8 impl::block_iterator::size() const return m_track != 0x00 ? 254 : m_sector - 1; } -} +} // anonymous namespace diff --git a/src/lib/formats/fs_coco_os9.cpp b/src/lib/formats/fs_coco_os9.cpp index 84ee3622a3a..dd3f0f48f8d 100644 --- a/src/lib/formats/fs_coco_os9.cpp +++ b/src/lib/formats/fs_coco_os9.cpp @@ -26,7 +26,8 @@ namespace { // ======================> coco_os9_impl -class coco_os9_impl : public filesystem_t { +class coco_os9_impl : public filesystem_t +{ public: // ======================> volume_header @@ -123,7 +124,8 @@ public: private: volume_header m_volume_header; }; -} + +} // anonymous namespace //************************************************************************** // IMPLEMENTATION diff --git a/src/lib/formats/fs_coco_rsdos.cpp b/src/lib/formats/fs_coco_rsdos.cpp index 0bcf600db2b..0b97829e215 100644 --- a/src/lib/formats/fs_coco_rsdos.cpp +++ b/src/lib/formats/fs_coco_rsdos.cpp @@ -23,7 +23,8 @@ namespace fs { const coco_rsdos_image COCO_RSDOS; } namespace { -class coco_rsdos_impl : public filesystem_t { +class coco_rsdos_impl : public filesystem_t +{ public: coco_rsdos_impl(fsblk_t &blockdev); virtual ~coco_rsdos_impl() = default; @@ -47,7 +48,8 @@ public: } m_entries[4]; }; - class granule_iterator { + class granule_iterator + { public: granule_iterator(coco_rsdos_impl &fs, const rsdos_dirent &dirent); bool next(u8 &granule, u16 &byte_count); @@ -75,7 +77,8 @@ private: meta_data get_metadata_from_dirent(const rsdos_dirent &dirent); static std::string get_filename_from_dirent(const rsdos_dirent &dirent); }; -} + +} // anonymous namespace //------------------------------------------------- @@ -482,4 +485,3 @@ bool coco_rsdos_impl::granule_iterator::next(u8 &granule, u16 &byte_count) } return success; } - diff --git a/src/lib/util/corestr.cpp b/src/lib/util/corestr.cpp index 90009411c9c..85e7e517665 100644 --- a/src/lib/util/corestr.cpp +++ b/src/lib/util/corestr.cpp @@ -148,13 +148,13 @@ void strreplacechr(std::string& str, char ch, char newch) std::string_view strtrimspace(std::string_view str) { - std::string_view str2 = strtrimleft(str, [](char c) { return !isspace(uint8_t(c)); }); - return strtrimright(str2, [](char c) { return !isspace(uint8_t(c)); }); + std::string_view str2 = strtrimleft(str, [] (char c) { return !isspace(uint8_t(c)); }); + return strtrimright(str2, [] (char c) { return !isspace(uint8_t(c)); }); } std::string_view strtrimrightspace(std::string_view str) { - return strtrimright(str, [](char c) { return !isspace(uint8_t(c)); }); + return strtrimright(str, [] (char c) { return !isspace(uint8_t(c)); }); } std::string strmakeupper(std::string_view str) diff --git a/src/lib/util/corestr.h b/src/lib/util/corestr.h index 8caf014509b..d5b79ddb5fa 100644 --- a/src/lib/util/corestr.h +++ b/src/lib/util/corestr.h @@ -53,23 +53,17 @@ int core_strwildcmp(const char *sp1, const char *sp2); bool core_iswildstr(const char *sp); /* trim functions */ -template -std::string_view strtrimleft(std::string_view str, TPred pred) +template +std::string_view strtrimleft(std::string_view str, TPred &&pred) { - std::string_view::iterator start = std::find_if( - str.begin(), - str.end(), - pred); - return str.substr(start - str.begin(), str.end() - start); + auto const start = std::find_if(str.begin(), str.end(), pred); + return str.substr(start - str.begin()); } -template -std::string_view strtrimright(std::string_view str, TPred pred) +template +std::string_view strtrimright(std::string_view str, TPred &&pred) { - std::string_view::reverse_iterator end = std::find_if( - str.rbegin(), - str.rend(), - pred); + auto const end = std::find_if(str.rbegin(), str.rend(), pred); return str.substr(0, str.size() - (end - str.rbegin())); } diff --git a/src/mame/apple/maclc.cpp b/src/mame/apple/maclc.cpp index aa3ed0ba7f8..3e168014ba5 100644 --- a/src/mame/apple/maclc.cpp +++ b/src/mame/apple/maclc.cpp @@ -13,6 +13,12 @@ #include "emu.h" +#include "cuda.h" +#include "egret.h" +#include "macadb.h" +#include "macscsi.h" +#include "v8.h" + #include "bus/nscsi/devices.h" #include "bus/rs232/rs232.h" #include "cpu/m68000/m68000.h" @@ -23,16 +29,12 @@ #include "machine/swim1.h" #include "machine/timer.h" #include "machine/z80scc.h" -#include "cuda.h" -#include "egret.h" -#include "macadb.h" -#include "macscsi.h" -#include "v8.h" #include "emupal.h" #include "screen.h" #include "softlist_dev.h" + namespace { #define C32M (31.3344_MHz_XTAL) diff --git a/src/mame/apple/v8.cpp b/src/mame/apple/v8.cpp index 45c85d23d9e..da4c773aef3 100644 --- a/src/mame/apple/v8.cpp +++ b/src/mame/apple/v8.cpp @@ -121,28 +121,28 @@ void v8_device::device_add_mconfig(machine_config &config) // v8_device - constructor //------------------------------------------------- -v8_device::v8_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) - : v8_device(mconfig, V8, tag, owner, clock) +v8_device::v8_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock) : + v8_device(mconfig, V8, tag, owner, clock) { } -v8_device::v8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) - : device_t(mconfig, type, tag, owner, clock), - write_pb4(*this), - write_pb5(*this), - write_cb2(*this), - write_hdsel(*this), - write_hmmu_enable(*this), - read_pb3(*this), - m_maincpu(*this, finder_base::DUMMY_TAG), - m_montype(*this, "MONTYPE"), - m_screen(*this, "screen"), - m_palette(*this, "palette"), - m_via1(*this, "via1"), - m_asc(*this, "asc"), - m_rom(*this, finder_base::DUMMY_TAG), - m_overlay(false), - m_baseIs4M(false) +v8_device::v8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock) : + device_t(mconfig, type, tag, owner, clock), + m_maincpu(*this, finder_base::DUMMY_TAG), + m_screen(*this, "screen"), + m_palette(*this, "palette"), + m_asc(*this, "asc"), + write_pb4(*this), + write_pb5(*this), + write_cb2(*this), + write_hdsel(*this), + write_hmmu_enable(*this), + read_pb3(*this), + m_montype(*this, "MONTYPE"), + m_via1(*this, "via1"), + m_rom(*this, finder_base::DUMMY_TAG), + m_overlay(false), + m_baseIs4M(false) { } @@ -178,9 +178,6 @@ void v8_device::device_start() save_item(NAME(m_pal_colkey)); save_item(NAME(m_overlay)); - m_rom_ptr = &m_rom[0]; - m_rom_size = m_rom.length() << 2; - m_pseudovia_ier = m_pseudovia_ifr = 0; m_pal_address = m_pal_idx = m_pal_control = m_pal_colkey = 0; } @@ -211,12 +208,12 @@ void v8_device::device_reset() // put ROM mirror at 0 address_space &space = m_maincpu->space(AS_PROGRAM); - const u32 memory_size = std::min((u32)0x3fffff, m_rom_size); + const u32 memory_size = std::min(0x3fffff, m_rom.length() << 2); const u32 memory_end = memory_size - 1; offs_t memory_mirror = memory_end & ~(memory_size - 1); space.unmap_write(0x00000000, memory_end); - space.install_rom(0x00000000, memory_end & ~memory_mirror, memory_mirror, m_rom_ptr); + space.install_rom(0x00000000, memory_end & ~memory_mirror, memory_mirror, &m_rom[0]); } u32 v8_device::rom_switch_r(offs_t offset) @@ -228,7 +225,7 @@ u32 v8_device::rom_switch_r(offs_t offset) m_overlay = false; } - return m_rom_ptr[offset & ((m_rom_size - 1) >> 2)]; + return m_rom[offset & (m_rom.length() - 1)]; } void v8_device::set_ram_info(u32 *ram, u32 size) diff --git a/src/mame/apple/v8.h b/src/mame/apple/v8.h index 48068bba7ec..40b9a7f83f3 100644 --- a/src/mame/apple/v8.h +++ b/src/mame/apple/v8.h @@ -18,13 +18,9 @@ class v8_device : public device_t { - friend class eagle_device; - friend class spice_device; - public: // construction/destruction v8_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock); - v8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); // interface routines auto pb4_callback() { return write_pb4.bind(); } @@ -47,38 +43,46 @@ public: DECLARE_WRITE_LINE_MEMBER(scc_irq_w); protected: + required_device m_maincpu; + required_device m_screen; + required_device m_palette; + required_device m_asc; + + std::unique_ptr m_vram; + + u8 m_pseudovia_regs[256]; + u32 *m_ram_ptr; + + v8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock); + // device-level overrides virtual void device_start() override; virtual void device_reset() override; virtual void device_add_mconfig(machine_config &config) override; virtual ioport_constructor device_input_ports() const override; + virtual u8 pseudovia_r(offs_t offset); + private: devcb_write_line write_pb4, write_pb5, write_cb2, write_hdsel, write_hmmu_enable; devcb_read_line read_pb3; - required_device m_maincpu; optional_ioport m_montype; - required_device m_screen; - required_device m_palette; required_device m_via1; - required_device m_asc; required_region_ptr m_rom; - std::unique_ptr m_vram; emu_timer *m_6015_timer; int m_via_interrupt, m_via2_interrupt, m_scc_interrupt, m_last_taken_interrupt; - u8 m_pseudovia_regs[256], m_pseudovia_ier, m_pseudovia_ifr; + u8 m_pseudovia_ier, m_pseudovia_ifr; u8 m_pal_address, m_pal_idx, m_pal_control, m_pal_colkey; bool m_overlay; - u32 *m_ram_ptr, *m_rom_ptr; - u32 m_ram_size, m_rom_size; + u32 m_ram_size; bool m_baseIs4M; + u32 rom_switch_r(offs_t offset); void ram_size(u8 config); - virtual u8 pseudovia_r(offs_t offset); void pseudovia_w(offs_t offset, u8 data); void pseudovia_recalc_irqs(); @@ -139,12 +143,13 @@ protected: virtual ioport_constructor device_input_ports() const override; private: + floppy_image_device *m_cur_floppy = nullptr; + int m_hdsel; + u8 via_in_a() override; virtual void via_out_a(u8 data) override; u8 pseudovia_r(offs_t offset) override; virtual u32 screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect) override; - floppy_image_device *m_cur_floppy = nullptr; - int m_hdsel; void phases_w(u8 phases); void devsel_w(u8 devsel); diff --git a/src/mame/pinball/newcanasta.cpp b/src/mame/pinball/newcanasta.cpp index ef0f7625aa4..85ffc548e8d 100644 --- a/src/mame/pinball/newcanasta.cpp +++ b/src/mame/pinball/newcanasta.cpp @@ -63,7 +63,7 @@ void newcanasta_state::machine_reset() void newcanasta_state::newcanasta(machine_config &config) { // Basic machine hardware - PENTIUM4(config, m_maincpu, 100000000); // FSB1333 socket CPU, exact model unknown + PENTIUM4(config, m_maincpu, 100'000'000); // 775-pin LGA "Socket T" CPU, exact model unknown m_maincpu->set_addrmap(AS_PROGRAM, &newcanasta_state::newcanasta_map); // Video hardware -- cgit v1.2.3