						  ;;Rev 3.30 Modification
;
; given a label <lbl> either 2 byte jump to another label <lbl>_J
; if it is near enough or 3 byte jump to <lbl>
;

; NASM original macros

%if 0
%imacro jump 1.nolist
;.xcref

    %ifndef %1_J                       ;; is this the first invocation
%%a:      JMP %1
    %ELSE
	%IF (%1_J >= $) || ($-%1_J > 126)
%%a:      JMP %1                         ;; is the jump too far away?
	%ELSE
%%a:      JMP %1_J                      ;; do the short one...
	%ENDIF
    %ENDIF
    %ixdefine %1_j %%a
;.cref
%endmacro
;.xcref  jump
%else
%imacro jump 1.nolist
;REDEFINE THE ABOVE MACRO TO ALWAYS TRY A 3 BYTE NEAR JUMP		 
		jmp %1
%endmacro					;;End of Modification
%endif

