; Some macros that emulate the 'if (expr) command' syntax ; of A86 %macro if_a 1+ jna %%skip %1 %%skip %endmacro %macro if_nbe 1+ jbe %%skip %1 %%skip %endmacro %macro if_ae 1+ jnae %%skip %1 %%skip %endmacro %macro if_nb 1+ jb %%skip %1 %%skip %endmacro %macro if_b 1+ jnb %%skip %1 %%skip %endmacro %macro if_nae 1+ jae %%skip %1 %%skip %endmacro %macro if_be 1+ jnbe %%skip %1 %%skip %endmacro %macro if_na 1+ ja %%skip %1 %%skip %endmacro %macro if_c 1+ jnc %%skip %1 %%skip %endmacro %macro if_e 1+ jne %%skip %1 %%skip %endmacro %macro if_z 1+ jnz %%skip %1 %%skip %endmacro %macro if_g 1+ jng %%skip %1 %%skip %endmacro %macro if_nle 1+ jle %%skip %1 %%skip %endmacro %macro if_ge 1+ jnge %%skip %1 %%skip %endmacro %macro if_nl 1+ jl %%skip %1 %%skip %endmacro %macro if_l 1+ jnl %%skip %1 %%skip %endmacro %macro if_nge 1+ jge %%skip %1 %%skip %endmacro %macro if_le 1+ jnle %%skip %1 %%skip %endmacro %macro if_ng 1+ jg %%skip %1 %%skip %endmacro %macro if_nc 1+ jc %%skip %1 %%skip %endmacro %macro if_ne 1+ je %%skip %1 %%skip %endmacro %macro if_nz 1+ jz %%skip %1 %%skip %endmacro %macro if_no 1+ jo %%skip %1 %%skip %endmacro %macro if_np 1+ jp %%skip %1 %%skip %endmacro %macro if_po 1+ jpe %%skip %1 %%skip %endmacro %macro if_ns 1+ js %%skip %1 %%skip %endmacro %macro if_o 1+ jno %%skip %1 %%skip %endmacro %macro if_p 1+ jnp %%skip %1 %%skip %endmacro %macro if_pe 1+ jpo %%skip %1 %%skip %endmacro %macro if_s 1+ jns %%skip %1 %%skip %endmacro %define offset %macro even 1 times (($$-$) & (%1-1)) nop %endmacro