예제 #1
0
 /// <summary>Emits a 'cmp' instruction.</summary>
 public static void Cmp(this Stream stream, Register16 reg, sbyte value)
 {
     stream.WriteByte((byte)102);
     stream.WriteByte((byte)131);
     stream.Write(BitConverter.GetBytes((Register16)((byte)reg + (byte)7)), 0, 1);
     stream.WriteByte((sbyte)value);
 }
예제 #2
0
 /// <summary>Emits a 'xor' instruction.</summary>
 public static void Xor(this Stream stream, Register16 reg, short value)
 {
     stream.WriteByte((byte)102);
     stream.WriteByte((byte)129);
     stream.Write(BitConverter.GetBytes((Register16)((byte)reg + (byte)6)), 0, 1);
     stream.Write(BitConverter.GetBytes((short)(short)value), 0, 2);
 }
예제 #3
0
 /// <summary>Emits a 'cmp' instruction.</summary>
 public static void Cmp(this Stream stream, Register16 reg, int value)
 {
     stream.WriteByte((byte)102);
     stream.WriteByte((byte)129);
     stream.Write(BitConverter.GetBytes((Register16)((byte)reg + (byte)7)), 0, 1);
     stream.Write(BitConverter.GetBytes((int)(int)value), 0, 4);
 }
예제 #4
0
 /// <summary>Emits a 'pop' instruction.</summary>
 public static void Pop(this Stream stream, Register16 operand)
 {
     stream.WriteByte(((byte)102 + get_prefix((byte)operand)));
     stream.WriteByte(((byte)88 + (byte)operand));
 }