Browse Source

Add PAL16R4 and R6 definitions

Fabio Battaglia 4 years ago
parent
commit
128ca54e3d

+ 5 - 1
src/main/java/info/hkzlab/dupal/analyzer/App.java

@@ -8,7 +8,11 @@ import info.hkzlab.dupal.analyzer.board.boardio.*;
 import info.hkzlab.dupal.analyzer.devices.*;
 
 public class App {
-    public static volatile String[] palTypes = { PAL16R8Specs.PAL_TYPE, PAL16L8Specs.PAL_TYPE, PAL10L8Specs.PAL_TYPE };
+    public static volatile String[] palTypes = { PAL16R8Specs.PAL_TYPE, 
+                                                 PAL16R6Specs.PAL_TYPE,
+                                                 PAL16R4Specs.PAL_TYPE,
+                                                 PAL16L8Specs.PAL_TYPE,
+                                                 PAL10L8Specs.PAL_TYPE };
 
     private final static Logger logger = LoggerFactory.getLogger(App.class);
 

+ 116 - 0
src/main/java/info/hkzlab/dupal/analyzer/devices/PAL16R4Specs.java

@@ -0,0 +1,116 @@
+package info.hkzlab.dupal.analyzer.devices;
+
+public class PAL16R4Specs implements PALSpecs {
+
+    public static final String PAL_TYPE = "16R4";
+
+    private static final String[] LABELS_RO =  {  null,  null,  null,  null,  null,  null,  null,  null,  null,   null,   null, "ro17", "ro16", "ro15", "ro14",   null,   null,   null };
+    private static final String[] LABELS_IN =  {  null,  "i2",  "i3",  "i4",  "i5",  "i6",  "i7",  "i8",  "i9",   null,   null,   null,   null,   null,   null,   null,   null,   null };
+    private static final String[] LABELS_IO =  {  null,  null,  null,  null,  null,  null,  null,  null,  null,   null, "io18",   null,   null,   null,   null, "io13", "io19", "io12" };
+    private static final String[] LABELS_O  =  { };
+
+    @Override
+    public String toString() {
+        return "PAL"+PAL_TYPE;
+    }
+
+    @Override
+    public boolean isActiveLow() {
+        return true;
+    }
+
+    @Override
+    public int getMask_CLK() {
+        return 0x01;
+    }
+
+    @Override
+    public int getMask_OE() {
+        return 0x0200;
+    }
+
+    @Override
+    public int getMask_IN() {
+        return 0x1FE;
+    }
+
+    @Override
+    public int getMask_IO_R() {
+        return 0xE1;
+    }
+
+    @Override
+    public int getMask_IO_W() {
+        return 0x038400;
+    }
+
+    @Override
+    public int getMask_RO_R() {
+        return 0x1E;
+    }
+
+    @Override
+    public int getMask_RO_W() {
+        return 0x7800;
+    }
+
+    @Override
+    public int getMask_O_R() {
+        return 0x00;
+    }
+
+    @Override
+    public int getMask_O_W() {
+        return 0x00;
+    }
+
+    @Override
+    public String[] getLabels_RO() {
+        return LABELS_RO;
+    }
+
+    @Override
+    public String[] getLabels_O() {
+        return LABELS_O;
+    }
+
+    @Override
+    public String[] getLabels_IO() {
+        return LABELS_IO;
+    }
+
+    @Override
+    public String[] getLabels_IN() {
+        return LABELS_IN;
+    }
+
+    @Override
+    public int getPinCount_IN() {
+        return 8;
+    }
+
+    @Override
+    public int getPinCount_IO() {
+        return 4;
+    }
+
+    @Override
+    public int getPinCount_O() {
+        return 0;
+    }
+
+    @Override
+    public int getPinCount_RO() {
+        return 4;
+    }
+
+    @Override
+    public int minimumBoardRev() {
+        return 1;
+    }
+
+    @Override
+    public int slotNumber() {
+        return 0;
+    }
+}

+ 116 - 0
src/main/java/info/hkzlab/dupal/analyzer/devices/PAL16R6Specs.java

@@ -0,0 +1,116 @@
+package info.hkzlab.dupal.analyzer.devices;
+
+public class PAL16R6Specs implements PALSpecs {
+
+    public static final String PAL_TYPE = "16R6";
+
+    private static final String[] LABELS_RO =  {  null,  null,  null,  null,  null,  null,  null,  null,  null,   null, "ro18", "ro17", "ro16", "ro15", "ro14", "ro13",   null,   null };
+    private static final String[] LABELS_IN =  {  null,  "i2",  "i3",  "i4",  "i5",  "i6",  "i7",  "i8",  "i9",   null,   null,   null,   null,   null,   null,   null,   null,   null };
+    private static final String[] LABELS_IO =  {  null,  null,  null,  null,  null,  null,  null,  null,  null,   null,   null,   null,   null,   null,   null,   null, "io19", "io12" };
+    private static final String[] LABELS_O  =  { };
+
+    @Override
+    public String toString() {
+        return "PAL"+PAL_TYPE;
+    }
+
+    @Override
+    public boolean isActiveLow() {
+        return true;
+    }
+
+    @Override
+    public int getMask_CLK() {
+        return 0x01;
+    }
+
+    @Override
+    public int getMask_OE() {
+        return 0x0200;
+    }
+
+    @Override
+    public int getMask_IN() {
+        return 0x1FE;
+    }
+
+    @Override
+    public int getMask_IO_R() {
+        return 0xC0;
+    }
+
+    @Override
+    public int getMask_IO_W() {
+        return 0x030000;
+    }
+
+    @Override
+    public int getMask_RO_R() {
+        return 0x3F;
+    }
+
+    @Override
+    public int getMask_RO_W() {
+        return 0xFC00;
+    }
+
+    @Override
+    public int getMask_O_R() {
+        return 0x00;
+    }
+
+    @Override
+    public int getMask_O_W() {
+        return 0x00;
+    }
+
+    @Override
+    public String[] getLabels_RO() {
+        return LABELS_RO;
+    }
+
+    @Override
+    public String[] getLabels_O() {
+        return LABELS_O;
+    }
+
+    @Override
+    public String[] getLabels_IO() {
+        return LABELS_IO;
+    }
+
+    @Override
+    public String[] getLabels_IN() {
+        return LABELS_IN;
+    }
+
+    @Override
+    public int getPinCount_IN() {
+        return 8;
+    }
+
+    @Override
+    public int getPinCount_IO() {
+        return 2;
+    }
+
+    @Override
+    public int getPinCount_O() {
+        return 0;
+    }
+
+    @Override
+    public int getPinCount_RO() {
+        return 6;
+    }
+
+    @Override
+    public int minimumBoardRev() {
+        return 1;
+    }
+
+    @Override
+    public int slotNumber() {
+        return 0;
+    }
+}