Virtu/Virtu/MachineComponent.cs
Sean Fausett 7aacc26962 Added support for 'executable' (.xex) files.
Added 'default' debug service using Trace output.
Added more debug service logging to machine.
2012-07-08 16:18:07 +12:00

43 lines
978 B
C#

using System;
using System.IO;
using Jellyfish.Library;
using Jellyfish.Virtu.Services;
namespace Jellyfish.Virtu
{
public abstract class MachineComponent
{
protected MachineComponent(Machine machine)
{
Machine = machine;
_debugService = new Lazy<DebugService>(() => Machine.Services.GetService<DebugService>());
}
public virtual void Initialize()
{
}
public virtual void Reset()
{
}
public virtual void LoadState(BinaryReader reader, Version version)
{
}
public virtual void Uninitialize()
{
}
public virtual void SaveState(BinaryWriter writer)
{
}
protected Machine Machine { get; private set; }
protected DebugService DebugService { get { return _debugService.Value; } }
private Lazy<DebugService> _debugService;
}
}