;..............................................................................;
;
;        Bgt & Ble		- Branch greater than and branch less than equal
;
;        Bgt	adrs	- Branch if Z flag clear and Carry set
;        Ble	adrs	- Branch if Z flag set or Carry clear
;
;..............................................................................;
	MACRO
	bgt	&adr

	beq	*+4
	bge	&adr
	MEND

	MACRO
	ble	&adr

	blt	&adr
	beq	&adr
	MEND

;..............................................................................;
;
;	Jcc 	adrs	- Jump (long branch) on condition code macros
;
;	Jmi	adrs	- Branch if N flag set
;	Jpl	adrs	- Branch if N flag clear
;	Jeq	adrs	- Branch if Z flag set
;	Jne	adrs	- Branch if Z flag clear
;	Jcs	adrs	- Branch if carry set
;	Jcc	adrs	- Branch if carry clear
;	Jlt	adrs	- Branch if less than (carry clear)
;	Jge	adrs	- Branch if greater than or equal (carry set)
;	Jle	adrs	- Branch if less than or equal
;	Jgt	adrs	- Branch if greater than
;..............................................................................;
	MACRO
	jmi	&adr

	bpl	*+5
	brl	&adr
	mexit
	MEND

	MACRO
	jpl	&adr

	bmi	*+5
	brl	&adr
	mexit
	MEND

	MACRO
	jeq	&adr

	bne	*+5
	brl	&adr
	mexit
	MEND

	MACRO
	jne	&adr

	beq	*+5
	brl	&adr
	mexit
	MEND

	MACRO
	jcs	&adr

	bcc	*+5
	brl	&adr
	mexit
	MEND

	MACRO
	jcc	&adr

	bcs	*+5
	brl	&adr
	mexit
	MEND
	
	MACRO
	jlt	&adr

	bcs	*+5
	brl	&adr
	mexit
	MEND
	
	MACRO
	jge	&adr

	bcc	*+5
	brl	&adr
	mexit
	MEND

	MACRO
	jle	&adr

	beq	~bra&sysindex
	bge	~nobra&sysindex
~bra&sysindex
	brl	&adr
~nobra&sysindex
	mexit
	MEND

	MACRO
	jgt	&adr

	blt	~nobra&sysindex
	beq	~nobra&sysindex
	brl	&adr
~nobra&sysindex
	mexit
	MEND

;..............................................................................;
;
;	JTS	tableadrs,index		- Jump Subroutine Table Short
;	BTS	tableadrs,index		- Jump Table Short
;
;	Thess macros implement a short jump to subroutine using the value of the
;	accumulator or index to index into the table for the subroutines address.
;
;..............................................................................;
	MACRO
	JTS	&table,&index

  IF &nbr(&syslist) ³ 2 THEN
	lda	&index
  ENDIF
	asl	a
	tax
	jsr	(&table,x)
	MEND

 	MACRO
	BTS	&table,&index

  IF &nbr(&syslist) ³ 2 THEN
	lda	&index
  ENDIF
	asl	a
	tax
	jmp	(&table,x)
	MEND

;..............................................................................;
;
;	JTL	tableadrs		- Jump Subroutine Table Long
;
;	This macros implements a long jump to subroutine using the value of the
;	accumulator to index into the given table for the subroutines address.
;
;..............................................................................;
	MACRO
	JTL	&table,&index

  IF &nbr(&syslist) ³ 2 THEN
	lda	&index
  ENDIF
	asl	a
	asl	a
	tax
	lda	&table+1,x
	sta	~b&sysindex+2
	lda	&table,x
	sta	~b&sysindex+1
~b&sysindex
	jsl	*
	mexit
	MEND
********************************************************************
*
*	AWGS WP module requires a case sensitive jsl to call the 
*	SpellChecker.
*
*
*
* Thursday, May 4, 1989 11:16:10 AM
********************************************************************

 	MACRO
&lab Case_Jsl &to
&lab
 	Case	Object
 	jsl 	&to
 	Case	Off
 	mend
