diff --git a/source2/Cosmos.Assembler/BaseAssemblerElement.cs b/source2/Cosmos.Assembler/BaseAssemblerElement.cs index c9affcf01..dbf5dba61 100644 --- a/source2/Cosmos.Assembler/BaseAssemblerElement.cs +++ b/source2/Cosmos.Assembler/BaseAssemblerElement.cs @@ -58,7 +58,7 @@ namespace Cosmos.Assembler } public abstract bool IsComplete( Assembler aAssembler ); - public abstract byte[] GetData( Assembler aAssembler ); + public abstract void WriteData( Assembler aAssembler, Stream aOutput ); public abstract void WriteText( Assembler aAssembler, TextWriter aOutput ); diff --git a/source2/Cosmos.Assembler/Comment.cs b/source2/Cosmos.Assembler/Comment.cs index 512bfca9c..8db315def 100644 --- a/source2/Cosmos.Assembler/Comment.cs +++ b/source2/Cosmos.Assembler/Comment.cs @@ -37,10 +37,5 @@ namespace Cosmos.Assembler { return true; } - - public override byte[] GetData( Assembler aAssembler ) - { - return new byte[ 0 ]; - } } } diff --git a/source2/Cosmos.Assembler/DataMember.cs b/source2/Cosmos.Assembler/DataMember.cs index e3a546591..6856cd133 100644 --- a/source2/Cosmos.Assembler/DataMember.cs +++ b/source2/Cosmos.Assembler/DataMember.cs @@ -223,40 +223,6 @@ namespace Cosmos.Assembler { return true; } - public override byte[] GetData(Assembler aAssembler) { - if (UntypedDefaultValue != null && - UntypedDefaultValue.LongLength > 0) { - var xBuff = (byte[])Array.CreateInstance(typeof(byte), UntypedDefaultValue.LongLength * 4); - for (int i = 0; i < UntypedDefaultValue.Length; i++) { - var xRef = UntypedDefaultValue[i] as Cosmos.Assembler.ElementReference; - byte[] xTemp; - if (xRef != null) { - var xTheRef = aAssembler.TryResolveReference(xRef); - if (xTheRef == null) { - throw new Exception("Reference not found!"); - } - if (!xTheRef.ActualAddress.HasValue) { - Console.Write(""); - } - xTemp = BitConverter.GetBytes(xTheRef.ActualAddress.Value); - } else { - if (UntypedDefaultValue[i] is int) { - xTemp = BitConverter.GetBytes((int)UntypedDefaultValue[i]); - } else { - if (UntypedDefaultValue[i] is uint) { - xTemp = BitConverter.GetBytes((uint)UntypedDefaultValue[i]); - } else { - throw new Exception("Invalid value inside UntypedDefaultValue"); - } - } - } - Array.Copy(xTemp, 0, xBuff, i * 4, 4); - } - return xBuff; - } - return RawDefaultValue; - } - public override void WriteData(Cosmos.Assembler.Assembler aAssembler, Stream aOutput) { if (UntypedDefaultValue != null && UntypedDefaultValue.LongLength > 0) { diff --git a/source2/Cosmos.Assembler/Instruction.cs b/source2/Cosmos.Assembler/Instruction.cs index d02805985..b139bb964 100644 --- a/source2/Cosmos.Assembler/Instruction.cs +++ b/source2/Cosmos.Assembler/Instruction.cs @@ -60,10 +60,5 @@ namespace Cosmos.Assembler { public override void WriteData(Cosmos.Assembler.Assembler aAssembler, Stream aOutput) { throw new NotImplementedException("Method not implemented for instruction " + this.GetType().FullName.Substring(typeof(Instruction).Namespace.Length + 1)); } - - [Obsolete] - public override byte[] GetData(Assembler aAssembler) { - throw new NotImplementedException("Method not implemented for instruction " + this.GetType().FullName.Substring(typeof(Instruction).Namespace.Length + 1)); - } } } \ No newline at end of file diff --git a/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestination.cs b/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestination.cs index 230df46a8..1449908f1 100644 --- a/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestination.cs +++ b/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestination.cs @@ -65,19 +65,6 @@ namespace Cosmos.Assembler.x86 { base.UpdateAddress(aAssembler, ref aAddresss); } - - public override byte[] GetData( Cosmos.Assembler.Assembler aAssembler ) - { - if (DestinationRef != null) { - ulong xAddress = 0; - if (!DestinationRef.Resolve(aAssembler, out xAddress)) { - throw new Exception("Cannot resolve DestinationRef!"); - } - DestinationValue = (uint)xAddress; - } - return base.GetData(aAssembler); - } - public override void WriteText( Cosmos.Assembler.Assembler aAssembler, System.IO.TextWriter aOutput ) { aOutput.Write(mMnemonic); diff --git a/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSource.cs b/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSource.cs index cb0542ed8..ce119df03 100644 --- a/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSource.cs +++ b/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSource.cs @@ -91,16 +91,6 @@ namespace Cosmos.Assembler.x86 { base.UpdateAddress(aAssembler, ref aAddress); } - public override byte[] GetData(Cosmos.Assembler.Assembler aAssembler) { - if (SourceRef != null) { - ulong xAddress = 0; - if (!SourceRef.Resolve(aAssembler, out xAddress)) { - throw new Exception("Cannot resolve SourceRef!"); - } - SourceValue = (uint)xAddress; - } - return base.GetData(aAssembler); - } public override void WriteText( Cosmos.Assembler.Assembler aAssembler, System.IO.TextWriter aOutput ) { aOutput.Write(mMnemonic); diff --git a/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSourceAndArgument.cs b/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSourceAndArgument.cs index 3c14b2b54..74a644d12 100644 --- a/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSourceAndArgument.cs +++ b/source2/Cosmos.Assembler/x86/_Infra/InstructionWithDestinationAndSourceAndArgument.cs @@ -85,16 +85,6 @@ namespace Cosmos.Assembler.x86 { base.UpdateAddress(aAssembler, ref aAddress); } - public override byte[] GetData(Cosmos.Assembler.Assembler aAssembler) { - if (ArgumentRef != null) { - ulong xAddress = 0; - if (!ArgumentRef.Resolve(aAssembler, out xAddress)) { - throw new Exception("Cannot resolve ArgumentRef!"); - } - ArgumentValue = (uint)xAddress; - } - return base.GetData(aAssembler); - } public override void WriteText( Cosmos.Assembler.Assembler aAssembler, System.IO.TextWriter aOutput ) { aOutput.Write(mMnemonic);