XML: Decimal To Hex Macro

From FSDeveloper Wiki
Revision as of 02:51, 25 July 2015 by Rpmc (talk | contribs) (Created page with "Decimal to Hex Macro using XMLVars <Macro Name="ValHex"> int s15 l15 10 >= if{ l15 55 + chr 'HexDigit' l32 scat (>C:XMLVARS:SearchVarName, string) (>C:XMLVAR...")
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to navigationJump to search

Decimal to Hex Macro using XMLVars

<Macro Name="ValHex">
  int s15 
  l15 10 >= 
    if{ l15 55 + chr 'HexDigit' l32 scat (>C:XMLVARS:SearchVarName, string) (>C:XMLVARS:StringValue, string) }
   els{ l15 'HexDigit' l32 scat (>C:XMLVARS:SearchVarName, string) (>C:XMLVARS:StringValue, string) } 
</Macro>				
<Macro Name="Dec2Hex">
  s30
  '@1' (>C:XMLVARS:StoreVarName, string) "" '@1' (>C:XMLVARS:SearchVarName, string) (>C:XMLVARS:StringValue, string)			
  0 sp32
  :300
    l32 ++ s32
    'HexDigit' l32 scat (>C:XMLVARS:StoreVarName, string)
    l30 16 % @ValHex				
    l30 16 / int s31 d 0 == if{ g301 } els{ s30 g300 }
  :301
    '@1' (>C:XMLVARS:SearchVarName, string) (C:XMLVARS:StringValue, string) 
    'HexDigit' l32 scat (>C:XMLVARS:SearchVarName, string) (C:XMLVARS:StringValue, string) scat 
    '@1' (>C:XMLVARS:SearchVarName, string) (>C:XMLVARS:StringValue, string)
    l32 -- s32 0 != if{ g301 }
</Macro>