Skip to content

Commit 360d3a5

Browse files
authored
debugger: Extended target address syntax to include device/address space. (#8630)
Added a validity check to ensure address space names are tag-like and unique, since they're now used as identifiers in debugger commands. Extended the syntax for target addresses to allow them to be qualified with a colon followed by an optional device tag and/or address space name. If only the device needs to be specified, a debugger CPU number may also be used. This makes commands like bpset and wpset more flexible, as they can operate on CPUs other than the currently visible CPU. Commands like find, fill, dump and load are more flexible as they can access any space of any device. Removed now-redundant CPU parameters from many commands, and renamed pcatmemp to pcatmem for consistency with other commands. Extended region syntax for saver/loadr to support tags relative to the visible CPU (e.g. you can use "." for the region with the same name as the visible CPU, or "^sibling" syntax). Added an optional root device parameter to memdump. Changed interpretation of Boolean values to support numeric expressions as well as true/false strings and literal 1/0. Added checks that the specified device is CPU-like to various commands that require a CPU (e.g. focus). Previously these commands would crash or trigger an assertion failure if a tag for a non-CPU devices was specified. Fixed the cpunum symbol so it uses the same rules for determining what is or isn't a CPU as parameter parsing. Made device_t sanitise subtags better. Previously you could cause an assertion failure or crash MAME by giving it unexpected relative tags via Lua or the debugger. Added help topic alias support, and reworked the data structures to improve the performance of looking up debugger commands and help topics. Removed the "ref" parameter from debugger command functions (std::bind can hold extra argument values for you if you need them). Also added an error message if duplicate debugger commands are registered. Updated help for commands that changed syntax, and also updated summaries for some commands that had changed in the past without corresponding help updates.
1 parent 6eee76c commit 360d3a5

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

57 files changed

+1941
-1468
lines changed

doxygen/doxygen.config

+8-8
Original file line numberDiff line numberDiff line change
@@ -133,7 +133,7 @@ ABBREVIATE_BRIEF =
133133
# description.
134134
# The default value is: NO.
135135

136-
ALWAYS_DETAILED_SEC = YES
136+
ALWAYS_DETAILED_SEC = NO
137137

138138
# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all
139139
# inherited members of a class in the documentation of that class as if those
@@ -318,7 +318,7 @@ OPTIMIZE_OUTPUT_SLICE = NO
318318
#
319319
# Note see also the list of default file extension mappings.
320320

321-
EXTENSION_MAPPING = h=C++ inc=C++
321+
EXTENSION_MAPPING = inc=C++
322322

323323
# If the MARKDOWN_SUPPORT tag is enabled then doxygen pre-processes all comments
324324
# according to the Markdown format, which allows for more readable
@@ -1156,7 +1156,7 @@ HTML_FILE_EXTENSION = .html
11561156
# of the possible markers and block names see the documentation.
11571157
# This tag requires that the tag GENERATE_HTML is set to YES.
11581158

1159-
HTML_HEADER = doxygen/header.html
1159+
#HTML_HEADER = doxygen/header.html
11601160

11611161
# The HTML_FOOTER tag can be used to specify a user-defined HTML footer for each
11621162
# generated HTML page. If the tag is left blank doxygen will generate a standard
@@ -1166,7 +1166,7 @@ HTML_HEADER = doxygen/header.html
11661166
# that doxygen normally uses.
11671167
# This tag requires that the tag GENERATE_HTML is set to YES.
11681168

1169-
HTML_FOOTER = doxygen/footer.html
1169+
#HTML_FOOTER = doxygen/footer.html
11701170

11711171
# The HTML_STYLESHEET tag can be used to specify a user-defined cascading style
11721172
# sheet that is used by each HTML page. It can be used to fine-tune the look of
@@ -1191,7 +1191,7 @@ HTML_STYLESHEET =
11911191
# list). For an example see the documentation.
11921192
# This tag requires that the tag GENERATE_HTML is set to YES.
11931193

1194-
HTML_EXTRA_STYLESHEET = doxygen/style.css
1194+
#HTML_EXTRA_STYLESHEET = doxygen/style.css
11951195

11961196
# The HTML_EXTRA_FILES tag can be used to specify one or more extra images or
11971197
# other source files which should be copied to the HTML output directory. Note
@@ -1201,7 +1201,7 @@ HTML_EXTRA_STYLESHEET = doxygen/style.css
12011201
# files will be copied as-is; there are no commands or markers available.
12021202
# This tag requires that the tag GENERATE_HTML is set to YES.
12031203

1204-
HTML_EXTRA_FILES = doxygen/doxy-boot.js
1204+
#HTML_EXTRA_FILES = doxygen/doxy-boot.js
12051205

12061206
# The HTML_COLORSTYLE_HUE tag controls the color of the HTML output. Doxygen
12071207
# will adjust the colors in the style sheet and background images according to
@@ -2330,7 +2330,7 @@ DOT_FONTPATH =
23302330
# The default value is: YES.
23312331
# This tag requires that the tag HAVE_DOT is set to YES.
23322332

2333-
CLASS_GRAPH = NO
2333+
CLASS_GRAPH = YES
23342334

23352335
# If the COLLABORATION_GRAPH tag is set to YES then doxygen will generate a
23362336
# graph for each documented class showing the direct and indirect implementation
@@ -2339,7 +2339,7 @@ CLASS_GRAPH = NO
23392339
# The default value is: YES.
23402340
# This tag requires that the tag HAVE_DOT is set to YES.
23412341

2342-
COLLABORATION_GRAPH = NO
2342+
COLLABORATION_GRAPH = YES
23432343

23442344
# If the GROUP_GRAPHS tag is set to YES then doxygen will generate a graph for
23452345
# groups, showing the direct groups dependencies.

src/devices/bus/gio64/gio64.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,7 @@ gio64_device::gio64_device(const machine_config &mconfig, const char *tag, devic
6868
gio64_device::gio64_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
6969
: device_t(mconfig, type, tag, owner, clock)
7070
, device_memory_interface(mconfig, *this)
71-
, m_space_config("GIO64 Space", ENDIANNESS_BIG, 64, 32, 0)
71+
, m_space_config("gio64", ENDIANNESS_BIG, 64, 32, 0)
7272
, m_interrupt_cb(*this)
7373
{
7474
}

src/devices/bus/isa/isa.cpp

+4-4
Original file line numberDiff line numberDiff line change
@@ -107,10 +107,10 @@ isa8_device::isa8_device(const machine_config &mconfig, const char *tag, device_
107107
isa8_device::isa8_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock) :
108108
device_t(mconfig, type, tag, owner, clock),
109109
device_memory_interface(mconfig, *this),
110-
m_mem_config("ISA 8-bit mem", ENDIANNESS_LITTLE, 8, 24, 0, address_map_constructor()),
111-
m_io_config("ISA 8-bit I/O", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor()),
112-
m_mem16_config("ISA 16-bit mem", ENDIANNESS_LITTLE, 16, 24, 0, address_map_constructor()),
113-
m_io16_config("ISA 16-bit I/O", ENDIANNESS_LITTLE, 16, 16, 0, address_map_constructor()),
110+
m_mem_config("mem8", ENDIANNESS_LITTLE, 8, 24, 0, address_map_constructor()),
111+
m_io_config("io8", ENDIANNESS_LITTLE, 8, 16, 0, address_map_constructor()),
112+
m_mem16_config("mem16", ENDIANNESS_LITTLE, 16, 24, 0, address_map_constructor()),
113+
m_io16_config("io16", ENDIANNESS_LITTLE, 16, 16, 0, address_map_constructor()),
114114
m_memspace(*this, finder_base::DUMMY_TAG, -1),
115115
m_iospace(*this, finder_base::DUMMY_TAG, -1),
116116
m_memwidth(0),

src/devices/bus/qbus/qbus.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -90,7 +90,7 @@ qbus_device::qbus_device(const machine_config &mconfig, const char *tag, device_
9090
device_t(mconfig, QBUS, tag, owner, clock),
9191
device_memory_interface(mconfig, *this),
9292
device_z80daisy_interface(mconfig, *this),
93-
m_program_config("QBUS A18", ENDIANNESS_BIG, 16, 16, 0, address_map_constructor()),
93+
m_program_config("a18", ENDIANNESS_BIG, 16, 16, 0, address_map_constructor()),
9494
m_space(*this, finder_base::DUMMY_TAG, -1),
9595
m_out_birq4_cb(*this),
9696
m_out_birq5_cb(*this),

src/devices/bus/sbus/sbus.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -83,7 +83,7 @@ sbus_device::sbus_device(const machine_config &mconfig, const char *tag, device_
8383
sbus_device::sbus_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
8484
: device_t(mconfig, type, tag, owner, clock)
8585
, device_memory_interface(mconfig, *this)
86-
, m_space_config("SBus Space", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor())
86+
, m_space_config("sbus", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor())
8787
, m_maincpu(*this, finder_base::DUMMY_TAG)
8888
, m_type1space(*this, finder_base::DUMMY_TAG, -1)
8989
, m_irq_cb(*this)

src/devices/bus/vme/vme.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -211,7 +211,7 @@ vme_device::vme_device(const machine_config &mconfig, const char *tag, device_t
211211
vme_device::vme_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, uint32_t clock)
212212
: device_t(mconfig, type, tag, owner, clock)
213213
, device_memory_interface(mconfig, *this)
214-
, m_a32_config("VME A32", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor())
214+
, m_a32_config("a32", ENDIANNESS_BIG, 32, 32, 0, address_map_constructor())
215215
, m_allocspaces(true)
216216
, m_cputag("maincpu")
217217
{

src/devices/cpu/adsp2100/adsp2100.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -275,7 +275,7 @@ adsp2115_device::adsp2115_device(const machine_config &mconfig, const char *tag,
275275

276276
adsp2181_device::adsp2181_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock)
277277
: adsp21xx_device(mconfig, ADSP2181, tag, owner, clock, CHIP_TYPE_ADSP2181)
278-
, m_io_config("I/O", ENDIANNESS_LITTLE, 16, 11, -1)
278+
, m_io_config("io", ENDIANNESS_LITTLE, 16, 11, -1)
279279
{ }
280280

281281

src/devices/cpu/arm7/arm7.cpp

+7-7
Original file line numberDiff line numberDiff line change
@@ -841,17 +841,17 @@ bool arm7_cpu_device::translate_vaddr_to_paddr(offs_t &vaddr, const int flags)
841841
}
842842
}
843843

844-
void arm7_cpu_device::translate_insn_command(int ref, const std::vector<std::string> &params)
844+
void arm7_cpu_device::translate_insn_command(const std::vector<std::string> &params)
845845
{
846-
translate_command(ref, params, TRANSLATE_FETCH);
846+
translate_command(params, TRANSLATE_FETCH);
847847
}
848848

849-
void arm7_cpu_device::translate_data_command(int ref, const std::vector<std::string> &params)
849+
void arm7_cpu_device::translate_data_command(const std::vector<std::string> &params)
850850
{
851-
translate_command(ref, params, TRANSLATE_READ);
851+
translate_command(params, TRANSLATE_READ);
852852
}
853853

854-
void arm7_cpu_device::translate_command(int ref, const std::vector<std::string> &params, int intention)
854+
void arm7_cpu_device::translate_command(const std::vector<std::string> &params, int intention)
855855
{
856856
uint64_t vaddr;
857857

@@ -1024,8 +1024,8 @@ void arm7_cpu_device::device_start()
10241024
if (machine().debug_flags & DEBUG_FLAG_ENABLED)
10251025
{
10261026
using namespace std::placeholders;
1027-
machine().debugger().console().register_command("translate_insn", CMDFLAG_NONE, 0, 1, 1, std::bind(&arm7_cpu_device::translate_insn_command, this, _1, _2));
1028-
machine().debugger().console().register_command("translate_data", CMDFLAG_NONE, 0, 1, 1, std::bind(&arm7_cpu_device::translate_data_command, this, _1, _2));
1027+
machine().debugger().console().register_command("translate_insn", CMDFLAG_NONE, 1, 1, std::bind(&arm7_cpu_device::translate_insn_command, this, _1));
1028+
machine().debugger().console().register_command("translate_data", CMDFLAG_NONE, 1, 1, std::bind(&arm7_cpu_device::translate_data_command, this, _1));
10291029
}
10301030
}
10311031

src/devices/cpu/arm7/arm7.h

+3-3
Original file line numberDiff line numberDiff line change
@@ -146,9 +146,9 @@ class arm7_cpu_device : public cpu_device, public arm7_disassembler::config
146146

147147
uint32_t m_r[/*NUM_REGS*/37];
148148

149-
void translate_insn_command(int ref, const std::vector<std::string> &params);
150-
void translate_data_command(int ref, const std::vector<std::string> &params);
151-
void translate_command(int ref, const std::vector<std::string> &params, int intention);
149+
void translate_insn_command(const std::vector<std::string> &params);
150+
void translate_data_command(const std::vector<std::string> &params);
151+
void translate_command(const std::vector<std::string> &params, int intention);
152152

153153
void update_insn_prefetch(uint32_t curr_pc);
154154
bool insn_fetch_thumb(uint32_t pc, uint32_t &out_insn);

src/devices/cpu/h16/hd641016.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ hd641016_device::hd641016_device(const machine_config &mconfig, const char *tag,
1919
: cpu_device(mconfig, HD641016, tag, owner, clock)
2020
, m_program_config("program", ENDIANNESS_BIG, 16, 24, 0)
2121
, m_data_config("data", ENDIANNESS_BIG, 32, 10, 0, address_map_constructor(FUNC(hd641016_device::ram_map), this))
22-
, m_io_config("I/O", ENDIANNESS_BIG, 32, 9, 0, address_map_constructor(FUNC(hd641016_device::io_map), this))
22+
, m_io_config("io", ENDIANNESS_BIG, 32, 9, 0, address_map_constructor(FUNC(hd641016_device::io_map), this))
2323
, m_pc(0)
2424
, m_ssp(0)
2525
, m_bsp(0)

src/devices/cpu/h8500/h8500.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
h8500_device::h8500_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int addrbits, int buswidth, int ramsize, int defmode, address_map_constructor map)
1616
: cpu_device(mconfig, type, tag, owner, clock)
1717
, m_program_config("program", ENDIANNESS_BIG, buswidth, addrbits, 0, map)
18-
, m_ram_config("internal RAM", ENDIANNESS_BIG, 16, ramsize, 0, address_map_constructor(FUNC(h8500_device::ram_map), this))
18+
, m_ram_config("intram", ENDIANNESS_BIG, 16, ramsize, 0, address_map_constructor(FUNC(h8500_device::ram_map), this))
1919
, m_mode_control(defmode)
2020
, m_pc(0)
2121
, m_ppc(0)

src/devices/cpu/m6502/r65c19.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -34,7 +34,7 @@ r65c19_device::r65c19_device(const machine_config &mconfig, const char *tag, dev
3434
c39_device::c39_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor internal_map)
3535
: r65c19_device(mconfig, type, tag, owner, clock, internal_map)
3636
, m_exp_config("expansion", ENDIANNESS_LITTLE, 8, 21, 0)
37-
, m_es4_config("ES4", ENDIANNESS_LITTLE, 8, 9, 0)
37+
, m_es4_config("es4", ENDIANNESS_LITTLE, 8, 9, 0)
3838
{
3939
}
4040

src/devices/cpu/m68000/m68kcpu.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -2318,7 +2318,7 @@ m68000_base_device::m68000_base_device(const machine_config &mconfig, const char
23182318
: cpu_device(mconfig, type, tag, owner, clock),
23192319
m_program_config("program", ENDIANNESS_BIG, prg_data_width, prg_address_bits, 0, internal_map),
23202320
m_oprogram_config("decrypted_opcodes", ENDIANNESS_BIG, prg_data_width, prg_address_bits, 0, internal_map),
2321-
m_cpu_space_config("cpu space", ENDIANNESS_BIG, prg_data_width, prg_address_bits, 0, address_map_constructor(FUNC(m68000_base_device::default_autovectors_map), this)),
2321+
m_cpu_space_config("cpu_space", ENDIANNESS_BIG, prg_data_width, prg_address_bits, 0, address_map_constructor(FUNC(m68000_base_device::default_autovectors_map), this)),
23222322
m_interrupt_mixer(true),
23232323
m_cpu_space_id(AS_CPU_SPACE),
23242324
m_reset_instr_callback(*this),
@@ -2335,7 +2335,7 @@ m68000_base_device::m68000_base_device(const machine_config &mconfig, const char
23352335
: cpu_device(mconfig, type, tag, owner, clock),
23362336
m_program_config("program", ENDIANNESS_BIG, prg_data_width, prg_address_bits),
23372337
m_oprogram_config("decrypted_opcodes", ENDIANNESS_BIG, prg_data_width, prg_address_bits),
2338-
m_cpu_space_config("cpu space", ENDIANNESS_BIG, prg_data_width, prg_address_bits, 0, address_map_constructor(FUNC(m68000_base_device::default_autovectors_map), this)),
2338+
m_cpu_space_config("cpu_space", ENDIANNESS_BIG, prg_data_width, prg_address_bits, 0, address_map_constructor(FUNC(m68000_base_device::default_autovectors_map), this)),
23392339
m_interrupt_mixer(true),
23402340
m_cpu_space_id(AS_CPU_SPACE),
23412341
m_reset_instr_callback(*this),

src/devices/cpu/ns32000/ns32000.cpp

+18-10
Original file line numberDiff line numberDiff line change
@@ -94,7 +94,15 @@ static const u32 size_mask[] = { 0x000000ffU, 0x0000ffffU, 0x00000000U, 0xffffff
9494
template <int Width>ns32000_device<Width>::ns32000_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int databits, int addrbits)
9595
: cpu_device(mconfig, type, tag, owner, clock)
9696
, m_program_config("program", ENDIANNESS_LITTLE, databits, addrbits, 0)
97-
, m_interrupt_config("interrupt", ENDIANNESS_LITTLE, databits, addrbits, 0)
97+
, m_iam_config("iam", ENDIANNESS_LITTLE, databits, addrbits, 0)
98+
, m_iac_config("iac", ENDIANNESS_LITTLE, databits, addrbits, 0)
99+
, m_eim_config("eim", ENDIANNESS_LITTLE, databits, addrbits, 0)
100+
, m_eic_config("eic", ENDIANNESS_LITTLE, databits, addrbits, 0)
101+
, m_sif_config("sif", ENDIANNESS_LITTLE, databits, addrbits, 0)
102+
, m_nif_config("nif", ENDIANNESS_LITTLE, databits, addrbits, 0)
103+
, m_odt_config("odt", ENDIANNESS_LITTLE, databits, addrbits, 0)
104+
, m_rmw_config("rmw", ENDIANNESS_LITTLE, databits, addrbits, 0)
105+
, m_ear_config("ear", ENDIANNESS_LITTLE, databits, addrbits, 0)
98106
, m_fpu(*this, finder_base::DUMMY_TAG)
99107
, m_mmu(*this, finder_base::DUMMY_TAG)
100108
, m_icount(0)
@@ -3327,15 +3335,15 @@ template <int Width> device_memory_interface::space_config_vector ns32000_device
33273335
return space_config_vector{
33283336
std::make_pair(AS_PROGRAM, &m_program_config),
33293337

3330-
std::make_pair(ST_IAM, &m_interrupt_config),
3331-
std::make_pair(ST_IAC, &m_interrupt_config),
3332-
std::make_pair(ST_EIM, &m_interrupt_config),
3333-
std::make_pair(ST_EIC, &m_interrupt_config),
3334-
std::make_pair(ST_SIF, &m_program_config),
3335-
std::make_pair(ST_NIF, &m_program_config),
3336-
std::make_pair(ST_ODT, &m_program_config),
3337-
std::make_pair(ST_RMW, &m_program_config),
3338-
std::make_pair(ST_EAR, &m_program_config),
3338+
std::make_pair(ST_IAM, &m_iam_config),
3339+
std::make_pair(ST_IAC, &m_iac_config),
3340+
std::make_pair(ST_EIM, &m_eim_config),
3341+
std::make_pair(ST_EIC, &m_eic_config),
3342+
std::make_pair(ST_SIF, &m_sif_config),
3343+
std::make_pair(ST_NIF, &m_nif_config),
3344+
std::make_pair(ST_ODT, &m_odt_config),
3345+
std::make_pair(ST_RMW, &m_rmw_config),
3346+
std::make_pair(ST_EAR, &m_ear_config),
33393347
};
33403348
}
33413349

src/devices/cpu/ns32000/ns32000.h

+9-1
Original file line numberDiff line numberDiff line change
@@ -142,7 +142,15 @@ class ns32000_device : public cpu_device
142142
private:
143143
// configuration
144144
address_space_config m_program_config;
145-
address_space_config m_interrupt_config;
145+
address_space_config m_iam_config;
146+
address_space_config m_iac_config;
147+
address_space_config m_eim_config;
148+
address_space_config m_eic_config;
149+
address_space_config m_sif_config;
150+
address_space_config m_nif_config;
151+
address_space_config m_odt_config;
152+
address_space_config m_rmw_config;
153+
address_space_config m_ear_config;
146154

147155
optional_device<ns32000_slave_interface> m_fpu;
148156
optional_device<ns32000_mmu_interface> m_mmu;

src/devices/cpu/pdp8/hd6120.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -168,8 +168,8 @@ hd6120_device::hd6120_device(const machine_config &config, const char *tag, devi
168168
: cpu_device(config, HD6120, tag, owner, clock)
169169
, m_inst_config("instruction", ENDIANNESS_BIG, 16, 16, -1) // 12 data bits
170170
, m_data_config("data", ENDIANNESS_BIG, 16, 16, -1) // 12 data bits
171-
, m_io_config("I/O", ENDIANNESS_BIG, 16, 9, -1) // 12 data bits
172-
, m_devctl_config("device control", ENDIANNESS_BIG, 8, 9, 0) // only 3 bits used
171+
, m_io_config("io", ENDIANNESS_BIG, 16, 9, -1) // 12 data bits
172+
, m_devctl_config("devctl", ENDIANNESS_BIG, 8, 9, 0) // only 3 bits used
173173
, m_lxmar_callback(*this)
174174
, m_lxpar_callback(*this)
175175
, m_lxdar_callback(*this)

src/devices/cpu/rx01/rx01.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -38,7 +38,7 @@ DEFINE_DEVICE_TYPE(RX01_CPU, rx01_cpu_device, "rx01_cpu", "DEC RX01 CPU")
3838
rx01_cpu_device::rx01_cpu_device(const machine_config &mconfig, const char *tag, device_t *owner, u32 clock)
3939
: cpu_device(mconfig, RX01_CPU, tag, owner, clock)
4040
, m_inst_config("program", ENDIANNESS_LITTLE, 8, 12, 0)
41-
, m_data_config("sector data", ENDIANNESS_LITTLE, 8, 10, 0) // actually 1 bit wide
41+
, m_data_config("sectordata", ENDIANNESS_LITTLE, 8, 10, 0) // actually 1 bit wide
4242
, m_interface_callback(*this)
4343
, m_pc(0)
4444
, m_ppc(0)

src/devices/cpu/sparc/sparc.cpp

+2-3
Original file line numberDiff line numberDiff line change
@@ -45,12 +45,11 @@ sparc_base_device::sparc_base_device(const machine_config &mconfig, device_type
4545
: cpu_device(mconfig, type, tag, owner, clock)
4646
, m_mmu(*this, finder_base::DUMMY_TAG)
4747
{
48-
char asi_buf[10];
4948
m_debugger_config = address_space_config("debug", ENDIANNESS_BIG, 32, 32);
5049
for (int i = 0; i < 0x10; i++)
5150
{
52-
snprintf(asi_buf, std::size(asi_buf), "asi%X", i);
53-
m_asi_config[i] = address_space_config(asi_buf, ENDIANNESS_BIG, 32, 32);
51+
m_asi_names[i] = util::string_format("asi%x", i);
52+
m_asi_config[i] = address_space_config(m_asi_names[i].c_str(), ENDIANNESS_BIG, 32, 32);
5453
}
5554
}
5655

src/devices/cpu/sparc/sparc.h

+1
Original file line numberDiff line numberDiff line change
@@ -155,6 +155,7 @@ class sparc_base_device : public cpu_device, public sparc_mmu_host_interface, pr
155155
required_device<sparc_mmu_interface> m_mmu;
156156

157157
// address spaces
158+
std::string m_asi_names[0x10];
158159
address_space_config m_debugger_config;
159160
address_space_config m_asi_config[0x10];
160161
memory_access<32, 2, 0, ENDIANNESS_BIG>::specific m_asi[0x20];

src/devices/cpu/upd78k/upd78k0.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -26,9 +26,9 @@ DEFINE_DEVICE_TYPE(UPD78053, upd78053_device, "upd78053", "NEC uPD78053")
2626
upd78k0_device::upd78k0_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, u16 iram_size, address_map_constructor mem_map, address_map_constructor sfr_map)
2727
: cpu_device(mconfig, type, tag, owner, clock)
2828
, m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, mem_map)
29-
, m_iram_config("internal high-speed RAM", ENDIANNESS_LITTLE, 16, iram_size > 0x200 ? 10 : iram_size > 0x100 ? 9 : 8, 0,
29+
, m_iram_config("iram", ENDIANNESS_LITTLE, 16, iram_size > 0x200 ? 10 : iram_size > 0x100 ? 9 : 8, 0,
3030
address_map_constructor(FUNC(upd78k0_device::iram_map), this))
31-
, m_sfr_config("SFR", ENDIANNESS_LITTLE, 16, 8, 0, sfr_map)
31+
, m_sfr_config("sfr", ENDIANNESS_LITTLE, 16, 8, 0, sfr_map)
3232
, m_iram_size(iram_size)
3333
, m_subclock(0)
3434
, m_pc(0)

src/devices/cpu/upd78k/upd78k2.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ DEFINE_DEVICE_TYPE(UPD78213, upd78213_device, "upd78213", "NEC uPD78213")
2727
upd78k2_device::upd78k2_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, int iram_bits, address_map_constructor mem_map, address_map_constructor sfr_map)
2828
: cpu_device(mconfig, type, tag, owner, clock)
2929
, m_program_config("program", ENDIANNESS_LITTLE, 8, 20, 0, mem_map)
30-
, m_iram_config("IRAM", ENDIANNESS_LITTLE, 16, iram_bits, 0, address_map_constructor(FUNC(upd78k2_device::iram_map), this))
31-
, m_sfr_config("SFR", ENDIANNESS_LITTLE, 16, 8, 0, sfr_map)
30+
, m_iram_config("iram", ENDIANNESS_LITTLE, 16, iram_bits, 0, address_map_constructor(FUNC(upd78k2_device::iram_map), this))
31+
, m_sfr_config("sfr", ENDIANNESS_LITTLE, 16, 8, 0, sfr_map)
3232
, m_iram_addrmask((offs_t(1) << iram_bits) - 1)
3333
, m_pc(0)
3434
, m_ppc(0)

src/devices/cpu/upd78k/upd78k3.cpp

+2-2
Original file line numberDiff line numberDiff line change
@@ -27,8 +27,8 @@ DEFINE_DEVICE_TYPE(UPD78312, upd78312_device, "upd78312", "NEC uPD78312")
2727
upd78k3_device::upd78k3_device(const machine_config &mconfig, device_type type, const char *tag, device_t *owner, u32 clock, address_map_constructor mem_map, address_map_constructor sfr_map)
2828
: cpu_device(mconfig, type, tag, owner, clock)
2929
, m_program_config("program", ENDIANNESS_LITTLE, 8, 16, 0, mem_map)
30-
, m_iram_config("IRAM", ENDIANNESS_LITTLE, 16, 8, 0, address_map_constructor(FUNC(upd78k3_device::iram_map), this))
31-
, m_sfr_config("SFR", ENDIANNESS_LITTLE, 16, 8, 0, sfr_map)
30+
, m_iram_config("iram", ENDIANNESS_LITTLE, 16, 8, 0, address_map_constructor(FUNC(upd78k3_device::iram_map), this))
31+
, m_sfr_config("sfr", ENDIANNESS_LITTLE, 16, 8, 0, sfr_map)
3232
, m_iram(*this, "iram")
3333
, m_pc(0)
3434
, m_ppc(0)

src/devices/cpu/vt61/vt61.cpp

+1-1
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ vt61_cpu_device::vt61_cpu_device(const machine_config &mconfig, const char *tag,
2222
: cpu_device(mconfig, VT61_CPU, tag, owner, clock)
2323
, m_program_config("microprogram", ENDIANNESS_LITTLE, 16, 10, -1)
2424
, m_memory_config("memory", ENDIANNESS_LITTLE, 8, 16, 0)
25-
, m_idr_config("IDR", ENDIANNESS_LITTLE, 8, 6, 0)
25+
, m_idr_config("idr", ENDIANNESS_LITTLE, 8, 6, 0)
2626
, m_time_state(state::T1)
2727
, m_pc(0)
2828
, m_pc_mode(pc_mode::CLR)

0 commit comments

Comments
 (0)