/// <summary> /// A params array would be simpler here, but the IL space it takes to populate such an array /// depresses me /// </summary> private void EmitHelper(Register writtenRegister, int format, string fluentComment, int field0, int length0, int field1, int length1, int field2, int length2, int field3, int length3, int field4=0, int length4=0, int field5=0, int length5=0) { var ocb=new OpCodeBuilder(); ocb.Add(field0, length0); ocb.Add(field1, length1); ocb.Add(field2, length2); ocb.Add(field3, length3); ocb.Add(field4, length4); ocb.Add(field5, length5); var assemblerComment=ocb.GetAssemblerComment().PaddedTo(25)+"(Format "+format+")"; Emit((short)ocb.OpCode, fluentComment, assemblerComment); if(writtenRegister!=null) { RegistersWritten|=1<<writtenRegister.Index; } }