diff --git a/plugins/layout/init.lua b/plugins/layout/init.lua
index d4c9a535f34..f3b1094ef55 100644
--- a/plugins/layout/init.lua
+++ b/plugins/layout/init.lua
@@ -51,7 +51,7 @@ function layout.startplugin()
table = table }
local script, err = load(script, script, "t", env)
if not script then
- emu.print_verbose("error loading layout script " .. err)
+ emu.print_warning("error loading layout script " .. err)
return
end
local hooks = script()
diff --git a/src/mame/layout/babydad.lay b/src/mame/layout/babydad.lay
index 1580034785d..a23320224e9 100644
--- a/src/mame/layout/babydad.lay
+++ b/src/mame/layout/babydad.lay
@@ -106,7 +106,7 @@ license:CC0-1.0
-
+
diff --git a/src/mame/layout/babypkr.lay b/src/mame/layout/babypkr.lay
index 48fbcbca93a..77a70987b65 100644
--- a/src/mame/layout/babypkr.lay
+++ b/src/mame/layout/babypkr.lay
@@ -133,7 +133,7 @@ license:CC0-1.0
-
+
diff --git a/src/mame/layout/bfm_sc4.lay b/src/mame/layout/bfm_sc4.lay
index c795126d447..7b2ac79c481 100644
--- a/src/mame/layout/bfm_sc4.lay
+++ b/src/mame/layout/bfm_sc4.lay
@@ -52,7 +52,7 @@ license:CC0-1.0
- "
+
diff --git a/src/mame/layout/bfm_sc5.lay b/src/mame/layout/bfm_sc5.lay
index c795126d447..7b2ac79c481 100644
--- a/src/mame/layout/bfm_sc5.lay
+++ b/src/mame/layout/bfm_sc5.lay
@@ -52,7 +52,7 @@ license:CC0-1.0
- "
+
diff --git a/src/mame/layout/bfm_sc5_gu96x8.lay b/src/mame/layout/bfm_sc5_gu96x8.lay
index c5226a5a682..b8ea3a681c5 100644
--- a/src/mame/layout/bfm_sc5_gu96x8.lay
+++ b/src/mame/layout/bfm_sc5_gu96x8.lay
@@ -52,7 +52,7 @@ license:CC0
- "
+
@@ -254,7 +254,7 @@ license:CC0
-
+
@@ -270,7 +270,7 @@ license:CC0
-
+
diff --git a/src/mame/layout/bigtrak.lay b/src/mame/layout/bigtrak.lay
index fcc7e90d3dd..e471bd0b718 100644
--- a/src/mame/layout/bigtrak.lay
+++ b/src/mame/layout/bigtrak.lay
@@ -50,7 +50,7 @@ authors:hap
- >
+
diff --git a/src/mame/layout/dx100.lay b/src/mame/layout/dx100.lay
index 17d40389658..a016ba269f0 100644
--- a/src/mame/layout/dx100.lay
+++ b/src/mame/layout/dx100.lay
@@ -47,7 +47,7 @@ license:CC0-1.0
-
+
@@ -953,7 +953,7 @@ license:CC0-1.0
-
+
diff --git a/src/mame/layout/eacc.lay b/src/mame/layout/eacc.lay
index eecd0b9dcc0..67fbb9fe778 100644
--- a/src/mame/layout/eacc.lay
+++ b/src/mame/layout/eacc.lay
@@ -13,7 +13,7 @@ Electronics Australia Car Computer
-
+
diff --git a/src/mame/layout/ecoinf2.lay b/src/mame/layout/ecoinf2.lay
index 897824460c5..53b235ec21e 100644
--- a/src/mame/layout/ecoinf2.lay
+++ b/src/mame/layout/ecoinf2.lay
@@ -44,7 +44,7 @@ license:CC0-1.0
- "
+
diff --git a/src/mame/layout/ecoinf3.lay b/src/mame/layout/ecoinf3.lay
index 897824460c5..53b235ec21e 100644
--- a/src/mame/layout/ecoinf3.lay
+++ b/src/mame/layout/ecoinf3.lay
@@ -44,7 +44,7 @@ license:CC0-1.0
- "
+
diff --git a/src/mame/layout/ecoinfr.lay b/src/mame/layout/ecoinfr.lay
index 4d7811620f4..061072d41bb 100644
--- a/src/mame/layout/ecoinfr.lay
+++ b/src/mame/layout/ecoinfr.lay
@@ -28,7 +28,7 @@ license:CC0-1.0
- "
+
diff --git a/src/mame/layout/enmirage.lay b/src/mame/layout/enmirage.lay
index 816dc72e14d..a1466c21fdf 100644
--- a/src/mame/layout/enmirage.lay
+++ b/src/mame/layout/enmirage.lay
@@ -103,7 +103,7 @@ copyright-holders:tim lindner
- 11
+
diff --git a/src/mame/layout/fb01.lay b/src/mame/layout/fb01.lay
index d9f94cc3454..c6cecf5ae06 100644
--- a/src/mame/layout/fb01.lay
+++ b/src/mame/layout/fb01.lay
@@ -130,7 +130,7 @@ license:CC0-1.0
-
+
diff --git a/src/mame/layout/guab.lay b/src/mame/layout/guab.lay
index 0c180f80a5c..d6ece6cdb68 100644
--- a/src/mame/layout/guab.lay
+++ b/src/mame/layout/guab.lay
@@ -89,7 +89,7 @@ license:CC0-1.0
- a
+
diff --git a/src/mame/layout/hp3478a.lay b/src/mame/layout/hp3478a.lay
index 9d7c2263ed1..55057e3341e 100644
--- a/src/mame/layout/hp3478a.lay
+++ b/src/mame/layout/hp3478a.lay
@@ -28,7 +28,7 @@ loosely based on tranz330.lay
-
+
diff --git a/src/mame/layout/interpro.lay b/src/mame/layout/interpro.lay
index fc504c4df5e..0c8ce80e27c 100644
--- a/src/mame/layout/interpro.lay
+++ b/src/mame/layout/interpro.lay
@@ -10,6 +10,12 @@ TODO
- monitor bezels
-->
+
+
+
+
+
+
@@ -22,12 +28,6 @@ TODO
-
-
-
-
-
-
diff --git a/src/mame/layout/m4andybt.lay b/src/mame/layout/m4andybt.lay
index f1debc6544c..3bef616c343 100644
--- a/src/mame/layout/m4andybt.lay
+++ b/src/mame/layout/m4andybt.lay
@@ -355,7 +355,7 @@
-
+
@@ -535,7 +535,7 @@
-
+
@@ -1575,7 +1575,7 @@
-
+
@@ -3151,7 +3151,7 @@
-
+
@@ -3179,7 +3179,7 @@
-
+
@@ -3203,7 +3203,7 @@
-
+
@@ -3223,7 +3223,7 @@
-
+
@@ -3247,7 +3247,7 @@
-
+
@@ -3271,7 +3271,7 @@
-
+
@@ -3315,7 +3315,7 @@
-
+
@@ -3732,7 +3732,7 @@
-
+
@@ -3786,7 +3786,7 @@
-
+
@@ -4074,7 +4074,7 @@
-
+
diff --git a/src/mame/layout/mdndclab.lay b/src/mame/layout/mdndclab.lay
index 8627e852475..6424ee876ae 100644
--- a/src/mame/layout/mdndclab.lay
+++ b/src/mame/layout/mdndclab.lay
@@ -5,73 +5,6 @@ authors:hap, Carl
-->
-
-
-
@@ -387,4 +320,71 @@ authors:hap, Carl
+
+
+
diff --git a/src/mame/layout/microtouch.lay b/src/mame/layout/microtouch.lay
index 6f9f36c8894..893a14c96a1 100644
--- a/src/mame/layout/microtouch.lay
+++ b/src/mame/layout/microtouch.lay
@@ -17,6 +17,12 @@ license:CC0-1.0
local btn_field = tsdev:ioport('TOUCH'):field(0x01)
local x_field = tsdev:ioport('TOUCH_X'):field(0x3fff)
local y_field = tsdev:ioport('TOUCH_Y'):field(0x3fff)
+ local set_field_value = btn_field.set_value
+ local clear_field_value = btn_field.clear_value
+ local x_min = x_field.minvalue
+ local x_max = x_field.maxvalue
+ local y_min = y_field.minvalue
+ local y_max = y_field.maxvalue
-- for mapping coordinates
local view = file.views['Touch-Enabled']
@@ -30,9 +36,9 @@ license:CC0-1.0
local inside = false
local function release_touch()
- btn_field:clear_value()
- x_field:clear_value()
- y_field:clear_value()
+ clear_field_value(btn_field)
+ clear_field_value(x_field)
+ clear_field_value(y_field)
end
local function recomputed()
@@ -41,16 +47,28 @@ license:CC0-1.0
r = bounds.x1
t = bounds.y0
b = bounds.y1
- x_scale = 0x3fff / bounds.width
- y_scale = 0x3fff / bounds.height
+ x_scale = (x_max - x_min + 1) / bounds.width
+ y_scale = (y_max - y_min + 1) / bounds.height
end
local function check_pointer(x, y)
if (x >= l) and (x < r) and (y >= t) and (y < b) then
inside = true
- btn_field:set_value(1)
- x_field:set_value(floor(0.5 + ((x - l) * x_scale)))
- y_field:set_value(floor(0.5 + ((y - t) * y_scale)))
+ local ix = x_min + floor(0.0001 + ((x - l) * x_scale))
+ if ix < x_min then
+ ix = x_min
+ elseif ix > x_max then
+ ix = x_max
+ end
+ local iy = y_min + floor(0.0001 + ((y - t) * y_scale))
+ if iy < y_min then
+ iy = y_min
+ elseif iy > y_max then
+ iy = y_max
+ end
+ set_field_value(btn_field, 1)
+ set_field_value(x_field, ix)
+ set_field_value(y_field, iy)
elseif inside then
inside = false
release_touch()
diff --git a/src/mame/layout/mu128.lay b/src/mame/layout/mu128.lay
index 762b6ae6e0c..ee6c4b00f68 100644
--- a/src/mame/layout/mu128.lay
+++ b/src/mame/layout/mu128.lay
@@ -43,7 +43,7 @@ authors:hap
-// mu-plg1-plg2-plg3
+
diff --git a/src/mame/layout/pce220.lay b/src/mame/layout/pce220.lay
index c044961786b..b9e30eec0b7 100644
--- a/src/mame/layout/pce220.lay
+++ b/src/mame/layout/pce220.lay
@@ -142,11 +142,11 @@
-
+
-
+
diff --git a/src/mame/layout/pntnpuzl.lay b/src/mame/layout/pntnpuzl.lay
index b3b0e2c7880..edae6ae356c 100644
--- a/src/mame/layout/pntnpuzl.lay
+++ b/src/mame/layout/pntnpuzl.lay
@@ -60,10 +60,16 @@ license:CC0-1.0
-
@@ -225,4 +186,43 @@ license:CC0-1.0
+
+
+
+