diff --git a/BizHawk.Emulation.Cores/Computers/Commodore64/C64.cs b/BizHawk.Emulation.Cores/Computers/Commodore64/C64.cs index 5732a79952..d64790f9d9 100644 --- a/BizHawk.Emulation.Cores/Computers/Commodore64/C64.cs +++ b/BizHawk.Emulation.Cores/Computers/Commodore64/C64.cs @@ -13,7 +13,7 @@ namespace BizHawk.Emulation.Cores.Computers.Commodore64 "SaxxonPike", isPorted: false, isReleased: false)] - public sealed partial class C64 : IEmulator, IRegionable + public sealed partial class C64 : IEmulator, IRegionable, IBoardInfo { public C64(CoreComm comm, IEnumerable roms, object settings, object syncSettings) { @@ -54,6 +54,31 @@ namespace BizHawk.Emulation.Cores.Computers.Commodore64 ser.Register(this); } + // IBoardInfo + [SaveState.DoNotSave] + public string BoardName + { + get + { + if (_board.CartPort.IsConnected) + { + return _board.CartPort.CartridgeType; + } + + if (_board.TapeDrive != null) + { + return "Tape Drive"; + } + + if (_board.DiskDrive != null) + { + return "Disk Drive"; // TODO: drive types? + } + + return ""; + } + } + // IRegionable [SaveState.DoNotSave] public DisplayType Region { get; private set; } diff --git a/BizHawk.Emulation.Cores/Computers/Commodore64/Cartridge/CartridgePort.cs b/BizHawk.Emulation.Cores/Computers/Commodore64/Cartridge/CartridgePort.cs index 1416e07460..443399f6f3 100644 --- a/BizHawk.Emulation.Cores/Computers/Commodore64/Cartridge/CartridgePort.cs +++ b/BizHawk.Emulation.Cores/Computers/Commodore64/Cartridge/CartridgePort.cs @@ -17,6 +17,9 @@ namespace BizHawk.Emulation.Cores.Computers.Commodore64.Cartridge Disconnect(); } + [SaveState.DoNotSave] + internal string CartridgeType => _cartridgeDevice.GetType().Name; + // ------------------------------------------ public int PeekHiExp(int addr)