Пример #1
0
        private void Init8253()
        {
            _i8253 = new i8253(AddInterrupt);

            //i8253 input devices(PIT)
            _eu.AddInputDevice(0x40, new InputDevice(_i8253.ReadCounter1, _i8253.Read16));
            _eu.AddInputDevice(0x41, new InputDevice(_i8253.ReadCounter2, _i8253.Read16));
            _eu.AddInputDevice(0x42, new InputDevice(_i8253.ReadCounter3, _i8253.Read16));
            _eu.AddInputDevice(0x43, new InputDevice(_i8253.ReadControlWord, _i8253.Read16));

            ////i8253 output devices(PIT)
            _eu.AddOutputDevice(0x40, new OutputDevice(_i8253.WriteCounter1, _i8253.WriteCounter));
            _eu.AddOutputDevice(0x41, new OutputDevice(_i8253.WriteCounter2, _i8253.WriteCounter));
            _eu.AddOutputDevice(0x42, new OutputDevice(_i8253.WriteCounter3, _i8253.WriteCounter));
            _eu.AddOutputDevice(0x43, new OutputDevice(_i8253.WriteControlWord, _i8253.WriteControlWord));
        }
Пример #2
0
        private void Init8253()
        {
            _i8253 = new i8253(AddInterrupt);

            //i8253 input devices(PIT)
            _eu.AddInputDevice(0x40, new InputDevice(_i8253.ReadCounter1, _i8253.Read16));
            _eu.AddInputDevice(0x41, new InputDevice(_i8253.ReadCounter2, _i8253.Read16));
            _eu.AddInputDevice(0x42, new InputDevice(_i8253.ReadCounter3, _i8253.Read16));
            _eu.AddInputDevice(0x43, new InputDevice(_i8253.ReadControlWord, _i8253.Read16));

            ////i8253 output devices(PIT)
            _eu.AddOutputDevice(0x40, new OutputDevice(_i8253.WriteCounter1, _i8253.WriteCounter));
            _eu.AddOutputDevice(0x41, new OutputDevice(_i8253.WriteCounter2, _i8253.WriteCounter));
            _eu.AddOutputDevice(0x42, new OutputDevice(_i8253.WriteCounter3, _i8253.WriteCounter));
            _eu.AddOutputDevice(0x43, new OutputDevice(_i8253.WriteControlWord, _i8253.WriteControlWord));
        }