* TESTB
*
ATDI00 MOV  R11,*S+
       MOV  R6,R1
       JNE  ATDI02
       SETO R0
       LI   R1,88
ATDI01 MOV  R0,@JOYSEF-2(R1)
       DECT R1
       JNE  ATDI01
       LI   R0,>F004
       JMP  ATDI03
ATDI02 LI   R0,>0F04
ATDI03 MOVB R0,@$JYMSK
       SWPB R0
       MOVB R0,@$JYCNT
       BL   @$JOYI
       LIMI 2
ATDI05 MOVB @$WORLD,R0
       COC  @MBXMSK,R0
       JEQ  ATDI07
       SETO R0
       SETO @FATLEF
       SETO @ERRORF
       SETO @LINKEF
       JMP  ATDI99
ATDI07 MOV  @$QUADR,R0
       CI   R0,QSTART
       JNE  ATDI05
       MOV  @$QUBIT,R0
       JNE  ATDI05
ATDI99 DECT S
       MOV  *S,R11
       RT
*
ATDZ00 MOV  R11,*S+
       LI   R1,88
       CLR  R0
ATDZ01 SOC  @JOYSEF-2(R1),R0
       DECT R1
       JNE  ATDZ01
       MOV  R0,R0
       JEQ  ATDZ99
       MOV  R0,@ERRORF
ATDZ99 BL   @STMB00
       DECT S
       MOV  *S,R11
       RT
*
ATDS00 MOV  R11,*S+
       BL   @$CLRG1
       LI   R3,34
       LI   R4,18
ATDS10 LI   R0,29
       LI   R1,ATDST1
       MOV  R3,R2
       BL   @$BLKVR
       AI   R3,32
       DEC  R4
       JNE  ATDS10
       LI   R3,ATDST3
ATDS11 LI   R0,29
       MOV  *R3+,R2
       JEQ  ATDS12
       MOV  *R3+,R1
       BL   @$BLKVR
       JMP  ATDS11
ATDS12 MOV  R6,R4
       JNE  ATDS99
       LI   R3,ATDST4
ATDS15 LI   R0,29
       MOV  *R3+,R2
       JEQ  ATDS99
       MOV  *R3+,R1
       BL   @$BLKVR
       JMP  ATDS15
ATDS99 DECT S
       MOV  *S,R11
       RT
*
ATDST1 TEXT ' |                  |  |  |  '
ATDST2 TEXT ' +------------------+  +--+  '
       TEXT ' |__      __      __|  |__|  '
       TEXT ' |__              __|  |__|  '
       TEXT 'MOVE JOYSTICK N TO EACH SPOT.'
       TEXT '    PRESS TI KEY AT END.     '
       EVEN
ATDST3 DATA 2,ATDST2
       DATA 610,ATDST2
       DATA 34,ATDST2+29
       DATA 66,ATDST2+29
       DATA 546,ATDST2+29
       DATA 578,ATDST2+29
       DATA 290,ATDST2+58
       DATA 322,ATDST2+58
       DATA 0
ATDST4 DATA 674,ATDST2+87
       DATA 738,ATDST2+116
       DATA 0
*
ATDL00 MOV  R11,*S+
       MOVB @$JOY1Y(R4),R0
       SRL  R0,1
       AI   R0,>600
       LI   R2,SAT
       BL   @$BYTVR
       MOVB @$JOY1X(R4),R0
       SRL  R0,1
       AI   R0,33*>100
       LI   R2,SAT+1
       BL   @$BYTVR
       MOVB @$JOY1Z(R4),R0
       SRL  R0,1
       AI   R0,>600
       LI   R2,SAT+4
       BL   @$BYTVR
ATDL99 DECT S
       MOV  *S,R11
       RT
*
ATDT00 MOV  R11,*S+
       LI   R6,ATDTTB
ATDT01 MOV  R6,R5
       MOVB *R5,R0
       JNE  ATDT04
       B    @ATDT99
