예제 #1
0
 public void WriteToStateFile(C64Interfaces.IFile stateFile)
 {
     stateFile.Write((byte)MOS6502_OpFactory.Ops.DecodeAddressing);
 }
예제 #2
0
 public void WriteToStateFile(C64Interfaces.IFile stateFile)
 {
     stateFile.Write((byte)MOS6502_OpFactory.Ops.Reset);
     stateFile.Write(_readBuffer);
 }
예제 #3
0
 public void WriteToStateFile(C64Interfaces.IFile stateFile)
 {
     stateFile.Write((byte)MOS6502_OpFactory.Ops.WriteResult);
 }
예제 #4
0
 public void WriteDeviceState(C64Interfaces.IFile stateFile)
 {
     stateFile.Write(_localState);
 }
예제 #5
0
 public override void WriteDeviceState(C64Interfaces.IFile stateFile)
 {
     stateFile.Write(_halted);
     WritePhaseToDeviceState(stateFile, 0);
 }
예제 #6
0
        public virtual void WriteToStateFile(C64Interfaces.IFile stateFile)
        {
            stateFile.Write((byte)0);

            _op.WriteToStateFile(stateFile);
            stateFile.Write(_comboNext);
        }
예제 #7
0
 public void WriteToStateFile(C64Interfaces.IFile stateFile)
 {
     stateFile.Write((byte)0);
 }
예제 #8
0
        public virtual void WriteToStateFile(C64Interfaces.IFile stateFile)
        {
            stateFile.Write((byte)TargetFactory.TargetTypes.ReadableTarget);

            stateFile.Write(_address);
            stateFile.Write(_part);
        }
예제 #9
0
        public override void WriteToStateFile(C64Interfaces.IFile stateFile)
        {
            stateFile.Write((byte)TargetFactory.TargetTypes.WritableTarget);

            stateFile.Write(_address);
            stateFile.Write(_part);
        }
예제 #10
0
            public void WriteDeviceState(C64Interfaces.IFile stateFile)
            {
                stateFile.Write(_controlReg);
                stateFile.Write(_active);
                stateFile.Write(_mode);
                stateFile.Write(_oneTime);

                stateFile.Write(_output);
                stateFile.Write(_pulsing);
                stateFile.Write(_pulsed);

                stateFile.Write(_current);
                stateFile.Write(_latch);
            }
예제 #11
0
 public void WriteToStateFile(C64Interfaces.IFile stateFile)
 {
     stateFile.Write((byte)TargetFactory.TargetTypes.AccumulatorTarget);
 }
예제 #12
0
        public void WriteDeviceState(C64Interfaces.IFile stateFile)
        {
            _portA.WriteDeviceState(stateFile);
            _portB.WriteDeviceState(stateFile);

            stateFile.Write(_pcState);
            stateFile.Write(_todPause);
            stateFile.Write(_todLatch);
            stateFile.Write(_todClkCnt);
            stateFile.Write(_todLimits);

            for (int i = 0; i < _tod.GetLength(0); i++)
            {
                for (int j = 0; j < _tod.GetLength(1); j++)
                    stateFile.Write(_tod[i, j]);
            }

            stateFile.Write(_interruptRegisters);
            stateFile.Write(_serialRegister);
            stateFile.Write(_flag);
            stateFile.Write(_cntState);
            stateFile.Write(_cntEdge);

            _timerA.WriteDeviceState(stateFile);
            _timerB.WriteDeviceState(stateFile);
        }
예제 #13
0
        public void WriteDeviceState(C64Interfaces.IFile stateFile)
        {
            _portA.WriteDeviceState(stateFile);
            _portB.WriteDeviceState(stateFile);

            stateFile.Write(_latchPortA);
            stateFile.Write(_latchedValueA);
            stateFile.Write(_ca1);
            stateFile.Write(_ca2);
            stateFile.Write(_latchPortB);
            stateFile.Write(_latchedValueB);
            stateFile.Write(_cb1);
            stateFile.Write(_pulseCA2);
            stateFile.Write(_cb2);
            stateFile.Write(_pulseCB2);

            stateFile.Write(_t1Counter);
            stateFile.Write(_t1Latch);
            stateFile.Write(_t1Count);
            stateFile.Write(_t1OutPB);
            stateFile.Write(_t1FreeRun);
            stateFile.Write(_t2Counter);
            stateFile.Write(_t2Latch);
            stateFile.Write(_t2Count);
            stateFile.Write(_t2InPB);

            stateFile.Write(_functionControlRegister);
            stateFile.Write(_auxiliaryControlRegister);
            stateFile.Write(_interruptFlagRegister);
            stateFile.Write(_interruptEnabledRegister);
        }
