diff --git a/scripts/build/makedep.py b/scripts/build/makedep.py
index be885f1c6b0..30c1d7018c4 100644
--- a/scripts/build/makedep.py
+++ b/scripts/build/makedep.py
@@ -5,7 +5,9 @@
from __future__ import with_statement
+import io
import sys
+
## to ignore include of emu.h add it always to list
files_included = ['src/emu/emu.h']
@@ -61,111 +63,111 @@ def add_rest_if_exists(root, srcfile,folder):
def parse_file_for_deps(root, srcfile, folder):
try:
- fp = open(root + srcfile, 'r')
+ fp = io.open(root + srcfile, 'r', encoding='utf-8')
except IOError:
return 1
in_comment = 0
linenum = 0
- for line in fp.readlines():
- content = ''
- linenum+=1
- srcptr = 0
- while srcptr < len(line):
- c = line[srcptr]
- srcptr+=1
- if ord(c)==13 or ord(c)==10:
- if ord(c)==13 and ord(line[srcptr])==10:
+ with fp:
+ for line in fp.readlines():
+ content = ''
+ linenum+=1
+ srcptr = 0
+ while srcptr < len(line):
+ c = line[srcptr]
+ srcptr+=1
+ if ord(c)==13 or ord(c)==10:
+ if ord(c)==13 and ord(line[srcptr])==10:
+ srcptr+=1
+ continue
+ if c==' ' or ord(c)==9:
+ continue
+ if in_comment==1 and c=='*' and line[srcptr]=='/' :
srcptr+=1
- continue
- if c==' ' or ord(c)==9:
- continue
- if in_comment==1 and c=='*' and line[srcptr]=='/' :
- srcptr+=1
- in_comment = 0
- continue
- if in_comment:
- continue
- if c=='/' and line[srcptr]=='*' :
- srcptr+=1
- in_comment = 1
- continue
- if c=='/' and line[srcptr]=='/' :
- break
- content += c
- content = content.strip()
- if len(content)>0:
- if content.startswith('#include'):
- name = content[8:]
- name = name.replace('"','')
- fullname = file_exists(root, name, folder,deps_include_dirs)
- if fullname in deps_files_included:
+ in_comment = 0
+ continue
+ if in_comment:
+ continue
+ if c=='/' and line[srcptr]=='*' :
+ srcptr+=1
+ in_comment = 1
+ continue
+ if c=='/' and line[srcptr]=='/' :
+ break
+ content += c
+ content = content.strip()
+ if len(content)>0:
+ if content.startswith('#include'):
+ name = content[8:]
+ name = name.replace('"','')
+ fullname = file_exists(root, name, folder,deps_include_dirs)
+ if fullname in deps_files_included:
+ continue
+ if fullname!='':
+ deps_files_included.append(fullname)
+ add_c_if_exists(root, fullname.replace('.h','.cpp'))
+ add_rest_if_exists(root, fullname,folder)
+ newfolder = fullname.rsplit('/', 1)[0] + '/'
+ parse_file_for_deps(root, fullname, newfolder)
continue
- if fullname!='':
- deps_files_included.append(fullname)
- add_c_if_exists(root, fullname.replace('.h','.cpp'))
- add_rest_if_exists(root, fullname,folder)
- newfolder = fullname.rsplit('/', 1)[0] + '/'
- parse_file_for_deps(root, fullname, newfolder)
- continue
- fp.close()
return 0
def parse_file(root, srcfile, folder):
try:
- fp = open(root + srcfile, 'r')
+ fp = io.open(root + srcfile, 'r', encoding='utf-8')
except IOError:
return 1
in_comment = 0
linenum = 0
- for line in fp.readlines():
- content = ''
- linenum+=1
- srcptr = 0
- while srcptr < len(line):
- c = line[srcptr]
- srcptr+=1
- if ord(c)==13 or ord(c)==10:
- if ord(c)==13 and ord(line[srcptr])==10:
+ with fp:
+ for line in fp.readlines():
+ content = ''
+ linenum+=1
+ srcptr = 0
+ while srcptr < len(line):
+ c = line[srcptr]
+ srcptr+=1
+ if ord(c)==13 or ord(c)==10:
+ if ord(c)==13 and ord(line[srcptr])==10:
+ srcptr+=1
+ continue
+ if c==' ' or ord(c)==9:
+ continue
+ if in_comment==1 and c=='*' and line[srcptr]=='/' :
srcptr+=1
- continue
- if c==' ' or ord(c)==9:
- continue
- if in_comment==1 and c=='*' and line[srcptr]=='/' :
- srcptr+=1
- in_comment = 0
- continue
- if in_comment:
- continue
- if c=='/' and line[srcptr]=='*' :
- srcptr+=1
- in_comment = 1
- continue
- if c=='/' and line[srcptr]=='/' :
- break
- content += c
- content = content.strip()
- if len(content)>0:
- if content.startswith('#include'):
- name = content[8:]
- name = name.replace('"','')
- fullname = file_exists(root, name, folder,include_dirs)
- if fullname in files_included:
+ in_comment = 0
+ continue
+ if in_comment:
+ continue
+ if c=='/' and line[srcptr]=='*' :
+ srcptr+=1
+ in_comment = 1
+ continue
+ if c=='/' and line[srcptr]=='/' :
+ break
+ content += c
+ content = content.strip()
+ if len(content)>0:
+ if content.startswith('#include'):
+ name = content[8:]
+ name = name.replace('"','')
+ fullname = file_exists(root, name, folder,include_dirs)
+ if fullname in files_included:
+ continue
+ if "src/lib/netlist/" in fullname:
+ continue
+ if fullname!='':
+ if fullname in mappings.keys():
+ if not(mappings[fullname] in components):
+ components.append(mappings[fullname])
+ files_included.append(fullname)
+ newfolder = fullname.rsplit('/', 1)[0] + '/'
+ parse_file(root, fullname, newfolder)
+ if (fullname.endswith('.h') and not("src/emu" in fullname) and not("src/devices" in fullname) and not("src/lib" in fullname) and not("src/osd" in fullname)):
+ parse_file_for_deps(root, fullname.replace('.h','.cpp'), newfolder)
+ elif fullname.endswith('.h'):
+ parse_file(root, fullname.replace('.h','.cpp'), newfolder)
continue
- if "src/lib/netlist/" in fullname:
- continue
- if fullname!='':
- if fullname in mappings.keys():
- if not(mappings[fullname] in components):
- components.append(mappings[fullname])
- files_included.append(fullname)
- newfolder = fullname.rsplit('/', 1)[0] + '/'
- parse_file(root, fullname, newfolder)
- if (fullname.endswith('.h') and not("src/emu" in fullname) and not("src/devices" in fullname) and not("src/lib" in fullname) and not("src/osd" in fullname)):
- parse_file_for_deps(root, fullname.replace('.h','.cpp'), newfolder)
- elif fullname.endswith('.h'):
- parse_file(root, fullname.replace('.h','.cpp'), newfolder)
- continue
- fp.close()
return 0
def parse_file_for_drivers(root, srcfile):
@@ -177,16 +179,17 @@ def parse_file_for_drivers(root, srcfile):
def parse_lua_file(srcfile):
try:
- fp = open(srcfile, 'r')
+ fp = io.open(srcfile, 'r', encoding='utf-8')
except IOError:
sys.stderr.write("Unable to open source file '%s'\n" % srcfile)
return 1
- for line in fp.readlines():
- content = line.strip()
- if len(content)>0:
- if content.startswith('--@'):
- name = content[3:]
- mappings[name.rsplit(',', 1)[0]] = name.rsplit(',', 1)[1]
+ with fp:
+ for line in fp.readlines():
+ content = line.strip()
+ if len(content)>0:
+ if content.startswith('--@'):
+ name = content[3:]
+ mappings[name.rsplit(',', 1)[0]] = name.rsplit(',', 1)[1]
return 0
if len(sys.argv) < 5:
diff --git a/scripts/minimaws/lib/assets/machine.js b/scripts/minimaws/lib/assets/machine.js
index d0774d02c0a..d40dca12be0 100644
--- a/scripts/minimaws/lib/assets/machine.js
+++ b/scripts/minimaws/lib/assets/machine.js
@@ -136,7 +136,7 @@ var fetch_bios_sets = (function ()
{
pending[device] = true;
var req = new XMLHttpRequest();
- req.open('GET', appurl + 'rpc/bios/' + device, true);
+ req.open('GET', appurl + 'rpc/bios/' + encodeURIComponent(device), true);
req.responseType = 'json';
req.onload =
function ()
@@ -171,7 +171,7 @@ var fetch_machine_flags = (function ()
{
pending[device] = true;
var req = new XMLHttpRequest();
- req.open('GET', appurl + 'rpc/flags/' + device, true);
+ req.open('GET', appurl + 'rpc/flags/' + encodeURIComponent(device), true);
req.responseType = 'json';
req.onload =
function ()
@@ -413,7 +413,7 @@ function make_slot_change_handler(name, slot, defaults, dfltbtn)
row.appendChild(document.createElement('th')).textContent = 'Short name:';
var link = row.appendChild(document.createElement('td')).appendChild(document.createElement('a'));
link.textContent = selection.device;
- link.setAttribute('href', appurl + 'machine/' + selection.device);
+ link.setAttribute('href', appurl + 'machine/' + encodeURIComponent(selection.device));
// if we have emulation flags, populate now, otherwise fetch asynchronously
if (!Object.prototype.hasOwnProperty.call(machine_flags, selection.device))
@@ -487,7 +487,7 @@ function fetch_slots(machine)
function make_request(device)
{
var req = new XMLHttpRequest();
- req.open('GET', appurl + 'rpc/slots/' + device, true);
+ req.open('GET', appurl + 'rpc/slots/' + encodeURIComponent(device), true);
req.responseType = 'json';
req.onload =
function ()
diff --git a/scripts/minimaws/lib/assets/romident.js b/scripts/minimaws/lib/assets/romident.js
index 6db7a7f221a..cbe1af89fdf 100644
--- a/scripts/minimaws/lib/assets/romident.js
+++ b/scripts/minimaws/lib/assets/romident.js
@@ -145,7 +145,7 @@ function get_machine_table(shortname, description)
var heading = div.appendChild(document.createElement('h2'));
var link = heading.appendChild(document.createElement('a'));
link.textContent = description;
- link.setAttribute('href', appurl + 'machine/' + shortname);
+ link.setAttribute('href', appurl + 'machine/' + encodeURIComponent(shortname));
var table = div.appendChild(document.createElement('table'));
machine_info[shortname] = table;
add_matches(table, matched_names, null);
diff --git a/scripts/minimaws/lib/wsgiserve.py b/scripts/minimaws/lib/wsgiserve.py
index ae5e8f69dd7..da9cbed0f36 100644
--- a/scripts/minimaws/lib/wsgiserve.py
+++ b/scripts/minimaws/lib/wsgiserve.py
@@ -13,13 +13,15 @@ import mimetypes
import os.path
import re
import sys
-import wsgiref.simple_server
+import urllib
import wsgiref.util
if sys.version_info >= (3, ):
import urllib.parse as urlparse
+ urlquote = urlparse.quote
else:
import urlparse
+ urlquote = urllib.quote
class HandlerBase(object):
@@ -96,10 +98,10 @@ class QueryPageHandler(HandlerBase):
self.dbcurs = app.dbconn.cursor()
def machine_href(self, shortname):
- return cgi.escape(urlparse.urljoin(self.application_uri, 'machine/%s' % (shortname, )), True)
+ return cgi.escape(urlparse.urljoin(self.application_uri, 'machine/%s' % (urlquote(shortname), )), True)
def sourcefile_href(self, sourcefile):
- return cgi.escape(urlparse.urljoin(self.application_uri, 'sourcefile/%s' % (sourcefile, )), True)
+ return cgi.escape(urlparse.urljoin(self.application_uri, 'sourcefile/%s' % (urlquote(sourcefile), )), True)
class MachineRpcHandlerBase(QueryPageHandler):
@@ -174,21 +176,21 @@ class MachineHandler(QueryPageHandler):
if parent:
yield (
'
Parent Machine: | %s (%s) |
\n' %
- (cgi.escape('%smachine/%s' % (self.application_uri, machine_info['cloneof']), True), cgi.escape(parent[1]), cgi.escape(machine_info['cloneof']))).encode('utf-8')
+ (self.machine_href(machine_info['cloneof']), cgi.escape(parent[1]), cgi.escape(machine_info['cloneof']))).encode('utf-8')
else:
yield (
' Parent Machine: | %s |
\n' %
- (cgi.escape('%smachine/%s' % (self.application_uri, machine_info['cloneof']), True), cgi.escape(machine_info['cloneof']))).encode('utf-8')
+ (self.machine_href(machine_info['cloneof']), cgi.escape(machine_info['cloneof']))).encode('utf-8')
if (machine_info['romof'] is not None) and (machine_info['romof'] != machine_info['cloneof']):
parent = self.dbcurs.listfull(machine_info['romof']).fetchone()
if parent:
yield (
' Parent ROM set: | %s (%s) |
\n' %
- (cgi.escape('%smachine/%s' % (self.application_uri, machine_info['romof']), True), cgi.escape(parent[1]), cgi.escape(machine_info['romof']))).encode('utf-8')
+ (self.machine_href(machine_info['romof']), cgi.escape(parent[1]), cgi.escape(machine_info['romof']))).encode('utf-8')
else:
yield (
' Parent Machine: | %s |
\n' %
- (cgi.escape('%smachine/%s' % (self.application_uri, machine_info['romof']), True), cgi.escape(machine_info['romof']))).encode('utf-8')
+ (self.machine_href(machine_info['romof']), cgi.escape(machine_info['romof']))).encode('utf-8')
unemulated = []
imperfect = []
for feature, status, overall in self.dbcurs.get_feature_flags(id):
@@ -404,10 +406,10 @@ class SourceFileHandler(QueryPageHandler):
uri = urlparse.urljoin(self.application_uri, 'sourcefile')
title = ''
for part in parts:
- uri = urlparse.urljoin(uri + '/', part)
+ uri = urlparse.urljoin(uri + '/', urlquote(part))
title += '{1}/'.format(cgi.escape(uri, True), cgi.escape(part))
if linkfinal:
- uri = urlparse.urljoin(uri + '/', final)
+ uri = urlparse.urljoin(uri + '/', urlquote(final))
return title + '{1}'.format(cgi.escape(uri, True), cgi.escape(final))
else:
return title + final
@@ -615,12 +617,3 @@ class MiniMawsApp(object):
def js_escape(self, str):
return self.JS_ESCAPE.sub('\\\\\\1', str).replace('\0', '\\0')
-
-
-def run_server(options):
- application = MiniMawsApp(options.database)
- server = wsgiref.simple_server.make_server(options.host, options.port, application)
- try:
- server.serve_forever()
- except KeyboardInterrupt:
- pass
diff --git a/scripts/minimaws/minimaws.py b/scripts/minimaws/minimaws.py
index e690fcd818f..5b657af5524 100755
--- a/scripts/minimaws/minimaws.py
+++ b/scripts/minimaws/minimaws.py
@@ -78,19 +78,9 @@
## and see dependent slots update. Required command-line arguments to
## produce the selected configuration are also displayed.
-import argparse
-import os
-import os.path
-import sys
-
-sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
-
-import lib.auxverbs
-import lib.lxparse
-import lib.wsgiserve
-
-
if __name__ == '__main__':
+ import argparse
+
parser = argparse.ArgumentParser()
parser.add_argument('--database', metavar='', default='minimaws.sqlite3', help='SQLite 3 info database file (defaults to minimaws.sqlite3)')
subparsers = parser.add_subparsers(title='commands', dest='command', metavar='')
@@ -123,6 +113,8 @@ if __name__ == '__main__':
group.add_argument('--file', metavar='', help='XML machine information file')
options = parser.parse_args()
+
+ import lib.auxverbs
if options.command == 'listfull':
lib.auxverbs.do_listfull(options)
elif options.command == 'listsource':
@@ -136,8 +128,14 @@ if __name__ == '__main__':
elif options.command == 'romident':
lib.auxverbs.do_romident(options)
elif options.command == 'serve':
- lib.wsgiserve.run_server(options)
+ import wsgiref.simple_server
+ import lib.wsgiserve
+ application = lib.wsgiserve.MiniMawsApp(options.database)
+ server = wsgiref.simple_server.make_server(options.host, options.port, application)
+ try:
+ server.serve_forever()
+ except KeyboardInterrupt:
+ pass
elif options.command == 'load':
+ import lib.lxparse
lib.lxparse.load_info(options)
-else:
- application = lib.wsgiserve.MiniMawsApp(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'minimaws.sqlite3'))
diff --git a/scripts/minimaws/minimaws.wsgi b/scripts/minimaws/minimaws.wsgi
new file mode 100644
index 00000000000..ff6d045419f
--- /dev/null
+++ b/scripts/minimaws/minimaws.wsgi
@@ -0,0 +1,15 @@
+#!/usr/bin/python
+##
+## license:BSD-3-Clause
+## copyright-holders:Vas Crabb
+##
+## Simple script for deploying minimaws with mod_wsgi.
+
+import os.path
+import sys
+
+sys.path.insert(0, os.path.dirname(os.path.abspath(__file__)))
+
+import lib.wsgiserve
+
+application = lib.wsgiserve.MiniMawsApp(os.path.join(os.path.dirname(os.path.abspath(__file__)), 'minimaws.sqlite3'))
diff --git a/src/devices/bus/ieee488/hp9895.cpp b/src/devices/bus/ieee488/hp9895.cpp
index 2e15e9d4279..89f64b75884 100644
--- a/src/devices/bus/ieee488/hp9895.cpp
+++ b/src/devices/bus/ieee488/hp9895.cpp
@@ -893,14 +893,14 @@ void hp9895_device::device_add_mconfig(machine_config &config)
m_cpu->refresh_cb().set(FUNC(hp9895_device::z80_m1_w));
PHI(config, m_phi, 0);
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_eoi_w));
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_dav_w));
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_nrfd_w));
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_ndac_w));
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_ifc_w));
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_srq_w));
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_atn_w));
- m_phi->signal_write_cb().set(FUNC(hp9895_device::phi_ren_w));
+ m_phi->eoi_write_cb().set(FUNC(hp9895_device::phi_eoi_w));
+ m_phi->dav_write_cb().set(FUNC(hp9895_device::phi_dav_w));
+ m_phi->nrfd_write_cb().set(FUNC(hp9895_device::phi_nrfd_w));
+ m_phi->ndac_write_cb().set(FUNC(hp9895_device::phi_ndac_w));
+ m_phi->ifc_write_cb().set(FUNC(hp9895_device::phi_ifc_w));
+ m_phi->srq_write_cb().set(FUNC(hp9895_device::phi_srq_w));
+ m_phi->atn_write_cb().set(FUNC(hp9895_device::phi_atn_w));
+ m_phi->ren_write_cb().set(FUNC(hp9895_device::phi_ren_w));
m_phi->dio_read_cb().set(FUNC(hp9895_device::phi_dio_r));
m_phi->dio_write_cb().set(FUNC(hp9895_device::phi_dio_w));
m_phi->int_write_cb().set(FUNC(hp9895_device::phi_int_w));
diff --git a/src/devices/machine/phi.h b/src/devices/machine/phi.h
index c75fbe08427..5e9eb0782e3 100644
--- a/src/devices/machine/phi.h
+++ b/src/devices/machine/phi.h
@@ -19,7 +19,8 @@ public:
phi_device(const machine_config &mconfig, const char *tag, device_t *owner, uint32_t clock);
// See ieee488.h
- enum phi_488_signal_t {
+ enum phi_488_signal_t
+ {
PHI_488_EOI,
PHI_488_DAV,
PHI_488_NRFD,
@@ -35,7 +36,14 @@ public:
auto dio_read_cb() { return m_dio_read_func.bind(); }
auto dio_write_cb() { return m_dio_write_func.bind(); }
// Set write callbacks to access uniline signals on IEEE-488
- template auto signal_write_cb() { return m_signal_wr_fns[ Signal ].bind(); }
+ auto eoi_write_cb() { return m_signal_wr_fns[ PHI_488_EOI ].bind(); }
+ auto dav_write_cb() { return m_signal_wr_fns[ PHI_488_DAV ].bind(); }
+ auto nrfd_write_cb() { return m_signal_wr_fns[ PHI_488_NRFD ].bind(); }
+ auto ndac_write_cb() { return m_signal_wr_fns[ PHI_488_NDAC ].bind(); }
+ auto ifc_write_cb() { return m_signal_wr_fns[ PHI_488_IFC ].bind(); }
+ auto srq_write_cb() { return m_signal_wr_fns[ PHI_488_SRQ ].bind(); }
+ auto atn_write_cb() { return m_signal_wr_fns[ PHI_488_ATN ].bind(); }
+ auto ren_write_cb() { return m_signal_wr_fns[ PHI_488_REN ].bind(); }
// Set write callback for INT signal
auto int_write_cb() { return m_int_write_func.bind(); }
// Set write callback for DMARQ signal
diff --git a/src/mame/drivers/fromance.cpp b/src/mame/drivers/fromance.cpp
index 184a0416983..ecc2238291b 100644
--- a/src/mame/drivers/fromance.cpp
+++ b/src/mame/drivers/fromance.cpp
@@ -947,11 +947,11 @@ void fromance_state::nekkyoku(machine_config &config)
void fromance_state::idolmj(machine_config &config)
{
/* basic machine hardware */
- Z80(config, m_maincpu, XTAL(12'000'000) / 2); /* 6.00 Mhz ? */
+ Z80(config, m_maincpu, 12_MHz_XTAL / 2); /* 6.00 Mhz ? */
m_maincpu->set_addrmap(AS_PROGRAM, &fromance_state::fromance_main_map);
m_maincpu->set_vblank_int("screen", FUNC(fromance_state::irq0_line_hold));
- Z80(config, m_subcpu, XTAL(12'000'000) / 2); /* 6.00 Mhz ? */
+ Z80(config, m_subcpu, 12_MHz_XTAL / 2); /* 6.00 Mhz ? */
m_subcpu->set_addrmap(AS_PROGRAM, &fromance_state::fromance_sub_map);
m_subcpu->set_addrmap(AS_IO, &fromance_state::idolmj_sub_io_map);
@@ -980,7 +980,7 @@ void fromance_state::idolmj(machine_config &config)
/* sound hardware */
SPEAKER(config, "mono").front_center();
- YM2149(config, "aysnd", 12000000/6).add_route(ALL_OUTPUTS, "mono", 0.15);
+ YM2149(config, "aysnd", 12_MHz_XTAL / 6).add_route(ALL_OUTPUTS, "mono", 0.15);
MSM5205(config, m_msm, 384000);
m_msm->vck_legacy_callback().set(FUNC(fromance_state::fromance_adpcm_int)); /* IRQ handler */
diff --git a/src/mame/drivers/hp64k.cpp b/src/mame/drivers/hp64k.cpp
index 7dd4ce3f03a..f8aa8c9c6d5 100644
--- a/src/mame/drivers/hp64k.cpp
+++ b/src/mame/drivers/hp64k.cpp
@@ -1456,14 +1456,14 @@ void hp64k_state::hp64k(machine_config &config)
m_phi->sys_cntrl_read_cb().set(FUNC(hp64k_state::hp64k_phi_sys_ctrl_r));
m_phi->dio_read_cb().set(IEEE488_TAG, FUNC(ieee488_device::dio_r));
m_phi->dio_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_dio_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_eoi_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_dav_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_nrfd_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_ndac_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_ifc_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_srq_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_atn_w));
- m_phi->signal_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_ren_w));
+ m_phi->eoi_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_eoi_w));
+ m_phi->dav_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_dav_w));
+ m_phi->nrfd_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_nrfd_w));
+ m_phi->ndac_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_ndac_w));
+ m_phi->ifc_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_ifc_w));
+ m_phi->srq_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_srq_w));
+ m_phi->atn_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_atn_w));
+ m_phi->ren_write_cb().set(IEEE488_TAG, FUNC(ieee488_device::host_ren_w));
ieee488_device &ieee(IEEE488(config, IEEE488_TAG));
ieee.eoi_callback().set(m_phi, FUNC(phi_device::eoi_w));
diff --git a/src/mame/drivers/scramble.cpp b/src/mame/drivers/scramble.cpp
index 31aec21692a..dbb113d83d4 100644
--- a/src/mame/drivers/scramble.cpp
+++ b/src/mame/drivers/scramble.cpp
@@ -1464,12 +1464,10 @@ void scramble_state::hotshock(machine_config &config)
m_palette->set_init(FUNC(scramble_state::galaxold_palette));
MCFG_VIDEO_START_OVERRIDE(scramble_state,pisces)
- subdevice("8910.1")->reset_routes();
- subdevice("8910.1")->add_route(ALL_OUTPUTS, "mono", 0.33);
+ subdevice("8910.1")->reset_routes().add_route(ALL_OUTPUTS, "mono", 0.33);
subdevice("8910.2")->port_a_read_callback().set(FUNC(scramble_state::hotshock_soundlatch_r));
- subdevice("8910.2")->reset_routes();
- subdevice("8910.2")->add_route(ALL_OUTPUTS, "mono", 0.33);
+ subdevice("8910.2")->reset_routes().add_route(ALL_OUTPUTS, "mono", 0.33);
}
void scramble_state::cavelon(machine_config &config)
@@ -1514,8 +1512,7 @@ void scramble_state::triplep(machine_config &config)
/* sound hardware */
subdevice("8910.1")->set_clock(18432000/12); // triple punch/knock out ay clock is 1.535MHz, derived from main cpu xtal; verified on hardware
- subdevice("8910.1")->reset_routes();
- subdevice("8910.1")->add_route(ALL_OUTPUTS, "mono", 1.0);
+ subdevice("8910.1")->reset_routes().add_route(ALL_OUTPUTS, "mono", 1.0);
config.device_remove("8910.2");
}
diff --git a/src/mame/drivers/subhuntr.cpp b/src/mame/drivers/subhuntr.cpp
index e657c837d4c..1871e153a1a 100644
--- a/src/mame/drivers/subhuntr.cpp
+++ b/src/mame/drivers/subhuntr.cpp
@@ -153,9 +153,9 @@ void subhuntr_state::subhuntr(machine_config &config)
m_maincpu->set_vblank_int("screen", FUNC(subhuntr_state::subhuntr_interrupt));
m_maincpu->sense_handler().set("screen", FUNC(screen_device::vblank));
- s2636_device &s2636(S2636(config, "s2636", 0));
- s2636.set_offsets(3, -21);
- s2636.add_route(ALL_OUTPUTS, "mono", 0.10);
+ //s2636_device &s2636(S2636(config, "s2636", 0));
+ //s2636.set_offsets(3, -21);
+ //s2636.add_route(ALL_OUTPUTS, "mono", 0.10);
/* video hardware */
screen_device &screen(SCREEN(config, "screen", SCREEN_TYPE_RASTER));
diff --git a/src/mame/drivers/wallc.cpp b/src/mame/drivers/wallc.cpp
index 238e9aed912..2e2f738e2e0 100644
--- a/src/mame/drivers/wallc.cpp
+++ b/src/mame/drivers/wallc.cpp
@@ -556,8 +556,7 @@ void wallc_state::unkitpkr(machine_config &config)
/* sound hardware */
subdevice("aysnd")->port_a_read_callback().set_ioport("DSW2");
- subdevice("aysnd")->reset_routes();
- subdevice("aysnd")->add_route(ALL_OUTPUTS, "mono", 0.50);
+ subdevice("aysnd")->reset_routes().add_route(ALL_OUTPUTS, "mono", 0.50);
}
void wallc_state::sidampkr(machine_config &config)