home *** CD-ROM | disk | FTP | other *** search
- class EightBitParInShiftReg extends IntegratedCircuit {
- int[] Mem = new int[8];
-
- public EightBitParInShiftReg(Pin[][] var1, int var2, int var3) {
- super(var2, var3, 10, 17, 3, 1, 4, 15, 11, 2);
- super.IPin[0] = new InputPin("CLK", 1, 2, 2, 0, 0, 0, 4);
- super.IPin[1] = new InputPin("CLR", 1, 4, 2, 0, 0, 0, 1);
- super.IPin[2] = new InputPin("LD", 1, 6, 2, 0, 0, 0, 1);
- super.IPin[3] = new InputPin("1", 1, 8, 2, 0, 0, 0, 0);
- super.IPin[4] = new InputPin("2", 1, 9, 2, 0, 0, 0, 0);
- super.IPin[5] = new InputPin("3", 1, 10, 2, 0, 0, 0, 0);
- super.IPin[6] = new InputPin("4", 1, 11, 2, 0, 0, 0, 0);
- super.IPin[7] = new InputPin("5", 1, 12, 2, 0, 0, 0, 0);
- super.IPin[8] = new InputPin("6", 1, 13, 2, 0, 0, 0, 0);
- super.IPin[9] = new InputPin("7", 1, 14, 2, 0, 0, 0, 0);
- super.IPin[10] = new InputPin("8", 1, 15, 2, 0, 0, 0, 0);
- super.OPin[0] = new OutputPin("Q", 9, 13, -2, 0, 0, 0, 0);
- super.OPin[1] = new OutputPin("Q", 9, 15, -2, 0, 0, 0, 1);
- super.ComponentName = "8-bit parallel in shift register";
- super.ClassName = "EightBitParInShiftReg";
- ((ElectronicComponent)this).RegisterPins(var1, var2, var3);
- }
-
- public EightBitParInShiftReg(ElectronicComponent var1, int var2, int var3) {
- super(var1, var2, var3);
- }
-
- public ElectronicComponent Copy(int var1, int var2) {
- EightBitParInShiftReg var3 = new EightBitParInShiftReg(this, var1, var2);
- return var3;
- }
-
- public void SimulateLogic() {
- if (super.IPin[2].getLevel() == 5) {
- for(int var1 = 0; var1 < 8; ++var1) {
- this.Mem[var1] = super.IPin[var1 + 3].getLevel();
- }
- }
-
- if (super.IPin[1].getLevel() == 5) {
- for(int var2 = 0; var2 < 8; ++var2) {
- this.Mem[var2] = 0;
- }
- }
-
- if (super.IPin[0].OldLevel == 0 && super.IPin[0].getLevel() == 5) {
- for(int var3 = 7; var3 > 0; --var3) {
- this.Mem[var3] = this.Mem[var3 - 1];
- }
-
- this.Mem[0] = 0;
- }
-
- super.OPin[0].setLevel(this.Mem[7]);
- super.OPin[1].setLevel(this.Mem[7]);
- super.IPin[0].OldLevel = super.IPin[0].getLevel();
- }
-
- public void Simulate(int var1) {
- ((ElectronicComponent)this).InformConnectedComponentsOldLevel(var1);
- }
- }
-