summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author AJR <ajrhacker@users.noreply.github.com>2022-01-03 19:52:05 -0500
committer AJR <ajrhacker@users.noreply.github.com>2022-01-03 19:52:10 -0500
commit97de6a1cf2db4eb57884daaff29e7d0c935dd671 (patch)
tree3ceb8f6d33a9785f84112f4c6bfad52714c4cf03
parente78197debeeb322dccd1afa67c06e34db5338582 (diff)
Future-proofing by using correct #include for SOFTWARE_LIST device
-rw-r--r--src/devices/bus/archimedes/podule/rom.cpp1
-rw-r--r--src/devices/bus/bml3/bml3mp1802.cpp2
-rw-r--r--src/devices/bus/bml3/bml3mp1805.cpp2
-rw-r--r--src/devices/bus/cgenie/expansion/floppy.cpp2
-rw-r--r--src/devices/bus/cpc/ddi1.cpp2
-rw-r--r--src/devices/bus/msx_cart/disk.cpp2
-rw-r--r--src/devices/bus/psx/gamebooster.cpp2
-rw-r--r--src/devices/bus/saitek_osa/maestro.cpp2
-rw-r--r--src/devices/bus/saitek_osa/maestroa.cpp2
-rw-r--r--src/devices/bus/sega8/mgear.cpp2
-rw-r--r--src/devices/bus/sega8/rom.cpp1
-rw-r--r--src/devices/bus/sg1000_exp/sk1100.cpp2
-rw-r--r--src/devices/bus/spectrum/intf1.cpp1
-rw-r--r--src/devices/bus/spectrum/intf2.cpp1
-rw-r--r--src/devices/bus/spectrum/mgt.cpp1
-rw-r--r--src/devices/bus/spectrum/opus.cpp1
-rw-r--r--src/devices/bus/spectrum/wafa.cpp1
-rw-r--r--src/devices/bus/svi3x8/expander/sv603.cpp2
-rw-r--r--src/devices/bus/svi3x8/slot/sv801.cpp2
-rw-r--r--src/devices/bus/vboy/slot.cpp1
-rw-r--r--src/mame/drivers/a2600.cpp2
-rw-r--r--src/mame/drivers/a7800.cpp2
-rw-r--r--src/mame/drivers/abc1600.cpp2
-rw-r--r--src/mame/drivers/abc80.cpp2
-rw-r--r--src/mame/drivers/abc80x.cpp1
-rw-r--r--src/mame/drivers/aci_ggm.cpp2
-rw-r--r--src/mame/drivers/adam.cpp2
-rw-r--r--src/mame/drivers/advision.cpp2
-rw-r--r--src/mame/drivers/aim65.cpp2
-rw-r--r--src/mame/drivers/alphatro.cpp2
-rw-r--r--src/mame/drivers/altos5.cpp2
-rw-r--r--src/mame/drivers/ampro.cpp2
-rw-r--r--src/mame/drivers/amstr_pc.cpp2
-rw-r--r--src/mame/drivers/apc.cpp2
-rw-r--r--src/mame/drivers/apf.cpp2
-rw-r--r--src/mame/drivers/apogee.cpp1
-rw-r--r--src/mame/drivers/apple1.cpp2
-rw-r--r--src/mame/drivers/apple2.cpp2
-rw-r--r--src/mame/drivers/apple2e.cpp2
-rw-r--r--src/mame/drivers/apple2gs.cpp2
-rw-r--r--src/mame/drivers/apple3.cpp2
-rw-r--r--src/mame/drivers/applix.cpp1
-rw-r--r--src/mame/drivers/apricot.cpp2
-rw-r--r--src/mame/drivers/apxen.cpp1
-rw-r--r--src/mame/drivers/aquarius.cpp2
-rw-r--r--src/mame/drivers/arcadia.cpp2
-rw-r--r--src/mame/drivers/astrohome.cpp2
-rw-r--r--src/mame/drivers/atari400.cpp2
-rw-r--r--src/mame/drivers/atarist.cpp2
-rw-r--r--src/mame/drivers/atom.cpp1
-rw-r--r--src/mame/drivers/attache.cpp2
-rw-r--r--src/mame/drivers/aussiebyte.cpp1
-rw-r--r--src/mame/drivers/ave_arb.cpp2
-rw-r--r--src/mame/drivers/b2m.cpp1
-rw-r--r--src/mame/drivers/bandai_design_master.cpp1
-rw-r--r--src/mame/drivers/basf7100.cpp1
-rw-r--r--src/mame/drivers/bbcbc.cpp2
-rw-r--r--src/mame/drivers/bk.cpp1
-rw-r--r--src/mame/drivers/bw12.cpp2
-rw-r--r--src/mame/drivers/bw2.cpp2
-rw-r--r--src/mame/drivers/c128.cpp2
-rw-r--r--src/mame/drivers/c2color.cpp2
-rw-r--r--src/mame/drivers/c64.cpp2
-rw-r--r--src/mame/drivers/camplynx.cpp1
-rw-r--r--src/mame/drivers/casloopy.cpp2
-rw-r--r--src/mame/drivers/cbm2.cpp2
-rw-r--r--src/mame/drivers/cc40.cpp2
-rw-r--r--src/mame/drivers/cgenie.cpp2
-rw-r--r--src/mame/drivers/channelf.cpp2
-rw-r--r--src/mame/drivers/chessmstdm.cpp2
-rw-r--r--src/mame/drivers/clickstart.cpp2
-rw-r--r--src/mame/drivers/coco12.cpp2
-rw-r--r--src/mame/drivers/coco3.cpp2
-rw-r--r--src/mame/drivers/coleco.cpp2
-rw-r--r--src/mame/drivers/compc.cpp1
-rw-r--r--src/mame/drivers/compis.cpp1
-rw-r--r--src/mame/drivers/compucolor.cpp2
-rw-r--r--src/mame/drivers/comx35.cpp1
-rw-r--r--src/mame/drivers/conchess.cpp1
-rw-r--r--src/mame/drivers/crvision.cpp1
-rw-r--r--src/mame/drivers/d6800.cpp1
-rw-r--r--src/mame/drivers/dai.cpp1
-rw-r--r--src/mame/drivers/dgn_beta.cpp1
-rw-r--r--src/mame/drivers/dim68k.cpp2
-rw-r--r--src/mame/drivers/dps1.cpp2
-rw-r--r--src/mame/drivers/dragon.cpp1
-rw-r--r--src/mame/drivers/easy_karaoke.cpp2
-rw-r--r--src/mame/drivers/ec184x.cpp2
-rw-r--r--src/mame/drivers/einstein.cpp2
-rw-r--r--src/mame/drivers/elan_eu3a05.cpp1
-rw-r--r--src/mame/drivers/electron.cpp2
-rw-r--r--src/mame/drivers/elwro800.cpp1
-rw-r--r--src/mame/drivers/ep64.cpp2
-rw-r--r--src/mame/drivers/eti660.cpp1
-rw-r--r--src/mame/drivers/eurocom2.cpp1
-rw-r--r--src/mame/drivers/europc.cpp1
-rw-r--r--src/mame/drivers/excali64.cpp1
-rw-r--r--src/mame/drivers/exelv.cpp2
-rw-r--r--src/mame/drivers/fidel_as12.cpp2
-rw-r--r--src/mame/drivers/fidel_eag68k.cpp2
-rw-r--r--src/mame/drivers/fidel_elite.cpp2
-rw-r--r--src/mame/drivers/fidel_msc.cpp2
-rw-r--r--src/mame/drivers/fidel_sc12.cpp2
-rw-r--r--src/mame/drivers/fidel_sc6.cpp2
-rw-r--r--src/mame/drivers/fidel_sc9.cpp2
-rw-r--r--src/mame/drivers/fm7.cpp2
-rw-r--r--src/mame/drivers/galaxy.cpp1
-rw-r--r--src/mame/drivers/gamate.cpp2
-rw-r--r--src/mame/drivers/gamecom.cpp2
-rw-r--r--src/mame/drivers/gameking.cpp2
-rw-r--r--src/mame/drivers/gamepock.cpp2
-rw-r--r--src/mame/drivers/gb.cpp2
-rw-r--r--src/mame/drivers/gba.cpp2
-rw-r--r--src/mame/drivers/generalplus_gpl16250_nand.cpp1
-rw-r--r--src/mame/drivers/generalplus_gpl16250_spi.cpp1
-rw-r--r--src/mame/drivers/generalplus_gpl32612.cpp2
-rw-r--r--src/mame/drivers/geniusiq.cpp2
-rw-r--r--src/mame/drivers/genpc.cpp2
-rw-r--r--src/mame/drivers/gimix.cpp2
-rw-r--r--src/mame/drivers/gmaster.cpp2
-rw-r--r--src/mame/drivers/guab.cpp2
-rw-r--r--src/mame/drivers/hec2hrp.cpp1
-rw-r--r--src/mame/drivers/hh_tms1k.cpp2
-rw-r--r--src/mame/drivers/horizon.cpp2
-rw-r--r--src/mame/drivers/ht68k.cpp2
-rw-r--r--src/mame/drivers/hx20.cpp2
-rw-r--r--src/mame/drivers/i7000.cpp2
-rw-r--r--src/mame/drivers/ibm6580.cpp1
-rw-r--r--src/mame/drivers/ibmpc.cpp2
-rw-r--r--src/mame/drivers/ibmpcjr.cpp2
-rw-r--r--src/mame/drivers/innotv_innotabmax.cpp2
-rw-r--r--src/mame/drivers/intellect02.cpp2
-rw-r--r--src/mame/drivers/intv.cpp2
-rw-r--r--src/mame/drivers/iq151.cpp2
-rw-r--r--src/mame/drivers/iqunlim.cpp1
-rw-r--r--src/mame/drivers/itt3030.cpp1
-rw-r--r--src/mame/drivers/jaguar.cpp2
-rw-r--r--src/mame/drivers/juku.cpp1
-rw-r--r--src/mame/drivers/jupace.cpp2
-rw-r--r--src/mame/drivers/kaypro.cpp2
-rw-r--r--src/mame/drivers/kc.cpp2
-rw-r--r--src/mame/drivers/kdt6.cpp2
-rw-r--r--src/mame/drivers/kim1.cpp1
-rw-r--r--src/mame/drivers/kyocera.cpp1
-rw-r--r--src/mame/drivers/leapfrog_iquest.cpp2
-rw-r--r--src/mame/drivers/leapfrog_leappad.cpp2
-rw-r--r--src/mame/drivers/leapfrog_leapster_explorer.cpp2
-rw-r--r--src/mame/drivers/leapster.cpp2
-rw-r--r--src/mame/drivers/lisa.cpp2
-rw-r--r--src/mame/drivers/lk3000.cpp1
-rw-r--r--src/mame/drivers/lnw80.cpp1
-rw-r--r--src/mame/drivers/lviv.cpp1
-rw-r--r--src/mame/drivers/lynx.cpp2
-rw-r--r--src/mame/drivers/m20.cpp2
-rw-r--r--src/mame/drivers/m24.cpp2
-rw-r--r--src/mame/drivers/m5.cpp2
-rw-r--r--src/mame/drivers/mac.cpp2
-rw-r--r--src/mame/drivers/macpdm.cpp2
-rw-r--r--src/mame/drivers/macprtb.cpp2
-rw-r--r--src/mame/drivers/macpwrbk030.cpp2
-rw-r--r--src/mame/drivers/macquadra700.cpp2
-rw-r--r--src/mame/drivers/magiceyes_pollux_vr3520f.cpp2
-rw-r--r--src/mame/drivers/mbc200.cpp2
-rw-r--r--src/mame/drivers/mbc55x.cpp2
-rw-r--r--src/mame/drivers/mbee.cpp1
-rw-r--r--src/mame/drivers/mc10.cpp2
-rw-r--r--src/mame/drivers/mc1000.cpp2
-rw-r--r--src/mame/drivers/mc1502.cpp2
-rw-r--r--src/mame/drivers/mephisto_mm1.cpp2
-rw-r--r--src/mame/drivers/mephisto_mm2.cpp2
-rw-r--r--src/mame/drivers/mephisto_smondial.cpp2
-rw-r--r--src/mame/drivers/meritum.cpp1
-rw-r--r--src/mame/drivers/microdec.cpp2
-rw-r--r--src/mame/drivers/microtan.cpp2
-rw-r--r--src/mame/drivers/microvsn.cpp2
-rw-r--r--src/mame/drivers/mikro80.cpp1
-rw-r--r--src/mame/drivers/mikromik.cpp2
-rw-r--r--src/mame/drivers/mikrosha.cpp1
-rw-r--r--src/mame/drivers/mindset.cpp1
-rw-r--r--src/mame/drivers/monon_color.cpp1
-rw-r--r--src/mame/drivers/mpz80.cpp2
-rw-r--r--src/mame/drivers/msx.cpp2
-rw-r--r--src/mame/drivers/mtx.cpp2
-rw-r--r--src/mame/drivers/myb3k.cpp2
-rw-r--r--src/mame/drivers/myvision.cpp2
-rw-r--r--src/mame/drivers/mz2000.cpp2
-rw-r--r--src/mame/drivers/mz2500.cpp2
-rw-r--r--src/mame/drivers/mz700.cpp2
-rw-r--r--src/mame/drivers/nascom1.cpp2
-rw-r--r--src/mame/drivers/neogeo.cpp2
-rw-r--r--src/mame/drivers/nes.cpp2
-rw-r--r--src/mame/drivers/ngp.cpp2
-rw-r--r--src/mame/drivers/novag_const.cpp2
-rw-r--r--src/mame/drivers/octopus.cpp2
-rw-r--r--src/mame/drivers/odyssey2.cpp2
-rw-r--r--src/mame/drivers/olivpc1.cpp2
-rw-r--r--src/mame/drivers/ondra.cpp1
-rw-r--r--src/mame/drivers/orao.cpp2
-rw-r--r--src/mame/drivers/orion.cpp1
-rw-r--r--src/mame/drivers/osbexec.cpp2
-rw-r--r--src/mame/drivers/osborne1.cpp2
-rw-r--r--src/mame/drivers/partner.cpp1
-rw-r--r--src/mame/drivers/pasogo.cpp2
-rw-r--r--src/mame/drivers/pasopia.cpp2
-rw-r--r--src/mame/drivers/pb1000.cpp2
-rw-r--r--src/mame/drivers/pc.cpp2
-rw-r--r--src/mame/drivers/pc1512.cpp2
-rw-r--r--src/mame/drivers/pc2000.cpp2
-rw-r--r--src/mame/drivers/pc6001.cpp2
-rw-r--r--src/mame/drivers/pc8001.cpp1
-rw-r--r--src/mame/drivers/pc8801.cpp1
-rw-r--r--src/mame/drivers/pc88va.cpp2
-rw-r--r--src/mame/drivers/pcw.cpp2
-rw-r--r--src/mame/drivers/pcw16.cpp2
-rw-r--r--src/mame/drivers/pdp1.cpp1
-rw-r--r--src/mame/drivers/pecom.cpp1
-rw-r--r--src/mame/drivers/pegasus.cpp2
-rw-r--r--src/mame/drivers/pencil2.cpp2
-rw-r--r--src/mame/drivers/pentagon.cpp2
-rw-r--r--src/mame/drivers/pet.cpp2
-rw-r--r--src/mame/drivers/phc25.cpp1
-rw-r--r--src/mame/drivers/picno.cpp1
-rw-r--r--src/mame/drivers/pk8020.cpp2
-rw-r--r--src/mame/drivers/plus4.cpp2
-rw-r--r--src/mame/drivers/pmd85.cpp1
-rw-r--r--src/mame/drivers/pockchal.cpp2
-rw-r--r--src/mame/drivers/poisk1.cpp2
-rw-r--r--src/mame/drivers/pokemini.cpp2
-rw-r--r--src/mame/drivers/poly.cpp2
-rw-r--r--src/mame/drivers/prestige.cpp2
-rw-r--r--src/mame/drivers/prof180x.cpp2
-rw-r--r--src/mame/drivers/prof80.cpp2
-rw-r--r--src/mame/drivers/proteus.cpp2
-rw-r--r--src/mame/drivers/ptcsol.cpp2
-rw-r--r--src/mame/drivers/pubint_storyreader.cpp2
-rw-r--r--src/mame/drivers/pv1000.cpp2
-rw-r--r--src/mame/drivers/pv2000.cpp2
-rw-r--r--src/mame/drivers/px4.cpp2
-rw-r--r--src/mame/drivers/px8.cpp2
-rw-r--r--src/mame/drivers/pyl601.cpp2
-rw-r--r--src/mame/drivers/ql.cpp2
-rw-r--r--src/mame/drivers/qx10.cpp2
-rw-r--r--src/mame/drivers/radio86.cpp1
-rw-r--r--src/mame/drivers/radionic.cpp1
-rw-r--r--src/mame/drivers/roland_cm32p.cpp1
-rw-r--r--src/mame/drivers/roland_r8.cpp1
-rw-r--r--src/mame/drivers/rx78.cpp2
-rw-r--r--src/mame/drivers/sag.cpp2
-rw-r--r--src/mame/drivers/sage2.cpp2
-rw-r--r--src/mame/drivers/saitek_corona.cpp2
-rw-r--r--src/mame/drivers/saitek_schess.cpp1
-rw-r--r--src/mame/drivers/saitek_simultano.cpp2
-rw-r--r--src/mame/drivers/saitek_stratos.cpp2
-rw-r--r--src/mame/drivers/saitek_superstar.cpp2
-rw-r--r--src/mame/drivers/samcoupe.cpp2
-rw-r--r--src/mame/drivers/sbrain.cpp1
-rw-r--r--src/mame/drivers/scv.cpp2
-rw-r--r--src/mame/drivers/sdk85.cpp2
-rw-r--r--src/mame/drivers/sega_beena.cpp2
-rw-r--r--src/mame/drivers/sg1000.cpp2
-rw-r--r--src/mame/drivers/smc777.cpp2
-rw-r--r--src/mame/drivers/sms.cpp2
-rw-r--r--src/mame/drivers/snes.cpp2
-rw-r--r--src/mame/drivers/socrates.cpp2
-rw-r--r--src/mame/drivers/sorcerer.cpp2
-rw-r--r--src/mame/drivers/spc1000.cpp2
-rw-r--r--src/mame/drivers/spc1500.cpp2
-rw-r--r--src/mame/drivers/special.cpp1
-rw-r--r--src/mame/drivers/specpls3.cpp2
-rw-r--r--src/mame/drivers/spectrum.cpp2
-rw-r--r--src/mame/drivers/spg110.cpp2
-rw-r--r--src/mame/drivers/spg2xx_ican.cpp1
-rw-r--r--src/mame/drivers/spg2xx_jakks_gkr.cpp1
-rw-r--r--src/mame/drivers/spg2xx_smarttv.cpp1
-rw-r--r--src/mame/drivers/spg2xx_telestory.cpp1
-rw-r--r--src/mame/drivers/spg2xx_tvgogo.cpp1
-rw-r--r--src/mame/drivers/spg2xx_vii.cpp1
-rw-r--r--src/mame/drivers/squale.cpp2
-rw-r--r--src/mame/drivers/ssem.cpp1
-rw-r--r--src/mame/drivers/storio.cpp2
-rw-r--r--src/mame/drivers/studio2.cpp2
-rw-r--r--src/mame/drivers/super6.cpp2
-rw-r--r--src/mame/drivers/super80.cpp2
-rw-r--r--src/mame/drivers/supracan.cpp2
-rw-r--r--src/mame/drivers/sv8000.cpp2
-rw-r--r--src/mame/drivers/svi318.cpp2
-rw-r--r--src/mame/drivers/svision.cpp2
-rw-r--r--src/mame/drivers/svmu.cpp2
-rw-r--r--src/mame/drivers/sym1.cpp1
-rw-r--r--src/mame/drivers/tandy1t.cpp2
-rw-r--r--src/mame/drivers/tek405x.cpp2
-rw-r--r--src/mame/drivers/thomson.cpp2
-rw-r--r--src/mame/drivers/ti74.cpp2
-rw-r--r--src/mame/drivers/ti99_4x.cpp2
-rw-r--r--src/mame/drivers/ti99_8.cpp2
-rw-r--r--src/mame/drivers/tiki100.cpp2
-rw-r--r--src/mame/drivers/timex.cpp2
-rw-r--r--src/mame/drivers/tispeak.cpp2
-rw-r--r--src/mame/drivers/tomy_princ.cpp1
-rw-r--r--src/mame/drivers/tourvis.cpp2
-rw-r--r--src/mame/drivers/trs80.cpp1
-rw-r--r--src/mame/drivers/trs80m2.cpp2
-rw-r--r--src/mame/drivers/trs80m3.cpp1
-rw-r--r--src/mame/drivers/tutor.cpp2
-rw-r--r--src/mame/drivers/tvc.cpp2
-rw-r--r--src/mame/drivers/unichamp.cpp2
-rw-r--r--src/mame/drivers/ut88.cpp1
-rw-r--r--src/mame/drivers/uzebox.cpp2
-rw-r--r--src/mame/drivers/vboy.cpp2
-rw-r--r--src/mame/drivers/vc4000.cpp2
-rw-r--r--src/mame/drivers/vector06.cpp1
-rw-r--r--src/mame/drivers/vectrex.cpp2
-rw-r--r--src/mame/drivers/vg5k.cpp2
-rw-r--r--src/mame/drivers/vgmplay.cpp1
-rw-r--r--src/mame/drivers/vic10.cpp2
-rw-r--r--src/mame/drivers/vic20.cpp2
-rw-r--r--src/mame/drivers/victor9k.cpp2
-rw-r--r--src/mame/drivers/vidbrain.cpp2
-rw-r--r--src/mame/drivers/vip.cpp2
-rw-r--r--src/mame/drivers/vixen.cpp2
-rw-r--r--src/mame/drivers/vsmile.cpp2
-rw-r--r--src/mame/drivers/vsmileb.cpp2
-rw-r--r--src/mame/drivers/vtech1.cpp1
-rw-r--r--src/mame/drivers/vtech2.cpp1
-rw-r--r--src/mame/drivers/vtech_innotab.cpp2
-rw-r--r--src/mame/drivers/wangpc.cpp2
-rw-r--r--src/mame/drivers/wicat.cpp1
-rw-r--r--src/mame/drivers/wizard.cpp2
-rw-r--r--src/mame/drivers/wswan.cpp2
-rw-r--r--src/mame/drivers/x07.cpp2
-rw-r--r--src/mame/drivers/x1.cpp2
-rw-r--r--src/mame/drivers/xavix.cpp1
-rw-r--r--src/mame/drivers/z1013.cpp1
-rw-r--r--src/mame/drivers/z80clock.cpp2
-rw-r--r--src/mame/drivers/z80ne.cpp2
-rw-r--r--src/mame/drivers/z88.cpp2
-rw-r--r--src/mame/drivers/zorba.cpp2
-rw-r--r--src/mame/machine/apollo.cpp2
338 files changed, 346 insertions, 241 deletions
diff --git a/src/devices/bus/archimedes/podule/rom.cpp b/src/devices/bus/archimedes/podule/rom.cpp
index 94c55746ee0..be073229e5e 100644
--- a/src/devices/bus/archimedes/podule/rom.cpp
+++ b/src/devices/bus/archimedes/podule/rom.cpp
@@ -14,6 +14,7 @@
#include "bus/generic/carts.h"
#include "bus/generic/ram.h"
#include "bus/generic/rom.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/devices/bus/bml3/bml3mp1802.cpp b/src/devices/bus/bml3/bml3mp1802.cpp
index 707a0254e81..61900cd020f 100644
--- a/src/devices/bus/bml3/bml3mp1802.cpp
+++ b/src/devices/bus/bml3/bml3mp1802.cpp
@@ -12,6 +12,8 @@
#include "emu.h"
#include "bml3mp1802.h"
+#include "softlist_dev.h"
+
/***************************************************************************
PARAMETERS
diff --git a/src/devices/bus/bml3/bml3mp1805.cpp b/src/devices/bus/bml3/bml3mp1805.cpp
index 9d7e0823388..78b58782d6e 100644
--- a/src/devices/bus/bml3/bml3mp1805.cpp
+++ b/src/devices/bus/bml3/bml3mp1805.cpp
@@ -13,6 +13,8 @@
#include "emu.h"
#include "bml3mp1805.h"
+#include "softlist_dev.h"
+
/***************************************************************************
PARAMETERS
diff --git a/src/devices/bus/cgenie/expansion/floppy.cpp b/src/devices/bus/cgenie/expansion/floppy.cpp
index ee914179d10..a97c3d46e66 100644
--- a/src/devices/bus/cgenie/expansion/floppy.cpp
+++ b/src/devices/bus/cgenie/expansion/floppy.cpp
@@ -14,7 +14,7 @@
#include "floppy.h"
#include "formats/cgenie_dsk.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//**************************************************************************
// CONSTANTS/MACROS
diff --git a/src/devices/bus/cpc/ddi1.cpp b/src/devices/bus/cpc/ddi1.cpp
index c80299c8f88..7deaa49eabd 100644
--- a/src/devices/bus/cpc/ddi1.cpp
+++ b/src/devices/bus/cpc/ddi1.cpp
@@ -6,7 +6,7 @@
#include "emu.h"
#include "ddi1.h"
-#include "softlist.h"
+#include "softlist_dev.h"
void cpc_exp_cards(device_slot_interface &device);
diff --git a/src/devices/bus/msx_cart/disk.cpp b/src/devices/bus/msx_cart/disk.cpp
index 9898f0747f1..b07d9dd6dc0 100644
--- a/src/devices/bus/msx_cart/disk.cpp
+++ b/src/devices/bus/msx_cart/disk.cpp
@@ -103,7 +103,7 @@
#include "emu.h"
#include "disk.h"
#include "formats/msx_dsk.h"
-#include "softlist.h"
+#include "softlist_dev.h"
DEFINE_DEVICE_TYPE(MSX_CART_VY0010, msx_cart_vy0010_device, "msx_cart_vy0010", "MSX Cartridge - VY0010")
DEFINE_DEVICE_TYPE(MSX_CART_FSFD1, msx_cart_fsfd1_device, "msx_cart_fsfd1", "MSX Cartridge - FS-FD1")
diff --git a/src/devices/bus/psx/gamebooster.cpp b/src/devices/bus/psx/gamebooster.cpp
index a84a9893542..87dee3d9530 100644
--- a/src/devices/bus/psx/gamebooster.cpp
+++ b/src/devices/bus/psx/gamebooster.cpp
@@ -11,6 +11,8 @@
#include "emu.h"
#include "gamebooster.h"
+#include "softlist_dev.h"
+
//**************************************************************************
// DEVICE DEFINITIONS
//**************************************************************************
diff --git a/src/devices/bus/saitek_osa/maestro.cpp b/src/devices/bus/saitek_osa/maestro.cpp
index c0b388213c3..2319dc42a25 100644
--- a/src/devices/bus/saitek_osa/maestro.cpp
+++ b/src/devices/bus/saitek_osa/maestro.cpp
@@ -37,7 +37,7 @@ TODO:
#include "bus/generic/carts.h"
#include "cpu/m6502/r65c02.h"
-#include "softlist.h"
+#include "softlist_dev.h"
DEFINE_DEVICE_TYPE(OSA_MAESTRO, saitekosa_maestro_device, "osa_maestro", "Maestro B-D")
diff --git a/src/devices/bus/saitek_osa/maestroa.cpp b/src/devices/bus/saitek_osa/maestroa.cpp
index aa96c7b3798..da08b9d9c0a 100644
--- a/src/devices/bus/saitek_osa/maestroa.cpp
+++ b/src/devices/bus/saitek_osa/maestroa.cpp
@@ -29,7 +29,7 @@ TODO:
#include "bus/generic/carts.h"
#include "cpu/m6502/r65c02.h"
-#include "softlist.h"
+#include "softlist_dev.h"
DEFINE_DEVICE_TYPE(OSA_MAESTROA, saitekosa_maestroa_device, "osa_maestroa", "Maestro A")
diff --git a/src/devices/bus/sega8/mgear.cpp b/src/devices/bus/sega8/mgear.cpp
index 46fb6a4ad52..1c128c830ec 100644
--- a/src/devices/bus/sega8/mgear.cpp
+++ b/src/devices/bus/sega8/mgear.cpp
@@ -15,7 +15,7 @@
#include "emu.h"
#include "mgear.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//-------------------------------------------------
// constructors
diff --git a/src/devices/bus/sega8/rom.cpp b/src/devices/bus/sega8/rom.cpp
index 1cc25a476cf..7d5d35710e9 100644
--- a/src/devices/bus/sega8/rom.cpp
+++ b/src/devices/bus/sega8/rom.cpp
@@ -11,6 +11,7 @@
#include "emu.h"
#include "rom.h"
+#include "softlist_dev.h"
//-------------------------------------------------
diff --git a/src/devices/bus/sg1000_exp/sk1100.cpp b/src/devices/bus/sg1000_exp/sk1100.cpp
index e9165c971f5..95884acfb30 100644
--- a/src/devices/bus/sg1000_exp/sk1100.cpp
+++ b/src/devices/bus/sg1000_exp/sk1100.cpp
@@ -18,7 +18,7 @@ TODO:
#include "emu.h"
#include "sk1100.h"
-#include "softlist.h"
+#include "softlist_dev.h"
diff --git a/src/devices/bus/spectrum/intf1.cpp b/src/devices/bus/spectrum/intf1.cpp
index 0d3bba65618..aaef5a53fbf 100644
--- a/src/devices/bus/spectrum/intf1.cpp
+++ b/src/devices/bus/spectrum/intf1.cpp
@@ -12,6 +12,7 @@
#include "emu.h"
#include "intf1.h"
+#include "softlist_dev.h"
//**************************************************************************
diff --git a/src/devices/bus/spectrum/intf2.cpp b/src/devices/bus/spectrum/intf2.cpp
index afce2005a99..8fbf1139f3f 100644
--- a/src/devices/bus/spectrum/intf2.cpp
+++ b/src/devices/bus/spectrum/intf2.cpp
@@ -12,6 +12,7 @@
#include "emu.h"
#include "intf2.h"
+#include "softlist_dev.h"
//**************************************************************************
diff --git a/src/devices/bus/spectrum/mgt.cpp b/src/devices/bus/spectrum/mgt.cpp
index f0ce315f2d6..f1396cdeb7c 100644
--- a/src/devices/bus/spectrum/mgt.cpp
+++ b/src/devices/bus/spectrum/mgt.cpp
@@ -154,6 +154,7 @@
#include "emu.h"
#include "mgt.h"
+#include "softlist_dev.h"
//**************************************************************************
diff --git a/src/devices/bus/spectrum/opus.cpp b/src/devices/bus/spectrum/opus.cpp
index fccac06175a..225783ebaf8 100644
--- a/src/devices/bus/spectrum/opus.cpp
+++ b/src/devices/bus/spectrum/opus.cpp
@@ -9,6 +9,7 @@
#include "emu.h"
#include "opus.h"
+#include "softlist_dev.h"
//**************************************************************************
diff --git a/src/devices/bus/spectrum/wafa.cpp b/src/devices/bus/spectrum/wafa.cpp
index 1dfec7e3e57..2e25b2500ce 100644
--- a/src/devices/bus/spectrum/wafa.cpp
+++ b/src/devices/bus/spectrum/wafa.cpp
@@ -22,6 +22,7 @@
#include "emu.h"
#include "wafa.h"
+#include "softlist_dev.h"
//**************************************************************************
// DEVICE DEFINITIONS
diff --git a/src/devices/bus/svi3x8/expander/sv603.cpp b/src/devices/bus/svi3x8/expander/sv603.cpp
index fc8e8c86d96..fb0fd3428f9 100644
--- a/src/devices/bus/svi3x8/expander/sv603.cpp
+++ b/src/devices/bus/svi3x8/expander/sv603.cpp
@@ -8,7 +8,7 @@
#include "emu.h"
#include "sv603.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/devices/bus/svi3x8/slot/sv801.cpp b/src/devices/bus/svi3x8/slot/sv801.cpp
index b4f022afba2..5695cfd5957 100644
--- a/src/devices/bus/svi3x8/slot/sv801.cpp
+++ b/src/devices/bus/svi3x8/slot/sv801.cpp
@@ -8,7 +8,7 @@
#include "emu.h"
#include "sv801.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "formats/svi_dsk.h"
diff --git a/src/devices/bus/vboy/slot.cpp b/src/devices/bus/vboy/slot.cpp
index 70dd9e05063..b80480fe953 100644
--- a/src/devices/bus/vboy/slot.cpp
+++ b/src/devices/bus/vboy/slot.cpp
@@ -12,6 +12,7 @@
#include "emuopts.h"
#include "romload.h"
+#include "softlist.h"
#include <cstring>
diff --git a/src/mame/drivers/a2600.cpp b/src/mame/drivers/a2600.cpp
index 04ee74672d8..8548f26d927 100644
--- a/src/mame/drivers/a2600.cpp
+++ b/src/mame/drivers/a2600.cpp
@@ -91,7 +91,7 @@ E1 Prog ROM 42 DEMON/DIAMOND (CX2615)
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/a7800.cpp b/src/mame/drivers/a7800.cpp
index 2800537f29c..83cda394676 100644
--- a/src/mame/drivers/a7800.cpp
+++ b/src/mame/drivers/a7800.cpp
@@ -106,7 +106,7 @@
#include "bus/a7800/a78_carts.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define A7800_NTSC_Y1 XTAL(14'318'181)
diff --git a/src/mame/drivers/abc1600.cpp b/src/mame/drivers/abc1600.cpp
index 979202d6bc4..9eb90c198c5 100644
--- a/src/mame/drivers/abc1600.cpp
+++ b/src/mame/drivers/abc1600.cpp
@@ -64,7 +64,7 @@
#include "emu.h"
#include "includes/abc1600.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//**************************************************************************
diff --git a/src/mame/drivers/abc80.cpp b/src/mame/drivers/abc80.cpp
index 42e2c09386b..b0f8c771ade 100644
--- a/src/mame/drivers/abc80.cpp
+++ b/src/mame/drivers/abc80.cpp
@@ -83,7 +83,7 @@ ROM checksum program:
#include "emu.h"
#include "includes/abc80.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/abc80x.cpp b/src/mame/drivers/abc80x.cpp
index 200b1937de5..4e8e2dda2a4 100644
--- a/src/mame/drivers/abc80x.cpp
+++ b/src/mame/drivers/abc80x.cpp
@@ -149,6 +149,7 @@ Notes:
#include "emu.h"
#include "includes/abc80x.h"
+#include "softlist_dev.h"
#define LOG 0
diff --git a/src/mame/drivers/aci_ggm.cpp b/src/mame/drivers/aci_ggm.cpp
index 8215d9d8409..d93fb38b4c3 100644
--- a/src/mame/drivers/aci_ggm.cpp
+++ b/src/mame/drivers/aci_ggm.cpp
@@ -58,7 +58,7 @@ TODO:
#include "video/pwm.h"
#include "speaker.h"
-#include "softlist.h"
+#include "softlist_dev.h"
// internal artwork
#include "aci_ggm.lh" // clickable
diff --git a/src/mame/drivers/adam.cpp b/src/mame/drivers/adam.cpp
index d3abeeeb31e..071b6e3b813 100644
--- a/src/mame/drivers/adam.cpp
+++ b/src/mame/drivers/adam.cpp
@@ -302,7 +302,7 @@ Mark Gordon
#include "emu.h"
#include "includes/adam.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/advision.cpp b/src/mame/drivers/advision.cpp
index c7033776ca3..5683134d9bf 100644
--- a/src/mame/drivers/advision.cpp
+++ b/src/mame/drivers/advision.cpp
@@ -19,7 +19,7 @@
#include "includes/advision.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/aim65.cpp b/src/mame/drivers/aim65.cpp
index 703c35146cb..998408e7b59 100644
--- a/src/mame/drivers/aim65.cpp
+++ b/src/mame/drivers/aim65.cpp
@@ -24,7 +24,7 @@ ToDo:
#include "emu.h"
#include "includes/aim65.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "aim65.lh"
diff --git a/src/mame/drivers/alphatro.cpp b/src/mame/drivers/alphatro.cpp
index 2fbcfad044d..b4bb6da7e13 100644
--- a/src/mame/drivers/alphatro.cpp
+++ b/src/mame/drivers/alphatro.cpp
@@ -47,7 +47,7 @@
#include "video/mc6845.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/altos5.cpp b/src/mame/drivers/altos5.cpp
index f0eeb7ed6a8..126b840d60c 100644
--- a/src/mame/drivers/altos5.cpp
+++ b/src/mame/drivers/altos5.cpp
@@ -23,7 +23,7 @@
#include "machine/z80pio.h"
#include "machine/z80sio.h"
-#include "softlist.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/mame/drivers/ampro.cpp b/src/mame/drivers/ampro.cpp
index e80d24e3960..eb253e6c5bb 100644
--- a/src/mame/drivers/ampro.cpp
+++ b/src/mame/drivers/ampro.cpp
@@ -30,7 +30,7 @@ of a hard drive of up to 88MB.
#include "machine/z80sio.h"
#include "machine/wd_fdc.h"
#include "machine/timer.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class ampro_state : public driver_device
{
diff --git a/src/mame/drivers/amstr_pc.cpp b/src/mame/drivers/amstr_pc.cpp
index 481d04995d3..be258ca81fc 100644
--- a/src/mame/drivers/amstr_pc.cpp
+++ b/src/mame/drivers/amstr_pc.cpp
@@ -200,6 +200,8 @@ Notes:
#include "machine/pc_lpt.h"
#include "machine/ram.h"
+#include "softlist_dev.h"
+
namespace {
diff --git a/src/mame/drivers/apc.cpp b/src/mame/drivers/apc.cpp
index 63ab582f85e..2a42a859e97 100644
--- a/src/mame/drivers/apc.cpp
+++ b/src/mame/drivers/apc.cpp
@@ -65,7 +65,7 @@
#include "video/upd7220.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
//#include "sound/ay8910.h"
diff --git a/src/mame/drivers/apf.cpp b/src/mame/drivers/apf.cpp
index 80438ab9dd5..d806253d1a1 100644
--- a/src/mame/drivers/apf.cpp
+++ b/src/mame/drivers/apf.cpp
@@ -94,7 +94,7 @@ ToDo:
#include "bus/apf/rom.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/apogee.cpp b/src/mame/drivers/apogee.cpp
index 6284114c8e6..a4b0326bf83 100644
--- a/src/mame/drivers/apogee.cpp
+++ b/src/mame/drivers/apogee.cpp
@@ -17,6 +17,7 @@
#include "sound/spkrdev.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/rk_cas.h"
diff --git a/src/mame/drivers/apple1.cpp b/src/mame/drivers/apple1.cpp
index cdc46753200..b5568a24fcd 100644
--- a/src/mame/drivers/apple1.cpp
+++ b/src/mame/drivers/apple1.cpp
@@ -82,7 +82,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#define A1_CPU_TAG "maincpu"
#define A1_PIA_TAG "pia6821"
diff --git a/src/mame/drivers/apple2.cpp b/src/mame/drivers/apple2.cpp
index 24cd0b351b0..881667539f7 100644
--- a/src/mame/drivers/apple2.cpp
+++ b/src/mame/drivers/apple2.cpp
@@ -57,7 +57,7 @@ II Plus: RAM options reduced to 16/32/48 KB.
#include "bus/a2gameio/gameio.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/ap2_dsk.h"
diff --git a/src/mame/drivers/apple2e.cpp b/src/mame/drivers/apple2e.cpp
index e8e8e44748d..4136ae18564 100644
--- a/src/mame/drivers/apple2e.cpp
+++ b/src/mame/drivers/apple2e.cpp
@@ -152,7 +152,7 @@ MIG RAM page 2 $CE02 is the speaker/slot bitfield and $CE03 is the paddle/accele
#include "bus/rs232/rs232.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/ap2_dsk.h"
diff --git a/src/mame/drivers/apple2gs.cpp b/src/mame/drivers/apple2gs.cpp
index be179e29849..6c9b265547d 100644
--- a/src/mame/drivers/apple2gs.cpp
+++ b/src/mame/drivers/apple2gs.cpp
@@ -56,7 +56,7 @@
#define LOG_ADB (0) // log ADB activity in the old-style HLE simulation of the microcontroller and GLU
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "cpu/g65816/g65816.h"
diff --git a/src/mame/drivers/apple3.cpp b/src/mame/drivers/apple3.cpp
index 6c0a15f04f9..0617201eaea 100644
--- a/src/mame/drivers/apple3.cpp
+++ b/src/mame/drivers/apple3.cpp
@@ -26,7 +26,7 @@
#include "machine/input_merger.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
void apple3_state::apple3_map(address_map &map)
diff --git a/src/mame/drivers/applix.cpp b/src/mame/drivers/applix.cpp
index e05c5855930..b1fed2a8d84 100644
--- a/src/mame/drivers/applix.cpp
+++ b/src/mame/drivers/applix.cpp
@@ -51,6 +51,7 @@
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/applix_dsk.h"
diff --git a/src/mame/drivers/apricot.cpp b/src/mame/drivers/apricot.cpp
index 836aeb7567c..a4995c8e9a7 100644
--- a/src/mame/drivers/apricot.cpp
+++ b/src/mame/drivers/apricot.cpp
@@ -32,7 +32,7 @@
#include "video/mc6845.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/apxen.cpp b/src/mame/drivers/apxen.cpp
index 6b883a3b88d..37a721b4007 100644
--- a/src/mame/drivers/apxen.cpp
+++ b/src/mame/drivers/apxen.cpp
@@ -49,6 +49,7 @@
#include "formats/apridisk.h"
#include "bus/apricot/keyboard/keyboard.h"
#include "bus/apricot/video/video.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/aquarius.cpp b/src/mame/drivers/aquarius.cpp
index b2b52a1960a..bb7ccf398fd 100644
--- a/src/mame/drivers/aquarius.cpp
+++ b/src/mame/drivers/aquarius.cpp
@@ -26,7 +26,7 @@ X-6026 : Roll of paper for the printer
#include "emu.h"
#include "includes/aquarius.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/arcadia.cpp b/src/mame/drivers/arcadia.cpp
index 6d5f5f701f5..780bc8d71b5 100644
--- a/src/mame/drivers/arcadia.cpp
+++ b/src/mame/drivers/arcadia.cpp
@@ -121,7 +121,7 @@ anything in hardware. No cartridge has been found which uses them.
#include "emu.h"
#include "includes/arcadia.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
void arcadia_state::arcadia_mem(address_map &map)
diff --git a/src/mame/drivers/astrohome.cpp b/src/mame/drivers/astrohome.cpp
index 1f8a83e4c96..d619001c162 100644
--- a/src/mame/drivers/astrohome.cpp
+++ b/src/mame/drivers/astrohome.cpp
@@ -20,7 +20,7 @@
#include "bus/astrocde/ctrl.h"
#include "bus/astrocde/accessory.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/atari400.cpp b/src/mame/drivers/atari400.cpp
index 70498a3c628..7f8d61bd2b0 100644
--- a/src/mame/drivers/atari400.cpp
+++ b/src/mame/drivers/atari400.cpp
@@ -55,7 +55,7 @@
#include "bus/a800/a8sio.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
/******************************************************************************
diff --git a/src/mame/drivers/atarist.cpp b/src/mame/drivers/atarist.cpp
index 971a888b382..f625488938e 100644
--- a/src/mame/drivers/atarist.cpp
+++ b/src/mame/drivers/atarist.cpp
@@ -7,7 +7,7 @@
#include "bus/midi/midi.h"
#include "video/atarist.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
/*
diff --git a/src/mame/drivers/atom.cpp b/src/mame/drivers/atom.cpp
index 54f218b09b4..40fa4d0675a 100644
--- a/src/mame/drivers/atom.cpp
+++ b/src/mame/drivers/atom.cpp
@@ -120,6 +120,7 @@ Hardware: PPIA 8255
#include "machine/clock.h"
#include "formats/imageutl.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
/***************************************************************************
diff --git a/src/mame/drivers/attache.cpp b/src/mame/drivers/attache.cpp
index 01a80f5c373..5c3404ce2e9 100644
--- a/src/mame/drivers/attache.cpp
+++ b/src/mame/drivers/attache.cpp
@@ -84,7 +84,7 @@
#include "video/tms9927.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/aussiebyte.cpp b/src/mame/drivers/aussiebyte.cpp
index 23727102ea7..21cb2e96e82 100644
--- a/src/mame/drivers/aussiebyte.cpp
+++ b/src/mame/drivers/aussiebyte.cpp
@@ -34,6 +34,7 @@
#include "includes/aussiebyte.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/ave_arb.cpp b/src/mame/drivers/ave_arb.cpp
index 7fb17a2a34d..e3152a287a4 100644
--- a/src/mame/drivers/ave_arb.cpp
+++ b/src/mame/drivers/ave_arb.cpp
@@ -50,7 +50,7 @@ TODO:
#include "sound/dac.h"
#include "speaker.h"
-#include "softlist.h"
+#include "softlist_dev.h"
// internal artwork
#include "ave_arb.lh" // clickable
diff --git a/src/mame/drivers/b2m.cpp b/src/mame/drivers/b2m.cpp
index 3258f76d054..be1d182fd05 100644
--- a/src/mame/drivers/b2m.cpp
+++ b/src/mame/drivers/b2m.cpp
@@ -36,6 +36,7 @@ Need a schematic so that the fdc could be repaired.
#include "includes/b2m.h"
#include "formats/smx_dsk.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
/* Address maps */
diff --git a/src/mame/drivers/bandai_design_master.cpp b/src/mame/drivers/bandai_design_master.cpp
index f0e06a86bec..6331ae22f70 100644
--- a/src/mame/drivers/bandai_design_master.cpp
+++ b/src/mame/drivers/bandai_design_master.cpp
@@ -41,6 +41,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
+#include "softlist_dev.h"
//#include "speaker.h"
class bdsm_state : public driver_device
diff --git a/src/mame/drivers/basf7100.cpp b/src/mame/drivers/basf7100.cpp
index d9717965406..5e3f0238067 100644
--- a/src/mame/drivers/basf7100.cpp
+++ b/src/mame/drivers/basf7100.cpp
@@ -61,6 +61,7 @@
#include "machine/basf7100_kbd.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/mame/drivers/bbcbc.cpp b/src/mame/drivers/bbcbc.cpp
index 864a1fa5c23..fad42efee58 100644
--- a/src/mame/drivers/bbcbc.cpp
+++ b/src/mame/drivers/bbcbc.cpp
@@ -34,7 +34,7 @@
#include "machine/z80daisy.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class bbcbc_state : public driver_device
{
diff --git a/src/mame/drivers/bk.cpp b/src/mame/drivers/bk.cpp
index 94da3e4d7c4..36ecaa2ff5e 100644
--- a/src/mame/drivers/bk.cpp
+++ b/src/mame/drivers/bk.cpp
@@ -34,6 +34,7 @@ TODO:
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/bw12.cpp b/src/mame/drivers/bw12.cpp
index 99eb9920b5b..d141b6d5ce0 100644
--- a/src/mame/drivers/bw12.cpp
+++ b/src/mame/drivers/bw12.cpp
@@ -30,7 +30,7 @@
#include "bus/rs232/rs232.h"
#include "sound/dac.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
/*
diff --git a/src/mame/drivers/bw2.cpp b/src/mame/drivers/bw2.cpp
index 6386c510cb2..02c59706ccd 100644
--- a/src/mame/drivers/bw2.cpp
+++ b/src/mame/drivers/bw2.cpp
@@ -28,7 +28,7 @@
#include "includes/bw2.h"
#include "bus/rs232/rs232.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//**************************************************************************
diff --git a/src/mame/drivers/c128.cpp b/src/mame/drivers/c128.cpp
index 262a8ad3988..f12fbd3a2a1 100644
--- a/src/mame/drivers/c128.cpp
+++ b/src/mame/drivers/c128.cpp
@@ -10,7 +10,7 @@
#include "emu.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/c64/exp.h"
#include "bus/cbmiec/cbmiec.h"
diff --git a/src/mame/drivers/c2color.cpp b/src/mame/drivers/c2color.cpp
index 0c3549f9b25..fb386ae8bcc 100644
--- a/src/mame/drivers/c2color.cpp
+++ b/src/mame/drivers/c2color.cpp
@@ -33,7 +33,7 @@
#include "screen.h"
#include "emupal.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class c2_color_state : public driver_device
diff --git a/src/mame/drivers/c64.cpp b/src/mame/drivers/c64.cpp
index fdbcd20587d..f1ee5001983 100644
--- a/src/mame/drivers/c64.cpp
+++ b/src/mame/drivers/c64.cpp
@@ -16,7 +16,7 @@
#include "emu.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/cbmiec/cbmiec.h"
#include "bus/cbmiec/c1541.h"
diff --git a/src/mame/drivers/camplynx.cpp b/src/mame/drivers/camplynx.cpp
index a5ee13e798c..b4c49a7f7dd 100644
--- a/src/mame/drivers/camplynx.cpp
+++ b/src/mame/drivers/camplynx.cpp
@@ -172,6 +172,7 @@
#include "formats/camplynx_dsk.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/casloopy.cpp b/src/mame/drivers/casloopy.cpp
index 7beec8a8564..e91cf74d5dc 100644
--- a/src/mame/drivers/casloopy.cpp
+++ b/src/mame/drivers/casloopy.cpp
@@ -154,7 +154,7 @@ PCB 'Z545-1 A240570-1'
#include "bus/generic/carts.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class casloopy_state : public driver_device
diff --git a/src/mame/drivers/cbm2.cpp b/src/mame/drivers/cbm2.cpp
index 6a4e1eb5cd6..b3924a7fb60 100644
--- a/src/mame/drivers/cbm2.cpp
+++ b/src/mame/drivers/cbm2.cpp
@@ -36,7 +36,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define PLA1_TAG "u78"
diff --git a/src/mame/drivers/cc40.cpp b/src/mame/drivers/cc40.cpp
index 6e737b9b134..171e46db833 100644
--- a/src/mame/drivers/cc40.cpp
+++ b/src/mame/drivers/cc40.cpp
@@ -94,7 +94,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "cc40.lh"
diff --git a/src/mame/drivers/cgenie.cpp b/src/mame/drivers/cgenie.cpp
index b9c8edae374..62de40ad27f 100644
--- a/src/mame/drivers/cgenie.cpp
+++ b/src/mame/drivers/cgenie.cpp
@@ -23,7 +23,7 @@
#include "bus/cgenie/expansion/expansion.h"
#include "bus/cgenie/parallel/parallel.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/channelf.cpp b/src/mame/drivers/channelf.cpp
index 803c072bb48..2823d98b96e 100644
--- a/src/mame/drivers/channelf.cpp
+++ b/src/mame/drivers/channelf.cpp
@@ -22,7 +22,7 @@
#include "includes/channelf.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/chessmstdm.cpp b/src/mame/drivers/chessmstdm.cpp
index 604945ae38a..1c6f88d61a0 100644
--- a/src/mame/drivers/chessmstdm.cpp
+++ b/src/mame/drivers/chessmstdm.cpp
@@ -35,7 +35,7 @@ TODO:
#include "sound/beep.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/clickstart.cpp b/src/mame/drivers/clickstart.cpp
index 81576749176..a0afdf0469f 100644
--- a/src/mame/drivers/clickstart.cpp
+++ b/src/mame/drivers/clickstart.cpp
@@ -67,7 +67,7 @@
#include "machine/spg2xx.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class clickstart_state : public driver_device
diff --git a/src/mame/drivers/coco12.cpp b/src/mame/drivers/coco12.cpp
index 48f8f56d999..75175e05459 100644
--- a/src/mame/drivers/coco12.cpp
+++ b/src/mame/drivers/coco12.cpp
@@ -33,7 +33,7 @@
#include "cpu/m6809/hd6309.h"
#include "imagedev/cassette.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/coco_cas.h"
diff --git a/src/mame/drivers/coco3.cpp b/src/mame/drivers/coco3.cpp
index 026080ae9c5..a51970d3e6d 100644
--- a/src/mame/drivers/coco3.cpp
+++ b/src/mame/drivers/coco3.cpp
@@ -17,7 +17,7 @@
#include "cpu/m6809/m6809.h"
#include "cpu/m6809/hd6309.h"
#include "formats/coco_cas.h"
-#include "softlist.h"
+#include "softlist_dev.h"
diff --git a/src/mame/drivers/coleco.cpp b/src/mame/drivers/coleco.cpp
index 8c7e32e7c6c..57fde86a123 100644
--- a/src/mame/drivers/coleco.cpp
+++ b/src/mame/drivers/coleco.cpp
@@ -71,7 +71,7 @@
#include "emu.h"
#include "includes/coleco.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "logmacro.h"
diff --git a/src/mame/drivers/compc.cpp b/src/mame/drivers/compc.cpp
index 8e1888e5297..c0decd97485 100644
--- a/src/mame/drivers/compc.cpp
+++ b/src/mame/drivers/compc.cpp
@@ -35,6 +35,7 @@ Options: 8087 FPU
#include "machine/genpc.h"
#include "machine/nvram.h"
#include "machine/pckeybrd.h"
+#include "softlist_dev.h"
class compc_state : public driver_device
diff --git a/src/mame/drivers/compis.cpp b/src/mame/drivers/compis.cpp
index 2a72bbf4bf1..cd6bf025418 100644
--- a/src/mame/drivers/compis.cpp
+++ b/src/mame/drivers/compis.cpp
@@ -63,6 +63,7 @@
#include "machine/ram.h"
#include "machine/timer.h"
#include "machine/z80sio.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define I80186_TAG "ic1"
diff --git a/src/mame/drivers/compucolor.cpp b/src/mame/drivers/compucolor.cpp
index ca1b9824215..e7a4d303c94 100644
--- a/src/mame/drivers/compucolor.cpp
+++ b/src/mame/drivers/compucolor.cpp
@@ -30,7 +30,7 @@
#include "video/tms9927.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#define I8080_TAG "ua2"
#define TMS5501_TAG "ud2"
diff --git a/src/mame/drivers/comx35.cpp b/src/mame/drivers/comx35.cpp
index 12d4842427e..b06dc6cf4a5 100644
--- a/src/mame/drivers/comx35.cpp
+++ b/src/mame/drivers/comx35.cpp
@@ -20,6 +20,7 @@
#include "includes/comx35.h"
#include "formats/imageutl.h"
#include "screen.h"
+#include "softlist_dev.h"
/***************************************************************************
PARAMETERS
diff --git a/src/mame/drivers/conchess.cpp b/src/mame/drivers/conchess.cpp
index e2bea9699dc..5ec9a2db77f 100644
--- a/src/mame/drivers/conchess.cpp
+++ b/src/mame/drivers/conchess.cpp
@@ -71,6 +71,7 @@ Library modules:
#include "sound/beep.h"
#include "video/pwm.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/crvision.cpp b/src/mame/drivers/crvision.cpp
index 0a9a8fb977a..faac9dc3fab 100644
--- a/src/mame/drivers/crvision.cpp
+++ b/src/mame/drivers/crvision.cpp
@@ -147,6 +147,7 @@ TODO:
#include "emu.h"
#include "includes/crvision.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/d6800.cpp b/src/mame/drivers/d6800.cpp
index 54bd5b5477c..a0981b8ad48 100644
--- a/src/mame/drivers/d6800.cpp
+++ b/src/mame/drivers/d6800.cpp
@@ -55,6 +55,7 @@
#include "sound/beep.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/dai.cpp b/src/mame/drivers/dai.cpp
index 345a426a83c..927bca3e4da 100644
--- a/src/mame/drivers/dai.cpp
+++ b/src/mame/drivers/dai.cpp
@@ -63,6 +63,7 @@ Timings:
#include "emu.h"
#include "includes/dai.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/dgn_beta.cpp b/src/mame/drivers/dgn_beta.cpp
index 1d1b53d498b..b92af5e4fcd 100644
--- a/src/mame/drivers/dgn_beta.cpp
+++ b/src/mame/drivers/dgn_beta.cpp
@@ -48,6 +48,7 @@ documentation still exists.
#include "machine/mos6551.h"
#include "machine/ram.h"
#include "video/mc6845.h"
+#include "softlist_dev.h"
#include "screen.h"
#include "formats/vdk_dsk.h"
diff --git a/src/mame/drivers/dim68k.cpp b/src/mame/drivers/dim68k.cpp
index 7f093fd9aad..a456484858a 100644
--- a/src/mame/drivers/dim68k.cpp
+++ b/src/mame/drivers/dim68k.cpp
@@ -57,7 +57,7 @@
#include "bus/rs232/rs232.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class dim68k_state : public driver_device
diff --git a/src/mame/drivers/dps1.cpp b/src/mame/drivers/dps1.cpp
index 96feb937154..ed93f730a86 100644
--- a/src/mame/drivers/dps1.cpp
+++ b/src/mame/drivers/dps1.cpp
@@ -21,7 +21,7 @@ ToDo:
#include "machine/upd765.h"
#include "bus/rs232/rs232.h"
//#include "bus/s100/s100.h"
-#include "softlist.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/mame/drivers/dragon.cpp b/src/mame/drivers/dragon.cpp
index d1a3ae16d40..3f8ad75ea21 100644
--- a/src/mame/drivers/dragon.cpp
+++ b/src/mame/drivers/dragon.cpp
@@ -23,6 +23,7 @@
#include "imagedev/floppy.h"
#include "bus/coco/cococart.h"
#include "bus/rs232/rs232.h"
+#include "softlist_dev.h"
diff --git a/src/mame/drivers/easy_karaoke.cpp b/src/mame/drivers/easy_karaoke.cpp
index b38b85c2550..0ddece8a557 100644
--- a/src/mame/drivers/easy_karaoke.cpp
+++ b/src/mame/drivers/easy_karaoke.cpp
@@ -62,7 +62,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class easy_karaoke_state : public driver_device
diff --git a/src/mame/drivers/ec184x.cpp b/src/mame/drivers/ec184x.cpp
index d629c2a7ba1..80952f365f3 100644
--- a/src/mame/drivers/ec184x.cpp
+++ b/src/mame/drivers/ec184x.cpp
@@ -17,7 +17,7 @@
#include "bus/pc_kbd/pc_kbdc.h"
#include "cpu/i86/i86.h"
#include "machine/ram.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//#define LOG_GENERAL (1U << 0) //defined in logmacro.h already
diff --git a/src/mame/drivers/einstein.cpp b/src/mame/drivers/einstein.cpp
index dc157b6bf0d..c57a2cd105e 100644
--- a/src/mame/drivers/einstein.cpp
+++ b/src/mame/drivers/einstein.cpp
@@ -34,7 +34,7 @@
#include "video/v9938.h"
#include "sound/ay8910.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/elan_eu3a05.cpp b/src/mame/drivers/elan_eu3a05.cpp
index f4327818657..5a0ad712374 100644
--- a/src/mame/drivers/elan_eu3a05.cpp
+++ b/src/mame/drivers/elan_eu3a05.cpp
@@ -211,6 +211,7 @@ Set 5043 bit 0 low
//#include "cpu/m6502/m65c02.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "machine/bankdev.h"
#include "audio/elan_eu3a05.h"
diff --git a/src/mame/drivers/electron.cpp b/src/mame/drivers/electron.cpp
index 9f454ef3ae5..26cb16ca414 100644
--- a/src/mame/drivers/electron.cpp
+++ b/src/mame/drivers/electron.cpp
@@ -87,7 +87,7 @@ Other internal boards to emulate:
#include "formats/csw_cas.h"
#include "sound/beep.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/elwro800.cpp b/src/mame/drivers/elwro800.cpp
index 0b505646ee5..d27d46da27c 100644
--- a/src/mame/drivers/elwro800.cpp
+++ b/src/mame/drivers/elwro800.cpp
@@ -31,6 +31,7 @@
#include "machine/bankdev.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/ep64.cpp b/src/mame/drivers/ep64.cpp
index 17fb5f1018f..bc842019c42 100644
--- a/src/mame/drivers/ep64.cpp
+++ b/src/mame/drivers/ep64.cpp
@@ -162,7 +162,7 @@ Notes: (All IC's shown)
#include "sound/dave.h"
#include "video/nick.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/eti660.cpp b/src/mame/drivers/eti660.cpp
index 6e8a4107ee6..df72dd86e63 100644
--- a/src/mame/drivers/eti660.cpp
+++ b/src/mame/drivers/eti660.cpp
@@ -44,6 +44,7 @@
#include "imagedev/cassette.h"
#include "imagedev/snapquik.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define CDP1802_TAG "ic3"
diff --git a/src/mame/drivers/eurocom2.cpp b/src/mame/drivers/eurocom2.cpp
index 6f52ef191ab..3efb4fdd61d 100644
--- a/src/mame/drivers/eurocom2.cpp
+++ b/src/mame/drivers/eurocom2.cpp
@@ -41,6 +41,7 @@
#include "machine/wd_fdc.h"
#include "emupal.h"
+#include "softlist_dev.h"
#include "screen.h"
diff --git a/src/mame/drivers/europc.cpp b/src/mame/drivers/europc.cpp
index e11525da167..ae8169fe004 100644
--- a/src/mame/drivers/europc.cpp
+++ b/src/mame/drivers/europc.cpp
@@ -37,6 +37,7 @@
#include "machine/m3002.h"
#include "machine/pckeybrd.h"
#include "machine/ram.h"
+#include "softlist_dev.h"
class europc_pc_state : public driver_device
diff --git a/src/mame/drivers/excali64.cpp b/src/mame/drivers/excali64.cpp
index 58f45159193..d0e78a93245 100644
--- a/src/mame/drivers/excali64.cpp
+++ b/src/mame/drivers/excali64.cpp
@@ -49,6 +49,7 @@ ToDo:
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/excali64_dsk.h"
diff --git a/src/mame/drivers/exelv.cpp b/src/mame/drivers/exelv.cpp
index effd76df232..6d37ef734e3 100644
--- a/src/mame/drivers/exelv.cpp
+++ b/src/mame/drivers/exelv.cpp
@@ -66,7 +66,7 @@ TODO:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define VERBOSE 0
diff --git a/src/mame/drivers/fidel_as12.cpp b/src/mame/drivers/fidel_as12.cpp
index c91828e3b99..3dd4f04f925 100644
--- a/src/mame/drivers/fidel_as12.cpp
+++ b/src/mame/drivers/fidel_as12.cpp
@@ -26,7 +26,7 @@ magnetic chess board sensors. See fidel_sc12.cpp for a more technical descriptio
#include "sound/dac.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/fidel_eag68k.cpp b/src/mame/drivers/fidel_eag68k.cpp
index 4ce43644894..877039bae78 100644
--- a/src/mame/drivers/fidel_eag68k.cpp
+++ b/src/mame/drivers/fidel_eag68k.cpp
@@ -173,7 +173,7 @@ B0000x-xxxxxx: see V7, -800000
#include "sound/dac.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/fidel_elite.cpp b/src/mame/drivers/fidel_elite.cpp
index 312a7190164..59d411af751 100644
--- a/src/mame/drivers/fidel_elite.cpp
+++ b/src/mame/drivers/fidel_elite.cpp
@@ -73,7 +73,7 @@ uninteresting to emulate as separate drivers.
#include "sound/s14001a.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/fidel_msc.cpp b/src/mame/drivers/fidel_msc.cpp
index 6ae9d0a97cf..97135eee9d0 100644
--- a/src/mame/drivers/fidel_msc.cpp
+++ b/src/mame/drivers/fidel_msc.cpp
@@ -33,7 +33,7 @@ and one for MCS48. A12 is forced high or low to select the bank.
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/fidel_sc12.cpp b/src/mame/drivers/fidel_sc12.cpp
index 9f5f84724cf..45d4d8da342 100644
--- a/src/mame/drivers/fidel_sc12.cpp
+++ b/src/mame/drivers/fidel_sc12.cpp
@@ -55,7 +55,7 @@ If control Q4 is set, printer data can be read from I0.
#include "sound/dac.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/fidel_sc6.cpp b/src/mame/drivers/fidel_sc6.cpp
index d1130677764..5cc4eb6f661 100644
--- a/src/mame/drivers/fidel_sc6.cpp
+++ b/src/mame/drivers/fidel_sc6.cpp
@@ -79,7 +79,7 @@ To summarize, known MCU chip ROM serials+year:
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/fidel_sc9.cpp b/src/mame/drivers/fidel_sc9.cpp
index cc08861e4c0..cb16007ebaf 100644
--- a/src/mame/drivers/fidel_sc9.cpp
+++ b/src/mame/drivers/fidel_sc9.cpp
@@ -54,7 +54,7 @@ IRQ and write strobe are unused. Maximum known size is 16KB.
#include "sound/dac.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/fm7.cpp b/src/mame/drivers/fm7.cpp
index 2b5be155949..d2f9e22fb08 100644
--- a/src/mame/drivers/fm7.cpp
+++ b/src/mame/drivers/fm7.cpp
@@ -55,7 +55,7 @@
#include "formats/fm7_cas.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/galaxy.cpp b/src/mame/drivers/galaxy.cpp
index dfcde1713cb..f1de6cadf48 100644
--- a/src/mame/drivers/galaxy.cpp
+++ b/src/mame/drivers/galaxy.cpp
@@ -34,6 +34,7 @@ ToDo:
#include "formats/gtp_cas.h"
#include "sound/ay8910.h"
#include "emupal.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/gamate.cpp b/src/mame/drivers/gamate.cpp
index 607e3f6704b..cc91f567ce8 100644
--- a/src/mame/drivers/gamate.cpp
+++ b/src/mame/drivers/gamate.cpp
@@ -17,7 +17,7 @@
#include "cpu/m6502/m6502.h"
#include "video/gamate.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class gamate_state : public driver_device
diff --git a/src/mame/drivers/gamecom.cpp b/src/mame/drivers/gamecom.cpp
index 789504fe16d..e0e128d5fb2 100644
--- a/src/mame/drivers/gamecom.cpp
+++ b/src/mame/drivers/gamecom.cpp
@@ -33,7 +33,7 @@ Game Status:
#include "includes/gamecom.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "gamecom.lh"
diff --git a/src/mame/drivers/gameking.cpp b/src/mame/drivers/gameking.cpp
index 737445f5928..c2a2567a317 100644
--- a/src/mame/drivers/gameking.cpp
+++ b/src/mame/drivers/gameking.cpp
@@ -26,7 +26,7 @@
#include "sound/dac.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/gamepock.cpp b/src/mame/drivers/gamepock.cpp
index b659cd265bb..aac570d03ee 100644
--- a/src/mame/drivers/gamepock.cpp
+++ b/src/mame/drivers/gamepock.cpp
@@ -10,7 +10,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/gb.cpp b/src/mame/drivers/gb.cpp
index 5d5ed5dc3a7..200413c84d4 100644
--- a/src/mame/drivers/gb.cpp
+++ b/src/mame/drivers/gb.cpp
@@ -278,7 +278,7 @@ space. This mapper uses 32KB sized banks.
#include "bus/gameboy/rom.h"
#include "bus/gameboy/mbc.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/gba.cpp b/src/mame/drivers/gba.cpp
index 6cd14367537..7ba6049b307 100644
--- a/src/mame/drivers/gba.cpp
+++ b/src/mame/drivers/gba.cpp
@@ -17,7 +17,7 @@
#include "cpu/arm7/arm7.h"
#include "cpu/arm7/arm7core.h"
#include "sound/gb.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/generalplus_gpl16250_nand.cpp b/src/mame/drivers/generalplus_gpl16250_nand.cpp
index 22ab9726fb5..48e53712374 100644
--- a/src/mame/drivers/generalplus_gpl16250_nand.cpp
+++ b/src/mame/drivers/generalplus_gpl16250_nand.cpp
@@ -31,6 +31,7 @@
#include "emu.h"
#include "includes/generalplus_gpl16250.h"
#include "includes/generalplus_gpl16250_nand.h"
+#include "softlist_dev.h"
uint16_t generalplus_gpac800_game_state::cs0_r(offs_t offset)
{
diff --git a/src/mame/drivers/generalplus_gpl16250_spi.cpp b/src/mame/drivers/generalplus_gpl16250_spi.cpp
index 36da6a33b7d..4ca9637b248 100644
--- a/src/mame/drivers/generalplus_gpl16250_spi.cpp
+++ b/src/mame/drivers/generalplus_gpl16250_spi.cpp
@@ -14,6 +14,7 @@
#include "emu.h"
#include "includes/generalplus_gpl16250.h"
+#include "softlist_dev.h"
class generalplus_gpspispi_game_state : public gcm394_game_state
diff --git a/src/mame/drivers/generalplus_gpl32612.cpp b/src/mame/drivers/generalplus_gpl32612.cpp
index 59236a52f6d..68254388e0c 100644
--- a/src/mame/drivers/generalplus_gpl32612.cpp
+++ b/src/mame/drivers/generalplus_gpl32612.cpp
@@ -26,7 +26,7 @@
#include "cpu/arm7/arm7core.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "screen.h"
#include "speaker.h"
diff --git a/src/mame/drivers/geniusiq.cpp b/src/mame/drivers/geniusiq.cpp
index 1c0550e298c..48dcc7886c7 100644
--- a/src/mame/drivers/geniusiq.cpp
+++ b/src/mame/drivers/geniusiq.cpp
@@ -160,7 +160,7 @@ PCB - German Version:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#define KEYBOARD_QUEUE_SIZE 0x80
diff --git a/src/mame/drivers/genpc.cpp b/src/mame/drivers/genpc.cpp
index 1215a68cae1..3549b275d3b 100644
--- a/src/mame/drivers/genpc.cpp
+++ b/src/mame/drivers/genpc.cpp
@@ -14,7 +14,7 @@
#include "cpu/i86/i86.h"
#include "bus/pc_kbd/keyboards.h"
#include "bus/pc_kbd/pc_kbdc.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class genpc_state : public driver_device
{
diff --git a/src/mame/drivers/gimix.cpp b/src/mame/drivers/gimix.cpp
index 4d7c77622bd..f6f298de4ee 100644
--- a/src/mame/drivers/gimix.cpp
+++ b/src/mame/drivers/gimix.cpp
@@ -35,7 +35,7 @@
#include "machine/ram.h"
#include "formats/flex_dsk.h"
#include "formats/os9_dsk.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#define DMA_DRQ (m_dma_status & 0x80)
#define DMA_INTRQ (m_dma_status & 0x40)
diff --git a/src/mame/drivers/gmaster.cpp b/src/mame/drivers/gmaster.cpp
index 52a84db50eb..554dc27321c 100644
--- a/src/mame/drivers/gmaster.cpp
+++ b/src/mame/drivers/gmaster.cpp
@@ -14,7 +14,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/guab.cpp b/src/mame/drivers/guab.cpp
index 13ec22cf197..d2c56d2c4bd 100644
--- a/src/mame/drivers/guab.cpp
+++ b/src/mame/drivers/guab.cpp
@@ -51,7 +51,7 @@
#include "video/tms34061.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "guab.lh"
diff --git a/src/mame/drivers/hec2hrp.cpp b/src/mame/drivers/hec2hrp.cpp
index fb1f2483673..57c4a5782aa 100644
--- a/src/mame/drivers/hec2hrp.cpp
+++ b/src/mame/drivers/hec2hrp.cpp
@@ -88,6 +88,7 @@ TODO : Add cartridge functionality
#include "cpu/z80/z80.h"
#include "cpu/i8085/i8085.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/hect_dsk.h"
#include "formats/hect_tap.h"
diff --git a/src/mame/drivers/hh_tms1k.cpp b/src/mame/drivers/hh_tms1k.cpp
index aa4d6aa01af..ba186b2b719 100644
--- a/src/mame/drivers/hh_tms1k.cpp
+++ b/src/mame/drivers/hh_tms1k.cpp
@@ -196,7 +196,7 @@ TODO:
#include "bus/generic/carts.h"
#include "bus/generic/slot.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "screen.h"
#include "speaker.h"
diff --git a/src/mame/drivers/horizon.cpp b/src/mame/drivers/horizon.cpp
index 28d5078c4f4..8fad5d37200 100644
--- a/src/mame/drivers/horizon.cpp
+++ b/src/mame/drivers/horizon.cpp
@@ -41,7 +41,7 @@ involves replacing the XTAL and reconnecting one jumper.
#include "bus/s100/s100.h"
#include "cpu/z80/z80.h"
#include "machine/i8251.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#define Z80_TAG "z80"
#define I8251_L_TAG "3a"
diff --git a/src/mame/drivers/ht68k.cpp b/src/mame/drivers/ht68k.cpp
index 246850cf4b1..c226e223ed2 100644
--- a/src/mame/drivers/ht68k.cpp
+++ b/src/mame/drivers/ht68k.cpp
@@ -34,7 +34,7 @@ Lot of infos available at: http://www.classiccmp.org/cini/ht68k.htm
#include "imagedev/floppy.h"
#include "machine/mc68681.h"
#include "machine/wd_fdc.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class ht68k_state : public driver_device
{
diff --git a/src/mame/drivers/hx20.cpp b/src/mame/drivers/hx20.cpp
index 708a7126bf1..ec0fa540156 100644
--- a/src/mame/drivers/hx20.cpp
+++ b/src/mame/drivers/hx20.cpp
@@ -41,7 +41,7 @@
#include "emu.h"
#include "includes/hx20.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/i7000.cpp b/src/mame/drivers/i7000.cpp
index a4e28481ca1..b209865ed3a 100644
--- a/src/mame/drivers/i7000.cpp
+++ b/src/mame/drivers/i7000.cpp
@@ -52,7 +52,7 @@
#include "video/mc6845.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "tilemap.h"
diff --git a/src/mame/drivers/ibm6580.cpp b/src/mame/drivers/ibm6580.cpp
index 66a335e7754..2374bc1796a 100644
--- a/src/mame/drivers/ibm6580.cpp
+++ b/src/mame/drivers/ibm6580.cpp
@@ -98,6 +98,7 @@ Displaywriter System Manual S544-2023-0 (?) -- mentioned in US patents 4648071 a
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "ibm6580.lh"
diff --git a/src/mame/drivers/ibmpc.cpp b/src/mame/drivers/ibmpc.cpp
index cd781eb5305..736d7b46a0d 100644
--- a/src/mame/drivers/ibmpc.cpp
+++ b/src/mame/drivers/ibmpc.cpp
@@ -261,7 +261,7 @@ XT U44 IBM.bin: IBM 5160 PC/XT Bank-selection decoding ROM (256x4 bit). Not mapp
#include "bus/pc_kbd/keyboards.h"
#include "bus/pc_kbd/pc_kbdc.h"
#include "machine/genpc.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class ibmpc_state : public driver_device
{
diff --git a/src/mame/drivers/ibmpcjr.cpp b/src/mame/drivers/ibmpcjr.cpp
index 38bf2f19424..0a32a806287 100644
--- a/src/mame/drivers/ibmpcjr.cpp
+++ b/src/mame/drivers/ibmpcjr.cpp
@@ -25,7 +25,7 @@
#include "bus/rs232/terminal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/innotv_innotabmax.cpp b/src/mame/drivers/innotv_innotabmax.cpp
index 748f1aa6ca1..fb829bc8181 100644
--- a/src/mame/drivers/innotv_innotabmax.cpp
+++ b/src/mame/drivers/innotv_innotabmax.cpp
@@ -66,7 +66,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "screen.h"
diff --git a/src/mame/drivers/intellect02.cpp b/src/mame/drivers/intellect02.cpp
index 0a5e032507f..c3aba407f55 100644
--- a/src/mame/drivers/intellect02.cpp
+++ b/src/mame/drivers/intellect02.cpp
@@ -46,7 +46,7 @@ Keypad legend:
#include "sound/beep.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/intv.cpp b/src/mame/drivers/intv.cpp
index 6890b609f80..e5bdab00fcb 100644
--- a/src/mame/drivers/intv.cpp
+++ b/src/mame/drivers/intv.cpp
@@ -57,7 +57,7 @@ RO-3-9506 = 8KiB (4Kiw) self decoding address mask rom with external address dec
#include "cpu/cp1610/cp1610.h"
#include "sound/ay8910.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/iq151.cpp b/src/mame/drivers/iq151.cpp
index b0087e01421..a8c2a22e745 100644
--- a/src/mame/drivers/iq151.cpp
+++ b/src/mame/drivers/iq151.cpp
@@ -65,7 +65,7 @@ ToDo:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/iqunlim.cpp b/src/mame/drivers/iqunlim.cpp
index b3f8d881ca2..26e1439a47c 100644
--- a/src/mame/drivers/iqunlim.cpp
+++ b/src/mame/drivers/iqunlim.cpp
@@ -56,6 +56,7 @@ A4 = MAX232
#include "cpu/m68000/m68000.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
class iqunlim_state : public driver_device
{
diff --git a/src/mame/drivers/itt3030.cpp b/src/mame/drivers/itt3030.cpp
index 1415d620959..26c9d91ed0a 100644
--- a/src/mame/drivers/itt3030.cpp
+++ b/src/mame/drivers/itt3030.cpp
@@ -202,6 +202,7 @@ Beeper Circuit, all ICs shown:
#include "video/tms9927.h" //Display hardware
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/itt3030_dsk.h"
#include "debugger.h"
diff --git a/src/mame/drivers/jaguar.cpp b/src/mame/drivers/jaguar.cpp
index 8bc6cd73b0a..2237060691a 100644
--- a/src/mame/drivers/jaguar.cpp
+++ b/src/mame/drivers/jaguar.cpp
@@ -350,7 +350,7 @@ Notes:
#include "machine/vt83c461.h"
#include "sound/cdda.h"
#include "cdrom.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define COJAG_CLOCK XTAL(52'000'000)
diff --git a/src/mame/drivers/juku.cpp b/src/mame/drivers/juku.cpp
index d816a017402..7dcdc95a153 100644
--- a/src/mame/drivers/juku.cpp
+++ b/src/mame/drivers/juku.cpp
@@ -38,6 +38,7 @@
#include "machine/wd_fdc.h"
#include "imagedev/floppy.h"
#include "formats/juku_dsk.h"
+#include "softlist_dev.h"
#include "screen.h"
diff --git a/src/mame/drivers/jupace.cpp b/src/mame/drivers/jupace.cpp
index a822f1448da..b8d3e12e51a 100644
--- a/src/mame/drivers/jupace.cpp
+++ b/src/mame/drivers/jupace.cpp
@@ -57,7 +57,7 @@ Ports:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/ace_tap.h"
diff --git a/src/mame/drivers/kaypro.cpp b/src/mame/drivers/kaypro.cpp
index 18a56259e03..237c7703e74 100644
--- a/src/mame/drivers/kaypro.cpp
+++ b/src/mame/drivers/kaypro.cpp
@@ -53,7 +53,7 @@
#include "machine/com8116.h"
#include "machine/z80sio.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/kc.cpp b/src/mame/drivers/kc.cpp
index fb91275d0f6..3c902f6c1cd 100644
--- a/src/mame/drivers/kc.cpp
+++ b/src/mame/drivers/kc.cpp
@@ -18,7 +18,7 @@
#include "includes/kc.h"
#include "machine/input_merger.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "screen.h"
#include "speaker.h"
diff --git a/src/mame/drivers/kdt6.cpp b/src/mame/drivers/kdt6.cpp
index b4fc7de5ce1..0bb23cb71be 100644
--- a/src/mame/drivers/kdt6.cpp
+++ b/src/mame/drivers/kdt6.cpp
@@ -31,7 +31,7 @@
#include "emupal.h"
#include "screen.h"
#include "speaker.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "kdt6.lh"
diff --git a/src/mame/drivers/kim1.cpp b/src/mame/drivers/kim1.cpp
index 1dccda80e7a..5638173bc09 100644
--- a/src/mame/drivers/kim1.cpp
+++ b/src/mame/drivers/kim1.cpp
@@ -72,6 +72,7 @@ Paste test:
#include "machine/timer.h"
#include "video/pwm.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "kim1.lh"
diff --git a/src/mame/drivers/kyocera.cpp b/src/mame/drivers/kyocera.cpp
index d8597cf1f86..0e30f17814b 100644
--- a/src/mame/drivers/kyocera.cpp
+++ b/src/mame/drivers/kyocera.cpp
@@ -61,6 +61,7 @@
#include "emu.h"
#include "includes/kyocera.h"
+#include "softlist_dev.h"
#include "speaker.h"
/* Read/Write Handlers */
diff --git a/src/mame/drivers/leapfrog_iquest.cpp b/src/mame/drivers/leapfrog_iquest.cpp
index 664522dc082..069b97ac0f0 100644
--- a/src/mame/drivers/leapfrog_iquest.cpp
+++ b/src/mame/drivers/leapfrog_iquest.cpp
@@ -17,7 +17,7 @@
#include "machine/bankdev.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "screen.h"
diff --git a/src/mame/drivers/leapfrog_leappad.cpp b/src/mame/drivers/leapfrog_leappad.cpp
index 87798e65ed9..8ab7a43bfeb 100644
--- a/src/mame/drivers/leapfrog_leappad.cpp
+++ b/src/mame/drivers/leapfrog_leappad.cpp
@@ -76,7 +76,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class leapfrog_leappad_state : public driver_device
diff --git a/src/mame/drivers/leapfrog_leapster_explorer.cpp b/src/mame/drivers/leapfrog_leapster_explorer.cpp
index 27c63796f92..774b60a728a 100644
--- a/src/mame/drivers/leapfrog_leapster_explorer.cpp
+++ b/src/mame/drivers/leapfrog_leapster_explorer.cpp
@@ -21,7 +21,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class leapfrog_leapster_explorer_state : public driver_device
diff --git a/src/mame/drivers/leapster.cpp b/src/mame/drivers/leapster.cpp
index 9646da90603..84e55b771fd 100644
--- a/src/mame/drivers/leapster.cpp
+++ b/src/mame/drivers/leapster.cpp
@@ -191,7 +191,7 @@ PCB - LEAPSTER-TV:
#include "bus/generic/carts.h"
#include "cpu/arcompact/arcompact.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class leapster_state : public driver_device
diff --git a/src/mame/drivers/lisa.cpp b/src/mame/drivers/lisa.cpp
index bda1882eb5c..2cc6baed620 100644
--- a/src/mame/drivers/lisa.cpp
+++ b/src/mame/drivers/lisa.cpp
@@ -15,7 +15,7 @@
#include "cpu/cop400/cop400.h"
#include "formats/ap_dsk35.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
/***************************************************************************
diff --git a/src/mame/drivers/lk3000.cpp b/src/mame/drivers/lk3000.cpp
index e977668d46e..6aab48cc2b9 100644
--- a/src/mame/drivers/lk3000.cpp
+++ b/src/mame/drivers/lk3000.cpp
@@ -33,6 +33,7 @@ TODO:
#include "cpu/f8/f8.h"
#include "machine/f3853.h"
#include "video/dl1416.h"
+#include "softlist_dev.h"
// internal artwork
#include "lk3000.lh"
diff --git a/src/mame/drivers/lnw80.cpp b/src/mame/drivers/lnw80.cpp
index f80ec2d312c..ef8b5e4af5f 100644
--- a/src/mame/drivers/lnw80.cpp
+++ b/src/mame/drivers/lnw80.cpp
@@ -78,6 +78,7 @@ To Do / Status:
#include "includes/trs80.h"
#include "machine/input_merger.h"
#include "formats/td0_dsk.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/mame/drivers/lviv.cpp b/src/mame/drivers/lviv.cpp
index 79488e4b86a..38cd0601e06 100644
--- a/src/mame/drivers/lviv.cpp
+++ b/src/mame/drivers/lviv.cpp
@@ -288,6 +288,7 @@ Timings:
#include "cpu/i8085/i8085.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/lviv_lvt.h"
diff --git a/src/mame/drivers/lynx.cpp b/src/mame/drivers/lynx.cpp
index 5dfe482607b..44bb4f82fd3 100644
--- a/src/mame/drivers/lynx.cpp
+++ b/src/mame/drivers/lynx.cpp
@@ -20,7 +20,7 @@
#include "includes/lynx.h"
#include "cpu/m6502/m65sc02.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "lynx.lh"
diff --git a/src/mame/drivers/m20.cpp b/src/mame/drivers/m20.cpp
index f30dc4778eb..1f48d6b83dc 100644
--- a/src/mame/drivers/m20.cpp
+++ b/src/mame/drivers/m20.cpp
@@ -54,7 +54,7 @@ E I1 Vectored interrupt error
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "formats/m20_dsk.h"
#include "formats/pc_dsk.h"
diff --git a/src/mame/drivers/m24.cpp b/src/mame/drivers/m24.cpp
index a3bf199337a..4d156e12c59 100644
--- a/src/mame/drivers/m24.cpp
+++ b/src/mame/drivers/m24.cpp
@@ -41,7 +41,7 @@
#include "formats/naslite_dsk.h"
#include "formats/m20_dsk.h"
-#include "softlist.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/mame/drivers/m5.cpp b/src/mame/drivers/m5.cpp
index b272dbc2ad1..dbc63f5e0b8 100644
--- a/src/mame/drivers/m5.cpp
+++ b/src/mame/drivers/m5.cpp
@@ -296,7 +296,7 @@ Few other notes:
#include "imagedev/floppy.h"
#include "imagedev/snapquik.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/m5_dsk.h"
diff --git a/src/mame/drivers/mac.cpp b/src/mame/drivers/mac.cpp
index 8391e40b503..3cdf7aaace7 100644
--- a/src/mame/drivers/mac.cpp
+++ b/src/mame/drivers/mac.cpp
@@ -45,7 +45,7 @@
#include "bus/nubus/pds30_mc30.h"
#include "machine/macadb.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "mac.lh"
diff --git a/src/mame/drivers/macpdm.cpp b/src/mame/drivers/macpdm.cpp
index 6b6182a89d8..90c5a863f76 100644
--- a/src/mame/drivers/macpdm.cpp
+++ b/src/mame/drivers/macpdm.cpp
@@ -15,7 +15,7 @@
#include "machine/ram.h"
#include "machine/swim3.h"
#include "machine/timer.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "sound/awacs.h"
#include "speaker.h"
diff --git a/src/mame/drivers/macprtb.cpp b/src/mame/drivers/macprtb.cpp
index 89eef742098..f8c87ae4b88 100644
--- a/src/mame/drivers/macprtb.cpp
+++ b/src/mame/drivers/macprtb.cpp
@@ -107,7 +107,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define C32M (31.3344_MHz_XTAL)
diff --git a/src/mame/drivers/macpwrbk030.cpp b/src/mame/drivers/macpwrbk030.cpp
index e6d7f55785a..13f7f91cbcd 100644
--- a/src/mame/drivers/macpwrbk030.cpp
+++ b/src/mame/drivers/macpwrbk030.cpp
@@ -115,7 +115,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define C32M (31.3344_MHz_XTAL)
diff --git a/src/mame/drivers/macquadra700.cpp b/src/mame/drivers/macquadra700.cpp
index 4d72cfba1b6..566ab3a70a0 100644
--- a/src/mame/drivers/macquadra700.cpp
+++ b/src/mame/drivers/macquadra700.cpp
@@ -46,7 +46,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define C7M (7833600)
diff --git a/src/mame/drivers/magiceyes_pollux_vr3520f.cpp b/src/mame/drivers/magiceyes_pollux_vr3520f.cpp
index c88ed138d57..505b95eba5c 100644
--- a/src/mame/drivers/magiceyes_pollux_vr3520f.cpp
+++ b/src/mame/drivers/magiceyes_pollux_vr3520f.cpp
@@ -25,7 +25,7 @@
#include "bus/generic/carts.h"
#include "cpu/arm7/arm7.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "screen.h"
diff --git a/src/mame/drivers/mbc200.cpp b/src/mame/drivers/mbc200.cpp
index ac3e5b0706b..ea3d61cdbdc 100644
--- a/src/mame/drivers/mbc200.cpp
+++ b/src/mame/drivers/mbc200.cpp
@@ -57,7 +57,7 @@ TODO:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/mbc55x.cpp b/src/mame/drivers/mbc55x.cpp
index c9e644b9f07..e9ee574bbe1 100644
--- a/src/mame/drivers/mbc55x.cpp
+++ b/src/mame/drivers/mbc55x.cpp
@@ -21,7 +21,7 @@
#include "machine/input_merger.h"
#include "machine/mbc55x_kbd.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/mbee.cpp b/src/mame/drivers/mbee.cpp
index 2768cce305a..c5cde03f8f6 100644
--- a/src/mame/drivers/mbee.cpp
+++ b/src/mame/drivers/mbee.cpp
@@ -130,6 +130,7 @@ from Brett Selwood and Andrew Davies.
#include "includes/mbee.h"
#include "formats/mbee_cas.h"
#include "sound/sn76496.h"
+#include "softlist_dev.h"
#include "speaker.h"
void mbee_state::mbee_mem(address_map &map)
diff --git a/src/mame/drivers/mc10.cpp b/src/mame/drivers/mc10.cpp
index 7dea2f41eb7..ba4459479e4 100644
--- a/src/mame/drivers/mc10.cpp
+++ b/src/mame/drivers/mc10.cpp
@@ -19,7 +19,7 @@
#include "video/ef9345.h"
#include "video/mc6847.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/coco_cas.h"
diff --git a/src/mame/drivers/mc1000.cpp b/src/mame/drivers/mc1000.cpp
index 15d3208329f..37d0d2b7ebc 100644
--- a/src/mame/drivers/mc1000.cpp
+++ b/src/mame/drivers/mc1000.cpp
@@ -35,7 +35,7 @@
#include "video/mc6847.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/mc1502.cpp b/src/mame/drivers/mc1502.cpp
index 3c91623c04c..ad331976e2a 100644
--- a/src/mame/drivers/mc1502.cpp
+++ b/src/mame/drivers/mc1502.cpp
@@ -21,7 +21,7 @@
#include "cpu/i86/i86.h"
#include "machine/kb_7007_3.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/mephisto_mm1.cpp b/src/mame/drivers/mephisto_mm1.cpp
index 2d71be6895b..fe0a17108fa 100644
--- a/src/mame/drivers/mephisto_mm1.cpp
+++ b/src/mame/drivers/mephisto_mm1.cpp
@@ -47,7 +47,7 @@ TODO:
#include "sound/dac.h"
#include "video/mmdisplay1.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/mephisto_mm2.cpp b/src/mame/drivers/mephisto_mm2.cpp
index 7ea5c7482c9..bb594c04c32 100644
--- a/src/mame/drivers/mephisto_mm2.cpp
+++ b/src/mame/drivers/mephisto_mm2.cpp
@@ -92,7 +92,7 @@ MM VI (Saitek, 1994) is on different hardware, H8 CPU.
#include "sound/dac.h"
#include "video/mmdisplay1.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/mephisto_smondial.cpp b/src/mame/drivers/mephisto_smondial.cpp
index 341eb15bd5b..c54f5823cf7 100644
--- a/src/mame/drivers/mephisto_smondial.cpp
+++ b/src/mame/drivers/mephisto_smondial.cpp
@@ -32,7 +32,7 @@ Undocumented buttons:
#include "video/pcf2100.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/meritum.cpp b/src/mame/drivers/meritum.cpp
index 9edd68b9cb4..e6bed85f903 100644
--- a/src/mame/drivers/meritum.cpp
+++ b/src/mame/drivers/meritum.cpp
@@ -62,6 +62,7 @@ For Model III:
#include "machine/i8255.h"
#include "machine/pit8253.h"
#include "emupal.h"
+#include "softlist_dev.h"
class meritum_state : public trs80_state
{
diff --git a/src/mame/drivers/microdec.cpp b/src/mame/drivers/microdec.cpp
index f0d6fb2a3a4..a83b9550fd5 100644
--- a/src/mame/drivers/microdec.cpp
+++ b/src/mame/drivers/microdec.cpp
@@ -33,7 +33,7 @@ ToDo:
#include "machine/clock.h"
#include "machine/i8251.h"
#include "bus/rs232/rs232.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class microdec_state : public driver_device
diff --git a/src/mame/drivers/microtan.cpp b/src/mame/drivers/microtan.cpp
index 51018495c05..2e58ee51efa 100644
--- a/src/mame/drivers/microtan.cpp
+++ b/src/mame/drivers/microtan.cpp
@@ -61,7 +61,7 @@
#include "includes/microtan.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
void microtan_state::mt65_map(address_map &map)
diff --git a/src/mame/drivers/microvsn.cpp b/src/mame/drivers/microvsn.cpp
index 5eafcac912a..eede6688ee5 100644
--- a/src/mame/drivers/microvsn.cpp
+++ b/src/mame/drivers/microvsn.cpp
@@ -39,7 +39,7 @@ TODO:
#include "video/pwm.h"
#include "emupal.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "screen.h"
#include "speaker.h"
diff --git a/src/mame/drivers/mikro80.cpp b/src/mame/drivers/mikro80.cpp
index 64efd504ebd..c1dd5968fe6 100644
--- a/src/mame/drivers/mikro80.cpp
+++ b/src/mame/drivers/mikro80.cpp
@@ -25,6 +25,7 @@ ToDo:
#include "includes/mikro80.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
/* Address maps */
diff --git a/src/mame/drivers/mikromik.cpp b/src/mame/drivers/mikromik.cpp
index 9404cfb9475..5d02dfcb0f1 100644
--- a/src/mame/drivers/mikromik.cpp
+++ b/src/mame/drivers/mikromik.cpp
@@ -55,7 +55,7 @@
#include "emu.h"
#include "includes/mikromik.h"
#include "machine/74259.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//#define VERBOSE 1
#include "logmacro.h"
diff --git a/src/mame/drivers/mikrosha.cpp b/src/mame/drivers/mikrosha.cpp
index e60a30102cc..b78ce877403 100644
--- a/src/mame/drivers/mikrosha.cpp
+++ b/src/mame/drivers/mikrosha.cpp
@@ -15,6 +15,7 @@
#include "machine/pit8253.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/rk_cas.h"
diff --git a/src/mame/drivers/mindset.cpp b/src/mame/drivers/mindset.cpp
index d1b169595c3..0e62b9a4d1a 100644
--- a/src/mame/drivers/mindset.cpp
+++ b/src/mame/drivers/mindset.cpp
@@ -12,6 +12,7 @@
#include "bus/rs232/rs232.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "mindset.lh"
diff --git a/src/mame/drivers/monon_color.cpp b/src/mame/drivers/monon_color.cpp
index a1017861101..247256f164b 100644
--- a/src/mame/drivers/monon_color.cpp
+++ b/src/mame/drivers/monon_color.cpp
@@ -16,6 +16,7 @@
#include "cpu/mcs51/axc51-core.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
diff --git a/src/mame/drivers/mpz80.cpp b/src/mame/drivers/mpz80.cpp
index 3b895600c85..4c75c5eedff 100644
--- a/src/mame/drivers/mpz80.cpp
+++ b/src/mame/drivers/mpz80.cpp
@@ -43,7 +43,7 @@
#include "emu.h"
#include "includes/mpz80.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//**************************************************************************
// MACROS / CONSTANTS
diff --git a/src/mame/drivers/msx.cpp b/src/mame/drivers/msx.cpp
index f39c9894487..585fe4c2532 100644
--- a/src/mame/drivers/msx.cpp
+++ b/src/mame/drivers/msx.cpp
@@ -535,7 +535,7 @@ PCB Layouts missing
#include "machine/msx_s1985.h"
#include "machine/msx_systemflags.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/mtx.cpp b/src/mame/drivers/mtx.cpp
index 2094d42a427..2ed4ac0542a 100644
--- a/src/mame/drivers/mtx.cpp
+++ b/src/mame/drivers/mtx.cpp
@@ -26,7 +26,7 @@
#include "imagedev/snapquik.h"
#include "video/tms9928a.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/myb3k.cpp b/src/mame/drivers/myb3k.cpp
index ebfe5b95628..482f354533a 100644
--- a/src/mame/drivers/myb3k.cpp
+++ b/src/mame/drivers/myb3k.cpp
@@ -35,7 +35,7 @@
#include "machine/pit8253.h"
#include "machine/i8257.h"
#include "sound/spkrdev.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "machine/ram.h"
#include "machine/wd_fdc.h"
diff --git a/src/mame/drivers/myvision.cpp b/src/mame/drivers/myvision.cpp
index 4005ca42bcd..58c94b94f4f 100644
--- a/src/mame/drivers/myvision.cpp
+++ b/src/mame/drivers/myvision.cpp
@@ -32,7 +32,7 @@
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/mz2000.cpp b/src/mame/drivers/mz2000.cpp
index ba53a7381d5..cbb5a6e4aa6 100644
--- a/src/mame/drivers/mz2000.cpp
+++ b/src/mame/drivers/mz2000.cpp
@@ -31,7 +31,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/2d_dsk.h"
diff --git a/src/mame/drivers/mz2500.cpp b/src/mame/drivers/mz2500.cpp
index e5f94a166af..7dd492da0b4 100644
--- a/src/mame/drivers/mz2500.cpp
+++ b/src/mame/drivers/mz2500.cpp
@@ -39,6 +39,8 @@
#include "emu.h"
#include "includes/mz2500.h"
+#include "softlist_dev.h"
+
/* machine stuff */
diff --git a/src/mame/drivers/mz700.cpp b/src/mame/drivers/mz700.cpp
index 298961b3ccf..d1d7a832023 100644
--- a/src/mame/drivers/mz700.cpp
+++ b/src/mame/drivers/mz700.cpp
@@ -85,7 +85,7 @@
#include "cpu/z80/z80.h"
#include "sound/sn76496.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/mz_cas.h"
diff --git a/src/mame/drivers/nascom1.cpp b/src/mame/drivers/nascom1.cpp
index 040b84d54f1..375914206f2 100644
--- a/src/mame/drivers/nascom1.cpp
+++ b/src/mame/drivers/nascom1.cpp
@@ -41,7 +41,7 @@ Cassette (nascom2):
#include "bus/nasbus/nasbus.h"
#include "emupal.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "screen.h"
diff --git a/src/mame/drivers/neogeo.cpp b/src/mame/drivers/neogeo.cpp
index b521836ed2a..fbac99da2eb 100644
--- a/src/mame/drivers/neogeo.cpp
+++ b/src/mame/drivers/neogeo.cpp
@@ -555,7 +555,7 @@
#include "machine/nvram.h"
#include "machine/watchdog.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "irrmaze.lh"
diff --git a/src/mame/drivers/nes.cpp b/src/mame/drivers/nes.cpp
index 71cd23fa615..4719ea16d38 100644
--- a/src/mame/drivers/nes.cpp
+++ b/src/mame/drivers/nes.cpp
@@ -16,7 +16,7 @@
#include "includes/nes.h"
#include "cpu/m6502/n2a03.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/ngp.cpp b/src/mame/drivers/ngp.cpp
index 4e045d22d9c..412fd75a81b 100644
--- a/src/mame/drivers/ngp.cpp
+++ b/src/mame/drivers/ngp.cpp
@@ -106,7 +106,7 @@ the Neogeo Pocket.
#include "sound/dac.h"
#include "video/k1ge.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
enum flash_state
diff --git a/src/mame/drivers/novag_const.cpp b/src/mame/drivers/novag_const.cpp
index a0a2eef43c6..5fa15619ef3 100644
--- a/src/mame/drivers/novag_const.cpp
+++ b/src/mame/drivers/novag_const.cpp
@@ -73,7 +73,7 @@ TODO:
#include "sound/beep.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/octopus.cpp b/src/mame/drivers/octopus.cpp
index b0652893429..81d6de79a4c 100644
--- a/src/mame/drivers/octopus.cpp
+++ b/src/mame/drivers/octopus.cpp
@@ -133,7 +133,7 @@ It's a very rare computer. It has 2 processors, Z80 and 8088, so it can run both
#include "bus/centronics/printer.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/odyssey2.cpp b/src/mame/drivers/odyssey2.cpp
index 8c9659d2829..1e5a4a0d90b 100644
--- a/src/mame/drivers/odyssey2.cpp
+++ b/src/mame/drivers/odyssey2.cpp
@@ -121,7 +121,7 @@ Plenty games have minor bugs not worth mentioning here.
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/olivpc1.cpp b/src/mame/drivers/olivpc1.cpp
index ac878b7bf03..4513091250e 100644
--- a/src/mame/drivers/olivpc1.cpp
+++ b/src/mame/drivers/olivpc1.cpp
@@ -31,7 +31,7 @@ OSC: 16.000, 21.477270, 1.8432
#include "bus/isa/isa_cards.h"
#include "bus/isa/fdc.h"
#include "machine/pckeybrd.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "machine/ram.h"
#include "machine/upd765.h"
#include "machine/bankdev.h"
diff --git a/src/mame/drivers/ondra.cpp b/src/mame/drivers/ondra.cpp
index 8b05048eeda..b73db3c3926 100644
--- a/src/mame/drivers/ondra.cpp
+++ b/src/mame/drivers/ondra.cpp
@@ -30,6 +30,7 @@ ToDo:
#include "cpu/z80/z80.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/orao.cpp b/src/mame/drivers/orao.cpp
index 5f4fc7fd574..9466e51e95a 100644
--- a/src/mame/drivers/orao.cpp
+++ b/src/mame/drivers/orao.cpp
@@ -25,7 +25,7 @@ Todo:
#include "cpu/m6502/m6502.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/orao_cas.h"
diff --git a/src/mame/drivers/orion.cpp b/src/mame/drivers/orion.cpp
index 8237cc14d35..51fd03a8b48 100644
--- a/src/mame/drivers/orion.cpp
+++ b/src/mame/drivers/orion.cpp
@@ -23,6 +23,7 @@ It's unknown how to create a tape.
#include "includes/orion.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/smx_dsk.h"
diff --git a/src/mame/drivers/osbexec.cpp b/src/mame/drivers/osbexec.cpp
index 7e35a8fd47f..75d4974ae83 100644
--- a/src/mame/drivers/osbexec.cpp
+++ b/src/mame/drivers/osbexec.cpp
@@ -23,7 +23,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/osborne1.cpp b/src/mame/drivers/osborne1.cpp
index f806a9194b4..43501d3c897 100644
--- a/src/mame/drivers/osborne1.cpp
+++ b/src/mame/drivers/osborne1.cpp
@@ -94,7 +94,7 @@ TODO:
#include "bus/rs232/rs232.h"
#include "speaker.h"
-#include "softlist.h"
+#include "softlist_dev.h"
static constexpr XTAL MAIN_CLOCK = 15.9744_MHz_XTAL;
diff --git a/src/mame/drivers/partner.cpp b/src/mame/drivers/partner.cpp
index bcc3be154a1..e27605d735d 100644
--- a/src/mame/drivers/partner.cpp
+++ b/src/mame/drivers/partner.cpp
@@ -20,6 +20,7 @@ Cursor is one position too far to the right.
#include "cpu/i8085/i8085.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/rk_cas.h"
diff --git a/src/mame/drivers/pasogo.cpp b/src/mame/drivers/pasogo.cpp
index 10092897b24..423dd67ba35 100644
--- a/src/mame/drivers/pasogo.cpp
+++ b/src/mame/drivers/pasogo.cpp
@@ -111,7 +111,7 @@ TODO:
#include "machine/timer.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
/*
rtc interrupt irq 2
diff --git a/src/mame/drivers/pasopia.cpp b/src/mame/drivers/pasopia.cpp
index 4c80db70115..fc85877aba0 100644
--- a/src/mame/drivers/pasopia.cpp
+++ b/src/mame/drivers/pasopia.cpp
@@ -31,7 +31,7 @@
#include "speaker.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class pasopia_state : public driver_device
{
diff --git a/src/mame/drivers/pb1000.cpp b/src/mame/drivers/pb1000.cpp
index f0f075490f0..1c50c461258 100644
--- a/src/mame/drivers/pb1000.cpp
+++ b/src/mame/drivers/pb1000.cpp
@@ -30,7 +30,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/generic/carts.h"
diff --git a/src/mame/drivers/pc.cpp b/src/mame/drivers/pc.cpp
index 0542fe3798b..40dd26b38ca 100644
--- a/src/mame/drivers/pc.cpp
+++ b/src/mame/drivers/pc.cpp
@@ -31,7 +31,7 @@ Driver file for IBM PC, IBM PC XT, and related machines.
#include "bus/isa/isa_cards.h"
#include "bus/pc_kbd/keyboards.h"
#include "bus/pc_kbd/pc_kbdc.h"
-#include "softlist.h"
+#include "softlist_dev.h"
/******************************************************* Generic PC with CGA ***/
diff --git a/src/mame/drivers/pc1512.cpp b/src/mame/drivers/pc1512.cpp
index 676f1c8ebbf..5bfbd096ac5 100644
--- a/src/mame/drivers/pc1512.cpp
+++ b/src/mame/drivers/pc1512.cpp
@@ -97,7 +97,7 @@ PC1640-HD30: Western Digital 95038 [-chs 615,6,17 -ss 512]
#include "bus/rs232/rs232.h"
#include "bus/isa/ega.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/pc2000.cpp b/src/mame/drivers/pc2000.cpp
index f6639039e5f..8000aa9abe8 100644
--- a/src/mame/drivers/pc2000.cpp
+++ b/src/mame/drivers/pc2000.cpp
@@ -41,7 +41,7 @@ Other known international versions:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "gl3000s.lh"
diff --git a/src/mame/drivers/pc6001.cpp b/src/mame/drivers/pc6001.cpp
index db7108163e6..f7bb3228ec2 100644
--- a/src/mame/drivers/pc6001.cpp
+++ b/src/mame/drivers/pc6001.cpp
@@ -143,6 +143,8 @@ irq vector 0x26:
#include "emu.h"
#include "includes/pc6001.h"
+#include "softlist_dev.h"
+
#define LOG_IRQ (1U << 1)
//#define VERBOSE (LOG_IRQ)
diff --git a/src/mame/drivers/pc8001.cpp b/src/mame/drivers/pc8001.cpp
index 9e790f900b4..523acdf7fbd 100644
--- a/src/mame/drivers/pc8001.cpp
+++ b/src/mame/drivers/pc8001.cpp
@@ -40,6 +40,7 @@
#include "emu.h"
#include "includes/pc8001.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
WRITE_LINE_MEMBER( pc8001_base_state::crtc_reverse_w )
diff --git a/src/mame/drivers/pc8801.cpp b/src/mame/drivers/pc8801.cpp
index 85e5981d5df..33f88806ee2 100644
--- a/src/mame/drivers/pc8801.cpp
+++ b/src/mame/drivers/pc8801.cpp
@@ -240,6 +240,7 @@
#include "emu.h"
#include "includes/pc8801.h"
+#include "softlist_dev.h"
#define IRQ_DEBUG (0)
diff --git a/src/mame/drivers/pc88va.cpp b/src/mame/drivers/pc88va.cpp
index 30b330d2343..9c5f86d943d 100644
--- a/src/mame/drivers/pc88va.cpp
+++ b/src/mame/drivers/pc88va.cpp
@@ -28,6 +28,8 @@
#include "emu.h"
#include "includes/pc88va.h"
+#include "softlist_dev.h"
+
// TODO: verify clocks
#define MASTER_CLOCK XTAL(8'000'000) // may be XTAL(31'948'800) / 4? (based on PC-8801 and PC-9801)
diff --git a/src/mame/drivers/pcw.cpp b/src/mame/drivers/pcw.cpp
index 3826a6b226a..6cd4baab83b 100644
--- a/src/mame/drivers/pcw.cpp
+++ b/src/mame/drivers/pcw.cpp
@@ -106,7 +106,7 @@
#include "machine/ram.h"
#include "machine/rescap.h"
#include "render.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "pcw.lh"
diff --git a/src/mame/drivers/pcw16.cpp b/src/mame/drivers/pcw16.cpp
index 44ec24315ee..299c838ab68 100644
--- a/src/mame/drivers/pcw16.cpp
+++ b/src/mame/drivers/pcw16.cpp
@@ -94,7 +94,7 @@ TODO:
#include "bus/rs232/hlemouse.h"
#include "bus/rs232/rs232.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// interrupt counter
diff --git a/src/mame/drivers/pdp1.cpp b/src/mame/drivers/pdp1.cpp
index 976d18c41a1..68896be32d7 100644
--- a/src/mame/drivers/pdp1.cpp
+++ b/src/mame/drivers/pdp1.cpp
@@ -61,6 +61,7 @@ To load and play a game:
#include "cpu/pdp1/pdp1.h"
#include "video/crt.h"
#include "screen.h"
+#include "softlist_dev.h"
/*
diff --git a/src/mame/drivers/pecom.cpp b/src/mame/drivers/pecom.cpp
index 5b88785c08c..1395a62f47d 100644
--- a/src/mame/drivers/pecom.cpp
+++ b/src/mame/drivers/pecom.cpp
@@ -27,6 +27,7 @@ TODO:
#include "emu.h"
#include "includes/pecom.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/pegasus.cpp b/src/mame/drivers/pegasus.cpp
index 105916cad8c..2e2ad032a06 100644
--- a/src/mame/drivers/pegasus.cpp
+++ b/src/mame/drivers/pegasus.cpp
@@ -48,7 +48,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/pencil2.cpp b/src/mame/drivers/pencil2.cpp
index 9c8678faef4..00f4e6f2efe 100644
--- a/src/mame/drivers/pencil2.cpp
+++ b/src/mame/drivers/pencil2.cpp
@@ -95,7 +95,7 @@ ToDo:
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class pencil2_state : public driver_device
diff --git a/src/mame/drivers/pentagon.cpp b/src/mame/drivers/pentagon.cpp
index 61428d4e778..9f34427ed2c 100644
--- a/src/mame/drivers/pentagon.cpp
+++ b/src/mame/drivers/pentagon.cpp
@@ -8,7 +8,7 @@
#include "sound/ay8910.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/tzx_cas.h"
diff --git a/src/mame/drivers/pet.cpp b/src/mame/drivers/pet.cpp
index f67490ba38a..a4066b389fe 100644
--- a/src/mame/drivers/pet.cpp
+++ b/src/mame/drivers/pet.cpp
@@ -155,7 +155,7 @@ ROM sockets: UA3 2K or 4K character
#include "emu.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
diff --git a/src/mame/drivers/phc25.cpp b/src/mame/drivers/phc25.cpp
index a134bc83e21..91bcb572fce 100644
--- a/src/mame/drivers/phc25.cpp
+++ b/src/mame/drivers/phc25.cpp
@@ -42,6 +42,7 @@ RUN
#include "emu.h"
#include "includes/phc25.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/picno.cpp b/src/mame/drivers/picno.cpp
index dea161a4ff4..c8446775a86 100644
--- a/src/mame/drivers/picno.cpp
+++ b/src/mame/drivers/picno.cpp
@@ -28,6 +28,7 @@ Can't do anything until the internal ROM is dumped.
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
//#include "sound/multipcm.h"
//#include "screen.h"
diff --git a/src/mame/drivers/pk8020.cpp b/src/mame/drivers/pk8020.cpp
index 2d657481454..1dfc53323d3 100644
--- a/src/mame/drivers/pk8020.cpp
+++ b/src/mame/drivers/pk8020.cpp
@@ -36,7 +36,7 @@ BK8T - Keys to navigate initial config screen are mostly unknown
#include "machine/pit8253.h"
#include "formats/pk8020_dsk.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
/* Address maps */
diff --git a/src/mame/drivers/plus4.cpp b/src/mame/drivers/plus4.cpp
index c7d44f5fba5..aa84c9991ff 100644
--- a/src/mame/drivers/plus4.cpp
+++ b/src/mame/drivers/plus4.cpp
@@ -13,7 +13,7 @@
#include "emu.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/cbmiec/cbmiec.h"
#include "bus/pet/c2n.h"
diff --git a/src/mame/drivers/pmd85.cpp b/src/mame/drivers/pmd85.cpp
index 07c15748cb8..5fb49e20b4d 100644
--- a/src/mame/drivers/pmd85.cpp
+++ b/src/mame/drivers/pmd85.cpp
@@ -226,6 +226,7 @@ Some software items will crash MAME, for example "bdash".
#include "includes/pmd85.h"
#include "cpu/i8085/i8085.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/pmd_cas.h"
diff --git a/src/mame/drivers/pockchal.cpp b/src/mame/drivers/pockchal.cpp
index 6067e934889..f542410863d 100644
--- a/src/mame/drivers/pockchal.cpp
+++ b/src/mame/drivers/pockchal.cpp
@@ -29,7 +29,7 @@ Cart sizes: 1MB, 2MB, 4MB
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/mame/drivers/poisk1.cpp b/src/mame/drivers/poisk1.cpp
index 5650b07fb75..8b3615a5589 100644
--- a/src/mame/drivers/poisk1.cpp
+++ b/src/mame/drivers/poisk1.cpp
@@ -39,7 +39,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/pokemini.cpp b/src/mame/drivers/pokemini.cpp
index 297b491228b..895b92ca1d9 100644
--- a/src/mame/drivers/pokemini.cpp
+++ b/src/mame/drivers/pokemini.cpp
@@ -17,7 +17,7 @@ The LCD is likely to be a SSD1828 LCD.
#include "bus/generic/carts.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/poly.cpp b/src/mame/drivers/poly.cpp
index 81b9107b93c..8e72e7fbeba 100644
--- a/src/mame/drivers/poly.cpp
+++ b/src/mame/drivers/poly.cpp
@@ -33,7 +33,7 @@
#include "emu.h"
#include "includes/poly.h"
#include "formats/flex_dsk.h"
-#include "softlist.h"
+#include "softlist_dev.h"
void poly_state::poly_bank(address_map &map)
diff --git a/src/mame/drivers/prestige.cpp b/src/mame/drivers/prestige.cpp
index a5e27570588..46812358a1f 100644
--- a/src/mame/drivers/prestige.cpp
+++ b/src/mame/drivers/prestige.cpp
@@ -106,7 +106,7 @@ Notes:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
namespace {
diff --git a/src/mame/drivers/prof180x.cpp b/src/mame/drivers/prof180x.cpp
index ca34a4c09a3..1ad7758c54b 100644
--- a/src/mame/drivers/prof180x.cpp
+++ b/src/mame/drivers/prof180x.cpp
@@ -31,7 +31,7 @@
#include "machine/ram.h"
#include "machine/upd765.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
uint32_t prof180x_state::screen_update(screen_device &screen, bitmap_rgb32 &bitmap, const rectangle &cliprect)
{
diff --git a/src/mame/drivers/prof80.cpp b/src/mame/drivers/prof80.cpp
index cae32f503f5..bbc7d3d3aea 100644
--- a/src/mame/drivers/prof80.cpp
+++ b/src/mame/drivers/prof80.cpp
@@ -27,7 +27,7 @@
#include "emu.h"
#include "includes/prof80.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//**************************************************************************
diff --git a/src/mame/drivers/proteus.cpp b/src/mame/drivers/proteus.cpp
index f8d0e38d43a..17a5db2b246 100644
--- a/src/mame/drivers/proteus.cpp
+++ b/src/mame/drivers/proteus.cpp
@@ -55,7 +55,7 @@
#include "bus/centronics/ctronics.h"
#include "formats/flex_dsk.h"
#include "formats/poly_dsk.h"
-#include "softlist.h"
+#include "softlist_dev.h"
class proteus_state : public driver_device
diff --git a/src/mame/drivers/ptcsol.cpp b/src/mame/drivers/ptcsol.cpp
index bf676654072..5ff8af1b042 100644
--- a/src/mame/drivers/ptcsol.cpp
+++ b/src/mame/drivers/ptcsol.cpp
@@ -127,7 +127,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/sol_cas.h"
diff --git a/src/mame/drivers/pubint_storyreader.cpp b/src/mame/drivers/pubint_storyreader.cpp
index 108d4d8f5b0..704f713d172 100644
--- a/src/mame/drivers/pubint_storyreader.cpp
+++ b/src/mame/drivers/pubint_storyreader.cpp
@@ -72,7 +72,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class pi_storyreader_state : public driver_device
diff --git a/src/mame/drivers/pv1000.cpp b/src/mame/drivers/pv1000.cpp
index f3dcef31f94..392c8ca1ee7 100644
--- a/src/mame/drivers/pv1000.cpp
+++ b/src/mame/drivers/pv1000.cpp
@@ -12,7 +12,7 @@
#include "bus/generic/carts.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/pv2000.cpp b/src/mame/drivers/pv2000.cpp
index eefb89a8b02..0dd1436d4f6 100644
--- a/src/mame/drivers/pv2000.cpp
+++ b/src/mame/drivers/pv2000.cpp
@@ -37,7 +37,7 @@ For BIOS CRC confirmation
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class pv2000_state : public driver_device
diff --git a/src/mame/drivers/px4.cpp b/src/mame/drivers/px4.cpp
index 92d9bc89c73..a687561333a 100644
--- a/src/mame/drivers/px4.cpp
+++ b/src/mame/drivers/px4.cpp
@@ -26,7 +26,7 @@
#include "diserial.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "coreutil.h"
diff --git a/src/mame/drivers/px8.cpp b/src/mame/drivers/px8.cpp
index a27d666d4ee..f8aab1fea03 100644
--- a/src/mame/drivers/px8.cpp
+++ b/src/mame/drivers/px8.cpp
@@ -35,7 +35,7 @@
#include "machine/rescap.h"
#include "machine/upd7001.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "px8.lh"
diff --git a/src/mame/drivers/pyl601.cpp b/src/mame/drivers/pyl601.cpp
index 3f8fcdabfcb..aed518289bf 100644
--- a/src/mame/drivers/pyl601.cpp
+++ b/src/mame/drivers/pyl601.cpp
@@ -44,7 +44,7 @@
#include "video/mc6845.h"
#include "emupal.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "screen.h"
#include "speaker.h"
diff --git a/src/mame/drivers/ql.cpp b/src/mame/drivers/ql.cpp
index 1d37af7ff3a..68297d309a8 100644
--- a/src/mame/drivers/ql.cpp
+++ b/src/mame/drivers/ql.cpp
@@ -86,7 +86,7 @@
#include "video/zx8301.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/qx10.cpp b/src/mame/drivers/qx10.cpp
index a00309cc219..7d13a9c06d1 100644
--- a/src/mame/drivers/qx10.cpp
+++ b/src/mame/drivers/qx10.cpp
@@ -54,7 +54,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "imagedev/snapquik.h"
diff --git a/src/mame/drivers/radio86.cpp b/src/mame/drivers/radio86.cpp
index c7f8a7ca01f..917531c6780 100644
--- a/src/mame/drivers/radio86.cpp
+++ b/src/mame/drivers/radio86.cpp
@@ -15,6 +15,7 @@
#include "cpu/i8085/i8085.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/rk_cas.h"
diff --git a/src/mame/drivers/radionic.cpp b/src/mame/drivers/radionic.cpp
index c8aed988109..c266c8ffdf2 100644
--- a/src/mame/drivers/radionic.cpp
+++ b/src/mame/drivers/radionic.cpp
@@ -113,6 +113,7 @@ To Do / Status:
#include "machine/i8255.h"
#include "machine/clock.h"
#include "bus/rs232/rs232.h"
+#include "softlist_dev.h"
#define MASTER_XTAL 12164800
diff --git a/src/mame/drivers/roland_cm32p.cpp b/src/mame/drivers/roland_cm32p.cpp
index 70d74112453..5561ccb3490 100644
--- a/src/mame/drivers/roland_cm32p.cpp
+++ b/src/mame/drivers/roland_cm32p.cpp
@@ -262,6 +262,7 @@ Some routine locations
#include "bus/generic/carts.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/roland_r8.cpp b/src/mame/drivers/roland_r8.cpp
index eb20bd49efa..c3d2c524c2d 100644
--- a/src/mame/drivers/roland_r8.cpp
+++ b/src/mame/drivers/roland_r8.cpp
@@ -79,6 +79,7 @@ R8 mkII doesn't seem to store the tone list in the program ROM.
#include "sound/rolandpcm.h"
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
#include "speaker.h"
// PCM card address line scrambling
diff --git a/src/mame/drivers/rx78.cpp b/src/mame/drivers/rx78.cpp
index a3add3d9a92..039116e1b26 100644
--- a/src/mame/drivers/rx78.cpp
+++ b/src/mame/drivers/rx78.cpp
@@ -73,7 +73,7 @@ BTANB:
#include "bus/generic/carts.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class rx78_state : public driver_device
diff --git a/src/mame/drivers/sag.cpp b/src/mame/drivers/sag.cpp
index dd0d92e3ec6..b6c3110d4f3 100644
--- a/src/mame/drivers/sag.cpp
+++ b/src/mame/drivers/sag.cpp
@@ -32,7 +32,7 @@ an exception.
#include "video/pwm.h"
#include "sound/spkrdev.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "sag.lh"
diff --git a/src/mame/drivers/sage2.cpp b/src/mame/drivers/sage2.cpp
index 16b837490b6..28bf2dac9fe 100644
--- a/src/mame/drivers/sage2.cpp
+++ b/src/mame/drivers/sage2.cpp
@@ -26,7 +26,7 @@
#include "emu.h"
#include "includes/sage2.h"
#include "bus/rs232/rs232.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//**************************************************************************
// ADDRESS MAPS
diff --git a/src/mame/drivers/saitek_corona.cpp b/src/mame/drivers/saitek_corona.cpp
index 96f76a325c3..34fc0e6243e 100644
--- a/src/mame/drivers/saitek_corona.cpp
+++ b/src/mame/drivers/saitek_corona.cpp
@@ -20,7 +20,7 @@ different compared to Stratos/Turbo King.
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/saitek_schess.cpp b/src/mame/drivers/saitek_schess.cpp
index e73730c385a..12311f8f61f 100644
--- a/src/mame/drivers/saitek_schess.cpp
+++ b/src/mame/drivers/saitek_schess.cpp
@@ -41,6 +41,7 @@ Expansion modules: (* denotes not dumped)
#include "sound/dac.h"
#include "video/pwm.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/saitek_simultano.cpp b/src/mame/drivers/saitek_simultano.cpp
index e31769e5a0c..9dd32bd9681 100644
--- a/src/mame/drivers/saitek_simultano.cpp
+++ b/src/mame/drivers/saitek_simultano.cpp
@@ -40,7 +40,7 @@ TODO:
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/saitek_stratos.cpp b/src/mame/drivers/saitek_stratos.cpp
index e96d23eae19..65674975518 100644
--- a/src/mame/drivers/saitek_stratos.cpp
+++ b/src/mame/drivers/saitek_stratos.cpp
@@ -59,7 +59,7 @@ very few bytes difference between revisions. The first Corona is engine version
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/saitek_superstar.cpp b/src/mame/drivers/saitek_superstar.cpp
index 5ad20a7669f..c72a19c5b48 100644
--- a/src/mame/drivers/saitek_superstar.cpp
+++ b/src/mame/drivers/saitek_superstar.cpp
@@ -48,7 +48,7 @@ TODO:
#include "sound/dac.h"
#include "video/pwm.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// internal artwork
diff --git a/src/mame/drivers/samcoupe.cpp b/src/mame/drivers/samcoupe.cpp
index d6d86d434b2..74f2e9ee9d4 100644
--- a/src/mame/drivers/samcoupe.cpp
+++ b/src/mame/drivers/samcoupe.cpp
@@ -33,7 +33,7 @@
#include "formats/tzx_cas.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/sbrain.cpp b/src/mame/drivers/sbrain.cpp
index 3985af9b9b8..bb821c99d85 100644
--- a/src/mame/drivers/sbrain.cpp
+++ b/src/mame/drivers/sbrain.cpp
@@ -50,6 +50,7 @@ To Do:
#include "sound/beep.h"
#include "video/dp8350.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include <algorithm>
diff --git a/src/mame/drivers/scv.cpp b/src/mame/drivers/scv.cpp
index e9079dd40d7..54d5e9cc4af 100644
--- a/src/mame/drivers/scv.cpp
+++ b/src/mame/drivers/scv.cpp
@@ -13,7 +13,7 @@
#include "bus/scv/rom.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/sdk85.cpp b/src/mame/drivers/sdk85.cpp
index afdc916c401..211c7ad9231 100644
--- a/src/mame/drivers/sdk85.cpp
+++ b/src/mame/drivers/sdk85.cpp
@@ -50,7 +50,7 @@ Press 0 to restart.
#include "machine/i8155.h"
#include "machine/i8355.h"
#include "machine/i8279.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "sdk85.lh"
diff --git a/src/mame/drivers/sega_beena.cpp b/src/mame/drivers/sega_beena.cpp
index 5c16d123a24..02cef4abd52 100644
--- a/src/mame/drivers/sega_beena.cpp
+++ b/src/mame/drivers/sega_beena.cpp
@@ -85,7 +85,7 @@
#include "bus/generic/carts.h"
#include "cpu/arm7/arm7.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "screen.h"
diff --git a/src/mame/drivers/sg1000.cpp b/src/mame/drivers/sg1000.cpp
index cc5c6acd69e..bd084c9b5f4 100644
--- a/src/mame/drivers/sg1000.cpp
+++ b/src/mame/drivers/sg1000.cpp
@@ -67,7 +67,7 @@ Notes:
#include "emu.h"
#include "includes/sg1000.h"
#include "bus/rs232/rs232.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/smc777.cpp b/src/mame/drivers/smc777.cpp
index f6d8a0edc8d..6638c54ce9e 100644
--- a/src/mame/drivers/smc777.cpp
+++ b/src/mame/drivers/smc777.cpp
@@ -29,7 +29,7 @@
#include "video/mc6845.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "imagedev/snapquik.h"
#include "speaker.h"
diff --git a/src/mame/drivers/sms.cpp b/src/mame/drivers/sms.cpp
index 661a7bb27b4..38e36b43183 100644
--- a/src/mame/drivers/sms.cpp
+++ b/src/mame/drivers/sms.cpp
@@ -246,7 +246,7 @@ DC00 - Selection buttons #2, 9-16 (R)
#include "includes/sms.h"
#include "cpu/z80/z80.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "sms1.lh"
diff --git a/src/mame/drivers/snes.cpp b/src/mame/drivers/snes.cpp
index 852a2297eda..0e1c9ada78e 100644
--- a/src/mame/drivers/snes.cpp
+++ b/src/mame/drivers/snes.cpp
@@ -35,7 +35,7 @@
#include "bus/snes/snes_carts.h"
#include "bus/snes_ctrl/ctrl.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/socrates.cpp b/src/mame/drivers/socrates.cpp
index 98af1ac9647..b0ae7db0581 100644
--- a/src/mame/drivers/socrates.cpp
+++ b/src/mame/drivers/socrates.cpp
@@ -95,7 +95,7 @@ TODO (socrates):
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/sorcerer.cpp b/src/mame/drivers/sorcerer.cpp
index 1bffa307d8c..70c542f03b2 100644
--- a/src/mame/drivers/sorcerer.cpp
+++ b/src/mame/drivers/sorcerer.cpp
@@ -166,7 +166,7 @@ Exidy Sorcerer Video/Disk Unit:
#include "includes/sorcerer.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/spc1000.cpp b/src/mame/drivers/spc1000.cpp
index a7d6ccbfab7..ad8fd7bd2d5 100644
--- a/src/mame/drivers/spc1000.cpp
+++ b/src/mame/drivers/spc1000.cpp
@@ -136,7 +136,7 @@ small ics.
#include "bus/spc1000/fdd.h"
#include "bus/spc1000/vdp.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/spc1000_cas.h"
diff --git a/src/mame/drivers/spc1500.cpp b/src/mame/drivers/spc1500.cpp
index 85b25f91993..4c597cb297a 100644
--- a/src/mame/drivers/spc1500.cpp
+++ b/src/mame/drivers/spc1500.cpp
@@ -234,7 +234,7 @@ TODO:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/spc1000_cas.h"
diff --git a/src/mame/drivers/special.cpp b/src/mame/drivers/special.cpp
index 38dee7d16f9..4b95e28f94e 100644
--- a/src/mame/drivers/special.cpp
+++ b/src/mame/drivers/special.cpp
@@ -56,6 +56,7 @@ ToDo:
#include "includes/special.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/specpls3.cpp b/src/mame/drivers/specpls3.cpp
index a8652f1be81..747853e603c 100644
--- a/src/mame/drivers/specpls3.cpp
+++ b/src/mame/drivers/specpls3.cpp
@@ -152,7 +152,7 @@ http://www.z88forever.org.uk/zxplus3e/
#include "sound/ay8910.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "formats/tzx_cas.h"
diff --git a/src/mame/drivers/spectrum.cpp b/src/mame/drivers/spectrum.cpp
index 621e1ddb9c2..9bf83d33703 100644
--- a/src/mame/drivers/spectrum.cpp
+++ b/src/mame/drivers/spectrum.cpp
@@ -282,7 +282,7 @@ SamRam
#include "machine/spec_snqk.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/tzx_cas.h"
diff --git a/src/mame/drivers/spg110.cpp b/src/mame/drivers/spg110.cpp
index d3b783c880d..1dec3fb938d 100644
--- a/src/mame/drivers/spg110.cpp
+++ b/src/mame/drivers/spg110.cpp
@@ -29,7 +29,7 @@
#include "cpu/unsp/unsp.h"
#include "machine/spg110.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class spg110_game_state : public driver_device
diff --git a/src/mame/drivers/spg2xx_ican.cpp b/src/mame/drivers/spg2xx_ican.cpp
index d346c9ad549..77f2c4884ed 100644
--- a/src/mame/drivers/spg2xx_ican.cpp
+++ b/src/mame/drivers/spg2xx_ican.cpp
@@ -8,6 +8,7 @@
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
class icanguit_state : public spg2xx_game_state
diff --git a/src/mame/drivers/spg2xx_jakks_gkr.cpp b/src/mame/drivers/spg2xx_jakks_gkr.cpp
index 958284c3c6f..f9cd53fc2e3 100644
--- a/src/mame/drivers/spg2xx_jakks_gkr.cpp
+++ b/src/mame/drivers/spg2xx_jakks_gkr.cpp
@@ -7,6 +7,7 @@
#include "includes/spg2xx.h"
#include "bus/jakks_gamekey/slot.h"
+#include "softlist_dev.h"
class jakks_gkr_state : public spg2xx_game_state
diff --git a/src/mame/drivers/spg2xx_smarttv.cpp b/src/mame/drivers/spg2xx_smarttv.cpp
index bc315ae4a43..29ac50a5813 100644
--- a/src/mame/drivers/spg2xx_smarttv.cpp
+++ b/src/mame/drivers/spg2xx_smarttv.cpp
@@ -11,6 +11,7 @@
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
class smarttv_state : public spg2xx_game_state
diff --git a/src/mame/drivers/spg2xx_telestory.cpp b/src/mame/drivers/spg2xx_telestory.cpp
index b8a0dd24411..ae8b3e95ec4 100644
--- a/src/mame/drivers/spg2xx_telestory.cpp
+++ b/src/mame/drivers/spg2xx_telestory.cpp
@@ -6,6 +6,7 @@
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
class telestory_state : public spg2xx_game_state
diff --git a/src/mame/drivers/spg2xx_tvgogo.cpp b/src/mame/drivers/spg2xx_tvgogo.cpp
index b1bf613e7d0..6422124296d 100644
--- a/src/mame/drivers/spg2xx_tvgogo.cpp
+++ b/src/mame/drivers/spg2xx_tvgogo.cpp
@@ -6,6 +6,7 @@
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
class tvgogo_state : public spg2xx_game_state
diff --git a/src/mame/drivers/spg2xx_vii.cpp b/src/mame/drivers/spg2xx_vii.cpp
index 9ed30031233..5ab0146d6a3 100644
--- a/src/mame/drivers/spg2xx_vii.cpp
+++ b/src/mame/drivers/spg2xx_vii.cpp
@@ -6,6 +6,7 @@
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
+#include "softlist_dev.h"
class vii_state : public spg2xx_game_state
diff --git a/src/mame/drivers/squale.cpp b/src/mame/drivers/squale.cpp
index 018f9a12903..17ef6158c09 100644
--- a/src/mame/drivers/squale.cpp
+++ b/src/mame/drivers/squale.cpp
@@ -92,7 +92,7 @@ TODO
#include "video/ef9365.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/ssem.cpp b/src/mame/drivers/ssem.cpp
index f9ee4fc3c7c..28672cb9ff4 100644
--- a/src/mame/drivers/ssem.cpp
+++ b/src/mame/drivers/ssem.cpp
@@ -11,6 +11,7 @@
#include "imagedev/snapquik.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
class ssem_state : public driver_device
diff --git a/src/mame/drivers/storio.cpp b/src/mame/drivers/storio.cpp
index da45315139a..5ac9c6afbc2 100644
--- a/src/mame/drivers/storio.cpp
+++ b/src/mame/drivers/storio.cpp
@@ -30,7 +30,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class vtech_storio_state : public driver_device
diff --git a/src/mame/drivers/studio2.cpp b/src/mame/drivers/studio2.cpp
index f51c62a7d79..2e7c00574b4 100644
--- a/src/mame/drivers/studio2.cpp
+++ b/src/mame/drivers/studio2.cpp
@@ -215,7 +215,7 @@ Notes:
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/super6.cpp b/src/mame/drivers/super6.cpp
index 13eb8f41bd2..fee9ed01046 100644
--- a/src/mame/drivers/super6.cpp
+++ b/src/mame/drivers/super6.cpp
@@ -23,7 +23,7 @@ ToDo:
#include "bus/rs232/rs232.h"
//#include "bus/s100/s100.h"
#include "includes/super6.h"
-#include "softlist.h"
+#include "softlist_dev.h"
//**************************************************************************
// MEMORY BANKING
diff --git a/src/mame/drivers/super80.cpp b/src/mame/drivers/super80.cpp
index 57f6747b098..e2e953d2f17 100644
--- a/src/mame/drivers/super80.cpp
+++ b/src/mame/drivers/super80.cpp
@@ -210,7 +210,7 @@ ToDo:
#include "includes/super80.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "super80.lh"
diff --git a/src/mame/drivers/supracan.cpp b/src/mame/drivers/supracan.cpp
index 524cfa70056..13601b26d61 100644
--- a/src/mame/drivers/supracan.cpp
+++ b/src/mame/drivers/supracan.cpp
@@ -83,7 +83,7 @@ DEBUG TRICKS:
#include "audio/acan.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "tilemap.h"
diff --git a/src/mame/drivers/sv8000.cpp b/src/mame/drivers/sv8000.cpp
index a913ca7d6e3..d942722254c 100644
--- a/src/mame/drivers/sv8000.cpp
+++ b/src/mame/drivers/sv8000.cpp
@@ -33,7 +33,7 @@ Looking at the code of the cartridges it seems there is:
#include "bus/generic/slot.h"
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class sv8000_state : public driver_device
diff --git a/src/mame/drivers/svi318.cpp b/src/mame/drivers/svi318.cpp
index 49b0fa0cd81..12b095ac0c3 100644
--- a/src/mame/drivers/svi318.cpp
+++ b/src/mame/drivers/svi318.cpp
@@ -22,7 +22,7 @@
#include "bus/generic/slot.h"
#include "bus/svi3x8/expander/expander.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/svi_cas.h"
diff --git a/src/mame/drivers/svision.cpp b/src/mame/drivers/svision.cpp
index 52cf9b295b7..7839c59c02d 100644
--- a/src/mame/drivers/svision.cpp
+++ b/src/mame/drivers/svision.cpp
@@ -9,7 +9,7 @@
#include "emu.h"
#include "includes/svision.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "svision.lh"
diff --git a/src/mame/drivers/svmu.cpp b/src/mame/drivers/svmu.cpp
index 11bea861954..61cc0a204de 100644
--- a/src/mame/drivers/svmu.cpp
+++ b/src/mame/drivers/svmu.cpp
@@ -19,7 +19,7 @@
#include "sound/spkrdev.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "svmu.lh"
diff --git a/src/mame/drivers/sym1.cpp b/src/mame/drivers/sym1.cpp
index 40f4984d63d..04327694839 100644
--- a/src/mame/drivers/sym1.cpp
+++ b/src/mame/drivers/sym1.cpp
@@ -30,6 +30,7 @@ TODO:
#include "machine/timer.h"
#include "sound/spkrdev.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "sym1.lh"
diff --git a/src/mame/drivers/tandy1t.cpp b/src/mame/drivers/tandy1t.cpp
index 8499f937458..b536023f16f 100644
--- a/src/mame/drivers/tandy1t.cpp
+++ b/src/mame/drivers/tandy1t.cpp
@@ -52,7 +52,7 @@ used XTA (8-bit IDE) harddisks.
#include "cpu/i86/i286.h"
#include "bus/pc_joy/pc_joy.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
DECLARE_DEVICE_TYPE(T1000_MOTHERBOARD, t1000_mb_device)
diff --git a/src/mame/drivers/tek405x.cpp b/src/mame/drivers/tek405x.cpp
index 7a4abef33b1..0bbfce34ea2 100644
--- a/src/mame/drivers/tek405x.cpp
+++ b/src/mame/drivers/tek405x.cpp
@@ -28,7 +28,7 @@
#include "emu.h"
#include "includes/tek405x.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/thomson.cpp b/src/mame/drivers/thomson.cpp
index 08031222c31..33df5ac1de5 100644
--- a/src/mame/drivers/thomson.cpp
+++ b/src/mame/drivers/thomson.cpp
@@ -91,7 +91,7 @@
#include "machine/ram.h"
#include "machine/wd_fdc.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/basicdsk.h"
diff --git a/src/mame/drivers/ti74.cpp b/src/mame/drivers/ti74.cpp
index 7d034c30ef1..8150a859f44 100644
--- a/src/mame/drivers/ti74.cpp
+++ b/src/mame/drivers/ti74.cpp
@@ -78,7 +78,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "ti74.lh"
#include "ti95.lh"
diff --git a/src/mame/drivers/ti99_4x.cpp b/src/mame/drivers/ti99_4x.cpp
index a6585142307..5058839ae76 100644
--- a/src/mame/drivers/ti99_4x.cpp
+++ b/src/mame/drivers/ti99_4x.cpp
@@ -52,7 +52,7 @@
#include "bus/ti99/internal/ioport.h"
#include "machine/ram.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define TI99_CONSOLEGROM "cons_grom"
diff --git a/src/mame/drivers/ti99_8.cpp b/src/mame/drivers/ti99_8.cpp
index 94c03f282ef..7285a1fc308 100644
--- a/src/mame/drivers/ti99_8.cpp
+++ b/src/mame/drivers/ti99_8.cpp
@@ -176,7 +176,7 @@ Known Issues (MZ, 2019-05-10)
#include "bus/ti99/joyport/joyport.h"
#include "bus/ti99/internal/ioport.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// Debugging
diff --git a/src/mame/drivers/tiki100.cpp b/src/mame/drivers/tiki100.cpp
index ee8b37171c0..84e0ed2ce4f 100644
--- a/src/mame/drivers/tiki100.cpp
+++ b/src/mame/drivers/tiki100.cpp
@@ -31,7 +31,7 @@
#include "includes/tiki100.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/timex.cpp b/src/mame/drivers/timex.cpp
index 70b3bfb824f..6709d06a5e9 100644
--- a/src/mame/drivers/timex.cpp
+++ b/src/mame/drivers/timex.cpp
@@ -156,7 +156,7 @@ http://www.z88forever.org.uk/zxplus3e/
#include "sound/ay8910.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "formats/tzx_cas.h"
diff --git a/src/mame/drivers/tispeak.cpp b/src/mame/drivers/tispeak.cpp
index b858d0e60c5..0ef99c621ba 100644
--- a/src/mame/drivers/tispeak.cpp
+++ b/src/mame/drivers/tispeak.cpp
@@ -418,7 +418,7 @@ Y-1320 : T.I. Dataman
#include "machine/timer.h"
#include "machine/tms6100.h"
#include "sound/tms5110.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "render.h"
diff --git a/src/mame/drivers/tomy_princ.cpp b/src/mame/drivers/tomy_princ.cpp
index c8ab9273097..1de7dd1aeb1 100644
--- a/src/mame/drivers/tomy_princ.cpp
+++ b/src/mame/drivers/tomy_princ.cpp
@@ -48,6 +48,7 @@
#include "emu.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "machine/timer.h"
#include "cpu/f2mc16/mb9061x.h"
diff --git a/src/mame/drivers/tourvis.cpp b/src/mame/drivers/tourvis.cpp
index bbdbc837427..f0e4736c303 100644
--- a/src/mame/drivers/tourvis.cpp
+++ b/src/mame/drivers/tourvis.cpp
@@ -188,7 +188,7 @@ http://blog.system11.org/?p=1943
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
namespace
diff --git a/src/mame/drivers/trs80.cpp b/src/mame/drivers/trs80.cpp
index 400281976b7..64eb3094670 100644
--- a/src/mame/drivers/trs80.cpp
+++ b/src/mame/drivers/trs80.cpp
@@ -156,6 +156,7 @@ ht1080z works
#include "includes/trs80.h"
#include "machine/input_merger.h"
#include "sound/ay8910.h"
+#include "softlist_dev.h"
void trs80_state::trs80_mem(address_map &map)
diff --git a/src/mame/drivers/trs80m2.cpp b/src/mame/drivers/trs80m2.cpp
index 13e7df39f81..13ba0b12cb7 100644
--- a/src/mame/drivers/trs80m2.cpp
+++ b/src/mame/drivers/trs80m2.cpp
@@ -25,7 +25,7 @@
#include "includes/trs80m2.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#define KEYBOARD_TAG "keyboard"
diff --git a/src/mame/drivers/trs80m3.cpp b/src/mame/drivers/trs80m3.cpp
index 5cc3f7a0d43..345e7578ca6 100644
--- a/src/mame/drivers/trs80m3.cpp
+++ b/src/mame/drivers/trs80m3.cpp
@@ -75,6 +75,7 @@ trs80m4p: Floppy not working, so machine is useless.
#include "includes/trs80m3.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/imd_dsk.h"
diff --git a/src/mame/drivers/tutor.cpp b/src/mame/drivers/tutor.cpp
index 8b2799d6700..6389448287c 100644
--- a/src/mame/drivers/tutor.cpp
+++ b/src/mame/drivers/tutor.cpp
@@ -179,7 +179,7 @@ A=AMA, P=PRO, these keys don't exist, and so the games cannot be played.
#include "bus/generic/carts.h"
#include "bus/generic/slot.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/tvc.cpp b/src/mame/drivers/tvc.cpp
index 7dac19358ff..ef16425a110 100644
--- a/src/mame/drivers/tvc.cpp
+++ b/src/mame/drivers/tvc.cpp
@@ -30,7 +30,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/tvc_cas.h"
diff --git a/src/mame/drivers/unichamp.cpp b/src/mame/drivers/unichamp.cpp
index 590d09ffcda..23823937d90 100644
--- a/src/mame/drivers/unichamp.cpp
+++ b/src/mame/drivers/unichamp.cpp
@@ -46,7 +46,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/ut88.cpp b/src/mame/drivers/ut88.cpp
index 5571a30bf86..8ac2eb48a85 100644
--- a/src/mame/drivers/ut88.cpp
+++ b/src/mame/drivers/ut88.cpp
@@ -28,6 +28,7 @@ too slow.
#include "formats/rk_cas.h"
#include "ut88mini.lh"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/uzebox.cpp b/src/mame/drivers/uzebox.cpp
index 5d8e54494ae..ba721845722 100644
--- a/src/mame/drivers/uzebox.cpp
+++ b/src/mame/drivers/uzebox.cpp
@@ -22,7 +22,7 @@
#include "bus/snes_ctrl/ctrl.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
// overclocked to 8 * NTSC burst frequency
diff --git a/src/mame/drivers/vboy.cpp b/src/mame/drivers/vboy.cpp
index 3dbaf47a3eb..584f25245ce 100644
--- a/src/mame/drivers/vboy.cpp
+++ b/src/mame/drivers/vboy.cpp
@@ -35,7 +35,7 @@
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "vboy.lh"
diff --git a/src/mame/drivers/vc4000.cpp b/src/mame/drivers/vc4000.cpp
index bace6ae8ab2..817a8b673d8 100644
--- a/src/mame/drivers/vc4000.cpp
+++ b/src/mame/drivers/vc4000.cpp
@@ -133,7 +133,7 @@ Q-0900^76203F0161063005080E492DCD4890597877103F020E75105A0A0C1E89F4101879
#include "emu.h"
#include "includes/vc4000.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/vector06.cpp b/src/mame/drivers/vector06.cpp
index dd08d565414..7446bdf7952 100644
--- a/src/mame/drivers/vector06.cpp
+++ b/src/mame/drivers/vector06.cpp
@@ -37,6 +37,7 @@ TODO:
#include "formats/vector06_dsk.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
/* Address maps */
diff --git a/src/mame/drivers/vectrex.cpp b/src/mame/drivers/vectrex.cpp
index da2be7804b5..e2ff7013950 100644
--- a/src/mame/drivers/vectrex.cpp
+++ b/src/mame/drivers/vectrex.cpp
@@ -19,7 +19,7 @@ Bruce Tomlin (hardware info)
#include "sound/ay8910.h"
#include "video/vector.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/vg5k.cpp b/src/mame/drivers/vg5k.cpp
index 34383bda6f7..7dd0c100c9d 100644
--- a/src/mame/drivers/vg5k.cpp
+++ b/src/mame/drivers/vg5k.cpp
@@ -58,7 +58,7 @@
#include "video/ef9345.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/vg5k_cas.h"
diff --git a/src/mame/drivers/vgmplay.cpp b/src/mame/drivers/vgmplay.cpp
index 32130823ff5..9dc0edcf6f0 100644
--- a/src/mame/drivers/vgmplay.cpp
+++ b/src/mame/drivers/vgmplay.cpp
@@ -49,6 +49,7 @@
#include "vgmplay.lh"
#include "debugger.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include <zlib.h>
diff --git a/src/mame/drivers/vic10.cpp b/src/mame/drivers/vic10.cpp
index 3d43698692c..9fcd2ab324f 100644
--- a/src/mame/drivers/vic10.cpp
+++ b/src/mame/drivers/vic10.cpp
@@ -11,7 +11,7 @@
#include "emu.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/pet/cass.h"
#include "bus/vic10/exp.h"
diff --git a/src/mame/drivers/vic20.cpp b/src/mame/drivers/vic20.cpp
index 4c6058c2c97..3024231550f 100644
--- a/src/mame/drivers/vic20.cpp
+++ b/src/mame/drivers/vic20.cpp
@@ -11,7 +11,7 @@
#include "emu.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "bus/cbmiec/cbmiec.h"
#include "bus/pet/cass.h"
diff --git a/src/mame/drivers/victor9k.cpp b/src/mame/drivers/victor9k.cpp
index bb12a1ae6ae..d558970abec 100644
--- a/src/mame/drivers/victor9k.cpp
+++ b/src/mame/drivers/victor9k.cpp
@@ -41,7 +41,7 @@
#include "video/mc6845.h"
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#define I8088_TAG "8l"
diff --git a/src/mame/drivers/vidbrain.cpp b/src/mame/drivers/vidbrain.cpp
index fb2f08f564a..cb544d36788 100644
--- a/src/mame/drivers/vidbrain.cpp
+++ b/src/mame/drivers/vidbrain.cpp
@@ -54,7 +54,7 @@ Using the system:
#include "includes/vidbrain.h"
#include "machine/rescap.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "vidbrain.lh"
diff --git a/src/mame/drivers/vip.cpp b/src/mame/drivers/vip.cpp
index 2dd7ac192bf..156d1172a67 100644
--- a/src/mame/drivers/vip.cpp
+++ b/src/mame/drivers/vip.cpp
@@ -238,7 +238,7 @@ Usage:
#include "includes/vip.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/vixen.cpp b/src/mame/drivers/vixen.cpp
index 276ccaada74..6bd13326939 100644
--- a/src/mame/drivers/vixen.cpp
+++ b/src/mame/drivers/vixen.cpp
@@ -68,7 +68,7 @@ Notes:
#include "emupal.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/vsmile.cpp b/src/mame/drivers/vsmile.cpp
index 0eeffda38ac..479f1ebdd09 100644
--- a/src/mame/drivers/vsmile.cpp
+++ b/src/mame/drivers/vsmile.cpp
@@ -10,7 +10,7 @@
#include "includes/vsmile.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "vsmile.lh"
diff --git a/src/mame/drivers/vsmileb.cpp b/src/mame/drivers/vsmileb.cpp
index b95684fd770..c128cd4199b 100644
--- a/src/mame/drivers/vsmileb.cpp
+++ b/src/mame/drivers/vsmileb.cpp
@@ -26,7 +26,7 @@
#include "includes/vsmile.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/vtech1.cpp b/src/mame/drivers/vtech1.cpp
index 029c7417461..d4a4ded1a69 100644
--- a/src/mame/drivers/vtech1.cpp
+++ b/src/mame/drivers/vtech1.cpp
@@ -40,6 +40,7 @@ Todo:
#include "sound/spkrdev.h"
#include "video/mc6847.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/imageutl.h"
diff --git a/src/mame/drivers/vtech2.cpp b/src/mame/drivers/vtech2.cpp
index d9e15bed0f2..241ab23a7d2 100644
--- a/src/mame/drivers/vtech2.cpp
+++ b/src/mame/drivers/vtech2.cpp
@@ -77,6 +77,7 @@
#include "cpu/z80/z80.h"
#include "formats/vt_cas.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/vtech_innotab.cpp b/src/mame/drivers/vtech_innotab.cpp
index 8f12c8c9562..c467bc565a0 100644
--- a/src/mame/drivers/vtech_innotab.cpp
+++ b/src/mame/drivers/vtech_innotab.cpp
@@ -21,7 +21,7 @@
#include "bus/generic/carts.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
class vtech_innotab_state : public driver_device
diff --git a/src/mame/drivers/wangpc.cpp b/src/mame/drivers/wangpc.cpp
index f6b8c4b5156..1ba7681f0a5 100644
--- a/src/mame/drivers/wangpc.cpp
+++ b/src/mame/drivers/wangpc.cpp
@@ -20,7 +20,7 @@
*/
#include "emu.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "bus/centronics/ctronics.h"
#include "bus/rs232/rs232.h"
#include "bus/wangpc/wangpc.h"
diff --git a/src/mame/drivers/wicat.cpp b/src/mame/drivers/wicat.cpp
index 4f47bfddda9..024d24920fd 100644
--- a/src/mame/drivers/wicat.cpp
+++ b/src/mame/drivers/wicat.cpp
@@ -35,6 +35,7 @@ Wicat - various systems.
#include "video/i8275.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "wicat.lh"
diff --git a/src/mame/drivers/wizard.cpp b/src/mame/drivers/wizard.cpp
index 81b9f5a5a81..877f14aed7b 100644
--- a/src/mame/drivers/wizard.cpp
+++ b/src/mame/drivers/wizard.cpp
@@ -65,7 +65,7 @@ More info:
#include "cpu/arm7/arm7core.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "screen.h"
diff --git a/src/mame/drivers/wswan.cpp b/src/mame/drivers/wswan.cpp
index c770f0c5207..ad1eb484937 100644
--- a/src/mame/drivers/wswan.cpp
+++ b/src/mame/drivers/wswan.cpp
@@ -34,7 +34,7 @@
#include "emupal.h"
#include "render.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "wswan.lh"
diff --git a/src/mame/drivers/x07.cpp b/src/mame/drivers/x07.cpp
index dcd9bb93ea1..381ea73d1e8 100644
--- a/src/mame/drivers/x07.cpp
+++ b/src/mame/drivers/x07.cpp
@@ -32,7 +32,7 @@
#include "includes/x07.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/drivers/x1.cpp b/src/mame/drivers/x1.cpp
index fba91bf66b0..1852a94dd30 100644
--- a/src/mame/drivers/x1.cpp
+++ b/src/mame/drivers/x1.cpp
@@ -208,7 +208,7 @@
#include "emu.h"
#include "includes/x1.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "formats/2d_dsk.h"
diff --git a/src/mame/drivers/xavix.cpp b/src/mame/drivers/xavix.cpp
index 64174166145..4c1692234e0 100644
--- a/src/mame/drivers/xavix.cpp
+++ b/src/mame/drivers/xavix.cpp
@@ -232,6 +232,7 @@
#include "emu.h"
#include "includes/xavix.h"
+#include "softlist_dev.h"
/* rad_madf has callf #$8f3f21 in various places, and expects to jump to code in ROM, it is unclear how things map in this case, as presumably
diff --git a/src/mame/drivers/z1013.cpp b/src/mame/drivers/z1013.cpp
index 4cb97de983e..9bc0b8763f4 100644
--- a/src/mame/drivers/z1013.cpp
+++ b/src/mame/drivers/z1013.cpp
@@ -56,6 +56,7 @@ Due to no input checking, misuse of commands can crash the system.
#include "imagedev/snapquik.h"
#include "emupal.h"
#include "screen.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "sound/spkrdev.h"
diff --git a/src/mame/drivers/z80clock.cpp b/src/mame/drivers/z80clock.cpp
index ab3f69b8cdf..f5bde81fcc5 100644
--- a/src/mame/drivers/z80clock.cpp
+++ b/src/mame/drivers/z80clock.cpp
@@ -27,7 +27,7 @@ TODO:
#include "machine/z80sio.h"
#include "sound/spkrdev.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
#include "z80clock.lh"
diff --git a/src/mame/drivers/z80ne.cpp b/src/mame/drivers/z80ne.cpp
index 08a42b7668e..7c7b9af8322 100644
--- a/src/mame/drivers/z80ne.cpp
+++ b/src/mame/drivers/z80ne.cpp
@@ -132,7 +132,7 @@ Natural Keyboard and Paste:
#include "includes/z80ne.h"
#include "formats/dmk_dsk.h"
#include "machine/ram.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
/* Layout */
diff --git a/src/mame/drivers/z88.cpp b/src/mame/drivers/z88.cpp
index 82df4b006d3..daf98ef8db8 100644
--- a/src/mame/drivers/z88.cpp
+++ b/src/mame/drivers/z88.cpp
@@ -21,6 +21,8 @@
#include "emu.h"
#include "includes/z88.h"
+#include "softlist_dev.h"
+
/* Assumption:
all banks can access the same memory blocks in the same way.
diff --git a/src/mame/drivers/zorba.cpp b/src/mame/drivers/zorba.cpp
index 5ab4a9463d6..74f85779d4f 100644
--- a/src/mame/drivers/zorba.cpp
+++ b/src/mame/drivers/zorba.cpp
@@ -66,7 +66,7 @@ ToDo:
#include "machine/pit8253.h"
#include "screen.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#include "speaker.h"
diff --git a/src/mame/machine/apollo.cpp b/src/mame/machine/apollo.cpp
index 03ee565f5e4..d1b21259db1 100644
--- a/src/mame/machine/apollo.cpp
+++ b/src/mame/machine/apollo.cpp
@@ -35,7 +35,7 @@
#include "bus/isa/sc499.h"
#include "bus/isa/3c505.h"
-#include "softlist.h"
+#include "softlist_dev.h"
#define APOLLO_IRQ_VECTOR 0xa0
#define APOLLO_IRQ_PTM 0