mirror of
https://github.com/antoinevignau/source.git
synced 2025-01-01 15:30:02 +00:00
1 line
3.1 KiB
Plaintext
Executable File
1 line
3.1 KiB
Plaintext
Executable File
;..............................................................................;
|
||
;
|
||
; 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) <20> 2 THEN
|
||
lda &index
|
||
ENDIF
|
||
asl a
|
||
tax
|
||
jsr (&table,x)
|
||
MEND
|
||
|
||
MACRO
|
||
BTS &table,&index
|
||
|
||
IF &nbr(&syslist) <20> 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) <20> 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
|