ATDT04 CB   @$JOY1X(R4),*R5+
       JH   ATDT20
       CB   @$JOY1X(R4),*R5+
       JL   ATDT20
       CB   @$JOY1Y(R4),*R5+
       JH   ATDT20
       CB   @$JOY1Y(R4),*R5+
       JL   ATDT20
       CB   @$JOY1Z(R4),*R5+
       JH   ATDT20
       CB   @$JOY1Z(R4),*R5+
       JL   ATDT20
       MOV  *R5+,R1
       CLR  *R1
       LI   R0,>2000
       MOV  *R5,R2
       LI   R3,2
       BL   @$REPVR
       MOV  *R5,R2
       AI   R2,32
       LI   R3,2
       BL   @$REPVR
       JMP  ATDT99
ATDT20 AI   R6,10
       JMP  ATDT01
ATDT99 DECT S
       MOV  *S,R11
       RT
*
ATDTTB BYTE 7,0,7,0,255,0
       DATA JOYSEF
       DATA 36
       BYTE 131,124,7,0,255,0
       DATA JOYSEF+2
       DATA 44
       BYTE 255,248,7,0,255,0
       DATA JOYSEF+4
       DATA 52
       BYTE 7,0,131,124,255,0
       DATA JOYSEF+6
       DATA 292
       BYTE 255,248,131,124,255,0
       DATA JOYSEF+8
       DATA 308
       BYTE 7,0,255,248,255,0
       DATA JOYSEF+10
       DATA 548
       BYTE 131,124,255,248,255,0
       DATA JOYSEF+12
       DATA 556
       BYTE 255,248,255,248,255,0
       DATA JOYSEF+14
       DATA 564
       BYTE 255,0,255,0,7,0
       DATA JOYSEF+16
       DATA 58
       BYTE 255,0,255,0,131,124
       DATA JOYSEF+18
       DATA 314
       BYTE 255,0,255,0,255,248
       DATA JOYSEF+20
       DATA 570
       BYTE 0
       EVEN
*
SWPFQQ MOV  R11,*S+
       LI   R0,22
       LI   R1,JOYSEF
       LI   R2,JOYSEF+44
SWPF10 MOV  *R1,R3
       MOV  *R2,*R1+
       MOV  R3,*R2+
       DEC  R0
       JNE  SWPF10
       DECT S
       MOV  *S,R11
       RT
*
ATDB00 MOV  R11,*S+
       BL   @$CLRG1
       LI   R1,ATDBT1
       LI   R2,35
       MOV  R2,R3
       MOV  R1,R4
       LI   R0,26
       MOV  R6,R5
       JNE  ATDB01
       LI   R5,11
       JMP  ATDB10
ATDB01 LI   R5,7
ATDB10 BL   @$BLKVR
       LI   R0,26
       A    R0,R4
       MOV  R4,R1
       AI   R3,64
       MOV  R3,R2
       DEC  R5
       JNE  ATDB10
       DECT S
       MOV  *S,R11
       RT
*
ATDBT1 TEXT ' _ TRIGGER                '
       TEXT ' _ LEFT BUTTON            '
       TEXT ' _ CENTER BUTTON          '
       TEXT ' _ RIGHT BUTTON           '
       TEXT ' _ TRIGGER & LEFT BUTTON  '
       TEXT ' _ TRIGGER & CENTER BUTTON'
       TEXT ' _ TRIGGER & RIGHT BUTTON '
ATDXT1 TEXT '                          '
       TEXT '    PRESS EACH BUTTON     '
       TEXT 'COMBINATION ON JOYSTICK N.'
       TEXT '   PRESS TI KEY AT END.   '
*
ATDX00 MOV  R11,*S+
       MOVB @$JOY1B(R4),R5
       LI   R3,ATDXBB
       LI   R1,7
ATDX02 CB   R5,*R3
       JEQ  ATDX03
       DEC  R1
       JEQ  ATDX99
       INCT R3
       INCT R3
       JMP  ATDX02
ATDX03 LI   R6,18
       S    R1,R6
       SLA  R6,1
       CLR  @JOYSEF(R6)
       LI   R0,26
       LI   R1,ATDXT1
       MOV  @2(R3),R2
       BL   @$BLKVR
ATDX99 DECT S
       MOV  *S,R11
       RT
ATDXBB DATA >0100,36
       DATA >0200,100
       DATA >0400,164
       DATA >0800,228
       DATA >0300,292
       DATA >0500,356
       DATA >0900,420
