From 2e3102879b2d3059f4ce0efc1a0ecd4bc3142a99 Mon Sep 17 00:00:00 2001 From: Ian C Date: Wed, 28 Dec 2011 00:11:12 +0000 Subject: Added some more base classes and started on the Z80 implementation. --- Noddybox.Emulation.EightBit/Register16BigEndian.cs | 53 ++++++++++++++++++++++ 1 file changed, 53 insertions(+) create mode 100644 Noddybox.Emulation.EightBit/Register16BigEndian.cs (limited to 'Noddybox.Emulation.EightBit/Register16BigEndian.cs') diff --git a/Noddybox.Emulation.EightBit/Register16BigEndian.cs b/Noddybox.Emulation.EightBit/Register16BigEndian.cs new file mode 100644 index 0000000..8378543 --- /dev/null +++ b/Noddybox.Emulation.EightBit/Register16BigEndian.cs @@ -0,0 +1,53 @@ +using System; +using System.Net; +using System.Windows; +using System.Windows.Controls; +using System.Windows.Documents; +using System.Windows.Ink; +using System.Windows.Input; +using System.Windows.Media; +using System.Windows.Media.Animation; +using System.Windows.Shapes; +using System.Runtime.InteropServices; + +namespace Noddybox.Emulation.EightBit +{ + [StructLayout(LayoutKind.Explicit)] + public struct Register16BigEndian : IRegister16 + { + #region Register fields + + [FieldOffset(0)] + ushort reg; + + [FieldOffset(1)] + byte low; + + [FieldOffset(0)] + byte high; + + #endregion + + #region IRegister16 Members + + public byte Low + { + get {return low;} + set {low = value;} + } + + public byte High + { + get {return high;} + set {high = value;} + } + + public ushort Value + { + get {return reg;} + set {reg = value;} + } + + #endregion + } +} -- cgit v1.3