public void Load(Stream memoryBytes) { Memory = new MachineMemory(memoryBytes); PC = Memory.StartingProgramCounter; ObjectTable.Initialize(); StackFrames.Initialize(); }
public Machine(ILogger logger, IInputStream inputStream) { Memory = new MachineMemory(Stream.Null); StackFrames = new FrameCollection(logger); ObjectTable = new GameObjectTable(this); Decoder = new InstructionDecoder(this); Output = new CompositeOutputStream(new DebugOutputStream(logger)); Logger = logger.ForContext <Machine>(); Input = inputStream; }