/// <summary> /// Sets the Address that will be written / read from /// </summary> /// <param name="sender"></param> /// <param name="addr">Address to select</param> public void AddressInput(object sender, Trort addr) { Address = new Trort(addr); CurrentRegister?.ReadWriteEnabled(this, Trit.Neu); CurrentRegister = _Registers[ Address.Tribble0Value + 13, Address.Tribble1Value + 13, Address.Tribble2Value + 13, Address.Tribble3Value + 13]; CurrentRegister.ReadWriteEnabled(this, ReadWriteState); }
public STrortAddrTryteMemory() { for (int x = 0; x < TRIBBLE_SIZE; x++) { for (int y = 0; y < TRIBBLE_SIZE; y++) { for (int z = 0; z < TRIBBLE_SIZE; z++) { for (int t = 0; t < TRIBBLE_SIZE; t++) { TryteRegister register = new TryteRegister(); _DataBus.BusOutput += register.BusInput; register.BusOutput += (s, val) => BusOutput?.Invoke(this, val); _Registers[x, y, z, t] = register; } } } } }