summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
author smf- <smf-@users.noreply.github.com>2013-06-10 19:33:46 +0000
committer smf- <smf-@users.noreply.github.com>2013-06-10 19:33:46 +0000
commit603f354635230221498ddac8bbcc47c066f9677d (patch)
treeda8fcd00aa01c8a970188e6c12dce5698bf0c067
parentb58b1ddc28b3b9de0e703de3a1cc3e6d2e18741d (diff)
Added support to jedutil for decoding 82S153, PLS153 & CK2605 [Kevin Eshbach, Charles MacDonald]
-rw-r--r--.gitattributes59
-rw-r--r--.gitignore4
-rw-r--r--makefile30
-rw-r--r--src/regtests/jedutil/baseline/18cv8/18cv8_bi-directional_io.txt37
-rw-r--r--src/regtests/jedutil/baseline/ck2605/ck2605-test1.txt109
-rw-r--r--src/regtests/jedutil/baseline/ck2605/ck2605-test2.txt109
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/gal18v10-test1.txt123
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal10h8-to-gal18v10.txt49
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal10l8-to-gal18v10.txt49
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal12h6-to-gal18v10.txt43
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal12l6-to-gal18v10.txt43
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal14h4-to-gal18v10.txt37
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal14l4-to-gal18v10.txt37
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal16h2-to-gal18v10.txt31
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal16l2-to-gal18v10.txt31
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal16l8-to-gal18v10.txt89
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal16r4-to-gal18v10.txt93
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal16r6-to-gal18v10.txt95
-rw-r--r--src/regtests/jedutil/baseline/gal18v10/pal16r8-to-gal18v10.txt97
-rw-r--r--src/regtests/jedutil/baseline/pls153/pls153.txt178
-rw-r--r--src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_combinatorial_feedback.psf2
-rw-r--r--src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_register_feedback.psf2
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal10h8/pal10h8.eqn (renamed from src/regtests/jedutil/eqns/pal10h8/pal10h8.eqn)0
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal10l8/pal10l8.eqn30
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal12h6/pal12h6.eqn28
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal12l6/pal12l6.eqn28
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal14h4/pal14h4.eqn26
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal14l4/pal14l4.eqn26
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal16c1/pal16c1.eqn23
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal16h2/pal16h2.eqn24
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal16l2/pal16l2.eqn24
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal16l8/pal16l8.eqn79
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal16r4/pal16r4.eqn82
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal16r6/pal16r6.eqn84
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal16r8/pal16r8.eqn86
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal20l10/pal20l10.eqn56
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal20l8/pal20l8.eqn78
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal20r4/pal20r4.eqn82
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal20r6/pal20r6.eqn84
-rw-r--r--src/regtests/jedutil/eqns/Opal_Jr/pal20r8/pal20r8.eqn86
-rw-r--r--src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.abl138
-rw-r--r--src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.syn11
-rw-r--r--src/regtests/jedutil/eqns/ispLEVER_Classic/readme.txt1
-rw-r--r--src/regtests/jedutil/jeds/18cv8/18cv8_bi-directional_io.jed104
-rw-r--r--src/regtests/jedutil/jeds/18cv8/pal10l8-to-peel18cv8.jed104
-rw-r--r--src/regtests/jedutil/jeds/18cv8/pal16l8-to-peel18cv8.jed104
-rw-r--r--src/regtests/jedutil/jeds/ck2605/ck2605-test1.jed36
-rw-r--r--src/regtests/jedutil/jeds/ck2605/ck2605-test2.jed36
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/gal18v10-test1.jed109
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal10h8-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal10l8-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal12h6-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal12l6-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal14h4-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal14l4-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal16h2-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal16l2-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal16l8-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal16r4-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal16r6-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/gal18v10/pal16r8-to-gal18v10.jed133
-rw-r--r--src/regtests/jedutil/jeds/pls153/pls153.jed52
-rw-r--r--src/regtests/jedutil/jedtest.wsf335
-rw-r--r--src/tools/jedutil.c475
64 files changed, 4989 insertions, 385 deletions
diff --git a/.gitattributes b/.gitattributes
index 202efa52ef9..50590d753c8 100644
--- a/.gitattributes
+++ b/.gitattributes
@@ -8493,6 +8493,7 @@ src/regtests/chdman/output/createcd_iso_empty/out.chd -text
src/regtests/chdman/output/createcd_nrg_empty/out.chd -text
src/regtests/chdman/output/createcd_toc_empty/out.chd -text
src/regtests/chdman/output/createhd_1/out.chd -text
+src/regtests/jedutil/baseline/18cv8/18cv8_bi-directional_io.txt svneol=native#text/plain
src/regtests/jedutil/baseline/18cv8/18cv8_combinatorial_feedback.txt svneol=native#text/plain
src/regtests/jedutil/baseline/18cv8/18cv8_register_feedback.txt svneol=native#text/plain
src/regtests/jedutil/baseline/18cv8/pal10h8-to-peel18cv8.txt svneol=native#text/plain
@@ -8507,6 +8508,8 @@ src/regtests/jedutil/baseline/18cv8/pal16l8-to-peel18cv8.txt svneol=native#text/
src/regtests/jedutil/baseline/18cv8/pal16r4-to-peel18cv8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/18cv8/pal16r6-to-peel18cv8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/18cv8/pal16r8-to-peel18cv8.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/ck2605/ck2605-test1.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/ck2605/ck2605-test2.txt svneol=native#text/plain
src/regtests/jedutil/baseline/gal16v8/pal10h8-to-gal16v8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/gal16v8/pal10l8-to-gal16v8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/gal16v8/pal12h6-to-gal16v8.txt svneol=native#text/plain
@@ -8519,6 +8522,19 @@ src/regtests/jedutil/baseline/gal16v8/pal16l8-to-gal16v8.txt svneol=native#text/
src/regtests/jedutil/baseline/gal16v8/pal16r4-to-gal16v8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/gal16v8/pal16r6-to-gal16v8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/gal16v8/pal16r8-to-gal16v8.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/gal18v10-test1.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal10h8-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal10l8-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal12h6-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal12l6-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal14h4-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal14l4-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal16h2-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal16l2-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal16l8-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal16r4-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal16r6-to-gal18v10.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/gal18v10/pal16r8-to-gal18v10.txt svneol=native#text/plain
src/regtests/jedutil/baseline/pal10h8/pal10h8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/pal10l8/pal10l8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/pal12h6/pal12h6.txt svneol=native#text/plain
@@ -8537,12 +8553,33 @@ src/regtests/jedutil/baseline/pal20l8/pal20l8.txt svneol=native#text/plain
src/regtests/jedutil/baseline/pal20r4/pal20r4.txt svneol=native#text/plain
src/regtests/jedutil/baseline/pal20r6/pal20r6.txt svneol=native#text/plain
src/regtests/jedutil/baseline/pal20r8/pal20r8.txt svneol=native#text/plain
+src/regtests/jedutil/baseline/pls153/pls153.txt svneol=native#text/plain
src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_bi-directional_io.psf svneol=native#text/plain
src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_combinatorial_feedback.psf svneol=native#text/plain
src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_register_feedback.psf svneol=native#text/plain
src/regtests/jedutil/eqns/ICT_Place/readme.txt svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal10h8/pal10h8.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal10l8/pal10l8.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal12h6/pal12h6.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal12l6/pal12l6.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal14h4/pal14h4.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal14l4/pal14l4.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal16c1/pal16c1.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal16h2/pal16h2.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal16l2/pal16l2.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal16l8/pal16l8.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal16r4/pal16r4.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal16r6/pal16r6.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal16r8/pal16r8.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal20l10/pal20l10.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal20l8/pal20l8.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal20r4/pal20r4.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal20r6/pal20r6.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/Opal_Jr/pal20r8/pal20r8.eqn svneol=native#text/plain
src/regtests/jedutil/eqns/Opal_Jr/readme.txt svneol=native#text/plain
-src/regtests/jedutil/eqns/pal10h8/pal10h8.eqn svneol=native#text/plain
+src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.abl svneol=native#text/plain
+src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.syn svneol=native#text/plain
+src/regtests/jedutil/eqns/ispLEVER_Classic/readme.txt svneol=native#text/plain
src/regtests/jedutil/eqns/pal10l8/pal10l8.eqn svneol=native#text/plain
src/regtests/jedutil/eqns/pal12h6/pal12h6.eqn svneol=native#text/plain
src/regtests/jedutil/eqns/pal12l6/pal12l6.eqn svneol=native#text/plain
@@ -8561,18 +8598,23 @@ src/regtests/jedutil/eqns/pal20r4/pal20r4.eqn svneol=native#text/plain
src/regtests/jedutil/eqns/pal20r6/pal20r6.eqn svneol=native#text/plain
src/regtests/jedutil/eqns/pal20r8/pal20r8.eqn svneol=native#text/plain
src/regtests/jedutil/eqns/readme.txt svneol=native#text/plain
+src/regtests/jedutil/jeds/18cv8/18cv8_bi-directional_io.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/18cv8_combinatorial_feedback.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/18cv8_register_feedback.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal10h8-to-peel18cv8.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/18cv8/pal10l8-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal12h6-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal12l6-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal14h4-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal14l4-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal16h2-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal16l2-to-peel18cv8.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/18cv8/pal16l8-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal16r4-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal16r6-to-peel18cv8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/18cv8/pal16r8-to-peel18cv8.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/ck2605/ck2605-test1.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/ck2605/ck2605-test2.jed svneol=native#text/plain
src/regtests/jedutil/jeds/gal16v8/pal10h8-to-gal16v8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/gal16v8/pal10l8-to-gal16v8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/gal16v8/pal12h6-to-gal16v8.jed svneol=native#text/plain
@@ -8585,6 +8627,19 @@ src/regtests/jedutil/jeds/gal16v8/pal16l8-to-gal16v8.jed svneol=native#text/plai
src/regtests/jedutil/jeds/gal16v8/pal16r4-to-gal16v8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/gal16v8/pal16r6-to-gal16v8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/gal16v8/pal16r8-to-gal16v8.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/gal18v10-test1.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal10h8-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal10l8-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal12h6-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal12l6-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal14h4-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal14l4-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal16h2-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal16l2-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal16l8-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal16r4-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal16r6-to-gal18v10.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/gal18v10/pal16r8-to-gal18v10.jed svneol=native#text/plain
src/regtests/jedutil/jeds/pal10h8/pal10h8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/pal10l8/pal10l8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/pal12h6/pal12h6.jed svneol=native#text/plain
@@ -8603,8 +8658,8 @@ src/regtests/jedutil/jeds/pal20l8/pal20l8.jed svneol=native#text/plain
src/regtests/jedutil/jeds/pal20r4/pal20r4.jed svneol=native#text/plain
src/regtests/jedutil/jeds/pal20r6/pal20r6.jed svneol=native#text/plain
src/regtests/jedutil/jeds/pal20r8/pal20r8.jed svneol=native#text/plain
+src/regtests/jedutil/jeds/pls153/pls153.jed svneol=native#text/plain
src/regtests/jedutil/jedtest.py svneol=native#text/plain
-src/regtests/jedutil/jedtest.wsf svneol=native#text/plain
src/tools/chdman.c svneol=native#text/plain
src/tools/jedutil.c svneol=native#text/plain
src/tools/ldresample.c svneol=native#text/plain
diff --git a/.gitignore b/.gitignore
index cc36d4f8268..e18d344b67e 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,7 +1,3 @@
-/*.exe
-/*.map
-/*.pdb
-/*.sym
/obj
src/regtests/chdman/temp
src/regtests/jedutil/output
diff --git a/makefile b/makefile
index e94f085e05e..cc76b0ca967 100644
--- a/makefile
+++ b/makefile
@@ -19,7 +19,7 @@
#-------------------------------------------------
# specify core target: mame, mess, etc.
# specify subtarget: mame, mess, tiny, etc.
-# build rules will be included from
+# build rules will be included from
# src/$(TARGET)/$(SUBTARGET).mak
#-------------------------------------------------
@@ -35,7 +35,7 @@ endif
#-------------------------------------------------
# specify OSD layer: windows, sdl, etc.
-# build rules will be included from
+# build rules will be included from
# src/osd/$(OSD)/$(OSD).mak
#-------------------------------------------------
@@ -129,7 +129,7 @@ endif
endif # BIGENDIAN
endif # OS/2
-endif # CROSS_BUILD
+endif # CROSS_BUILD
endif # Windows_NT
endif # TARGET_OS
@@ -177,7 +177,7 @@ endif
#-------------------------------------------------
-# specify program options; see each option below
+# specify program options; see each option below
# for details
#-------------------------------------------------
@@ -642,7 +642,7 @@ DRIVLISTOBJ = $(OBJ)/$(TARGET)/$(SUBTARGET)/drivlist.o
#-------------------------------------------------
-# either build or link against the included
+# either build or link against the included
# libraries
#-------------------------------------------------
@@ -709,7 +709,7 @@ LIBS += -lstdc++ -lpthread
endif
#-------------------------------------------------
-# 'default' target needs to go here, before the
+# 'default' target needs to go here, before the
# include files which define additional targets
#-------------------------------------------------
@@ -717,17 +717,12 @@ default: maketree buildtools emulator
all: default tools
-# TODO: move to a .mak file in the regtests folder?
tests: maketree jedutil$(EXE) chdman$(EXE)
- @echo Running jedutil unittest
- $(PYTHON) src/regtests/jedutil/jedtest.py
- @echo Running chdman unittest
- $(PYTHON) src/regtests/chdman/chdtest.py
-7Z_LIB = $(OBJ)/lib7z.a
+7Z_LIB = $(OBJ)/lib7z.a
#-------------------------------------------------
-# defines needed by multiple make files
+# defines needed by multiple make files
#-------------------------------------------------
BUILDSRC = $(SRC)/build
@@ -751,6 +746,7 @@ include $(SRC)/emu/emu.mak
include $(SRC)/lib/lib.mak
-include $(SRC)/osd/$(CROSS_BUILD_OSD)/build.mak
include $(SRC)/tools/tools.mak
+include $(SRC)/regtests/regtests.mak
# combine the various definitions to one
CCOMFLAGS += $(INCPATH)
@@ -793,11 +789,13 @@ ifdef SYMBOLS
endif
checkautodetect:
- @echo TARGETOS=$(TARGETOS)
- @echo PTR64=$(PTR64)
- @echo BIGENDIAN=$(BIGENDIAN)
+ @echo TARGETOS=$(TARGETOS)
+ @echo PTR64=$(PTR64)
+ @echo BIGENDIAN=$(BIGENDIAN)
@echo UNAME="$(UNAME)"
+tests: $(REGTESTS)
+
#-------------------------------------------------
# directory targets
diff --git a/src/regtests/jedutil/baseline/18cv8/18cv8_bi-directional_io.txt b/src/regtests/jedutil/baseline/18cv8/18cv8_bi-directional_io.txt
new file mode 100644
index 00000000000..f74e5816295
--- /dev/null
+++ b/src/regtests/jedutil/baseline/18cv8/18cv8_bi-directional_io.txt
@@ -0,0 +1,37 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+12 (Combinatorial, Output feedback output, Active high)
+14 (Registered, Output feedback output, Active high)
+16 (Registered, Output feedback output, Active low)
+18 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+o12 = i1 & /i2 +
+ /i3 & /i4 & /i5 & i6 +
+ /o18 +
+ i13 & /rfo14 & rfo16 +
+ rfo14 & i15 & /rfo16
+o12.oe = o18
+
+rf14 := i11 & /rfo14 +
+ rfo16 & /o18 +
+ o12 & /rfo16 & o18
+rf14.oe = /o12
+
+/rf16 := o12 & rfo14 +
+ /o12 & /rfo14 & /o18 +
+ i13 & rfo16
+rf16.oe = o18
+
+/o18 = /i7 & i8 & o12 +
+ /o12 +
+ /i9 & /i11 & rfo14 +
+ /i15 & rfo16 & i19 +
+ /rfo14 & /rfo16
+o18.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/ck2605/ck2605-test1.txt b/src/regtests/jedutil/baseline/ck2605/ck2605-test1.txt
new file mode 100644
index 00000000000..775871608d5
--- /dev/null
+++ b/src/regtests/jedutil/baseline/ck2605/ck2605-test1.txt
@@ -0,0 +1,109 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+9 (Combinatorial, Output feedback output, Active low)
+13 (Combinatorial, Output feedback output, Active high)
+14 (Combinatorial, Output feedback output, Active high)
+15 (Combinatorial, Output feedback output, Active low)
+18 (Combinatorial, Output feedback output, Active high)
+19 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o9 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o9.oe = vcc
+
+o13 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o13.oe = i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8
+
+o14 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ o9 & /o19 +
+ /i11 & o19
+o14.oe = /i1 & /i2 & /i3 & /i4 & /i5 & /i6 & /i7 & /i8
+
+/o15 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ /i11 & o19
+o15.oe = /o9 & /i11 & /i12 & /o13 & /o14 & /o15 & /i16 & /i17 & /o18 & /o19
+
+o18 = /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o18.oe = i11 & i12 & o13 & o14 & o15 & i16 & i17 & o18 & o19
+
+/o19 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/ck2605/ck2605-test2.txt b/src/regtests/jedutil/baseline/ck2605/ck2605-test2.txt
new file mode 100644
index 00000000000..d8ee2ed1772
--- /dev/null
+++ b/src/regtests/jedutil/baseline/ck2605/ck2605-test2.txt
@@ -0,0 +1,109 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+9 (Combinatorial, Output feedback output, Active high)
+13 (Combinatorial, Output feedback output, Active low)
+14 (Combinatorial, Output feedback output, Active low)
+15 (Combinatorial, Output feedback output, Active high)
+18 (Combinatorial, Output feedback output, Active low)
+19 (Combinatorial, Output feedback output, Active high)
+
+Equations:
+
+o9 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o9.oe = vcc
+
+/o13 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o13.oe = i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8
+
+/o14 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ o9 & /o19 +
+ /i11 & o19
+o14.oe = /i1 & /i2 & /i3 & /i4 & /i5 & /i6 & /i7 & /i8
+
+o15 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ /i11 & o19
+o15.oe = /o9 & /i11 & /i12 & /o13 & /o14 & /o15 & /i16 & /i17 & /o18 & /o19
+
+/o18 = /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o18.oe = i11 & i12 & o13 & o14 & o15 & i16 & i17 & o18 & o19
+
+o19 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/gal18v10-test1.txt b/src/regtests/jedutil/baseline/gal18v10/gal18v10-test1.txt
new file mode 100644
index 00000000000..70c7d194f36
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/gal18v10-test1.txt
@@ -0,0 +1,123 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+9 (Combinatorial, Output feedback output, Active high)
+11 (Combinatorial, Output feedback output, Active low)
+12 (Combinatorial, Output feedback output, Active high)
+13 (Combinatorial, Output feedback output, Active low)
+14 (Combinatorial, Output feedback output, Active high)
+15 (Combinatorial, Output feedback output, Active low)
+16 (Combinatorial, Output feedback output, Active high)
+17 (Combinatorial, Output feedback output, Active low)
+18 (Combinatorial, Output feedback output, Active high)
+19 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+o9 = i1 & i2 +
+ /i3 +
+ o19 +
+ /i4 +
+ /i5 +
+ i6 +
+ i7 +
+ /i8 & /o19
+o9.oe = vcc
+
+/o11 = /i1 +
+ /i2 +
+ i5 +
+ /i6 +
+ /i7 +
+ i8 +
+ i4 & o9 +
+ /i3 & /o9
+o11.oe = vcc
+
+o12 = i1 +
+ i2 +
+ i4 +
+ i5 +
+ i6 +
+ /i8 +
+ i7 & o11 +
+ i3 & /o11
+o12.oe = vcc
+
+/o13 = /i1 +
+ i2 +
+ /i3 +
+ /i4 +
+ /i6 +
+ i8 +
+ /i7 & o12 +
+ /i5 & /o12
+o13.oe = vcc
+
+o14 = /i2 & /i3 & /i4 +
+ i4 & i5 +
+ i2 & /i6 +
+ i3 & i7 +
+ i6 & /i7 +
+ i8 +
+ /i2 & i3 & /i5 & i8 +
+ /i1 & /i8 +
+ i2 & /i7 & o13 +
+ i1 & /o13
+o14.oe = vcc
+
+/o15 = /i3 & /i4 +
+ i5 +
+ i1 & i2 & i3 & i4 & i5 +
+ /i2 & i7 +
+ i3 & i8 +
+ /i7 & i8 +
+ i6 & i7 & /i8 +
+ /i4 & o14 +
+ i7 & o14 +
+ i6 & i7 & /i8 & /o14
+o15.oe = vcc
+
+o16 = i3 +
+ /i4 +
+ i5 +
+ /i6 +
+ i7 +
+ /i8 +
+ i1 & o15 +
+ /i2 & /o15
+o16.oe = vcc
+
+/o17 = /i1 +
+ i2 +
+ /i5 +
+ /i3 & i6 +
+ /i6 +
+ i8 +
+ /i7 & o16 +
+ i4 & /o16
+o17.oe = vcc
+
+o18 = /i1 +
+ /i2 +
+ /i3 +
+ i6 +
+ i7 +
+ i8 +
+ /i4 & o17 +
+ i5 & /o17
+o18.oe = vcc
+
+/o19 = i2 +
+ i3 +
+ i4 +
+ /i5 +
+ /i6 +
+ /i7 +
+ i1 & o18 +
+ /i8 & /o18
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal10h8-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal10h8-to-gal18v10.txt
new file mode 100644
index 00000000000..72374ae185e
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal10h8-to-gal18v10.txt
@@ -0,0 +1,49 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+12 (Combinatorial, Output feedback output, Active high)
+13 (Combinatorial, Output feedback output, Active high)
+14 (Combinatorial, Output feedback output, Active high)
+15 (Combinatorial, Output feedback output, Active high)
+16 (Combinatorial, Output feedback output, Active high)
+17 (Combinatorial, Output feedback output, Active high)
+18 (Combinatorial, Output feedback output, Active high)
+19 (Combinatorial, Output feedback output, Active high)
+
+Equations:
+
+o12 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11
+o12.oe = vcc
+
+o13 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11
+o13.oe = vcc
+
+o14 = i1 & i2 & /i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & /i11
+o14.oe = vcc
+
+o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o15.oe = vcc
+
+o16 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o16.oe = vcc
+
+o17 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ i9 & /i11
+o17.oe = vcc
+
+o18 = i1 & i2 & i3 & i4 & i5 & i6 & /i7 & i8 +
+ /i9 & i11
+o18.oe = vcc
+
+o19 = i1 & i2 & i3 & i4 & i5 & i6 & i7 & /i8 +
+ i11
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal10l8-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal10l8-to-gal18v10.txt
new file mode 100644
index 00000000000..eb0d1bd88c0
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal10l8-to-gal18v10.txt
@@ -0,0 +1,49 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+12 (Combinatorial, Output feedback output, Active low)
+13 (Combinatorial, Output feedback output, Active low)
+14 (Combinatorial, Output feedback output, Active low)
+15 (Combinatorial, Output feedback output, Active low)
+16 (Combinatorial, Output feedback output, Active low)
+17 (Combinatorial, Output feedback output, Active low)
+18 (Combinatorial, Output feedback output, Active low)
+19 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o12 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11
+o12.oe = vcc
+
+/o13 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11
+o13.oe = vcc
+
+/o14 = i1 & i2 & /i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & /i11
+o14.oe = vcc
+
+/o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o15.oe = vcc
+
+/o16 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o16.oe = vcc
+
+/o17 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ i9 & /i11
+o17.oe = vcc
+
+/o18 = i1 & i2 & i3 & i4 & i5 & i6 & /i7 & i8 +
+ i11
+o18.oe = vcc
+
+/o19 = i1 & i2 & i3 & i4 & i5 & i6 & i7 & /i8 +
+ /i9
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal12h6-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal12h6-to-gal18v10.txt
new file mode 100644
index 00000000000..2669b8e2e1b
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal12h6-to-gal18v10.txt
@@ -0,0 +1,43 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+13 (Combinatorial, Output feedback output, Active high)
+14 (Combinatorial, Output feedback output, Active high)
+15 (Combinatorial, Output feedback output, Active high)
+16 (Combinatorial, Output feedback output, Active high)
+17 (Combinatorial, Output feedback output, Active high)
+18 (Combinatorial, Output feedback output, Active high)
+
+Equations:
+
+o13 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i19 +
+ i12
+o13.oe = vcc
+
+o14 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11
+o14.oe = vcc
+
+o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o15.oe = vcc
+
+o16 = i1 & i2 & i3 & i4 & i5 & i6 & /i7 & i8 +
+ i9 & /i11
+o16.oe = vcc
+
+o17 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o17.oe = vcc
+
+o18 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ /i9 & i11 +
+ i19 +
+ /i12
+o18.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal12l6-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal12l6-to-gal18v10.txt
new file mode 100644
index 00000000000..317521b8dec
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal12l6-to-gal18v10.txt
@@ -0,0 +1,43 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+13 (Combinatorial, Output feedback output, Active low)
+14 (Combinatorial, Output feedback output, Active low)
+15 (Combinatorial, Output feedback output, Active low)
+16 (Combinatorial, Output feedback output, Active low)
+17 (Combinatorial, Output feedback output, Active low)
+18 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o13 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i19 +
+ i12
+o13.oe = vcc
+
+/o14 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11
+o14.oe = vcc
+
+/o15 = i1 & i2 & /i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11
+o15.oe = vcc
+
+/o16 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o16.oe = vcc
+
+/o17 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11
+o17.oe = vcc
+
+/o18 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ /i9 & i11 +
+ i19 +
+ /i12
+o18.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal14h4-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal14h4-to-gal18v10.txt
new file mode 100644
index 00000000000..36c44bf7b5e
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal14h4-to-gal18v10.txt
@@ -0,0 +1,37 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+14 (Combinatorial, Output feedback output, Active high)
+15 (Combinatorial, Output feedback output, Active high)
+16 (Combinatorial, Output feedback output, Active high)
+17 (Combinatorial, Output feedback output, Active high)
+
+Equations:
+
+o14 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i12 & /i13 +
+ i18 & /i19
+o14.oe = vcc
+
+o15 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & /i11 +
+ i12 & i13 +
+ /i18 & i19
+o15.oe = vcc
+
+o16 = i1 & i2 & /i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11 +
+ i12 & /i13 +
+ /i18 & /i19
+o16.oe = vcc
+
+o17 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i12 & i13 +
+ i18 & i19
+o17.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal14l4-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal14l4-to-gal18v10.txt
new file mode 100644
index 00000000000..ddbae1bd871
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal14l4-to-gal18v10.txt
@@ -0,0 +1,37 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+14 (Combinatorial, Output feedback output, Active low)
+15 (Combinatorial, Output feedback output, Active low)
+16 (Combinatorial, Output feedback output, Active low)
+17 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o14 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11 +
+ i12 & /i13 +
+ i18 & i19
+o14.oe = vcc
+
+/o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11 +
+ /i12 & i13 +
+ /i18 & i19
+o15.oe = vcc
+
+/o16 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11 +
+ i12 & i13 +
+ i18 & /i19
+o16.oe = vcc
+
+/o17 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ /i9 & i11 +
+ /i12 & /i13 +
+ /i18 & /i19
+o17.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal16h2-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal16h2-to-gal18v10.txt
new file mode 100644
index 00000000000..8be12b5d9e7
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal16h2-to-gal18v10.txt
@@ -0,0 +1,31 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+15 (Combinatorial, Output feedback output, Active high)
+16 (Combinatorial, Output feedback output, Active high)
+
+Equations:
+
+o15 = i1 & i2 & i3 & /i4 & i5 & /i6 & i7 & i8 +
+ i9 +
+ /i11 +
+ i12 +
+ /i13 +
+ i14 +
+ /i17 +
+ i18 & /i19
+o15.oe = vcc
+
+o16 = i1 & i2 & /i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 +
+ i11 +
+ /i12 +
+ i13 +
+ /i14 +
+ i17 +
+ /i18 & i19
+o16.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal16l2-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal16l2-to-gal18v10.txt
new file mode 100644
index 00000000000..f49e147580e
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal16l2-to-gal18v10.txt
@@ -0,0 +1,31 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+15 (Combinatorial, Output feedback output, Active low)
+16 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 +
+ /i11 +
+ /i12 +
+ i13 +
+ i14 +
+ i17 +
+ i18 & i19
+o15.oe = vcc
+
+/o16 = i1 & i2 & i3 & i4 & i5 & i6 & /i7 & i8 +
+ i9 +
+ i11 +
+ i12 +
+ /i13 +
+ /i14 +
+ /i17 +
+ /i18 & /i19
+o16.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal16l8-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal16l8-to-gal18v10.txt
new file mode 100644
index 00000000000..36a1304f807
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal16l8-to-gal18v10.txt
@@ -0,0 +1,89 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+12 (Combinatorial, Output feedback output, Active low)
+13 (Combinatorial, Output feedback output, Active low)
+14 (Combinatorial, Output feedback output, Active low)
+15 (Combinatorial, Output feedback output, Active low)
+16 (Combinatorial, Output feedback output, Active low)
+17 (Combinatorial, Output feedback output, Active low)
+18 (Combinatorial, Output feedback output, Active low)
+19 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o12 = i3 & i7 & /i9 +
+ i1 & o13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /o13
+o12.oe = vcc
+
+/o13 = i11 & /o14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & o14 +
+ i5 +
+ i4
+o13.oe = i2 & o14
+
+/o14 = i1 & /o15 +
+ /i8 +
+ i1 & /i8 +
+ i1 & /i2 & /o15 +
+ /i2 +
+ i2 & /i8 & o15 +
+ i3
+o14.oe = vcc
+
+/o15 = i3 & i6 & i7 & /i11 +
+ i6 & o16 +
+ i3 & /o16 +
+ i7 +
+ /i11 +
+ i6 & i7 +
+ i7 & /i11
+o15.oe = vcc
+
+/o16 = /i3 & /o17 +
+ /i4 & /i11 +
+ /i3 & /i4 +
+ /i3 & i4 +
+ /i7 & o17 +
+ /i7 & /i11 +
+ i4
+o16.oe = vcc
+
+/o17 = i2 & i5 & i6 & /i7 +
+ i2 & /o18 +
+ i5 +
+ i6 +
+ /i7 & o18 +
+ i2 & /i7 +
+ i5 & i6
+o17.oe = /o16
+
+/o18 = /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 & i11 +
+ i3 +
+ /i2 & /i7 +
+ i3 & i11 +
+ i5 & i6 & /i7 +
+ i7 & i11
+o18.oe = vcc
+
+/o19 = i5 & i6 & /i7 & i11 +
+ i3 & i6 & i7 +
+ i5 +
+ i6 +
+ i7 +
+ i11 +
+ /i7
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal16r4-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal16r4-to-gal18v10.txt
new file mode 100644
index 00000000000..7db8ff85b13
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal16r4-to-gal18v10.txt
@@ -0,0 +1,93 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+12 (Combinatorial, Output feedback output, Active low)
+13 (Combinatorial, Output feedback output, Active low)
+14 (Registered, Output feedback registered, Active low)
+15 (Registered, Output feedback registered, Active low)
+16 (Registered, Output feedback registered, Active low)
+17 (Registered, Output feedback registered, Active low)
+18 (Combinatorial, Output feedback output, Active low)
+19 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o12 = /i2 & /i3 +
+ i4 & o13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /o13
+o12.oe = rf14
+
+/o13 = /rf14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & /rf14 +
+ i5 +
+ i4
+o13.oe = i2 & rf14
+
+/rf14 := /rf15 +
+ /i8 +
+ i8 +
+ /i2 & /rf15 +
+ /i2 +
+ i2 & /i8 & rf15 +
+ /i4 +
+ i3
+rf14.oe = /i11
+
+/rf15 := i3 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7 +
+ /i2 & /i7
+rf15.oe = /i11
+
+/rf16 := /i3 & /rf17 +
+ /i4 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i2 & i3
+rf16.oe = /i11
+
+/rf17 := i2 & i5 & i6 & /i7 +
+ i2 & /o18 +
+ i5 +
+ i6 +
+ /i7 & o18 +
+ i2 & /i7 +
+ i5 & i6 +
+ /i3
+rf17.oe = /i11
+
+/o18 = /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 +
+ /i2 & /i7 +
+ /i3 +
+ i5 & i6 & /i7 +
+ i7
+o18.oe = vcc
+
+/o19 = i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 +
+ i6 +
+ i7 +
+ /i4 +
+ /i7
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal16r6-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal16r6-to-gal18v10.txt
new file mode 100644
index 00000000000..7c88b6176a1
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal16r6-to-gal18v10.txt
@@ -0,0 +1,95 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+12 (Combinatorial, Output feedback output, Active low)
+13 (Registered, Output feedback registered, Active low)
+14 (Registered, Output feedback registered, Active low)
+15 (Registered, Output feedback registered, Active low)
+16 (Registered, Output feedback registered, Active low)
+17 (Registered, Output feedback registered, Active low)
+18 (Registered, Output feedback registered, Active low)
+19 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o12 = /i2 & /i3 +
+ i4 & rf13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /rf13
+o12.oe = rf14
+
+/rf13 := /rf14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & /rf14 +
+ i5 & rf14 +
+ i4 +
+ /i2
+rf13.oe = /i11
+
+/rf14 := /rf15 +
+ /i8 +
+ i8 +
+ /i2 & /rf15 +
+ /i2 +
+ i2 & /i8 & rf15 +
+ /i4 +
+ i3
+rf14.oe = /i11
+
+/rf15 := i3 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7 +
+ /i2 & /i7
+rf15.oe = /i11
+
+/rf16 := /i3 & /rf17 +
+ /i4 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i2 & i3
+rf16.oe = /i11
+
+/rf17 := i2 & i5 & i6 & /i7 +
+ i2 & /rf18 +
+ i5 +
+ i6 +
+ /i7 & rf18 +
+ i2 & /i7 +
+ i5 & i6 +
+ /i3
+rf17.oe = /i11
+
+/rf18 := /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 +
+ /i2 & /i7 +
+ /i3 +
+ i5 & i6 & /i7 +
+ i7 +
+ i4
+rf18.oe = /i11
+
+/o19 = i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 +
+ i6 +
+ i7 +
+ /i4 +
+ /i7
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/baseline/gal18v10/pal16r8-to-gal18v10.txt b/src/regtests/jedutil/baseline/gal18v10/pal16r8-to-gal18v10.txt
new file mode 100644
index 00000000000..cd37e419c00
--- /dev/null
+++ b/src/regtests/jedutil/baseline/gal18v10/pal16r8-to-gal18v10.txt
@@ -0,0 +1,97 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+12 (Registered, Output feedback registered, Active low)
+13 (Registered, Output feedback registered, Active low)
+14 (Registered, Output feedback registered, Active low)
+15 (Registered, Output feedback registered, Active low)
+16 (Registered, Output feedback registered, Active low)
+17 (Registered, Output feedback registered, Active low)
+18 (Registered, Output feedback registered, Active low)
+19 (Registered, Output feedback registered, Active low)
+
+Equations:
+
+/rf12 := /i2 & /i3 +
+ i4 & rf13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /rf13 +
+ i5
+rf12.oe = /i11
+
+/rf13 := /rf14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & rf14 +
+ i5 +
+ i4 +
+ /i3
+rf13.oe = /i11
+
+/rf14 := /rf15 +
+ /i8 +
+ i8 +
+ /i2 & /rf15 +
+ /i2 +
+ i2 & /i8 & rf15 +
+ /i4 +
+ i3
+rf14.oe = /i11
+
+/rf15 := i3 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7 +
+ /i2 & /i7
+rf15.oe = /i11
+
+/rf16 := /i3 & /rf17 +
+ /i4 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i2 & i3
+rf16.oe = /i11
+
+/rf17 := i2 & i5 & i6 & /i7 +
+ i2 & /rf18 +
+ i5 +
+ i6 +
+ /i7 & rf18 +
+ i2 & /i7 +
+ i5 & i6 +
+ /i3
+rf17.oe = /i11
+
+/rf18 := /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 & rf19 +
+ /i2 & /i7 +
+ /i3 & /rf19 +
+ i5 & i6 & /i7 +
+ i7 +
+ /i4
+rf18.oe = /i11
+
+/rf19 := i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 & rf12 +
+ i6 +
+ i7 +
+ /i4 & /rf12 +
+ /i7 +
+ i2
+rf19.oe = /i11
+
diff --git a/src/regtests/jedutil/baseline/pls153/pls153.txt b/src/regtests/jedutil/baseline/pls153/pls153.txt
new file mode 100644
index 00000000000..4f7cf2741dc
--- /dev/null
+++ b/src/regtests/jedutil/baseline/pls153/pls153.txt
@@ -0,0 +1,178 @@
+Inputs:
+
+1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19
+
+Outputs:
+
+9 (Combinatorial, Output feedback output, Active low)
+13 (Combinatorial, Output feedback output, Active high)
+14 (Combinatorial, Output feedback output, Active high)
+15 (Combinatorial, Output feedback output, Active low)
+18 (Combinatorial, Output feedback output, Active high)
+19 (Combinatorial, Output feedback output, Active low)
+
+Equations:
+
+/o9 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19 +
+ i11 +
+ i7 & /o13 +
+ i6 & i8 & /i12 & /o14 +
+ /i6 & /o9 & i11 & o14 +
+ i5 & o9 & /i11 & /o15 +
+ /i5 & o15 +
+ i4 & /i16 +
+ i3 & /i17 +
+ /i3 & i17 +
+ i2 & /o18 +
+ /i2 & o18 +
+ /i1 & o19
+o9.oe = vcc
+
+o13 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19 +
+ i11 +
+ i7 & /o13 +
+ i6 & i8 & /i12 & /o14 +
+ /i6 & /o9 & i11 & o14 +
+ /i5 & o15 +
+ i4 & /i16 +
+ /i4 & i16 +
+ i3 & /i17 +
+ /i3 & i17 +
+ i2 & /o18 +
+ i1 & /o19
+o13.oe = i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8
+
+o14 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ o9 & /o19 +
+ /i11 & o19 +
+ i11 +
+ i7 & /o13 +
+ i6 & i8 & /i12 & /o14 +
+ i5 & o9 & /i11 & /o15 +
+ /i5 & o15 +
+ i4 & /i16 +
+ /i4 & i16 +
+ i3 & /i17 +
+ /i3 & i17 +
+ i2 & /o18 +
+ /i2 & o18 +
+ /i1 & o19
+o14.oe = /i1 & /i2 & /i3 & /i4 & /i5 & /i6 & /i7 & /i8
+
+/o15 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ /i11 & o19 +
+ i11 +
+ i7 & /o13 +
+ /i6 & /o9 & i11 & o14 +
+ i5 & o9 & /i11 & /o15 +
+ /i5 & o15 +
+ i4 & /i16 +
+ /i4 & i16 +
+ i3 & /i17 +
+ /i3 & i17 +
+ i2 & /o18 +
+ i1 & /o19
+o15.oe = /o9 & /i11 & /i12 & /o13 & /o14 & /o15 & /i16 & /i17 & /o18 & /o19
+
+o18 = /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19 +
+ i11 +
+ i7 & /o13 +
+ i6 & i8 & /i12 & /o14 +
+ /i6 & /o9 & i11 & o14 +
+ i5 & o9 & /i11 & /o15 +
+ /i5 & o15 +
+ i4 & /i16 +
+ /i4 & i16 +
+ i3 & /i17 +
+ /i3 & i17 +
+ /i2 & o18 +
+ i1 & /o19
+o18.oe = i11 & i12 & o13 & o14 & o15 & i16 & i17 & o18 & o19
+
+/o19 = i1 & i12 +
+ /i2 & /o13 +
+ i2 & o13 +
+ /i3 & /o14 +
+ i3 & o14 +
+ /i4 & /o15 +
+ i4 & i16 +
+ i5 & /i16 +
+ i16 +
+ i7 & /i17 +
+ /i8 & i17 +
+ i8 & /o18 +
+ /o9 & o18 +
+ o9 & /o19 +
+ /i11 & o19 +
+ i11 +
+ i6 & i8 & /i12 & /o14 +
+ /i6 & /o9 & i11 & o14 +
+ i5 & o9 & /i11 & /o15 +
+ /i5 & o15 +
+ i4 & /i16 +
+ /i4 & i16 +
+ i3 & /i17 +
+ /i3 & i17 +
+ i2 & /o18 +
+ /i1 & o19
+o19.oe = vcc
+
diff --git a/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_combinatorial_feedback.psf b/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_combinatorial_feedback.psf
index 4b01591b423..f99de383741 100644
--- a/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_combinatorial_feedback.psf
+++ b/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_combinatorial_feedback.psf
@@ -59,4 +59,4 @@ O17.OE = 1;
O19.COM = /I7 & I8 & /RF13 & /RF15 #
/I9 & /I11 & RF15 #
RF13 & I16 & /O17 & /I18;
-O19.OE = O17;
+O19.OE = O17; \ No newline at end of file
diff --git a/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_register_feedback.psf b/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_register_feedback.psf
index 7757dd94166..5b22ee26440 100644
--- a/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_register_feedback.psf
+++ b/src/regtests/jedutil/eqns/ICT_Place/PEEL18CV8/18cv8_register_feedback.psf
@@ -59,4 +59,4 @@ O17.OE = /RF19;
RF19.REG = I8 & RF15 & O17 #
I1 & I2 & /RF15 #
O13 & /O17;
-RF19.OE = /O13;
+RF19.OE = /O13; \ No newline at end of file
diff --git a/src/regtests/jedutil/eqns/pal10h8/pal10h8.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal10h8/pal10h8.eqn
index 690cdcf090a..690cdcf090a 100644
--- a/src/regtests/jedutil/eqns/pal10h8/pal10h8.eqn
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal10h8/pal10h8.eqn
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal10l8/pal10l8.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal10l8/pal10l8.eqn
new file mode 100644
index 00000000000..b316ec32d26
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal10l8/pal10l8.eqn
@@ -0,0 +1,30 @@
+chip 2000 PAL10L8
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+o12=12 o13=13 o14=14 o15=15 o16=16 o17=17 o18=18 o19=19 VCC=20
+
+equations
+
+/o12 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11
+
+/o13 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11
+
+/o14 = i1 & i2 & /i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & /i11
+
+/o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11
+
+/o16 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11
+
+/o17 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ i9 & /i11
+
+/o18 = i1 & i2 & i3 & i4 & i5 & i6 & /i7 & i8 +
+ i11
+
+/o19 = i1 & i2 & i3 & i4 & i5 & i6 & i7 & /i8 +
+ /i9
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal12h6/pal12h6.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal12h6/pal12h6.eqn
new file mode 100644
index 00000000000..43b72ca6dc3
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal12h6/pal12h6.eqn
@@ -0,0 +1,28 @@
+chip 2000 PAL12H6
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+i12=12 o13=13 o14=14 o15=15 o16=16 o17=17 o18=18 i19=19 VCC=20
+
+equations
+
+o13 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i19 +
+ i12
+
+o14 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11
+
+o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11
+
+o16 = i1 & i2 & i3 & i4 & i5 & i6 & /i7 & i8 +
+ i9 & /i11
+
+o17 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11
+
+o18 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ /i9 & i11 +
+ i19 +
+ /i12
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal12l6/pal12l6.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal12l6/pal12l6.eqn
new file mode 100644
index 00000000000..a1867dd827a
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal12l6/pal12l6.eqn
@@ -0,0 +1,28 @@
+chip 2000 PAL12L6
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+i12=12 o13=13 o14=14 o15=15 o16=16 o17=17 o18=18 i19=19 VCC=20
+
+equations
+
+/o13 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i19 +
+ i12
+
+/o14 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11
+
+/o15 = i1 & i2 & /i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11
+
+/o16 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11
+
+/o17 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11
+
+/o18 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ /i9 & i11 +
+ i19 +
+ /i12
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal14h4/pal14h4.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal14h4/pal14h4.eqn
new file mode 100644
index 00000000000..7db1b42ee27
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal14h4/pal14h4.eqn
@@ -0,0 +1,26 @@
+chip 2000 PAL14H4
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+i12=12 i13=13 o14=14 o15=15 o16=16 o17=17 i18=18 i19=19 VCC=20
+
+equations
+
+o14 = /i1 & i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i12 & /i13 +
+ i18 & /i19
+
+o15 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ i9 & /i11 +
+ i12 & i13 +
+ /i18 & i19
+
+o16 = i1 & i2 & /i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11 +
+ i12 & /i13 +
+ /i18 & /i19
+
+o17 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ i9 & i11 +
+ /i12 & i13 +
+ i18 & i19
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal14l4/pal14l4.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal14l4/pal14l4.eqn
new file mode 100644
index 00000000000..0e63b68c612
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal14l4/pal14l4.eqn
@@ -0,0 +1,26 @@
+chip 2000 PAL14L4
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+i12=12 i13=13 o14=14 o15=15 o16=16 o17=17 i18=18 i19=19 VCC=20
+
+equations
+
+/o14 = i1 & /i2 & i3 & i4 & i5 & i6 & i7 & i8 +
+ /i9 & i11 +
+ i12 & /i13 +
+ i18 & i19
+
+/o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 & /i11 +
+ /i12 & i13 +
+ /i18 & i19
+
+/o16 = i1 & i2 & i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 & /i11 +
+ i12 & i13 +
+ i18 & /i19
+
+/o17 = i1 & i2 & i3 & i4 & i5 & /i6 & i7 & i8 +
+ /i9 & i11 +
+ /i12 & /i13 +
+ /i18 & /i19
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal16c1/pal16c1.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal16c1/pal16c1.eqn
new file mode 100644
index 00000000000..d2566d34cb4
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal16c1/pal16c1.eqn
@@ -0,0 +1,23 @@
+chip 2000 PAL16C1
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+i12=12 i13=13 i14=14 o15=15 o16=16 i17=17 i18=18 i19=19 VCC=20
+
+equations
+
+/o15 = i1 & i2 +
+ i3 & i4 +
+ i5 & i6 +
+ i7 & i8 +
+ i9 & i11 +
+ i12 & i13 +
+ i14 & i17 +
+ i18 & i19 +
+ /i1 & /i2 +
+ /i3 & /i4 +
+ /i5 & /i6 +
+ /i7 & /i8 +
+ /i9 & /i11 +
+ /i12 & /i13 +
+ /i14 & /i17 +
+ /i18 & /i19
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal16h2/pal16h2.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal16h2/pal16h2.eqn
new file mode 100644
index 00000000000..cd597b209c2
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal16h2/pal16h2.eqn
@@ -0,0 +1,24 @@
+chip 2000 PAL16H2
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+i12=12 i13=13 i14=14 o15=15 o16=16 i17=17 i18=18 i19=19 VCC=20
+
+equations
+
+o15 = i1 & i2 & i3 & /i4 & i5 & /i6 & i7 & i8 +
+ i9 +
+ /i11 +
+ i12 +
+ /i13 +
+ i14 +
+ /i17 +
+ i18 & /i19
+
+o16 = i1 & i2 & /i3 & i4 & /i5 & i6 & i7 & i8 +
+ /i9 +
+ i11 +
+ /i12 +
+ i13 +
+ /i14 +
+ i17 +
+ /i18 & i19
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal16l2/pal16l2.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal16l2/pal16l2.eqn
new file mode 100644
index 00000000000..d68a83e9173
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal16l2/pal16l2.eqn
@@ -0,0 +1,24 @@
+chip 2000 PAL16L2
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10 i11=11
+i12=12 i13=13 i14=14 o15=15 o16=16 i17=17 i18=18 i19=19 VCC=20
+
+equations
+
+/o15 = i1 & i2 & i3 & /i4 & i5 & i6 & i7 & i8 +
+ /i9 +
+ /i11 +
+ /i12 +
+ i13 +
+ i14 +
+ i17 +
+ i18 & i19
+
+/o16 = i1 & i2 & i3 & i4 & i5 & i6 & /i7 & i8 +
+ i9 +
+ i11 +
+ i12 +
+ /i13 +
+ /i14 +
+ /i17 +
+ /i18 & /i19
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal16l8/pal16l8.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal16l8/pal16l8.eqn
new file mode 100644
index 00000000000..6daddee92dd
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal16l8/pal16l8.eqn
@@ -0,0 +1,79 @@
+md
+chip 2000 PAL16L8
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10
+i11=11 o12=12 o13=13 o14=14 o15=15 o16=16 o17=17 o18=18 o19=19 VCC=20
+
+equations
+
+/o12 = i3 & i7 & /i9 +
+ i1 & o13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /o13
+o12.oe = vcc
+
+/o13 = i11 & /o14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & o14 +
+ i5 +
+ i4
+o13.oe = i2 & o14
+
+/o14 = i1 & /o15 +
+ /i8 +
+ i1 & /i8 +
+ i1 & /i2 & /o15 +
+ /i2 +
+ i2 & /i8 & o15 +
+ i3
+o14.oe = vcc
+
+/o15 = i3 & i6 & i7 & /i11 +
+ i6 & o16 +
+ i3 & /o16 +
+ i7 +
+ /i11 +
+ i6 & i7 +
+ i7 & /i11
+o15.oe = vcc
+
+/o16 = /i3 & /o17 +
+ /i4 & /i11 +
+ /i4 & /i3 +
+ /i3 & i4 +
+ /i7 & o17 +
+ /i7 & /i11 +
+ i4
+o16.oe = vcc
+
+/o17 = i2 & i5 & i6 & /i7 +
+ i2 & /o18 +
+ i5 +
+ i6 +
+ /i7 & o18 +
+ i2 & /i7 +
+ i5 & i6
+o17.oe = /o16
+
+/o18 = /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 & i11 +
+ i3 +
+ /i2 & /i7 +
+ i3 & i11 +
+ i5 & i6 & /i7 +
+ i7 & i11
+o18.oe = vcc
+
+/o19 = i5 & i6 & /i7 & i11 +
+ i3 & i6 & i7 +
+ i5 +
+ i6 +
+ i7 +
+ i11 +
+ /i7
+o19.oe = vcc
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal16r4/pal16r4.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal16r4/pal16r4.eqn
new file mode 100644
index 00000000000..9a62f9ec02a
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal16r4/pal16r4.eqn
@@ -0,0 +1,82 @@
+chip pal16r4 PAL16R4
+
+CLK=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10
+/OE=11 o12=12 o13=13 rf14=14 rf15=15 rf16=16 rf17=17 o18=18 o19=19 VCC=20
+
+equations
+
+/o12 = /i2 & /i3 +
+ i4 & o13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /o13
+o12.oe = rf14
+
+/o13 = /rf14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & /rf14 +
+ i5 +
+ i4
+o13.oe = i2 & rf14
+
+/rf14 := /rf15 +
+ /i8 +
+ i8 +
+ /i2 & /rf15 +
+ /i2 +
+ i2 & /i8 & rf15 +
+ /i4 +
+ i3
+rf14.oe = OE
+
+/rf15 := i3 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7 +
+ /i2 & /i7
+rf15.oe = OE
+
+/rf16 := /i3 & /rf17 +
+ /i4 +
+ /i3 & /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i2 & i3
+rf16.oe = OE
+
+/rf17 := i2 & i5 & i6 & /i7 +
+ i2 & /o18 +
+ i5 +
+ i6 +
+ /i7 & o18 +
+ i2 & /i7 +
+ i5 & i6 +
+ /i3
+rf17.oe = OE
+
+/o18 = /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 +
+ /i2 & /i7 +
+ /i3 +
+ i5 & i6 & /i7 +
+ i7
+o18.oe = vcc
+
+/o19 = i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 +
+ i6 +
+ i7 +
+ /i4 +
+ /i7
+o19.oe = vcc
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal16r6/pal16r6.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal16r6/pal16r6.eqn
new file mode 100644
index 00000000000..42f444f5e24
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal16r6/pal16r6.eqn
@@ -0,0 +1,84 @@
+chip pal16r6 PAL16R6
+
+CLK=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10
+/OE=11 o12=12 rf13=13 rf14=14 rf15=15 rf16=16 rf17=17 rf18=18 o19=19 VCC=20
+
+equations
+
+/o12 = /i2 & /i3 +
+ i4 & rf13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /rf13
+o12.oe = rf14
+
+/rf13 := /rf14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & /rf14 +
+ i5 & rf14 +
+ i4 +
+ /i2
+rf13.oe = OE
+
+/rf14 := /rf15 +
+ /i8 +
+ i8 +
+ /i2 & /rf15 +
+ /i2 +
+ i2 & /i8 & rf15 +
+ /i4 +
+ i3
+rf14.oe = OE
+
+/rf15 := i3 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7 +
+ /i2 & /i7
+rf15.oe = OE
+
+/rf16 := /i3 & /rf17 +
+ /i4 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i2 & i3
+rf16.oe = OE
+
+/rf17 := i2 & i5 & i6 & /i7 +
+ i2 & /rf18 +
+ i5 +
+ i6 +
+ /i7 & rf18 +
+ i2 & /i7 +
+ i5 & i6 +
+ /i3
+rf17.oe = OE
+
+/rf18 := /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 +
+ /i2 & /i7 +
+ /i3 +
+ i5 & i6 & /i7 +
+ i7 +
+ i4
+rf18.oe = OE
+
+/o19 = i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 +
+ i6 +
+ i7 +
+ /i4 +
+ /i7
+o19.oe = vcc
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal16r8/pal16r8.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal16r8/pal16r8.eqn
new file mode 100644
index 00000000000..5987e81c2dc
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal16r8/pal16r8.eqn
@@ -0,0 +1,86 @@
+chip pal16r8 PAL16R8
+
+CLK=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 GND=10
+/OE=11 rf12=12 rf13=13 rf14=14 rf15=15 rf16=16 rf17=17 rf18=18 rf19=19 VCC=20
+
+equations
+
+/rf12 := /i2 & /i3 +
+ i4 & rf13 +
+ i3 +
+ /i6 +
+ i8 +
+ /i9 +
+ i7 & /rf13 +
+ i5
+rf12.oe = OE
+
+/rf13 := /rf14 +
+ /i9 +
+ i8 +
+ /i7 +
+ /i6 & rf14 +
+ i5 +
+ i4 +
+ /i3
+rf13.oe = OE
+
+/rf14 := /rf15 +
+ /i8 +
+ i8 +
+ /i2 & /rf15 +
+ /i2 +
+ i2 & /i8 & rf15 +
+ /i4 +
+ i3
+rf14.oe = OE
+
+/rf15 := i3 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7 +
+ /i2 & /i7
+rf15.oe = OE
+
+/rf16 := /i3 & /rf17 +
+ /i4 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i2 & i3
+rf16.oe = OE
+
+/rf17 := i2 & i5 & i6 & /i7 +
+ i2 & /rf18 +
+ i5 +
+ i6 +
+ /i7 & rf18 +
+ i2 & /i7 +
+ i5 & i6 +
+ /i3
+rf17.oe = OE
+
+/rf18 := /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 & rf19 +
+ /i2 & /i7 +
+ /i3 & /rf19 +
+ i5 & i6 & /i7 +
+ i7 +
+ /i4
+rf18.oe = OE
+
+/rf19 := i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 & rf12 +
+ i6 +
+ i7 +
+ /i4 & /rf12 +
+ /i7 +
+ i2
+rf19.oe = OE
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal20l10/pal20l10.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal20l10/pal20l10.eqn
new file mode 100644
index 00000000000..d6639bdf9f4
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal20l10/pal20l10.eqn
@@ -0,0 +1,56 @@
+chip 2000 PAL20L10
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 i10=10 i11=11 GND=12
+i13=13 o14=14 o15=15 o16=16 o17=17 o18=18 o19=19 o20=20 o21=21 o22=22 o23=23 VCC=24
+
+equations
+
+/o14 = /i11 +
+ i10 +
+ i9 & /o15
+o14.oe = o15
+
+/o15 = /i1 & i2 & /i3 & i4 & i11 +
+ /i1 & i2 & /i3 & /i5 & /i13 & o16 +
+ /i1 & i2 & /i3 & i6
+o15.oe = /o16
+
+/o16 = i1 & /i2 & /o17 +
+ i3 & /i4 +
+ i3 & i9 & o17
+o16.oe = vcc
+
+/o17 = /o18 +
+ i10 & o18 +
+ i9
+o17.oe = i4 & i5
+
+/o18 = i1 & /i2 & i3 & /i4 & /i8 +
+ /i6 & i7 & i8 & i9 & i10 & /o19 +
+ i1 & i2 & i3 & /i4 & /i5 & o19
+o18.oe = i1 & i10
+
+/o19 = i11 & o20 +
+ i2 & /i10 +
+ i9 & i11
+o19.oe = i8 & /o20
+
+/o20 = o21 +
+ /i6 +
+ /i7 & /o21
+o20.oe = vcc
+
+/o21 = i1 & i8 +
+ /i4 & /o22 +
+ o22
+o21.oe = i5 & i6
+
+/o22 = i1 & /i8 +
+ /i8 +
+ i1
+o22.oe = i3 & /i7
+
+/o23 = i7 +
+ i11 +
+ /i13
+o23.oe = vcc
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal20l8/pal20l8.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal20l8/pal20l8.eqn
new file mode 100644
index 00000000000..f7280b6150f
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal20l8/pal20l8.eqn
@@ -0,0 +1,78 @@
+chip 2000 PAL20L8
+
+i1=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 i10=10 i11=11 GND=12
+i13=13 i14=14 o15=15 o16=16 o17=17 o18=18 o19=19 o20=20 o21=21 o22=22 i23=23 VCC=24
+
+equations
+
+/o15 = /i1 & i2 & /i3 & i4 & i11 +
+ /i1 & i2 & /i3 & /i5 & /i13 +
+ /i1 & i2 & /i3 & i6 & i14 +
+ /i1 & i2 & /i3 & /i7 & /i23 +
+ /i1 & i2 & /i3 & i8 & /i11 +
+ /i1 & i2 & /i3 & /i9 & i13 +
+ /o16
+o15.oe = o16
+
+/o16 = i1 & /i2 & /o17 +
+ i3 & /i4 +
+ i5 & /i6 +
+ i7 & /i8 +
+ i3 & i9 & o17 +
+ i1 & /i2 & i3 & /i4 & i5 & /i6 & i7 & /i8 & /i9 +
+ /i8 & /i9
+o16.oe = vcc
+
+/o17 = /i23 & /o18 +
+ i10 & o18 +
+ i9 +
+ i8 +
+ /i7 +
+ /i6 +
+ i5
+o17.oe = i4 & i5
+
+/o18 = i1 & /i2 & i3 & /i4 & /i8 & i23 +
+ i1 & i2 & i3 & /i4 & /i5 +
+ /i6 & i7 & i8 & i9 & i10 & /o19 +
+ i11 & i13 & i14 & i23 +
+ /i6 & i7 & i8 & i9 & i10 +
+ i3 & i13 & i14 & i23 +
+ i1 & i2 & i3 & /i4 & /i5 & o19
+o18.oe = i1 & i10 & i23
+
+/o19 = i9 & /i10 & i11 & i23 +
+ i9 +
+ /i10 +
+ i11 & o20 +
+ i23 +
+ i2 & /i10 & i23 +
+ i9 & i11
+o19.oe = i8 & /o20
+
+/o20 = o21 +
+ /i2 +
+ /i3 +
+ /i4 +
+ /i5 +
+ /i6 +
+ /i7 & /o21
+o20.oe = vcc
+
+/o21 = i1 & i8 +
+ /i14 +
+ i1 & /i5 & i8 +
+ i23 +
+ i1 & i8 & /i14 +
+ i13 +
+ i1 & i11
+o21.oe = i5 & i6
+
+/o22 = i1 & /i8 +
+ /i8 +
+ i1 +
+ /i10 +
+ /i23 +
+ i8 & /i13 +
+ /i11
+o22.oe = i3 & /i7
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal20r4/pal20r4.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal20r4/pal20r4.eqn
new file mode 100644
index 00000000000..ace68eae24f
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal20r4/pal20r4.eqn
@@ -0,0 +1,82 @@
+chip pal20r4 PAL20R4
+
+CLK=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 i10=10 i11=11 GND=12
+/OE=13 i14=14 o15=15 o16=16 rf17=17 rf18=18 rf19=19 rf20=20 o21=21 o22=22 i23=23 VCC=24
+
+equations
+
+/o15 = i2 & i6 & i7 +
+ i6 & o16 +
+ i3 & /o16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7
+o15.oe = /i23
+
+/o16 = /i3 & /rf17 +
+ /i4 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4
+o16.oe = i23
+
+/rf17 := /i2 +
+ /rf18 +
+ i5 +
+ i6 +
+ rf18 +
+ i4 +
+ /i10 +
+ /i23
+rf17.oe = OE
+
+/rf18 := /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 & rf19 +
+ /i2 & /i7 +
+ /i3 & /rf19 +
+ i5 & i6 & /i7 +
+ i7 +
+ /i11
+rf18.oe = OE
+
+/rf19 := i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 & rf20 +
+ i6 +
+ i7 +
+ /i4 & /rf20 +
+ /i7 +
+ i10
+rf19.oe = OE
+
+/rf20 := i10 & rf17 +
+ /i11 +
+ i4 & /rf17 +
+ i2 +
+ /i6 & /i7 +
+ i8 +
+ /i9 +
+ o22
+rf20.oe = OE
+
+/o21 = /i8 +
+ /i2 & rf17 +
+ i11 +
+ /i10 +
+ o15 +
+ /i14 +
+ /i3
+o21.oe = i8 & i9 & /o22
+
+/o22 = i14 +
+ /o15 +
+ i3 & /o21 +
+ i7 +
+ /i8 & o21 +
+ i10 +
+ /i9
+o22.oe = i14 & /o15 \ No newline at end of file
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal20r6/pal20r6.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal20r6/pal20r6.eqn
new file mode 100644
index 00000000000..dca4b545ee4
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal20r6/pal20r6.eqn
@@ -0,0 +1,84 @@
+chip pal20r6 PAL20R6
+
+CLK=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 i10=10 i11=11 GND=12
+/OE=13 i14=14 o15=15 rf16=16 rf17=17 rf18=18 rf19=19 rf20=20 rf21=21 o22=22 i23=23 VCC=24
+
+equations
+
+/o15 = i2 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7
+o15.oe = /i23
+
+/rf16 := /i3 & /rf17 +
+ /i4 & /i23 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i23
+rf16.oe = OE
+
+/rf17 := /i2 +
+ /rf18 +
+ i5 +
+ i6 +
+ rf18 +
+ i4 +
+ /i10 +
+ /i23
+rf17.oe = OE
+
+/rf18 := /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 & rf19 +
+ /i2 & /i7 +
+ /i3 & /rf19 +
+ i5 & i6 & /i7 +
+ i7 +
+ /i11
+rf18.oe = OE
+
+/rf19 := i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 & rf20 +
+ i6 +
+ i7 +
+ /i4 & /rf20 +
+ /i7 +
+ i10
+rf19.oe = OE
+
+/rf20 := i10 & rf17 +
+ /i11 +
+ i4 & /rf17 +
+ i2 +
+ /i6 & /i7 +
+ i8 +
+ /i9 +
+ o22
+rf20.oe = OE
+
+/rf21 := /i8 +
+ /i2 & rf17 +
+ i11 +
+ /i10 +
+ o15 +
+ /i14 & /o22 +
+ /i3 +
+ /i5
+rf21.oe = OE
+
+/o22 = i14 +
+ /o15 +
+ i3 & /rf21 +
+ i7 +
+ /i8 & rf21 +
+ i10 +
+ /i9
+o22.oe = i14 & /o15 \ No newline at end of file
diff --git a/src/regtests/jedutil/eqns/Opal_Jr/pal20r8/pal20r8.eqn b/src/regtests/jedutil/eqns/Opal_Jr/pal20r8/pal20r8.eqn
new file mode 100644
index 00000000000..c777a21d495
--- /dev/null
+++ b/src/regtests/jedutil/eqns/Opal_Jr/pal20r8/pal20r8.eqn
@@ -0,0 +1,86 @@
+chip pal20r8 PAL20R8
+
+CLK=1 i2=2 i3=3 i4=4 i5=5 i6=6 i7=7 i8=8 i9=9 i10=10 i11=11 GND=12
+/OE=13 i14=14 rf15=15 rf16=16 rf17=17 rf18=18 rf19=19 rf20=20 rf21=21 rf22=22 i23=23 VCC=24
+
+equations
+
+/rf15 := i2 & i6 & i7 +
+ i6 & rf16 +
+ i3 & /rf16 +
+ i7 +
+ /i4 +
+ i6 & i7 +
+ i4 & i7 +
+ /i23
+rf15.oe = OE
+
+/rf16 := /i3 & /rf17 +
+ /i4 +
+ /i3 +
+ /i3 & i4 +
+ /i7 & rf17 +
+ /i7 +
+ i4 +
+ i23
+rf16.oe = OE
+
+/rf17 := /i2 +
+ /rf18 +
+ i5 +
+ i6 +
+ rf18 +
+ i4 +
+ /i10 +
+ /i23
+rf17.oe = OE
+
+/rf18 := /i2 & i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i3 & rf19 +
+ /i2 & /i7 +
+ /i3 & /rf19 +
+ i5 & i6 & /i7 +
+ i7 +
+ /i11
+rf18.oe = OE
+
+/rf19 := i5 & i6 & /i7 +
+ i3 & i6 & i7 +
+ i5 & rf20 +
+ i6 +
+ i7 +
+ /i4 & /rf20 +
+ /i7 +
+ i10
+rf19.oe = OE
+
+/rf20 := i10 & rf17 +
+ /i11 +
+ i4 & /rf17 +
+ i2 +
+ /i6 & /i7 +
+ i8 +
+ /i9 +
+ rf22
+rf20.oe = OE
+
+/rf21 := /i8 +
+ /i2 & rf17 +
+ i11 +
+ /i10 +
+ rf15 +
+ /i14 +
+ /i3 +
+ i8 & i9 & /rf22
+rf21.oe = OE
+
+/rf22 := i14 +
+ /rf15 +
+ i3 & /rf21 +
+ i7 +
+ /i8 & rf21 +
+ i10 +
+ /i9 +
+ i14 & /rf15
+rf22.oe = OE \ No newline at end of file
diff --git a/src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.abl b/src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.abl
new file mode 100644
index 00000000000..7bceee4386e
--- /dev/null
+++ b/src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.abl
@@ -0,0 +1,138 @@
+MODULE gal18v10_test1
+
+TITLE 'GAL18V10 Test1'
+
+DECLARATIONS
+
+" Constants
+vcc = 1;
+
+" Inputs
+i1 pin 1;
+i2 pin 2;
+i3 pin 3;
+i4 pin 4;
+i5 pin 5;
+i6 pin 6;
+i7 pin 7;
+i8 pin 8;
+
+" Outputs
+o9 pin 9 istype 'com,pos,retain';
+o11 pin 11 istype 'com,neg,retain';
+o12 pin 12 istype 'com,pos,retain';
+o13 pin 13 istype 'com,neg,retain';
+o14 pin 14 istype 'com,pos,retain';
+o15 pin 15 istype 'com,neg,retain';
+o16 pin 16 istype 'com,pos,retain';
+o17 pin 17 istype 'com,neg,retain';
+o18 pin 18 istype 'com,pos,retain';
+o19 pin 19 istype 'com,neg,retain';
+
+EQUATIONS
+
+o9 = i1 & i2 #
+ !i3 #
+ o19 #
+ !i4 #
+ !i5 #
+ i6 #
+ i7 #
+ !i8 & !o19;
+o9.oe = vcc;
+
+!o11 = !i3 & !o9 #
+ !i1 #
+ i8 #
+ !i2 #
+ i5 #
+ i4 & o9 #
+ !i7 #
+ !i6;
+o11.oe = vcc;
+
+o12 = i4 #
+ i6 #
+ i3 & !o11 #
+ i5 #
+ i1 #
+ i2 #
+ !i8 #
+ i7 & o11;
+o12.oe = vcc;
+
+!o13 = !i5 & !o12 #
+ !i7 & o12 #
+ i8 #
+ !i1 #
+ i2 #
+ !i3 #
+ !i6 #
+ !i4;
+o13.oe = vcc;
+
+o14 = i2 & !i6 #
+ i1 & !o13 #
+ i4 & i5 #
+ i2 & !i7 & o13 #
+ i3 & i7 #
+ i6 & !i7 #
+ i8 #
+ !i1 & !i8 #
+ !i2 & !i3 & !i4 #
+ !i2 & i3 & !i5 & i8;
+o14.oe = vcc;
+
+!o15 = i7 & o14 #
+ !i7 & i8 #
+ i1 & i2 & i3 & i4 & i5 #
+ i6 & i7 & !i8 & !o14 #
+ i6 & i7 & !i8 #
+ !i3 & !i4 #
+ !i4 & o14 #
+ i5 #
+ !i2 & i7 #
+ i3 & i8;
+o15.oe = vcc;
+
+o16 = !i8 #
+ i7 #
+ !i6 #
+ i5 #
+ !i4 #
+ i3 #
+ !i2 & !o15 #
+ i1 & o15;
+o16.oe = vcc;
+
+!o17 = !i3 & i6 #
+ i8 #
+ i4 & !o16 #
+ !i1 #
+ !i5 #
+ i2 #
+ !i6 #
+ !i7 & o16;
+o17.oe = vcc;
+
+o18 = !i1 #
+ !i2 #
+ !i3 #
+ !i4 & o17 #
+ i5 & !o17 #
+ i6 #
+ i7 #
+ i8;
+o18.oe = vcc;
+
+!o19 = !i8 & !o18 #
+ !i7 #
+ !i6 #
+ !i5 #
+ i4 #
+ i3 #
+ i2 #
+ i1 & o18;
+o19.oe = vcc;
+
+END
diff --git a/src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.syn b/src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.syn
new file mode 100644
index 00000000000..c12724da6b9
--- /dev/null
+++ b/src/regtests/jedutil/eqns/ispLEVER_Classic/gal18v10/test1/gal18v10-test1.syn
@@ -0,0 +1,11 @@
+JDF B
+// Created by Version 1.6
+PROJECT Untitled
+DESIGN gal18v10 Normal
+DEVKIT GAL18V10-15LJ
+ENTRY ABEL/Schematic
+MODULE gal18v10-test1.abl
+MODSTYLE gal18v10_test1 Normal
+SYNTHESIS_TOOL Synplify
+SIMULATOR_TOOL ActiveHDL
+TOPMODULE gal18v10_test1
diff --git a/src/regtests/jedutil/eqns/ispLEVER_Classic/readme.txt b/src/regtests/jedutil/eqns/ispLEVER_Classic/readme.txt
new file mode 100644
index 00000000000..1a04f2afe1b
--- /dev/null
+++ b/src/regtests/jedutil/eqns/ispLEVER_Classic/readme.txt
@@ -0,0 +1 @@
+These files were created with Lattice Semiconductor's ispLEVER Classic v1.6 software. \ No newline at end of file
diff --git a/src/regtests/jedutil/jeds/18cv8/18cv8_bi-directional_io.jed b/src/regtests/jedutil/jeds/18cv8/18cv8_bi-directional_io.jed
new file mode 100644
index 00000000000..5755cb45b7b
--- /dev/null
+++ b/src/regtests/jedutil/jeds/18cv8/18cv8_bi-directional_io.jed
@@ -0,0 +1,104 @@
+JEDEC PLD file 18CV8_IO.JED created on Tue 11-20-2012 22:28:27
+Place Compile Version: 3.0.0
+PEEL18CV8 Test Data
+*QP20
+*QF2696
+*F0
+*
+N Output Pin 19*
+L0000 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0036 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0072 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0108 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0144 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0180 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0216 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0252 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 18*
+L0288 1111 1111 1111 1111 1111 1111 1011 0111 1101 *
+L0324 1111 1111 1111 1111 1111 1111 1111 1111 1110 *
+L0360 1110 1111 1111 1111 1111 1111 1101 1111 1011 *
+L0396 1111 1101 1111 1111 1101 1110 1111 1111 1111 *
+L0432 1111 1111 1111 1111 1110 1111 1110 1111 1111 *
+L0468 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0504 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0540 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 17*
+L0576 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0612 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0648 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0684 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0720 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0756 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0792 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0828 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 16*
+L0864 1111 1111 1111 1111 1111 1111 1101 1111 1101 *
+L0900 1111 1111 1110 1111 1111 1111 1110 1111 1110 *
+L0936 1111 1111 1111 1111 1101 1111 1111 1101 1111 *
+L0972 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1008 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1044 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1080 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1116 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 15*
+L1152 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1188 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1224 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1260 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1296 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1332 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1368 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1404 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 14*
+L1440 1101 1111 1111 1111 1111 1111 1110 1111 1111 *
+L1476 1111 1111 1110 1111 1101 1111 1111 1111 1111 *
+L1512 1111 1111 1101 1111 1110 1111 1111 1111 1101 *
+L1548 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1584 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1620 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1656 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1692 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 13*
+L1728 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1764 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1800 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1836 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1872 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1908 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1944 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1980 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 12*
+L2016 0111 1011 1111 1111 1111 1111 1111 1111 1111 *
+L2052 1111 1111 1011 1011 1011 0111 1111 1111 1111 *
+L2088 1111 1111 1110 1111 1111 1111 1111 1111 1111 *
+L2124 1111 1111 1111 1111 1101 1111 1110 1101 1111 *
+L2160 1111 1111 1111 1111 1110 1101 1101 1111 1111 *
+L2196 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2232 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2268 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Output Enable 19,18,...12*
+L2304 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2340 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2376 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2412 1111 1111 1101 1111 1111 1111 1111 1111 1111 *
+L2448 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2484 1111 1111 1111 1111 1111 1111 1111 1111 1110 *
+L2520 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2556 1111 1111 1101 1111 1111 1111 1111 1111 1111 *
+
+N Sync Preset, Async Clear, Macrocell 19,18,...12*
+L2592 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2628 0000 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2664 0011 1011 0011 1111 1011 0111 0011 0011 *
+
+C2E3B*
+0000
diff --git a/src/regtests/jedutil/jeds/18cv8/pal10l8-to-peel18cv8.jed b/src/regtests/jedutil/jeds/18cv8/pal10l8-to-peel18cv8.jed
new file mode 100644
index 00000000000..3475b81813e
--- /dev/null
+++ b/src/regtests/jedutil/jeds/18cv8/pal10l8-to-peel18cv8.jed
@@ -0,0 +1,104 @@
+
+ JEDEC PEEL file Translated from: PAL10L8 Mon 10-8-2012 22:38:46
+ PA
+*QP20
+*QF2696
+*F0
+ *
+N Output Pin 19 *
+L0000 0111 0111 0111 0111 0111 0111 0111 1011 1111 *
+L0036 1111 1111 1111 1111 1111 1111 1111 1111 1011 *
+L0072 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0108 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0144 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0180 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0216 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0252 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Pin 18 *
+L0288 0111 0111 0111 0111 0111 0111 1011 0111 1111 *
+L0324 1101 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0360 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0396 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0432 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0468 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0504 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0540 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Pin 17 *
+L0576 0111 0111 0111 0111 0111 1011 0111 0111 1111 *
+L0612 1110 1111 1111 1111 1111 1111 1111 1111 0111 *
+L0648 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0684 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0720 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0756 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0792 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0828 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Pin 16 *
+L0864 0111 0111 0111 0111 1011 0111 0111 0111 1111 *
+L0900 1110 1111 1111 1111 1111 1111 1111 1111 1011 *
+L0936 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0972 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1008 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1044 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1080 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1116 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Pin 15 *
+L1152 0111 0111 0111 1011 0111 0111 0111 0111 1111 *
+L1188 1110 1111 1111 1111 1111 1111 1111 1111 1011 *
+L1224 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1260 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1296 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1332 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1368 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1404 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Pin 14 *
+L1440 0111 0111 1011 0111 0111 0111 0111 0111 1111 *
+L1476 1110 1111 1111 1111 1111 1111 1111 1111 0111 *
+L1512 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1548 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1584 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1620 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1656 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1692 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Pin 13 *
+L1728 0111 1011 0111 0111 0111 0111 0111 0111 1111 *
+L1764 1101 1111 1111 1111 1111 1111 1111 1111 1011 *
+L1800 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1836 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1872 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1908 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1944 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1980 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Pin 12 *
+L2016 1011 0111 0111 0111 0111 0111 0111 0111 1111 *
+L2052 1101 1111 1111 1111 1111 1111 1111 1111 0111 *
+L2088 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2124 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2160 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2196 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2232 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2268 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+
+N Output Enable 19,18,...12 *
+L2304 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2340 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2376 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2412 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2448 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2484 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2520 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2556 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Sync Preset, Async Clear, Macrocell 19,18,...12 *
+L2592 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2628 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2664 1011 1011 1011 1011 1011 1011 1011 1011 *
+
+C6934 *
+0000
diff --git a/src/regtests/jedutil/jeds/18cv8/pal16l8-to-peel18cv8.jed b/src/regtests/jedutil/jeds/18cv8/pal16l8-to-peel18cv8.jed
new file mode 100644
index 00000000000..be396f977f1
--- /dev/null
+++ b/src/regtests/jedutil/jeds/18cv8/pal16l8-to-peel18cv8.jed
@@ -0,0 +1,104 @@
+
+ JEDEC PEEL file Translated from: PAL16L8 Mon 10-8-2012 22:43:12
+ PA
+*QP20
+*QF2696
+*F0
+ *
+N Output Pin 19 *
+L0000 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0036 1101 1111 1111 1111 0111 0111 1011 1111 1111 *
+L0072 1111 1111 0111 1111 1111 0111 0111 1111 1111 *
+L0108 1111 1111 1111 1111 0111 1111 1111 1111 1111 *
+L0144 1111 1111 1111 1111 1111 0111 1111 1111 1111 *
+L0180 1111 1111 1111 1111 1111 1111 0111 1111 1111 *
+L0216 1101 1111 1111 1111 1111 1111 1111 1111 1111 *
+L0252 1111 1111 1111 1111 1111 1111 1011 1111 1111 *
+
+N Output Pin 18 *
+L0288 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0324 1111 1011 1111 1111 0111 0111 1011 1111 1111 *
+L0360 1101 1111 0111 1111 1111 0111 0111 1111 1111 *
+L0396 1111 1111 0111 1111 1111 1111 1111 1111 1111 *
+L0432 1111 1011 1111 1111 1111 1111 1011 1111 1111 *
+L0468 1101 1111 0111 1111 1111 1111 1111 1111 1111 *
+L0504 1111 1111 1111 1111 0111 0111 1011 1111 1111 *
+L0540 1101 1111 1111 1111 1111 1111 0111 1111 1111 *
+
+N Output Pin 17 *
+L0576 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0612 1111 0111 1111 1111 0111 0111 1011 1111 1111 *
+L0648 1111 0111 1110 1111 1111 1111 1111 1111 1111 *
+L0684 1111 1111 1111 1111 0111 1111 1111 1111 1111 *
+L0720 1111 1111 1111 1111 1111 0111 1111 1111 1111 *
+L0756 1111 1111 1101 1111 1111 1111 1011 1111 1111 *
+L0792 1111 0111 1111 1111 1111 1111 1011 1111 1111 *
+L0828 1111 1111 1111 1111 0111 0111 1111 1111 1111 *
+
+N Output Pin 16 *
+L0864 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L0900 1111 1111 1011 1110 1111 1111 1111 1111 1111 *
+L0936 1110 1111 1111 1011 1111 1111 1111 1111 1111 *
+L0972 1111 1111 1011 1011 1111 1111 1111 1111 1111 *
+L1008 1111 1111 1011 0111 1111 1111 1111 1111 1111 *
+L1044 1111 1111 1111 1101 1111 1111 1011 1111 1111 *
+L1080 1110 1111 1111 1111 1111 1111 1011 1111 1111 *
+L1116 1111 1111 1111 0111 1111 1111 1111 1111 1111 *
+
+N Output Pin 15 *
+L1152 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1188 1110 1111 0111 1111 1111 0111 0111 1111 1111 *
+L1224 1111 1111 1111 1111 1101 0111 1111 1111 1111 *
+L1260 1111 1111 0111 1111 1110 1111 1111 1111 1111 *
+L1296 1111 1111 1111 1111 1111 1111 0111 1111 1111 *
+L1332 1110 1111 1111 1111 1111 1111 1111 1111 1111 *
+L1368 1111 1111 1111 1111 1111 0111 0111 1111 1111 *
+L1404 1110 1111 1111 1111 1111 1111 0111 1111 1111 *
+
+N Output Pin 14 *
+L1440 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1476 0111 1111 1111 1111 1111 1110 1111 1111 1111 *
+L1512 1111 1111 1111 1111 1111 1111 1111 1011 1111 *
+L1548 0111 1111 1111 1111 1111 1111 1111 1011 1111 *
+L1584 0111 1011 1111 1111 1111 1110 1111 1111 1111 *
+L1620 1111 1011 1111 1111 1111 1111 1111 1111 1111 *
+L1656 1111 0111 1111 1111 1111 1101 1111 1011 1111 *
+L1692 1111 1111 0111 1111 1111 1111 1111 1111 1111 *
+
+N Output Pin 13 *
+L1728 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L1764 1101 1111 1111 1111 1111 1111 1110 1111 1111 *
+L1800 1111 1111 1111 1111 1111 1111 1111 1111 1011 *
+L1836 1111 1111 1111 1111 1111 1111 1111 0111 1111 *
+L1872 1111 1111 1111 1111 1111 1111 1011 1111 1111 *
+L1908 1111 1111 1111 1111 1111 1011 1101 1111 1111 *
+L1944 1111 1111 1111 1111 0111 1111 1111 1111 1111 *
+L1980 1111 1111 1111 0111 1111 1111 1111 1111 1111 *
+
+N Output Pin 12 *
+L2016 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2052 1111 1111 0111 1111 1111 1111 0111 1111 1011 *
+L2088 0111 1111 1111 1111 1111 1111 1111 1101 1111 *
+L2124 1111 1111 0111 1111 1111 1111 1111 1111 1111 *
+L2160 1111 1111 1111 1111 1111 1011 1111 1111 1111 *
+L2196 1111 1111 1111 1111 1111 1111 1111 0111 1111 *
+L2232 1111 1111 1111 1111 1111 1111 1111 1111 1011 *
+L2268 1111 1111 1111 1111 1111 1111 0111 1110 1111 *
+
+N Output Enable 19,18,...12 *
+L2304 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2340 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2376 1111 1111 1111 1111 1110 1111 1111 1111 1111 *
+L2412 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2448 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2484 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+L2520 1111 0111 1111 1111 1111 1111 1101 1111 1111 *
+L2556 1111 1111 1111 1111 1111 1111 1111 1111 1111 *
+
+N Sync Preset, Async Clear, Macrocell 19,18,...12 *
+L2592 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2628 0000 0000 0000 0000 0000 0000 0000 0000 0000 *
+L2664 1011 1011 1011 1011 1011 1011 1011 1011 *
+
+C1C6E *
+0000
diff --git a/src/regtests/jedutil/jeds/ck2605/ck2605-test1.jed b/src/regtests/jedutil/jeds/ck2605/ck2605-test1.jed
new file mode 100644
index 00000000000..b5e772ff5a4
--- /dev/null
+++ b/src/regtests/jedutil/jeds/ck2605/ck2605-test1.jed
@@ -0,0 +1,36 @@
+
+DM SIGNETICS(PHILIPS)*
+DD CK2605*
+QP20*
+QF1106*
+QV0*
+G0*F0*
+
+L00000 1111111111111111111111111111111111111000000000*
+L00046 0111111111111111111101111111111111110100000000*
+L00092 1110111111111111111111101111111111110010000000*
+L00138 1101111111111111111111011111111111110001000000*
+L00184 1111101111111111111111111011111111110000100000*
+L00230 1111011111111111111111110111111111110000010000*
+L00276 1111111011111111111111111110111111110000001000*
+L00322 1111110111111111111111111111011111110000000100*
+L00368 1111111101111111111111111111101111110000000010*
+L00414 1111111111111111111111111111011111110000000001*
+L00460 1111111111110111111111111111111011110000000010*
+L00506 1111111111111110111111111111110111110000000100*
+L00552 1111111111111101111111111111111110110000001000*
+L00598 1111111111111111101111111111111101110000010000*
+L00644 1111111111111111011111111111111111100000100000*
+L00690 1111111111111111111011111111111111010001000000*
+L00736 111111111111111111111111111111111111 *
+L00772 000000000000000000000000000000000000 *
+L00808 000000000000000000000000000000000001 *
+L00844 010101010101010111111111111111111111 *
+L00880 101010101010101011111111111111111111 *
+L00916 111111111111111110101010101010101010 *
+L00952 000000000000000000000000000000000000 *
+L00988 000000000000000000000000000000000000 *
+L01024 111111111111111111010101010101010101 *
+L01060 111111111111111111111111111111111111 *
+L01096 1001100101*
+0000 \ No newline at end of file
diff --git a/src/regtests/jedutil/jeds/ck2605/ck2605-test2.jed b/src/regtests/jedutil/jeds/ck2605/ck2605-test2.jed
new file mode 100644
index 00000000000..c5e2f75e032
--- /dev/null
+++ b/src/regtests/jedutil/jeds/ck2605/ck2605-test2.jed
@@ -0,0 +1,36 @@
+
+DM SIGNETICS(PHILIPS)*
+DD CK2605*
+QP20*
+QF1106*
+QV0*
+G0*F0*
+
+L00000 0000000000000000000000000000000000001000000000*
+L00046 0111111111111111111101111111111111110100000000*
+L00092 1110111111111111111111101111111111110010000000*
+L00138 1101111111111111111111011111111111110001000000*
+L00184 1111101111111111111111111011111111110000100000*
+L00230 1111011111111111111111110111111111110000010000*
+L00276 1111111011111111111111111110111111110000001000*
+L00322 1111110111111111111111111111011111110000000100*
+L00368 1111111101111111111111111111101111110000000010*
+L00414 1111111111111111111111111111011111110000000001*
+L00460 1111111111110111111111111111111011110000000010*
+L00506 1111111111111110111111111111110111110000000100*
+L00552 1111111111111101111111111111111110110000001000*
+L00598 1111111111111111101111111111111101110000010000*
+L00644 1111111111111111011111111111111111100000100000*
+L00690 1111111111111111111011111111111111010001000000*
+L00736 111111111111111111111111111111111111 *
+L00772 000000000000000000000000000000000000 *
+L00808 000000000000000000000000000000000001 *
+L00844 010101010101010111111111111111111111 *
+L00880 101010101010101011111111111111111111 *
+L00916 111111111111111110101010101010101010 *
+L00952 000000000000000000000000000000000000 *
+L00988 000000000000000000000000000000000000 *
+L01024 111111111111111111010101010101010101 *
+L01060 111111111111111111111111111111111111 *
+L01096 0110011010*
+0000 \ No newline at end of file
diff --git a/src/regtests/jedutil/jeds/gal18v10/gal18v10-test1.jed b/src/regtests/jedutil/jeds/gal18v10/gal18v10-test1.jed
new file mode 100644
index 00000000000..effb704d071
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/gal18v10-test1.jed
@@ -0,0 +1,109 @@
+ispLEVER Classic 1.6.00.07.29.12 Lattice Semiconductor Corp.
+JEDEC file for: P18V10G V9.0
+Created on: Mon Dec 24 21:16:31 2012
+
+GAL18V10 Test1
+*
+QP20* QF3540* QV0* F0*
+ X0*
+NOTE DEVICE NAME: GAL18V10-15LJ*
+NOTE Table of pin names and numbers*
+NOTE PINS i1:1 i2:2 i3:3 i4:4 i5:5 i6:6 i7:7 i8:8 o9:9 o11:11 o12:12*
+NOTE PINS o13:13 o14:14 o15:15 o16:16 o17:17 o18:18 o19:19*
+L0036 111111111111111111111111111111111111*
+L0072 111101111111111111111111111111111111*
+L0108 111111110111111111111111111111111111*
+L0144 111111111111011111111111111111111111*
+L0180 111111111111111110111111111111111111*
+L0216 111111111111111111111011111111111111*
+L0252 111111111111111111111111101111111111*
+L0288 011111011111111111111111111111111111*
+L0324 111111101111111111111111111110111111*
+L0360 111111111111111111111111111111111111*
+L0396 101111111111111111111111111111111111*
+L0432 111110111111111111111111111111111111*
+L0468 111111111011111111111111111111111111*
+L0504 111111111111111111110111111111111111*
+L0540 111111111111111111111111011111111111*
+L0576 111111111111111111111111111101111111*
+L0612 111111111101101111111111111111111111*
+L0648 111111111110111101111111111111111111*
+L0684 111111111111111111111111111111111111*
+L0720 101111111111111111111111111111111111*
+L0756 111101111111111111111111111111111111*
+L0792 111111111111111110111111111111111111*
+L0828 111111111011111111110111111111111111*
+L0864 111111111111111111111011111111111111*
+L0900 111111111111111111111111111101111111*
+L0936 111111111111110111111111101111111111*
+L0972 111111111111011011111111111111111111*
+L1008 111111111111111111111111111111111111*
+L1044 111111110111111111111111111111111111*
+L1080 111111111111101111111111111111111111*
+L1116 111111111111111101111111111111111111*
+L1152 111111111111111111111011111111111111*
+L1188 111111111111111111111111011111111111*
+L1224 111111111111111111111111111110111111*
+L1260 011111111111111111011111111111111111*
+L1296 111110111111111111101111111111111111*
+L1332 111111111111111111111111111111111111*
+L1368 111111111011101111111111111111111111*
+L1404 111111111111111101111111111111111111*
+L1440 011101110111011101111111111111111111*
+L1476 111110111111111111111111011111111111*
+L1512 111111110111111111111111111101111111*
+L1548 111111111111111111111111101101111111*
+L1584 111111111111111111110111011110111111*
+L1620 111111111111101111111101111111111111*
+L1656 111111111111111111111101011111111111*
+L1692 111111111111111111110110011110111111*
+L1728 111111111111111111111111111111111111*
+L1764 111110111011101111111111111111111111*
+L1800 111111111111011101111111111111111111*
+L1836 111101111111111111111011111111111111*
+L1872 111111110111111111111111011111111111*
+L1908 111111111111111111110111101111111111*
+L1944 111111111111111111111111111101111111*
+L1980 111110110111111110111111111101111111*
+L2016 101111111111111111111111111110111111*
+L2052 111101111111111111111111100111111111*
+L2088 011111111111111111111111111011111111*
+L2124 111111111111111111111111111111111111*
+L2160 101111111111111111111111111111111111*
+L2196 111101111111111111111111111111111111*
+L2232 111111111011111111111111111111111111*
+L2268 111111111111101111111111111111111111*
+L2304 111111111111111111111011111111111111*
+L2340 111111111111111111111111111101111111*
+L2376 111111111111111111111111101111011111*
+L2412 111111111111111110111111111111101111*
+L2448 111111111111111111111111111111111111*
+L2484 011111111111111111111111111111111111*
+L2520 111101111111111111111111111111111111*
+L2556 111111111111011111111111111111111111*
+L2592 111111111111111101111111111111111111*
+L2628 111111111111111111110111111111111111*
+L2664 111111111111111111111111111110111111*
+L2700 111111111111111111111111011111110111*
+L2736 111111110111111111111111111111111011*
+L2772 111111111111111111111111111111111111*
+L2808 101111111111111111111111111111111111*
+L2844 111110111111111111111111111111111111*
+L2880 111111111111111101111111111111111111*
+L2916 111111111111111111111011111111111111*
+L2952 111111111111111111111111101111111111*
+L2988 111111111111111111111111111101111111*
+L3024 111111111111011111111111111111111101*
+L3060 111111111011111111111111111111111110*
+L3096 111111111111111111111111111111111111*
+L3132 011101111111111111111111111111111111*
+L3168 111111111011111111111111111111111111*
+L3204 110111111111111111111111111111111111*
+L3240 111111111111101111111111111111111111*
+L3276 111111111111111110111111111111111111*
+L3312 111111111111111111110111111111111111*
+L3348 111111111111111111111111011111111111*
+L3384 111011111111111111111111111110111111*
+L3456 01110111011101110111*
+C9F0C*
+7A91
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal10h8-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal10h8-to-gal18v10.jed
new file mode 100644
index 00000000000..7910b22291e
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal10h8-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal10h8.jed
+Output File: 10h8.jed
+The Date: Fri Nov 30 21:36:06 2012
+
+
+ JEDEC PEEL file Translated from: PAL10H8 Mon 10-8-2012 22:35:56
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 111111111111111111111111111111111111*
+L00072 011101110111011101110111011110111111*
+L00108 111111111111111111111111111111110111*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 111111111111111111111111111111111111*
+L00396 011101110111011101110111101101111111*
+L00432 111111111111111111111111111111110110*
+L00468 000000000000000000000000000000000000*
+L00504 000000000000000000000000000000000000*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111111111111111111111111*
+L00720 011101110111011101111011011101111111*
+L00756 111111111111111111111111111111111001*
+L00792 000000000000000000000000000000000000*
+L00828 000000000000000000000000000000000000*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101110111011110110111011101111111*
+L01080 111111111111111111111111111111111010*
+L01116 000000000000000000000000000000000000*
+L01152 000000000000000000000000000000000000*
+L01188 000000000000000000000000000000000000*
+L01224 000000000000000000000000000000000000*
+L01260 000000000000000000000000000000000000*
+L01296 000000000000000000000000000000000000*
+
+L01332 111111111111111111111111111111111111*
+L01368 011101110111101101110111011101111111*
+L01404 111111111111111111111111111111111010*
+L01440 000000000000000000000000000000000000*
+L01476 000000000000000000000000000000000000*
+L01512 000000000000000000000000000000000000*
+L01548 000000000000000000000000000000000000*
+L01584 000000000000000000000000000000000000*
+L01620 000000000000000000000000000000000000*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111111*
+L01764 011101111011011101110111011101111111*
+L01800 111111111111111111111111111111111001*
+L01836 000000000000000000000000000000000000*
+L01872 000000000000000000000000000000000000*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111111111111111111111111111111111111*
+L02160 011110110111011101110111011101111111*
+L02196 111111111111111111111111111111110110*
+L02232 000000000000000000000000000000000000*
+L02268 000000000000000000000000000000000000*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 111111111111111111111111111111111111*
+L02484 101101110111011101110111011101111111*
+L02520 111111111111111111111111111111110101*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 11111111111111110101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C693E*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal10l8-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal10l8-to-gal18v10.jed
new file mode 100644
index 00000000000..36ccbc9ab71
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal10l8-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal10l8.jed
+Output File: 10l8.jed
+The Date: Fri Nov 30 21:38:16 2012
+
+
+ JEDEC PEEL file Translated from: PAL10L8 Mon 10-8-2012 22:38:46
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 111111111111111111111111111111111111*
+L00072 011101110111011101110111011110111111*
+L00108 111111111111111111111111111111111110*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 111111111111111111111111111111111111*
+L00396 011101110111011101110111101101111111*
+L00432 111111111111111111111111111111110111*
+L00468 000000000000000000000000000000000000*
+L00504 000000000000000000000000000000000000*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111111111111111111111111*
+L00720 011101110111011101111011011101111111*
+L00756 111111111111111111111111111111111001*
+L00792 000000000000000000000000000000000000*
+L00828 000000000000000000000000000000000000*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101110111011110110111011101111111*
+L01080 111111111111111111111111111111111010*
+L01116 000000000000000000000000000000000000*
+L01152 000000000000000000000000000000000000*
+L01188 000000000000000000000000000000000000*
+L01224 000000000000000000000000000000000000*
+L01260 000000000000000000000000000000000000*
+L01296 000000000000000000000000000000000000*
+
+L01332 111111111111111111111111111111111111*
+L01368 011101110111101101110111011101111111*
+L01404 111111111111111111111111111111111010*
+L01440 000000000000000000000000000000000000*
+L01476 000000000000000000000000000000000000*
+L01512 000000000000000000000000000000000000*
+L01548 000000000000000000000000000000000000*
+L01584 000000000000000000000000000000000000*
+L01620 000000000000000000000000000000000000*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111111*
+L01764 011101111011011101110111011101111111*
+L01800 111111111111111111111111111111111001*
+L01836 000000000000000000000000000000000000*
+L01872 000000000000000000000000000000000000*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111111111111111111111111111111111111*
+L02160 011110110111011101110111011101111111*
+L02196 111111111111111111111111111111110110*
+L02232 000000000000000000000000000000000000*
+L02268 000000000000000000000000000000000000*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 111111111111111111111111111111111111*
+L02484 101101110111011101110111011101111111*
+L02520 111111111111111111111111111111110101*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01010101010101010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C682C*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal12h6-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal12h6-to-gal18v10.jed
new file mode 100644
index 00000000000..044ee281367
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal12h6-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal12h6.jed
+Output File: 12h6.jed
+The Date: Fri Nov 30 21:39:39 2012
+
+
+ JEDEC PEEL file Translated from: PAL12H6 Mon 10-8-2012 22:39:42
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 000000000000000000000000000000000000*
+L00072 000000000000000000000000000000000000*
+L00108 000000000000000000000000000000000000*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 111111111111111111111111111111111111*
+L00396 011101110111011101111011011101111111*
+L00432 111111111111111111111111111111110110*
+L00468 110111111111111111111111111111111111*
+L00504 111111111111111111111111111111101111*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111111111111111111111111*
+L00720 011101110111011110110111011101111111*
+L00756 111111111111111111111111111111111010*
+L00792 000000000000000000000000000000000000*
+L00828 000000000000000000000000000000000000*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101110111011101110111101101111111*
+L01080 111111111111111111111111111111111001*
+L01116 000000000000000000000000000000000000*
+L01152 000000000000000000000000000000000000*
+L01188 000000000000000000000000000000000000*
+L01224 000000000000000000000000000000000000*
+L01260 000000000000000000000000000000000000*
+L01296 000000000000000000000000000000000000*
+
+L01332 111111111111111111111111111111111111*
+L01368 011101110111101101110111011101111111*
+L01404 111111111111111111111111111111111010*
+L01440 000000000000000000000000000000000000*
+L01476 000000000000000000000000000000000000*
+L01512 000000000000000000000000000000000000*
+L01548 000000000000000000000000000000000000*
+L01584 000000000000000000000000000000000000*
+L01620 000000000000000000000000000000000000*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111111*
+L01764 011110110111011101110111011101111111*
+L01800 111111111111111111111111111111110110*
+L01836 000000000000000000000000000000000000*
+L01872 000000000000000000000000000000000000*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111111111111111111111111111111111111*
+L02160 101101110111011101110111011101111111*
+L02196 111111111111111111111111111111110101*
+L02232 111011111111111111111111111111111111*
+L02268 111111111111111111111111111111011111*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 000000000000000000000000000000000000*
+L02484 000000000000000000000000000000000000*
+L02520 000000000000000000000000000000000000*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01111111111111010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C6034*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal12l6-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal12l6-to-gal18v10.jed
new file mode 100644
index 00000000000..7f9f23eba97
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal12l6-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal12l6.jed
+Output File: 12l6.jed
+The Date: Fri Nov 30 21:41:09 2012
+
+
+ JEDEC PEEL file Translated from: PAL12L6 Mon 10-8-2012 22:40:14
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 000000000000000000000000000000000000*
+L00072 000000000000000000000000000000000000*
+L00108 000000000000000000000000000000000000*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 111111111111111111111111111111111111*
+L00396 011101110111011101111011011101111111*
+L00432 111111111111111111111111111111110110*
+L00468 110111111111111111111111111111111111*
+L00504 111111111111111111111111111111101111*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111111111111111111111111*
+L00720 011101110111011110110111011101111111*
+L00756 111111111111111111111111111111111010*
+L00792 000000000000000000000000000000000000*
+L00828 000000000000000000000000000000000000*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101110111101101110111011101111111*
+L01080 111111111111111111111111111111111010*
+L01116 000000000000000000000000000000000000*
+L01152 000000000000000000000000000000000000*
+L01188 000000000000000000000000000000000000*
+L01224 000000000000000000000000000000000000*
+L01260 000000000000000000000000000000000000*
+L01296 000000000000000000000000000000000000*
+
+L01332 111111111111111111111111111111111111*
+L01368 011101111011011101110111011101111111*
+L01404 111111111111111111111111111111110101*
+L01440 000000000000000000000000000000000000*
+L01476 000000000000000000000000000000000000*
+L01512 000000000000000000000000000000000000*
+L01548 000000000000000000000000000000000000*
+L01584 000000000000000000000000000000000000*
+L01620 000000000000000000000000000000000000*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111111*
+L01764 011110110111011101110111011101111111*
+L01800 111111111111111111111111111111110110*
+L01836 000000000000000000000000000000000000*
+L01872 000000000000000000000000000000000000*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111111111111111111111111111111111111*
+L02160 101101110111011101110111011101111111*
+L02196 111111111111111111111111111111110101*
+L02232 111011111111111111111111111111111111*
+L02268 111111111111111111111111111111011111*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 000000000000000000000000000000000000*
+L02484 000000000000000000000000000000000000*
+L02520 000000000000000000000000000000000000*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01010101010101010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C6035*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal14h4-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal14h4-to-gal18v10.jed
new file mode 100644
index 00000000000..5ae13a56015
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal14h4-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal14h4.jed
+Output File: 14h4.jed
+The Date: Fri Nov 30 21:42:30 2012
+
+
+ JEDEC PEEL file Translated from: PAL14H4 Mon 10-8-2012 22:40:43
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 000000000000000000000000000000000000*
+L00072 000000000000000000000000000000000000*
+L00108 000000000000000000000000000000000000*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 000000000000000000000000000000000000*
+L00396 000000000000000000000000000000000000*
+L00432 000000000000000000000000000000000000*
+L00468 000000000000000000000000000000000000*
+L00504 000000000000000000000000000000000000*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111111111111111111111111*
+L00720 011101110111101101110111011101111111*
+L00756 111111111111111111111111111111110101*
+L00792 111111111111111111111111110111101111*
+L00828 110111011111111111111111111111111111*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101111011011101110111011101111111*
+L01080 111111111111111111111111111111110110*
+L01116 111111111111111111111111111011011111*
+L01152 111011101111111111111111111111111111*
+L01188 000000000000000000000000000000000000*
+L01224 000000000000000000000000000000000000*
+L01260 000000000000000000000000000000000000*
+L01296 000000000000000000000000000000000000*
+
+L01332 111111111111111111111111111111111111*
+L01368 011110110111011101110111011101111111*
+L01404 111111111111111111111111111111111001*
+L01440 111111111111111111111111110111011111*
+L01476 110111101111111111111111111111111111*
+L01512 000000000000000000000000000000000000*
+L01548 000000000000000000000000000000000000*
+L01584 000000000000000000000000000000000000*
+L01620 000000000000000000000000000000000000*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111111*
+L01764 101101110111011101110111011101111111*
+L01800 111111111111111111111111111111110101*
+L01836 111111111111111111111111111011101111*
+L01872 111011011111111111111111111111111111*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 000000000000000000000000000000000000*
+L02160 000000000000000000000000000000000000*
+L02196 000000000000000000000000000000000000*
+L02232 000000000000000000000000000000000000*
+L02268 000000000000000000000000000000000000*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 000000000000000000000000000000000000*
+L02484 000000000000000000000000000000000000*
+L02520 000000000000000000000000000000000000*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01011111111101010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C561B*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal14l4-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal14l4-to-gal18v10.jed
new file mode 100644
index 00000000000..3b760ef9ef1
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal14l4-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal14l4.jed
+Output File: 14l4.jed
+The Date: Fri Nov 30 21:44:31 2012
+
+
+ JEDEC PEEL file Translated from: PAL14L4 Mon 10-8-2012 22:41:22
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 000000000000000000000000000000000000*
+L00072 000000000000000000000000000000000000*
+L00108 000000000000000000000000000000000000*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 000000000000000000000000000000000000*
+L00396 000000000000000000000000000000000000*
+L00432 000000000000000000000000000000000000*
+L00468 000000000000000000000000000000000000*
+L00504 000000000000000000000000000000000000*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111111111111111111111111*
+L00720 011101110111011101111011011101111111*
+L00756 111111111111111111111111111111110110*
+L00792 111111111111111111111111111011101111*
+L00828 111011101111111111111111111111111111*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101110111011110110111011101111111*
+L01080 111111111111111111111111111111111010*
+L01116 111111111111111111111111110111011111*
+L01152 111011011111111111111111111111111111*
+L01188 000000000000000000000000000000000000*
+L01224 000000000000000000000000000000000000*
+L01260 000000000000000000000000000000000000*
+L01296 000000000000000000000000000000000000*
+
+L01332 111111111111111111111111111111111111*
+L01368 011101110111101101110111011101111111*
+L01404 111111111111111111111111111111111010*
+L01440 111111111111111111111111110111101111*
+L01476 110111101111111111111111111111111111*
+L01512 000000000000000000000000000000000000*
+L01548 000000000000000000000000000000000000*
+L01584 000000000000000000000000000000000000*
+L01620 000000000000000000000000000000000000*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111111*
+L01764 011110110111011101110111011101111111*
+L01800 111111111111111111111111111111110110*
+L01836 111111111111111111111111111011011111*
+L01872 110111011111111111111111111111111111*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 000000000000000000000000000000000000*
+L02160 000000000000000000000000000000000000*
+L02196 000000000000000000000000000000000000*
+L02232 000000000000000000000000000000000000*
+L02268 000000000000000000000000000000000000*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 000000000000000000000000000000000000*
+L02484 000000000000000000000000000000000000*
+L02520 000000000000000000000000000000000000*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01010101010101010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C5550*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal16h2-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal16h2-to-gal18v10.jed
new file mode 100644
index 00000000000..802eff7292e
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal16h2-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal16h2.jed
+Output File: 16h2.jed
+The Date: Fri Nov 30 21:45:36 2012
+
+
+ JEDEC PEEL file Translated from: PAL16H2 Mon 10-8-2012 22:42:12
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 000000000000000000000000000000000000*
+L00072 000000000000000000000000000000000000*
+L00108 000000000000000000000000000000000000*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 000000000000000000000000000000000000*
+L00396 000000000000000000000000000000000000*
+L00432 000000000000000000000000000000000000*
+L00468 000000000000000000000000000000000000*
+L00504 000000000000000000000000000000000000*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 000000000000000000000000000000000000*
+L00720 000000000000000000000000000000000000*
+L00756 000000000000000000000000000000000000*
+L00792 000000000000000000000000000000000000*
+L00828 000000000000000000000000000000000000*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101111011011110110111011101111111*
+L01080 111111111111111111111111111111111110*
+L01116 111111111111111111111111111111110111*
+L01152 111111111111111111111111111111101111*
+L01188 111111111111111111111111110111111111*
+L01224 111111111111111111111110111111111111*
+L01260 111111111101111111111111111111111111*
+L01296 110111101111111111111111111111111111*
+
+L01332 111111111111111111111111111111111111*
+L01368 011101110111101101111011011101111111*
+L01404 111111111111111111111111111111111101*
+L01440 111111111111111111111111111111111011*
+L01476 111111111111111111111111111111011111*
+L01512 111111111111111111111111111011111111*
+L01548 111111111111111111111101111111111111*
+L01584 111111111110111111111111111111111111*
+L01620 111011011111111111111111111111111111*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 000000000000000000000000000000000000*
+L01764 000000000000000000000000000000000000*
+L01800 000000000000000000000000000000000000*
+L01836 000000000000000000000000000000000000*
+L01872 000000000000000000000000000000000000*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 000000000000000000000000000000000000*
+L02160 000000000000000000000000000000000000*
+L02196 000000000000000000000000000000000000*
+L02232 000000000000000000000000000000000000*
+L02268 000000000000000000000000000000000000*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 000000000000000000000000000000000000*
+L02484 000000000000000000000000000000000000*
+L02520 000000000000000000000000000000000000*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01010111110101010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C4E8C*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal16l2-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal16l2-to-gal18v10.jed
new file mode 100644
index 00000000000..9c842cae402
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal16l2-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal16l2.jed
+Output File: 16l2.jed
+The Date: Fri Nov 30 21:46:26 2012
+
+
+ JEDEC PEEL file Translated from: PAL16L2 Mon 10-8-2012 22:42:40
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 000000000000000000000000000000000000*
+L00072 000000000000000000000000000000000000*
+L00108 000000000000000000000000000000000000*
+L00144 000000000000000000000000000000000000*
+L00180 000000000000000000000000000000000000*
+L00216 000000000000000000000000000000000000*
+L00252 000000000000000000000000000000000000*
+L00288 000000000000000000000000000000000000*
+L00324 000000000000000000000000000000000000*
+
+L00360 000000000000000000000000000000000000*
+L00396 000000000000000000000000000000000000*
+L00432 000000000000000000000000000000000000*
+L00468 000000000000000000000000000000000000*
+L00504 000000000000000000000000000000000000*
+L00540 000000000000000000000000000000000000*
+L00576 000000000000000000000000000000000000*
+L00612 000000000000000000000000000000000000*
+L00648 000000000000000000000000000000000000*
+
+L00684 000000000000000000000000000000000000*
+L00720 000000000000000000000000000000000000*
+L00756 000000000000000000000000000000000000*
+L00792 000000000000000000000000000000000000*
+L00828 000000000000000000000000000000000000*
+L00864 000000000000000000000000000000000000*
+L00900 000000000000000000000000000000000000*
+L00936 000000000000000000000000000000000000*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 011101110111011101110111101101111111*
+L01080 111111111111111111111111111111111101*
+L01116 111111111111111111111111111111110111*
+L01152 111111111111111111111111111111011111*
+L01188 111111111111111111111111111011111111*
+L01224 111111111111111111111110111111111111*
+L01260 111111111110111111111111111111111111*
+L01296 111011101111111111111111111111111111*
+
+L01332 111111111111111111111111111111111111*
+L01368 011101110111101101110111011101111111*
+L01404 111111111111111111111111111111111110*
+L01440 111111111111111111111111111111111011*
+L01476 111111111111111111111111111111101111*
+L01512 111111111111111111111111110111111111*
+L01548 111111111111111111111101111111111111*
+L01584 111111111101111111111111111111111111*
+L01620 110111011111111111111111111111111111*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 000000000000000000000000000000000000*
+L01764 000000000000000000000000000000000000*
+L01800 000000000000000000000000000000000000*
+L01836 000000000000000000000000000000000000*
+L01872 000000000000000000000000000000000000*
+L01908 000000000000000000000000000000000000*
+L01944 000000000000000000000000000000000000*
+L01980 000000000000000000000000000000000000*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 000000000000000000000000000000000000*
+L02160 000000000000000000000000000000000000*
+L02196 000000000000000000000000000000000000*
+L02232 000000000000000000000000000000000000*
+L02268 000000000000000000000000000000000000*
+L02304 000000000000000000000000000000000000*
+L02340 000000000000000000000000000000000000*
+L02376 000000000000000000000000000000000000*
+L02412 000000000000000000000000000000000000*
+
+L02448 000000000000000000000000000000000000*
+L02484 000000000000000000000000000000000000*
+L02520 000000000000000000000000000000000000*
+L02556 000000000000000000000000000000000000*
+L02592 000000000000000000000000000000000000*
+L02628 000000000000000000000000000000000000*
+L02664 000000000000000000000000000000000000*
+L02700 000000000000000000000000000000000000*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01010101010101010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C4E2F*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal16l8-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal16l8-to-gal18v10.jed
new file mode 100644
index 00000000000..d8fefe45da9
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal16l8-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal16l8.jed
+Output File: 16l8.jed
+The Date: Fri Nov 30 21:47:54 2012
+
+
+ JEDEC PEEL file Translated from: PAL16L8 Mon 10-8-2012 22:43:12
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 111111111111111111111111111111111111*
+L00072 111111111111111101110111101111110111*
+L00108 111111110111111111110111011111111111*
+L00144 111111111111111101111111111111111111*
+L00180 111111111111111111110111111111111111*
+L00216 111111111111111111111111011111111111*
+L00252 111111111111111111111111111111110111*
+L00288 111111111111111111111111101111111111*
+L00324 000000000000000000000000000000000000*
+
+L00360 111111111111111111111111111111111111*
+L00396 111110111111111101110111101111111111*
+L00432 111111110111111111110111011111110111*
+L00468 111111110111111111111111111111111111*
+L00504 111110111111111111111111101111111111*
+L00540 111111110111111111111111111111110111*
+L00576 111111111111111101110111101111111111*
+L00612 111111111111111111111111011111110111*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111011111111111111111111*
+L00720 111101111111111101110111101111111111*
+L00756 111101101111111111111111111111111111*
+L00792 111111111111111101111111111111111111*
+L00828 111111111111111111110111111111111111*
+L00864 111111011111111111111111101111111111*
+L00900 111101111111111111111111101111111111*
+L00936 111111111111111101110111111111111111*
+L00972 000000000000000000000000000000000000*
+
+L01008 111111111111111111111111111111111111*
+L01044 111111111010111111111111111111111111*
+L01080 111111111111101111111111111111111011*
+L01116 111111111011101111111111111111111111*
+L01152 111111111011011111111111111111111111*
+L01188 111111111101111111111111101111111111*
+L01224 111111111111111111111111101111111011*
+L01260 111111111111011111111111111111111111*
+L01296 000000000000000000000000000000000000*
+
+L01332 111111111111111111111111111111111111*
+L01368 111111110111111111110111011111111011*
+L01404 111111111111110111110111111111111111*
+L01440 111111110111111011111111111111111111*
+L01476 111111111111111111111111011111111111*
+L01512 111111111111111111111111111111111011*
+L01548 111111111111111111110111011111111111*
+L01584 111111111111111111111111011111111011*
+L01620 000000000000000000000000000000000000*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111111*
+L01764 011111111111111111101111111111111111*
+L01800 111111111111111111111111111110111111*
+L01836 011111111111111111111111111110111111*
+L01872 011110111111111111101111111111111111*
+L01908 111110111111111111111111111111111111*
+L01944 111101111111111111011111111110111111*
+L01980 111111110111111111111111111111111111*
+L02016 000000000000000000000000000000000000*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111101111111111111111101111111111111*
+L02160 111111111111111111111110111111110111*
+L02196 111111111111111111111111111111111110*
+L02232 111111111111111111111111111101111111*
+L02268 111111111111111111111111101111111111*
+L02304 111111111111111111111001111111111111*
+L02340 111111111111111101111111111111111111*
+L02376 111111111111011111111111111111111111*
+L02412 000000000000000000000000000000000000*
+
+L02448 111111111111111111111111111111111111*
+L02484 111111110111111111111111011111111110*
+L02520 011111111111111111111111110111111111*
+L02556 111111110111111111111111111111111111*
+L02592 111111111111111111111011111111111111*
+L02628 111111111111111111111111111101111111*
+L02664 111111111111111111111111111111111110*
+L02700 111111111111111111111111011011111111*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01010101010101010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C180F*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal16r4-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal16r4-to-gal18v10.jed
new file mode 100644
index 00000000000..bd9653a9649
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal16r4-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal16r4.jed
+Output File: 16r4.jed
+The Date: Fri Nov 30 21:49:02 2012
+
+
+ JEDEC PEEL file Translated from: PAL16R4 Mon 10-8-2012 22:43:51
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 111111111111111111111111111111111111*
+L00072 111111111111111101110111101111111111*
+L00108 111111110111111111110111011111111111*
+L00144 111111111111111101111111111111111111*
+L00180 111111111111111111110111111111111111*
+L00216 111111111111111111111111011111111111*
+L00252 111111111111101111111111111111111111*
+L00288 111111111111111111111111101111111111*
+L00324 000000000000000000000000000000000000*
+
+L00360 111111111111111111111111111111111111*
+L00396 111110111111111101110111101111111111*
+L00432 111111110111111111110111011111111111*
+L00468 111111110111111111111111111111111111*
+L00504 111110111111111111111111101111111111*
+L00540 111111111011111111111111111111111111*
+L00576 111111111111111101110111101111111111*
+L00612 111111111111111111111111011111111111*
+L00648 000000000000000000000000000000000000*
+
+L00684 111111111111111111111111111111111011*
+L00720 111101111111111101110111101111111111*
+L00756 111101101111111111111111111111111111*
+L00792 111111111111111101111111111111111111*
+L00828 111111111111111111110111111111111111*
+L00864 111111011111111111111111101111111111*
+L00900 111101111111111111111111101111111111*
+L00936 111111111111111101110111111111111111*
+L00972 111111111011111111111111111111111111*
+
+L01008 111111111111111111111111111111111011*
+L01044 111111111010111111111111111111111111*
+L01080 111111111111101111111111111111111111*
+L01116 111111111011111111111111111111111111*
+L01152 111111111011011111111111111111111111*
+L01188 111111111101111111111111101111111111*
+L01224 111111111111111111111111101111111111*
+L01260 111111111111011111111111111111111111*
+L01296 111101110111111111111111111111111111*
+
+L01332 111111111111111111111111111111111011*
+L01368 111111110111111111110111011111111111*
+L01404 111111111111110111110111111111111111*
+L01440 111111110111111011111111111111111111*
+L01476 111111111111111111111111011111111111*
+L01512 111111111111101111111111111111111111*
+L01548 111111111111111111110111011111111111*
+L01584 111111111111011111111111011111111111*
+L01620 111110111111111111111111101111111111*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111011*
+L01764 111111111111111111101111111111111111*
+L01800 111111111111111111111111111110111111*
+L01836 111111111111111111111111111101111111*
+L01872 111110111111111111101111111111111111*
+L01908 111110111111111111111111111111111111*
+L01944 111101111111111111011111111110111111*
+L01980 111111111111101111111111111111111111*
+L02016 111111110111111111111111111111111111*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111101111111111111111101111111111111*
+L02160 111111111111111111111110111111111111*
+L02196 111111111111111111111111111111111110*
+L02232 111111111111111111111111111101111111*
+L02268 111111111111111111111111101111111111*
+L02304 111111111111111111111010111111111111*
+L02340 111111111111111101111111111111111111*
+L02376 111111111111011111111111111111111111*
+L02412 000000000000000000000000000000000000*
+
+L02448 111111111111111111111101111111111111*
+L02484 111110111011111111111111111111111111*
+L02520 111111111111011111111111110111111111*
+L02556 111111110111111111111111111111111111*
+L02592 111111111111111111111011111111111111*
+L02628 111111111111111111111111111101111111*
+L02664 111111111111111111111111111111111110*
+L02700 111111111111111111111111011011111111*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01010000000001010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C28DF*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal16r6-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal16r6-to-gal18v10.jed
new file mode 100644
index 00000000000..6b175db66db
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal16r6-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal16r6.jed
+Output File: 16r6.jed
+The Date: Fri Nov 30 21:49:50 2012
+
+
+ JEDEC PEEL file Translated from: PAL16R6 Mon 10-8-2012 22:44:19
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 111111111111111111111111111111111111*
+L00072 111111111111111101110111101111111111*
+L00108 111111110111111111110111011111111111*
+L00144 111111111111111101111111111111111111*
+L00180 111111111111111111110111111111111111*
+L00216 111111111111111111111111011111111111*
+L00252 111111111111101111111111111111111111*
+L00288 111111111111111111111111101111111111*
+L00324 000000000000000000000000000000000000*
+
+L00360 111111111111111111111111111111111011*
+L00396 111110111111111101110111101111111111*
+L00432 111111110111111111110111011111111111*
+L00468 111111110111111111111111111111111111*
+L00504 111110111111111111111111101111111111*
+L00540 111111111011111111111111111111111111*
+L00576 111111111111111101110111101111111111*
+L00612 111111111111111111111111011111111111*
+L00648 111111111111011111111111111111111111*
+
+L00684 111111111111111111111111111111111011*
+L00720 111101111111111101110111101111111111*
+L00756 111101101111111111111111111111111111*
+L00792 111111111111111101111111111111111111*
+L00828 111111111111111111110111111111111111*
+L00864 111111011111111111111111101111111111*
+L00900 111101111111111111111111101111111111*
+L00936 111111111111111101110111111111111111*
+L00972 111111111011111111111111111111111111*
+
+L01008 111111111111111111111111111111111011*
+L01044 111111111010111111111111111111111111*
+L01080 111111111111101111111111111111111111*
+L01116 111111111011111111111111111111111111*
+L01152 111111111011011111111111111111111111*
+L01188 111111111101111111111111101111111111*
+L01224 111111111111111111111111101111111111*
+L01260 111111111111011111111111111111111111*
+L01296 111101110111111111111111111111111111*
+
+L01332 111111111111111111111111111111111011*
+L01368 111111110111111111110111011111111111*
+L01404 111111111111110111110111111111111111*
+L01440 111111110111111011111111111111111111*
+L01476 111111111111111111111111011111111111*
+L01512 111111111111101111111111111111111111*
+L01548 111111111111111111110111011111111111*
+L01584 111111111111011111111111011111111111*
+L01620 111110111111111111111111101111111111*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111011*
+L01764 111111111111111111101111111111111111*
+L01800 111111111111111111111111111110111111*
+L01836 111111111111111111111111111101111111*
+L01872 111110111111111111101111111111111111*
+L01908 111110111111111111111111111111111111*
+L01944 111101111111111111011111111110111111*
+L01980 111111111111101111111111111111111111*
+L02016 111111110111111111111111111111111111*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111111111111111111111111111111111011*
+L02160 111111111111111111111110111111111111*
+L02196 111111111111111111111111111111111110*
+L02232 111111111111111111111111111101111111*
+L02268 111111111111111111111111101111111111*
+L02304 111111111111111111111010111111111111*
+L02340 111111111111111101111101111111111111*
+L02376 111111111111011111111111111111111111*
+L02412 111110111111111111111111111111111111*
+
+L02448 111111111111111111111101111111111111*
+L02484 111110111011111111111111111111111111*
+L02520 111111111111011111111111110111111111*
+L02556 111111110111111111111111111111111111*
+L02592 111111111111111111111011111111111111*
+L02628 111111111111111111111111111101111111*
+L02664 111111111111111111111111111111111110*
+L02700 111111111111111111111111011011111111*
+L02736 000000000000000000000000000000000000*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 01000000000000010101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C317B*
+
+0000
diff --git a/src/regtests/jedutil/jeds/gal18v10/pal16r8-to-gal18v10.jed b/src/regtests/jedutil/jeds/gal18v10/pal16r8-to-gal18v10.jed
new file mode 100644
index 00000000000..41731ed3bf0
--- /dev/null
+++ b/src/regtests/jedutil/jeds/gal18v10/pal16r8-to-gal18v10.jed
@@ -0,0 +1,133 @@
+
+Device G18V10 converted from PEEL18CV8-> JEDEC map.
+PAL to GAL JEDEC conversion utility - paltogal v3.12 17 November 1992
+Copyright (c) by LATTICE Semiconductor Corp. 1990, 1991, 1992.
+Input File: pal16r8.jed
+Output File: 16r8.jed
+The Date: Fri Nov 30 21:50:38 2012
+
+
+ JEDEC PEEL file Translated from: PAL16R8 Mon 10-8-2012 22:46:06
+ PA
+*QP20
+*QF3540
+*F0
+ *
+N Output Pin 19 *
+
+L00000 000000000000000000000000000000000000*
+
+L00036 111111111111111111111111111111111011*
+L00072 111111111111111101110111101111111111*
+L00108 111111110111111111110111011111111111*
+L00144 111111111111111101111111111111011111*
+L00180 111111111111111111110111111111111111*
+L00216 111111111111111111111111011111111111*
+L00252 111111111111101111111111111111101111*
+L00288 111111111111111111111111101111111111*
+L00324 111101111111111111111111111111111111*
+
+L00360 111111111111111111111111111111111011*
+L00396 111110111111111101110111101111111111*
+L00432 111111110111111111110111011111111111*
+L00468 110111110111111111111111111111111111*
+L00504 111110111111111111111111101111111111*
+L00540 111011111011111111111111111111111111*
+L00576 111111111111111101110111101111111111*
+L00612 111111111111111111111111011111111111*
+L00648 111111111111101111111111111111111111*
+
+L00684 111111111111111111111111111111111011*
+L00720 111101111111111101110111101111111111*
+L00756 111101101111111111111111111111111111*
+L00792 111111111111111101111111111111111111*
+L00828 111111111111111111110111111111111111*
+L00864 111111011111111111111111101111111111*
+L00900 111101111111111111111111101111111111*
+L00936 111111111111111101110111111111111111*
+L00972 111111111011111111111111111111111111*
+
+L01008 111111111111111111111111111111111011*
+L01044 111111111010111111111111111111111111*
+L01080 111111111111101111111111111111111111*
+L01116 111111111011111111111111111111111111*
+L01152 111111111011011111111111111111111111*
+L01188 111111111101111111111111101111111111*
+L01224 111111111111111111111111101111111111*
+L01260 111111111111011111111111111111111111*
+L01296 111101110111111111111111111111111111*
+
+L01332 111111111111111111111111111111111011*
+L01368 111111110111111111110111011111111111*
+L01404 111111111111110111110111111111111111*
+L01440 111111110111111011111111111111111111*
+L01476 111111111111111111111111011111111111*
+L01512 111111111111101111111111111111111111*
+L01548 111111111111111111110111011111111111*
+L01584 111111111111011111111111011111111111*
+L01620 111110111111111111111111101111111111*
+L01656 000000000000000000000000000000000000*
+L01692 000000000000000000000000000000000000*
+
+L01728 111111111111111111111111111111111011*
+L01764 111111111111111111101111111111111111*
+L01800 111111111111111111111111111110111111*
+L01836 111111111111111111111111111101111111*
+L01872 111110111111111111101111111111111111*
+L01908 111110111111111111111111111111111111*
+L01944 111101111111111111011111111110111111*
+L01980 111111111111101111111111111111111111*
+L02016 111111110111111111111111111111111111*
+L02052 000000000000000000000000000000000000*
+L02088 000000000000000000000000000000000000*
+
+L02124 111111111111111111111111111111111011*
+L02160 111111111111111111111110111111111111*
+L02196 111111111111111111111111111111111110*
+L02232 111111111111111111111111111101111111*
+L02268 111111111111111111111111101111111111*
+L02304 111111111111111111111001111111111111*
+L02340 111111111111111101111111111111111111*
+L02376 111111111111011111111111111111111111*
+L02412 111111111011111111111111111111111111*
+
+L02448 111111111111111111111111111111111011*
+L02484 111110111011111111111111111111111111*
+L02520 111111111111011111111111110111111111*
+L02556 111111110111111111111111111111111111*
+L02592 111111111111111111111011111111111111*
+L02628 111111111111111111111111111101111111*
+L02664 111111111111111111111111111111111110*
+L02700 111111111111111111111111011011111111*
+L02736 111111111111111101111111111111111111*
+
+L02772 000000000000000000000000000000000000*
+L02808 000000000000000000000000000000000000*
+L02844 000000000000000000000000000000000000*
+L02880 000000000000000000000000000000000000*
+L02916 000000000000000000000000000000000000*
+L02952 000000000000000000000000000000000000*
+L02988 000000000000000000000000000000000000*
+L03024 000000000000000000000000000000000000*
+L03060 000000000000000000000000000000000000*
+
+L03096 000000000000000000000000000000000000*
+L03132 000000000000000000000000000000000000*
+L03168 000000000000000000000000000000000000*
+L03204 000000000000000000000000000000000000*
+L03240 000000000000000000000000000000000000*
+L03276 000000000000000000000000000000000000*
+L03312 000000000000000000000000000000000000*
+L03348 000000000000000000000000000000000000*
+L03384 000000000000000000000000000000000000*
+
+L03420 000000000000000000000000000000000000*
+
+N ==> Architecture Control *
+L03456 00000000000000000101*
+N ==> Signature is "" *
+L03476 000000000000000000000000000000000000*
+L03512 0000000000000000000000000000*
+C391A*
+
+0000
diff --git a/src/regtests/jedutil/jeds/pls153/pls153.jed b/src/regtests/jedutil/jeds/pls153/pls153.jed
new file mode 100644
index 00000000000..e7fb5d6cd15
--- /dev/null
+++ b/src/regtests/jedutil/jeds/pls153/pls153.jed
@@ -0,0 +1,52 @@
+
+DM SIGNETICS(PHILIPS)*
+DD PLS153*
+QP20*
+QF1842*
+QV0*
+G0*F0*
+
+L00000 1111111111111111111111111111111111111000000000*
+L00046 0111111111111111111101111111111111110100000000*
+L00092 1110111111111111111111101111111111110010000000*
+L00138 1101111111111111111111011111111111110001000000*
+L00184 1111101111111111111111111011111111110000100000*
+L00230 1111011111111111111111110111111111110000010000*
+L00276 1111111011111111111111111110111111110000001000*
+L00322 1111110111111111111111111111011111110000000100*
+L00368 1111111101111111111111111111101111110000000010*
+L00414 1111111111111111111111111111011111110000000001*
+L00460 1111111111110111111111111111111011110000000010*
+L00506 1111111111111110111111111111110111110000000100*
+L00552 1111111111111101111111111111111110110000001000*
+L00598 1111111111111111101111111111111101110000010000*
+L00644 1111111111111111011111111111111111100000100000*
+L00690 1111111111111111111011111111111111010001000000*
+L00736 1111111111111111110111111111111111110010000000*
+L00782 0000000000000000000000000000000000000100000000*
+L00828 1111111111110111111111101111111111111000000000*
+L00874 1111111111111010111101011111111111111111111111*
+L00920 1111111111011101111110111011111111110000100000*
+L00966 1111111111101111100111110111111111110000010000*
+L01012 1111111101111111011011111110111111110000001000*
+L01058 1111111110111111111111111101111111110000000100*
+L01104 1111110111111111111111111111101111110000000010*
+L01150 1111111011111111111111111111011111110000000001*
+L01196 1111011111111111111111111111111011110001000000*
+L01242 1111101111111111111111111111110111110010000000*
+L01288 1101111111111111111111111111111110110100000000*
+L01334 1110111111111111111111111111111101111010101010*
+L01380 0111111111111111111111111111111111101001010101*
+L01426 1011111111111111111111111111111111010110101010*
+L01472 111111111111111111111111111111111111 *
+L01508 000000000000000000000000000000000000 *
+L01544 000000000000000000000000000000000001 *
+L01580 010101010101010111111111111111111111 *
+L01616 101010101010101011111111111111111111 *
+L01652 111111111111111110101010101010101010 *
+L01688 000000000000000000000000000000000000 *
+L01724 000000000000000000000000000000000000 *
+L01760 111111111111111111010101010101010101 *
+L01796 111111111111111111111111111111111111 *
+L01832 1001100101*
+0000 \ No newline at end of file
diff --git a/src/regtests/jedutil/jedtest.wsf b/src/regtests/jedutil/jedtest.wsf
deleted file mode 100644
index 1a6d6d8ad64..00000000000
--- a/src/regtests/jedutil/jedtest.wsf
+++ /dev/null
@@ -1,335 +0,0 @@
-<?xml version="1.0"?>
-<package>
- <job id="JEDTest"><?job debug="true" error="true"?>
- <runtime>
- <description>This script runs regresion tests on the jedutil tool.</description>
-
- <named name="verbose" type="boolean" helpstring="Generate a detailed log." required="false"/>
- </runtime>
-
- <script language="JScript">
- <![CDATA[
- var g_Verbose = false;
-
- function runAndCaptureOutput(command, outputFile)
- {
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- var WshShell = WScript.CreateObject("WScript.Shell");
- var file, oExec;
-
- if (g_Verbose)
- {
- WScript.Echo("Command: " + command);
- WScript.Echo("Output File: " + outputFile);
- WScript.Echo();
- }
-
- file = fso.CreateTextFile(outputFile, false, false);
-
- oExec = WshShell.Exec(command);
-
- if (!oExec.StdOut.AtEndOfStream)
- {
- file.Write(oExec.StdOut.ReadAll());
- }
-
- if (!oExec.StdErr.AtEndOfStream)
- {
- file.Write(oExec.StdErr.ReadAll());
- }
-
- file.Close();
-
- while (!oExec.Status)
- {
- WScript.Sleep(100);
- }
-
- return oExec.ExitCode;
- }
-
- function diffFiles(file1, file2, outputFile)
- {
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- var command;
-
- if (g_Verbose)
- {
- WScript.Echo("Diff File 1: " + file1);
- WScript.Echo("Diff File 2: " + file2);
- WScript.Echo("Output File: " + outputFile);
- WScript.Echo();
- }
-
- if (!fso.FileExists(file1))
- {
- if (g_Verbose)
- {
- WScript.Echo("Diff File 1 does not exist.");
- WScript.Echo();
- }
-
- return 1;
- }
-
- if (!fso.FileExists(file2))
- {
- if (g_Verbose)
- {
- WScript.Echo("Diff File 2 does not exist.");
- WScript.Echo();
- }
-
- return 1;
- }
-
- command = "diff \"" + file1 + "\" \"" + file2 + "\"";
-
- return runAndCaptureOutput(command, outputFile);
- }
-
- function getFilesInFolder(folder)
- {
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- var filesCollection = new Enumerator(folder.files);
- var filesArray = new Array();
-
- while (!filesCollection.atEnd())
- {
- ++filesArray.length;
-
- filesArray[filesArray.length - 1] = new Object();
-
- filesArray[filesArray.length - 1].name = fso.GetBaseName(filesCollection.item().name);
-
- filesCollection.moveNext();
- }
-
- return filesArray;
- }
-
- function findJedTests(jedsPath, baselinePath, outputPath)
- {
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- var folder = fso.GetFolder(jedsPath)
- var folderCollection = new Enumerator(folder.Subfolders);
- var jedArray = new Array();
- var filesArray, file;
-
- while (!folderCollection.atEnd())
- {
- ++jedArray.length;
-
- jedArray[jedArray.length - 1] = new Object;
-
- jedArray[jedArray.length - 1].type = folderCollection.item().name;
- jedArray[jedArray.length - 1].files = new Array;
-
- filesArray = getFilesInFolder(
- fso.GetFolder(
- fso.BuildPath(jedsPath,
- folderCollection.item().name)));
-
- jedArray[jedArray.length - 1].files.length = filesArray.length;
-
- for (index = 0; index < filesArray.length; ++index)
- {
- file = new Object;
-
- file.jedFile = fso.BuildPath(jedsPath,
- folderCollection.item().name);
- file.jedFile = fso.BuildPath(file.jedFile,
- filesArray[index].name);
- file.jedFile = file.jedFile + ".jed";
-
- file.baselineFile = fso.BuildPath(baselinePath,
- folderCollection.item().name);
- file.baselineFile = fso.BuildPath(file.baselineFile,
- filesArray[index].name);
- file.baselineFile = file.baselineFile + ".txt";
-
- file.outputFile = fso.BuildPath(outputPath,
- folderCollection.item().name);
- file.outputFile = fso.BuildPath(file.outputFile,
- filesArray[index].name);
- file.outputFile = file.outputFile + ".txt";
-
- file.diffFile = fso.BuildPath(outputPath,
- folderCollection.item().name);
- file.diffFile = fso.BuildPath(file.diffFile,
- filesArray[index].name);
- file.diffFile = file.diffFile + ".diff";
-
- jedArray[jedArray.length - 1].files[index] = file;
- }
-
- folderCollection.moveNext();
- }
-
- return jedArray;
- }
-
- function createJedOutputFolders(outputPath, jedArray)
- {
- var fso = new ActiveXObject("Scripting.FileSystemObject");
-
- for (index = 0; index < jedArray.length; ++index)
- {
- fso.CreateFolder(fso.BuildPath(outputPath,
- jedArray[index].type));
- }
- }
-
- function runViewJedTests(jedArray, jedUtilApp)
- {
- var files, file, command;
-
- for (testIndex = 0; testIndex < jedArray.length; ++testIndex)
- {
- if (g_Verbose)
- {
- WScript.Echo("Running the view command on the type \"" +
- jedArray[testIndex].type + "\"");
- WScript.Echo();
- }
-
- files = jedArray[testIndex].files;
-
- for (fileIndex = 0; fileIndex < files.length; ++fileIndex)
- {
- file = files[fileIndex];
-
- if (g_Verbose)
- {
- WScript.Echo(" JED File: " + file.jedFile);
- WScript.Echo(" Baseline File: " + file.baselineFile);
- WScript.Echo(" Output File: " + file.outputFile);
- WScript.Echo(" Diff File: " + file.diffFile);
- WScript.Echo();
- }
-
- command = jedUtilApp + " -view \"" + file.jedFile + "\" " +
- jedArray[testIndex].type;
-
- runAndCaptureOutput(command, file.outputFile);
- }
- }
- }
-
- function runDiffJedTests(jedArray)
- {
- var result = true;
- var files, file;
-
- for (testIndex = 0; testIndex < jedArray.length; ++testIndex)
- {
- if (g_Verbose)
- {
- WScript.Echo("Running the diffs on the type \"" +
- jedArray[testIndex].type + "\"");
- WScript.Echo();
- }
-
- files = jedArray[testIndex].files;
-
- for (fileIndex = 0; fileIndex < files.length; ++fileIndex)
- {
- file = files[fileIndex];
-
- if (diffFiles(file.baselineFile, file.outputFile, file.diffFile))
- {
- WScript.Echo("Results are different for " + file.jedFile);
- WScript.Echo();
-
- result = false;
- }
- }
- }
-
- return result;
- }
-
- function main()
- {
- var result = 0;
- var WshShell = WScript.CreateObject("WScript.Shell");
- var fso = new ActiveXObject("Scripting.FileSystemObject");
- var jedsPath = WshShell.CurrentDirectory + "\\jeds";
- var baselinePath = WshShell.CurrentDirectory + "\\baseline";
- var outputPath = WshShell.CurrentDirectory + "\\output";
- var jedUtilApp = WshShell.CurrentDirectory + "\\..\\..\\..\\jedutil.exe";
- var jedArray = new Array();
-
- if (WScript.Arguments.Count() > 0)
- {
- g_Verbose = true;
- }
-
- if (g_Verbose)
- {
- WScript.Echo("JED Path: " + jedsPath);
- WScript.Echo("Baseline Path: " + baselinePath);
- WScript.Echo("Output Path: " + outputPath);
- WScript.Echo("jedutil App: " + jedUtilApp);
- WScript.Echo();
- }
-
- if (fso.FolderExists(outputPath))
- {
- if (g_Verbose)
- {
- WScript.Echo("Removing the existing the output directory");
- WScript.Echo();
- }
-
- fso.DeleteFolder(outputPath);
- }
-
- if (g_Verbose)
- {
- WScript.Echo("Creating the root output directory");
- WScript.Echo();
- }
-
- fso.CreateFolder(outputPath);
-
- jedArray = findJedTests(jedsPath, baselinePath, outputPath);
-
- createJedOutputFolders(outputPath, jedArray);
-
- runViewJedTests(jedArray, jedUtilApp);
-
- if (!runDiffJedTests(jedArray))
- {
- result = 1;
- }
-
- if (!result)
- {
- WScript.Echo("All tests ran successfully.");
- }
-
- return result;
- }
-
- try
- {
- var result = main();
-
- WScript.Quit(result);
- }
- catch (e)
- {
- WScript.Echo("Error Occurred");
- WScript.Echo("");
- WScript.Echo("Name: " + e.name);
- WScript.Echo("Message: " + e.message);
- WScript.Echo("Number: " + e.number);
- WScript.Echo("Description: " + e.description);
-
- WScript.Quit(1);
- }
- ]]>
- </script>
- </job>
-</package>
diff --git a/src/tools/jedutil.c b/src/tools/jedutil.c
index 050da77b64f..2e67027c9bd 100644
--- a/src/tools/jedutil.c
+++ b/src/tools/jedutil.c
@@ -60,6 +60,8 @@
15S8 = QP20 QF0448
+ CK2605 = QP20 QF1106
+
PLS153 = QP20 QF1842
PAL16L8 = QP20 QF2048
@@ -94,6 +96,11 @@
28-pin devices:
PLS100 = QP28 QF1928
+****************************************************************************
+
+ Thanks to Charles MacDonald for providing information on how to decode
+ the PLS153 and CK2605 fuse map.
+
***************************************************************************/
#include <stdio.h>
@@ -243,14 +250,15 @@ static void print_pal16r6_product_terms(const pal_data* pal, const jed_data* jed
static void print_pal16r8_product_terms(const pal_data* pal, const jed_data* jed);
static void print_gal16v8_product_terms(const pal_data* pal, const jed_data* jed);
static void print_peel18cv8_product_terms(const pal_data* pal, const jed_data* jed);
-#if defined(include_gal18v10)
static void print_gal18v10_product_terms(const pal_data* pal, const jed_data* jed);
-#endif
static void print_pal20l8_product_terms(const pal_data* pal, const jed_data* jed);
static void print_pal20l10_product_terms(const pal_data* pal, const jed_data* jed);
static void print_pal20r4_product_terms(const pal_data* pal, const jed_data* jed);
static void print_pal20r6_product_terms(const pal_data* pal, const jed_data* jed);
static void print_pal20r8_product_terms(const pal_data* pal, const jed_data* jed);
+static void print_82s153_product_terms(const pal_data* pal, const jed_data* jed);
+static void print_pls153_product_terms(const pal_data* pal, const jed_data* jed);
+static void print_ck2605_product_terms(const pal_data* pal, const jed_data* jed);
@@ -269,14 +277,15 @@ static void config_pal16r6_pins(const pal_data* pal, const jed_data* jed);
static void config_pal16r8_pins(const pal_data* pal, const jed_data* jed);
static void config_gal16v8_pins(const pal_data* pal, const jed_data* jed);
static void config_peel18cv8_pins(const pal_data* pal, const jed_data* jed);
-#if defined(include_gal18v10)
static void config_gal18v10_pins(const pal_data* pal, const jed_data* jed);
-#endif
static void config_pal20l8_pins(const pal_data* pal, const jed_data* jed);
static void config_pal20l10_pins(const pal_data* pal, const jed_data* jed);
static void config_pal20r4_pins(const pal_data* pal, const jed_data* jed);
static void config_pal20r6_pins(const pal_data* pal, const jed_data* jed);
static void config_pal20r8_pins(const pal_data* pal, const jed_data* jed);
+static void config_82s153_pins(const pal_data* pal, const jed_data* jed);
+static void config_pls153_pins(const pal_data* pal, const jed_data* jed);
+static void config_ck2605_pins(const pal_data* pal, const jed_data* jed);
@@ -424,7 +433,6 @@ static pin_fuse_rows peel18cv8pinfuserows[] = {
{18, 2340, 288, 540},
{19, 2304, 0, 252}};
-#if defined(include_gal18v10)
static pin_fuse_rows gal18v10pinfuserows[] = {
{9, 3096, 3132, 3384},
{11, 2772, 2808, 3060},
@@ -436,7 +444,6 @@ static pin_fuse_rows gal18v10pinfuserows[] = {
{17, 684, 720, 972},
{18, 360, 396, 648},
{19, 36, 72, 324}};
-#endif
static pin_fuse_rows pal20l8pinfuserows[] = {
{15, 2240, 2280, 2520},
@@ -490,6 +497,42 @@ static pin_fuse_rows pal20r8pinfuserows[] = {
{21, NO_OUTPUT_ENABLE_FUSE_ROW, 320, 600}, /* Registered Output */
{22, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 280}}; /* Registered Output */
+static pin_fuse_rows _82s153pinfuserows[] = {
+ {9, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {11, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {12, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {13, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {14, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {15, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {16, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {17, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {18, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0},
+ {19, NO_OUTPUT_ENABLE_FUSE_ROW, 0, 0}};
+
+static pin_fuse_rows pls153pinfuserows[] = {
+ {9, 1472, 0, 0},
+ {11, 1508, 0, 0},
+ {12, 1544, 0, 0},
+ {13, 1580, 0, 0},
+ {14, 1616, 0, 0},
+ {15, 1652, 0, 0},
+ {16, 1688, 0, 0},
+ {17, 1724, 0, 0},
+ {18, 1760, 0, 0},
+ {19, 1796, 0, 0}};
+
+static pin_fuse_rows ck2605pinfuserows[] = {
+ {9, 736, 0, 0},
+ {11, 772, 0, 0},
+ {12, 808, 0, 0},
+ {13, 844, 0, 0},
+ {14, 880, 0, 0},
+ {15, 916, 0, 0},
+ {16, 952, 0, 0},
+ {17, 988, 0, 0},
+ {18, 1024, 0, 0},
+ {19, 1060, 0, 0}};
+
static pin_fuse_columns pal10l8pinfusecolumns[] = {
{1, 3, 2},
{2, 1, 0},
@@ -738,7 +781,6 @@ static pin_fuse_columns peel18cv8pinfusecolumns[] = {
{18, 11, 10},
{19, 7, 6}};
-#if defined(include_gal18v10)
static pin_fuse_columns gal18v10pinfusecolumns[] = {
{1, 1, 0},
{2, 5, 4},
@@ -758,7 +800,6 @@ static pin_fuse_columns gal18v10pinfusecolumns[] = {
{17, 11, 10},
{18, 7, 6},
{19, 3, 2}};
-#endif
static pin_fuse_columns pal20l8pinfusecolumns[] = {
{1, 3, 2},
@@ -870,6 +911,66 @@ static pin_fuse_columns pal20r8pinfusecolumns[] = {
{22, 7, 6},
{23, 3, 2}};
+static pin_fuse_columns _82s153pinfusecolumns[] = {
+ {1, 0, 0},
+ {2, 0, 0},
+ {3, 0, 0},
+ {4, 0, 0},
+ {5, 0, 0},
+ {6, 0, 0},
+ {7, 0, 0},
+ {8, 0, 0},
+ {9, 0, 0},
+ {11, 0, 0},
+ {12, 0, 0},
+ {13, 0, 0},
+ {14, 0, 0},
+ {15, 0, 0},
+ {16, 0, 0},
+ {17, 0, 0},
+ {18, 0, 0},
+ {19, 0, 0}};
+
+static pin_fuse_columns pls153pinfusecolumns[] = {
+ {1, 1, 0},
+ {2, 3, 2},
+ {3, 5, 4},
+ {4, 7, 6},
+ {5, 9, 8},
+ {6, 11, 10},
+ {7, 13, 12},
+ {8, 15, 14},
+ {9, 17, 16},
+ {11, 19, 18},
+ {12, 21, 20},
+ {13, 23, 22},
+ {14, 25, 24},
+ {15, 27, 26},
+ {16, 29, 28},
+ {17, 31, 30},
+ {18, 33, 32},
+ {19, 35, 34}};
+
+static pin_fuse_columns ck2605pinfusecolumns[] = {
+ {1, 1, 0},
+ {2, 3, 2},
+ {3, 5, 4},
+ {4, 7, 6},
+ {5, 9, 8},
+ {6, 11, 10},
+ {7, 13, 12},
+ {8, 15, 14},
+ {9, 17, 16},
+ {11, 19, 18},
+ {12, 21, 20},
+ {13, 23, 22},
+ {14, 25, 24},
+ {15, 27, 26},
+ {16, 29, 28},
+ {17, 31, 30},
+ {18, 33, 32},
+ {19, 35, 34}};
+
static pal_data paldata[] = {
{"PAL10L8",
pal10l8pinfuserows, ARRAY_LEN(pal10l8pinfuserows),
@@ -934,8 +1035,7 @@ static pal_data paldata[] = {
config_pal16l2_pins,
NULL,
NULL},
- /*{"15S8", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
- {"PLS153", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},*/
+ /*{"15S8", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},*/
{"PAL16L8",
pal16l8pinfuserows, ARRAY_LEN(pal16l8pinfuserows),
pal16l8pinfusecolumns, ARRAY_LEN(pal16l8pinfusecolumns),
@@ -981,15 +1081,13 @@ static pal_data paldata[] = {
config_peel18cv8_pins,
NULL,
get_peel18cv8_pin_fuse_state},
-#if defined(include_gal18v10)
- {"GAL18V10",
+ {"GAL18V10",
gal18v10pinfuserows, ARRAY_LEN(gal18v10pinfuserows),
gal18v10pinfusecolumns, ARRAY_LEN(gal18v10pinfusecolumns),
print_gal18v10_product_terms,
config_gal18v10_pins,
NULL,
NULL},
-#endif
{"PAL20L8",
pal20l8pinfuserows, ARRAY_LEN(pal20l8pinfuserows),
pal20l8pinfusecolumns, ARRAY_LEN(pal20l8pinfusecolumns),
@@ -1024,14 +1122,35 @@ static pal_data paldata[] = {
print_pal20r8_product_terms,
config_pal20r8_pins,
NULL,
- NULL}/*,
- {"PAL20X4", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
- {"PAL20X8", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
- {"PAL20X10", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
- {"PAL22V10", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
- {"GAL20V8A", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
- {"GAL22V10", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
- {"PLS100", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL}*/};
+ NULL},/*
+ {"PAL20X4", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
+ {"PAL20X8", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
+ {"PAL20X10", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
+ {"PAL22V10", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
+ {"GAL20V8A", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
+ {"GAL22V10", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},
+ {"PLS100", NULL, 0, NULL, 0, NULL, NULL, NULL, NULL},*/
+ {"82S153",
+ _82s153pinfuserows, ARRAY_LEN(_82s153pinfuserows),
+ _82s153pinfusecolumns, ARRAY_LEN(_82s153pinfusecolumns),
+ print_82s153_product_terms,
+ config_82s153_pins,
+ NULL,
+ NULL},
+ {"PLS153",
+ pls153pinfuserows, ARRAY_LEN(pls153pinfuserows),
+ pls153pinfusecolumns, ARRAY_LEN(pls153pinfusecolumns),
+ print_pls153_product_terms,
+ config_pls153_pins,
+ NULL,
+ NULL},
+ {"CK2605",
+ ck2605pinfuserows, ARRAY_LEN(ck2605pinfuserows),
+ ck2605pinfusecolumns, ARRAY_LEN(ck2605pinfusecolumns),
+ print_ck2605_product_terms,
+ config_ck2605_pins,
+ NULL,
+ NULL}};
@@ -1938,7 +2057,6 @@ static void print_peel18cv8_product_terms(const pal_data* pal, const jed_data* j
terms for a GAL18V10
-------------------------------------------------*/
-#if defined(include_gal18v10)
static void print_gal18v10_product_terms(const pal_data* pal, const jed_data* jed)
{
char buffer[200];
@@ -1967,7 +2085,6 @@ static void print_gal18v10_product_terms(const pal_data* pal, const jed_data* je
printf("\n");
}
}
-#endif
@@ -2032,6 +2149,224 @@ static void print_pal20r8_product_terms(const pal_data* pal, const jed_data* jed
/*-------------------------------------------------
+ print_82s153_product_terms - prints the product
+ terms for a 82S153
+-------------------------------------------------*/
+
+static void print_82s153_product_terms(const pal_data* pal, const jed_data* jed)
+{
+ fprintf(stderr, "Print of product terms not supported for this device\n");
+}
+
+
+
+/*-------------------------------------------------
+ print_pls153_product_terms - prints the product
+ terms for a PLS153
+-------------------------------------------------*/
+
+static void print_pls153_product_terms(const pal_data* pal, const jed_data* jed)
+{
+ UINT16 index, columncount, flags, row, haveterms, or_column, fuserow;
+ char buffer[200];
+ int indent, indentindex;
+ const pin_fuse_rows* fuse_rows;
+
+ columncount = calc_fuse_column_count(pal);
+
+ print_input_pins();
+ print_output_pins();
+
+ printf("Equations:\n\n");
+
+ for (index = 0; index < outputpinscount; ++index)
+ {
+ flags = outputpins[index].flags;
+
+ indent = 0;
+
+ if (flags & OUTPUT_ACTIVELOW)
+ {
+ printf("/");
+
+ ++indent;
+ }
+
+ sprintf(buffer, "o%d = ", outputpins[index].pin);
+
+ printf("%s", buffer);
+
+ haveterms = 0;
+ indent += strlen(buffer);
+
+ fuse_rows = find_fuse_rows(pal, outputpins[index].pin);
+ fuserow = 0;
+
+ if (outputpins[index].pin != 9)
+ {
+ or_column = 19 - outputpins[index].pin;
+ }
+ else
+ {
+ or_column = 9;
+ }
+
+ for (row = 0; row < 32; ++row)
+ {
+ if (!jed_get_fuse(jed, fuserow + columncount + or_column))
+ {
+ generate_product_terms(pal, jed, fuserow, buffer);
+
+ if (strlen(buffer) > 0)
+ {
+ if (haveterms)
+ {
+ printf(" +\n");
+
+ for (indentindex = 0; indentindex < indent; ++indentindex)
+ {
+ printf(" ");
+ }
+ }
+ else
+ {
+ haveterms = 1;
+ }
+
+ printf("%s", buffer);
+ }
+ }
+
+ fuserow += (columncount + 10);
+ }
+
+ printf("\n");
+
+ /* output enable equations */
+
+ printf("o%d.oe = ", outputpins[index].pin);
+
+ if (all_fuses_in_row_blown(pal, jed, fuse_rows->fuserowoutputenable))
+ {
+ printf("vcc\n");
+ }
+ else
+ {
+ generate_product_terms(pal, jed, fuse_rows->fuserowoutputenable, buffer);
+
+ printf("%s\n", buffer);
+ }
+
+ printf("\n");
+ }
+}
+
+
+
+/*-------------------------------------------------
+ print_ck2605_product_terms - prints the product
+ terms for a CK2605
+-------------------------------------------------*/
+
+static void print_ck2605_product_terms(const pal_data* pal, const jed_data* jed)
+{
+ UINT16 index, columncount, flags, row, haveterms, or_column, fuserow;
+ char buffer[200];
+ int indent, indentindex;
+ const pin_fuse_rows* fuse_rows;
+
+ columncount = calc_fuse_column_count(pal);
+
+ print_input_pins();
+ print_output_pins();
+
+ printf("Equations:\n\n");
+
+ for (index = 0; index < outputpinscount; ++index)
+ {
+ flags = outputpins[index].flags;
+
+ indent = 0;
+
+ if (flags & OUTPUT_ACTIVELOW)
+ {
+ printf("/");
+
+ ++indent;
+ }
+
+ sprintf(buffer, "o%d = ", outputpins[index].pin);
+
+ printf("%s", buffer);
+
+ haveterms = 0;
+ indent += strlen(buffer);
+
+ fuse_rows = find_fuse_rows(pal, outputpins[index].pin);
+ fuserow = 0;
+
+ if (outputpins[index].pin != 9)
+ {
+ or_column = 19 - outputpins[index].pin;
+ }
+ else
+ {
+ or_column = 9;
+ }
+
+ for (row = 0; row < 16; ++row)
+ {
+ if (!jed_get_fuse(jed, fuserow + columncount + or_column))
+ {
+ generate_product_terms(pal, jed, fuserow, buffer);
+
+ if (strlen(buffer) > 0)
+ {
+ if (haveterms)
+ {
+ printf(" +\n");
+
+ for (indentindex = 0; indentindex < indent; ++indentindex)
+ {
+ printf(" ");
+ }
+ }
+ else
+ {
+ haveterms = 1;
+ }
+
+ printf("%s", buffer);
+ }
+ }
+
+ fuserow += (columncount + 10);
+ }
+
+ printf("\n");
+
+ /* output enable equations */
+
+ printf("o%d.oe = ", outputpins[index].pin);
+
+ if (all_fuses_in_row_blown(pal, jed, fuse_rows->fuserowoutputenable))
+ {
+ printf("vcc\n");
+ }
+ else
+ {
+ generate_product_terms(pal, jed, fuse_rows->fuserowoutputenable, buffer);
+
+ printf("%s\n", buffer);
+ }
+
+ printf("\n");
+ }
+}
+
+
+
+/*-------------------------------------------------
config_pal10l8_pins - configures the pins for
a PAL10L8
-------------------------------------------------*/
@@ -2782,7 +3117,6 @@ static void config_peel18cv8_pins(const pal_data* pal, const jed_data* jed)
for a GAL18V10
-------------------------------------------------*/
-#if defined(include_gal18v10)
static void config_gal18v10_pins(const pal_data* pal, const jed_data* jed)
{
typedef struct _output_logic_macrocell output_logic_macrocell;
@@ -2804,7 +3138,7 @@ static void config_gal18v10_pins(const pal_data* pal, const jed_data* jed)
{17, 3460, 3461},
{18, 3458, 3459},
{19, 3456, 3457}};
- static UINT16 input_pins[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 17, 18, 19};
+ static UINT16 input_pins[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19};
pin_output_config output_pins[ARRAY_LEN(macrocells)];
UINT16 index, output_pin_count;
@@ -2856,7 +3190,6 @@ static void config_gal18v10_pins(const pal_data* pal, const jed_data* jed)
set_input_pins(input_pins, ARRAY_LEN(input_pins));
set_output_pins(output_pins, output_pin_count);
}
-#endif
@@ -3069,6 +3402,96 @@ static void config_pal20r8_pins(const pal_data* pal, const jed_data* jed)
/*-------------------------------------------------
+ config_82s153_pins - configures the pins for
+ a 82S153
+-------------------------------------------------*/
+
+static void config_82s153_pins(const pal_data* pal, const jed_data* jed)
+{
+ fprintf(stderr, "Config not supported for this device\n");
+}
+
+
+
+/*-------------------------------------------------
+ config_pls153_pins - configures the pins for
+ a PLS153
+-------------------------------------------------*/
+
+static void config_pls153_pins(const pal_data* pal, const jed_data* jed)
+{
+ static UINT16 input_pins[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19};
+ pin_output_config output_pins[10];
+ UINT16 output_pin_count, index;
+
+ output_pin_count = 0;
+
+ for (index = 0; index < pal->pinfuserowscount; ++index)
+ {
+ if (does_output_enable_fuse_row_allow_output(pal, jed, pal->pinfuserows[index].fuserowoutputenable))
+ {
+ output_pins[output_pin_count].pin = pal->pinfuserows[index].pin;
+ output_pins[output_pin_count].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_OUTPUT;
+
+ if (jed_get_fuse(jed, 1832 + (9 - index)))
+ {
+ output_pins[output_pin_count].flags |= OUTPUT_ACTIVELOW;
+ }
+ else
+ {
+ output_pins[output_pin_count].flags |= OUTPUT_ACTIVEHIGH;
+ }
+
+ ++output_pin_count;
+ }
+ }
+
+ set_input_pins(input_pins, ARRAY_LEN(input_pins));
+ set_output_pins(output_pins, output_pin_count);
+}
+
+
+
+/*-------------------------------------------------
+ config_ck2605_pins - configures the pins for
+ a CK2605
+-------------------------------------------------*/
+
+static void config_ck2605_pins(const pal_data* pal, const jed_data* jed)
+{
+ static UINT16 input_pins[] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 11, 12, 13, 14, 15, 16, 17, 18, 19};
+ pin_output_config output_pins[10];
+ UINT16 output_pin_count, index;
+
+ output_pin_count = 0;
+
+ for (index = 0; index < pal->pinfuserowscount; ++index)
+ {
+ if (does_output_enable_fuse_row_allow_output(pal, jed, pal->pinfuserows[index].fuserowoutputenable))
+ {
+ output_pins[output_pin_count].pin = pal->pinfuserows[index].pin;
+ output_pins[output_pin_count].flags = OUTPUT_COMBINATORIAL | OUTPUT_FEEDBACK_OUTPUT;
+
+ if (jed_get_fuse(jed, 1096 + (9 - index)))
+ {
+ output_pins[output_pin_count].flags |= OUTPUT_ACTIVELOW;
+ }
+ else
+ {
+ output_pins[output_pin_count].flags |= OUTPUT_ACTIVEHIGH;
+ }
+
+ ++output_pin_count;
+ }
+ }
+
+ set_input_pins(input_pins, ARRAY_LEN(input_pins));
+ set_output_pins(output_pins, output_pin_count);
+}
+
+
+
+/*-------------------------------------------------
is_gal16v8_product_term_enabled - determines if
a fuse row in a GAL16V8 is enabled
-------------------------------------------------*/