예제 #1
0
        public ImlacSystem()
        {
            _memory            = new Memory(this);
            _paperTapeReader   = new PaperTapeReader(this);
            _tty               = new TTY(this);
            _keyboard          = new Keyboard(this);
            _clock             = new AddressableClock(this);
            _interruptFacility = new InterruptFacility(this);
            _displayProcessor  = new DisplayProcessor(this);
            _processor         = new Processor(this);

            // Register IOT devices
            _processor.RegisterDeviceIOTs(_displayProcessor);
            _processor.RegisterDeviceIOTs(_paperTapeReader);
            _processor.RegisterDeviceIOTs(_tty);
            _processor.RegisterDeviceIOTs(_keyboard);
            _processor.RegisterDeviceIOTs(_clock);
            _processor.RegisterDeviceIOTs(_interruptFacility);
        }
예제 #2
0
 private SystemExecutionState AttachPTR(string fileName)
 {
     PaperTapeReader.LoadTape(fileName);
     return(SystemExecutionState.Debugging);
 }