Exemple #1
0
        /// <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);
        }
Exemple #2
0
        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;
                        }
                    }
                }
            }
        }