示例#1
0
 public override bool IsComplete(Cosmos.Assembler.Assembler aAssembler)
 {
     if (DestinationRef != null)
     {
         ulong xAddress;
         return(base.IsComplete(aAssembler) && DestinationRef.Resolve(aAssembler, out xAddress));
     }
     return(base.IsComplete(aAssembler));
 }
示例#2
0
        //public override byte[] GetData(Assembler aAssembler) {
        public override void WriteData(NCAsm.AsmContext aAssembler, System.IO.Stream aOutput)
        {
            aOutput.WriteByte(0xEA);
            ulong xAddress = 0;

            if (DestinationRef != null && DestinationRef.Resolve(aAssembler, out xAddress))
            {
                xAddress = (ulong)(((long)xAddress) + DestinationRef.Offset);
            }
            aOutput.Write(BitConverter.GetBytes((uint)(xAddress)), 0, 4);
            aOutput.Write(BitConverter.GetBytes(Segment), 0, 2);
        }
示例#3
0
 public override void WriteText(NCAsm.AsmContext aAssembler, AssemblyWriter aOutput)
 {
     if (DestinationRef != null)
     {
         aOutput.Write("jmp ");
         aOutput.Write(Segment);
         aOutput.Write(":");
         aOutput.Write(DestinationRef.ToString());
     }
     else
     {
         aOutput.Write("jmp ");
         aOutput.Write(Segment);
         aOutput.Write(":0x0");
     }
 }
示例#4
0
 public override void WriteText(XSharp.Assembler.Assembler aAssembler, System.IO.TextWriter aOutput)
 {
     if (DestinationRef != null)
     {
         aOutput.Write("jmp ");
         aOutput.Write(Segment);
         aOutput.Write(":");
         aOutput.Write(DestinationRef.ToString());
     }
     else
     {
         aOutput.Write("jmp ");
         aOutput.Write(Segment);
         aOutput.Write(":0x0");
     }
 }
示例#5
0
        public override bool IsComplete(NCAsm.AsmContext aAssembler)
        {
            ulong xAddress;

            return(DestinationRef == null || DestinationRef.Resolve(aAssembler, out xAddress));
        }
示例#6
0
        public override bool IsComplete(XSharp.Assembler.Assembler aAssembler)
        {
            ulong xAddress;

            return(DestinationRef == null || DestinationRef.Resolve(aAssembler, out xAddress));
        }