1 package net.mograsim.logic.ui.am2900;
\r
3 public interface TestableAm2901
\r
9 void setDest(Am2901_Dest dest);
\r
11 void setFunc(Am2901_Func func);
\r
13 void setSrc(Am2901_Src src);
\r
15 void setReg_A(String val_4_bit);
\r
17 void setReg_B(String val_4_bit);
\r
19 void setCarryIn(String val_1_bit);
\r
21 void setNotOutEnable(String val_1_bit);
\r
23 void setD(String val_4_bit);
\r
25 void setQ_0(String val_1_bit);
\r
27 void setQ_3(String val_1_bit);
\r
29 void setRAM_0(String val_1_bit);
\r
31 void setRAM_3(String val_1_bit);
\r
47 String getCarryOut();
\r
53 String getOverflow();
\r
59 SUCCESS, OUT_OF_TIME, ERROR;
\r
62 public enum Am2901_Dest
\r
64 QREG, NOP, RAMA, RAMF, RAMQD, RAMD, RAMQU, RAMU;
\r
66 public boolean doesShift()
\r
68 return ordinal() >= 4;
\r
71 public int getShiftDir()
\r
73 return doesShift() ? (ordinal() < 6 ? -1 : 1) : 0;
\r
78 return this.ordinal() >> 1 & 1;
\r
82 public enum Am2901_Func
\r
84 ADD, SUBR, SUBS, OR, AND, NOTRS, EXOR, EXNOR;
\r
87 public enum Am2901_Src
\r
89 AQ, AB, ZQ, ZB, ZA, DA, DQ, DZ;
\r