예제 #14
0
        public void WriteDeviceState(C64Interfaces.IFile stateFile)
        {
            stateFile.Write((byte)_tracks.Length);

            for (int i = 0; i < _tracks.Length; i++)
            {
                stateFile.Write((ushort)_tracks[i].Length);
                stateFile.Write(_tracks[i]);
            }
        }
예제 #15
0
        public void WriteDeviceState(C64Interfaces.IFile stateFile)
        {
            _systemRam.WriteDeviceState(stateFile);
            _systemCpu.WriteDeviceState(stateFile);
            _systemVic.WriteDeviceState(stateFile);
            _systemCias[0].WriteDeviceState(stateFile);
            _systemCias[1].WriteDeviceState(stateFile);
            _serial.WriteDeviceState(stateFile);
            _sDataConn.WriteDeviceState(stateFile);
            _sClockConn.WriteDeviceState(stateFile);

            stateFile.Write(_currentMap);

            _systemClock.WriteDeviceState(stateFile);
        }
예제 #16
0
 public void WriteDeviceState(C64Interfaces.IFile stateFile)
 {
     stateFile.Write(_sourceCount);
 }
예제 #17
0
        protected void WritePhaseToDeviceState(C64Interfaces.IFile stateFile, byte phase)
        {
            byte opCount = 0;
            for (ClockEntry op = _currentOps[phase]; op != null; op = op.Next)
                opCount++;

            stateFile.Write(opCount);

            for (ClockEntry op = _currentOps[phase]; op != null; op = op.Next)
                op.WriteToStateFile(stateFile);
        }
예제 #18
0
 public void WriteDeviceState(C64Interfaces.IFile stateFile)
 {
     stateFile.Write(_memory);
 }
예제 #19
0
        public override void WriteToStateFile(C64Interfaces.IFile stateFile)
        {
            stateFile.Write((byte)1);

            _op.WriteToStateFile(stateFile);

            stateFile.Write(_comboNext);
            stateFile.Write(_length);
            stateFile.Write(_cycle);
        }
예제 #20
0
 public void WriteToStateFile(C64Interfaces.IFile stateFile)
 {
     stateFile.Write((byte)MOS6502_OpFactory.Ops.ExecuteOpcode);
     stateFile.Write(_pageCrossProlong);
 }
예제 #21
0
 public void WriteDeviceState(C64Interfaces.IFile stateFile)
 {
     stateFile.Write(_stateOut);
     stateFile.Write(_stateIn);
     stateFile.Write(_direction);
 }
예제 #22
0
        public virtual void WriteDeviceState(C64Interfaces.IFile stateFile)
        {
            stateFile.Write(_state.A.Value);
            stateFile.Write(_state.X.Value);
            stateFile.Write(_state.Y.Value);
            stateFile.Write(_state.PC.Value);
            stateFile.Write(_state.S.Value);
            stateFile.Write(_state.P.Value);

            stateFile.Write(_opcode);
            stateFile.Write(_result);

            _target.WriteToStateFile(stateFile);

            _irq.WriteDeviceState(stateFile);
            _nmi.WriteDeviceState(stateFile);
        }
예제 #23
0
 public void WriteDeviceState(C64Interfaces.IFile stateFile)
 {
     stateFile.Write(_atnLine);
     _dataLine.WriteDeviceState(stateFile);
     _clockLine.WriteDeviceState(stateFile);
 }
예제 #24
0
 public void WriteDeviceState(C64Interfaces.IFile stateFile)
 {
     stateFile.Write(_headTrackPos);
     stateFile.Write(_headSectorPos);
     stateFile.Write(_lastHeadDirection);
     stateFile.Write(_spinning);
     stateFile.Write(_density);
     stateFile.Write(_cycleCount);
     stateFile.Write(_lastData);
 }