home *** CD-ROM | disk | FTP | other *** search
- class BCDToSevenSegDecoder extends IntegratedCircuit {
- // $FF: renamed from: LE int
- static final int field_0 = 0;
- // $FF: renamed from: BI int
- static final int field_1 = 1;
- // $FF: renamed from: LT int
- static final int field_2 = 2;
- // $FF: renamed from: A int
- static final int field_3 = 3;
- // $FF: renamed from: B int
- static final int field_4 = 4;
- // $FF: renamed from: C int
- static final int field_5 = 5;
- // $FF: renamed from: D int
- static final int field_6 = 6;
- // $FF: renamed from: a int
- static final int field_7 = 0;
- // $FF: renamed from: b int
- static final int field_8 = 1;
- // $FF: renamed from: c int
- static final int field_9 = 2;
- // $FF: renamed from: d int
- static final int field_10 = 3;
- // $FF: renamed from: e int
- static final int field_11 = 4;
- // $FF: renamed from: f int
- static final int field_12 = 5;
- // $FF: renamed from: g int
- static final int field_13 = 6;
- static final int[][] SegLev = new int[][]{{5, 5, 5, 5, 5, 5, 0}, {0, 5, 5, 0, 0, 0, 0}, {5, 5, 0, 5, 5, 0, 5}, {5, 5, 5, 5, 0, 0, 5}, {0, 5, 5, 0, 0, 5, 5}, {5, 0, 5, 5, 0, 5, 5}, {5, 0, 5, 5, 5, 5, 5}, {5, 5, 5, 0, 0, 0, 0}, {5, 5, 5, 5, 5, 5, 5}, {5, 5, 5, 5, 0, 5, 5}, {5, 5, 5, 0, 5, 5, 5}, {0, 0, 5, 5, 5, 5, 5}, {5, 0, 0, 5, 5, 5, 0}, {0, 5, 5, 5, 5, 0, 5}, {5, 0, 0, 5, 5, 5, 5}, {5, 0, 0, 0, 5, 5, 5}};
- int ActVal;
-
- public BCDToSevenSegDecoder(Pin[][] var1, int var2, int var3) {
- super(var2, var3, 10, 13, 3, 1, 4, 11, 7, 7);
- super.IPin[0] = new InputPin("LE", 1, 2, 2, 0, 0, 0, 1);
- super.IPin[1] = new InputPin("BI", 1, 4, 2, 0, 0, 0, 1);
- super.IPin[2] = new InputPin("LT", 1, 6, 2, 0, 0, 0, 1);
- super.IPin[3] = new InputPin("A", 1, 8, 2, 0, 0, 0, 0);
- super.IPin[4] = new InputPin("B", 1, 9, 2, 0, 0, 0, 0);
- super.IPin[5] = new InputPin("C", 1, 10, 2, 0, 0, 0, 0);
- super.IPin[6] = new InputPin("D", 1, 11, 2, 0, 0, 0, 0);
- super.OPin[0] = new OutputPin("a", 9, 3, -2, 0, 0, 0, 0);
- super.OPin[1] = new OutputPin("b", 9, 4, -2, 0, 0, 0, 0);
- super.OPin[2] = new OutputPin("c", 9, 5, -2, 0, 0, 0, 0);
- super.OPin[3] = new OutputPin("d", 9, 6, -2, 0, 0, 0, 0);
- super.OPin[4] = new OutputPin("e", 9, 7, -2, 0, 0, 0, 0);
- super.OPin[5] = new OutputPin("f", 9, 8, -2, 0, 0, 0, 0);
- super.OPin[6] = new OutputPin("g", 9, 9, -2, 0, 0, 0, 0);
- super.ComponentName = "BCD to 7-segment decoder";
- super.ClassName = "BCDToSevenSegDecoder";
- ((ElectronicComponent)this).RegisterPins(var1, var2, var3);
- }
-
- public BCDToSevenSegDecoder(ElectronicComponent var1, int var2, int var3) {
- super(var1, var2, var3);
- }
-
- public ElectronicComponent Copy(int var1, int var2) {
- BCDToSevenSegDecoder var3 = new BCDToSevenSegDecoder(this, var1, var2);
- return var3;
- }
-
- public void SimulateLogic() {
- if (super.IPin[2].getLevel() == 5) {
- for(int var3 = 0; var3 < 7; ++var3) {
- super.OPin[var3].Level = 5;
- }
-
- } else if (super.IPin[1].getLevel() == 5) {
- for(int var2 = 0; var2 < 7; ++var2) {
- super.OPin[var2].Level = 0;
- }
-
- } else {
- if (super.IPin[0].getLevel() == 5) {
- this.ActVal = 0;
- if (super.IPin[3].getLevel() == 5) {
- ++this.ActVal;
- }
-
- if (super.IPin[4].getLevel() == 5) {
- this.ActVal += 2;
- }
-
- if (super.IPin[5].getLevel() == 5) {
- this.ActVal += 4;
- }
-
- if (super.IPin[6].getLevel() == 5) {
- this.ActVal += 8;
- }
- }
-
- for(int var1 = 0; var1 < 7; ++var1) {
- super.OPin[var1].Level = SegLev[this.ActVal][var1];
- }
-
- }
- }
- }
-