fichier des fonctions diverses: misc.s

 

%MISC%%%%%%%%%%%%%%%%%
%  WAIT,CONT,..      %
%%%%%%%%%%%%%%%%%%%%%%
**WAIT
LC 01000 DO { C--.A }
WHILENC
RTN
**CONT+
LC 001 GOSBVL [INKEY]
?CBIT=0.0 RTNYES
D0= 00101 A=DAT0.B
LC 18 ?A<C.B
{ A++.B DAT0=A.B }
RTN
**CONT-
LC 002 GOSBVL [INKEY]
?CBIT=0.0 RTNYES
D0= 00101 A=DAT0.B
LC 03 ?A>C.B
{ A--.B DAT0=A.B }
RTN
**TB
?ST=0.13 RTNYES %DIAL
LC 002 GOSBVL [INKEY]
?CBIT=0.2 RTNYES
*YB
LA 00000 D0= 001B6
DAT0=A.A % SPR@
D0= 00182 A=DAT0.B
LC 2F ?A‰C.B
{
GOSUBL ?B
?ST=1.10 RTNYES
D0= 00182 A=DAT0.B
 A++.B DAT0=A.B }
ELSE
{
?ST=0.11 RTNYES %NROOM
?ST=1.12 RTNYES
 ST=1.12
GOSUBL SCROL_H
D0= 00182
A=0.B DAT0=A.B
GOSUBL COPY_BA
GOSUBL RCL.SP
}
RTN
**TH
?ST=0.13 RTNYES %DIAL
LC 008 GOSBVL [INKEY]
?CBIT=0.2 RTNYES
*YH
LA 00198 D0= 001B6
DAT0=A.A % SPR@
D0= 00182 A=DAT0.B
?A‹0.B
{
GOSUBL ?H
?ST=1.10 RTNYES
D0= 00182 A=DAT0.B
A--.B DAT0=A.B }
ELSE
{
?ST=0.11 RTNYES %NROOM
?ST=0.12 RTNYES
 ST=0.12
GOSUBL SCROL_B
D0= 00182
LA 30 DAT0=A.B
GOSUBL COPY_BA
GOSUBL RCL.SP
}
RTN
**TD
?ST=0.13 RTNYES %DIAL
LC 004 GOSBVL [INKEY]
?CBIT=0.1 RTNYES
*YD
LA 004C8 D0= 001B6
DAT0=A.A % SPR@
GOSUBL ?D ?ST=1.10 RTNYES
D0= 00180 A=DAT0.B
LC 6F ?A‰C.B
{ A++.B DAT0=A.B }
RTN
**TG
?ST=0.13 RTNYES %DIAL
LC 004 GOSBVL [INKEY]
?CBIT=0.3 RTNYES
*YG
LA 00330 D0= 001B6
DAT0=A.A % SPR@
GOSUBL ?G ?ST=1.10 RTNYES
D0= 00180 A=DAT0.B
?A‹0.B
{ A--.B DAT0=A.B }
RTN
**T9
LC 008 GOSBVL [INKEY]
?CBIT=0.1 RTNYES
*Y9
GOSUBL ?_PERSO
?ST=1.13
{
GOSUBL OPEN.DIAL
GOSUBL WAIT
GOSUBL WRITE
}
ELSE
{
GOSUBL KILL.DIAL
*ATT
LC 008 GOSBVL [INKEY]
?CBIT=1.1 GOYES ATT
}
RTN
**T7
LC 008 GOSBVL [INKEY]
?CBIT=0.3 RTNYES
*Y7
GOSUBL KILL.DIAL
RTN
**THD
LC 008 GOSBVL [INKEY]
?CBIT=0.1 RTNYES
GOSUBL YH
GOSUBL YD
RTN
**THG
LC 008 GOSBVL [INKEY]
?CBIT=0.3 RTNYES
GOSUBL YH
GOSUBL YG
RTN
**TBD
LC 002 GOSBVL [INKEY]
?CBIT=0.1 RTNYES
GOSUBL YB
GOSUBL YD
RTN
**TBG
LC 002 GOSBVL [INKEY]
?CBIT=0.3 RTNYES
GOSUBL YB
GOSUBL YG
RTN
**T[+/-]
LC 010 GOSBVL [INKEY]
?CBIT=0.3 RTNYES
%?ST=0.8 { ST=1.8 }
%ELSE { ST=0.8
%D0= 001C7 LA 01 DAT0=A.B }
RTN
**COPY_AB
%?ST=1.8 { GOLONG MENU_ON }
D1= [ECRAN1] A=DAT1.A D1=A
D0= 0018E A=DAT0.A D0=A
LC 87 DO {
A=DAT1.W DAT0=A.W D0=D0+ 16 D1=D1+ 16
C--.B } WHILENC
D1= [ECRAN2] A=DAT1.A D1=A
D0= 00193 A=DAT0.A D0=A
LC 87 DO {
A=DAT1.W DAT0=A.W D0=D0+ 16 D1=D1+ 16
C--.B } WHILENC
RTN
**COPY_BA
D1= 0018E A=DAT1.A D1=A
D0= [ECRAN1] A=DAT0.A D0=A
LC 87 DO {
A=DAT1.W DAT0=A.W D0=D0+ 16 D1=D1+ 16
C--.B } WHILENC
D1= 00193 A=DAT1.A D1=A
D0= [ECRAN2] A=DAT0.A D0=A
LC 87 DO {
A=DAT1.W DAT0=A.W D0=D0+ 16 D1=D1+ 16
C--.B } WHILENC
RTN
**LANDA
D1= 00198 A=DAT1.A D1=A
D0= [ECRAN1] A=DAT0.A D0=A
LC 87 DO {
A=DAT1.W DAT0=A.W D0=D0+ 16 D1=D1+ 16
C--.B } WHILENC
D1= 0019D A=DAT1.A D1=A
D0= [ECRAN2] A=DAT0.A D0=A
LC 87 DO {
A=DAT1.W DAT0=A.W D0=D0+ 16 D1=D1+ 16
C--.B } WHILENC
RTN
*?_PERSO
D0= 001C9 A=DAT0.A D0=A
D0=D0+ 1
D0=D0+ 2
A=DAT0.B D1= 001BD DAT1=A.B
D0=D0+ 2
A=DAT0.B D1= 001BF DAT1=A.B
% n fois
D0= 00180 A=DAT0.B B=A.B
D0= 001BD C=DAT0.B
LA 10 C=C+A.B
?B>C.B { GOTO ?P2 }
LA 10 C=C-A.B C=C-A.B
?B<C.B { GOTO ?P2 }
D0= 00182 A=DAT0.B
?ST=1.12 { LC 64d A=A+C.B }
 B=A.B
D0= 001BF C=DAT0.B
LA 10 C=C+A.B
?B>C.B { GOTO ?P2 }
LA 10 C=C-A.B C=C-A.B
?B<C.B { GOTO ?P2 }
ST=0.10 %TALK-2
RTN
*?P2
D0= 001C9 A=DAT0.A D0=A
D0=D0+ 1 D0=D0+ 8
D0=D0+ 2
A=DAT0.B D1= 001BD DAT1=A.B
D0=D0+ 2
A=DAT0.B D1= 001BF DAT1=A.B
D0= 00180 A=DAT0.B B=A.B
D0= 001BD C=DAT0.B
LA 10 C=C+A.B
?B>C.B { C=RSTK RTN }
LA 10 C=C-A.B C=C-A.B
?B<C.B { C=RSTK RTN }
D0= 00182 A=DAT0.B
?ST=1.12 { LC 64d A=A+C.B }
 B=A.B
D0= 001BF C=DAT0.B
LA 10 C=C+A.B
?B>C.B { C=RSTK RTN }
LA 10 C=C-A.B C=C-A.B
?B<C.B { C=RSTK RTN }
ST=1.10 %TALK-2
RTN
@

 

Retour