File: SCURA.MA of Tape: Various/Decus/decus-2
(Source file text) 

.SBTTL SCURA: CURSOR ABFRAGEN

.INCLUDE SYS:MACLIB.MA
.INCLUDE SYS:CURLIB.MA

/**** SCURA ****
/16.12.82 VHE
/(L,AC)=?,?
/CALL SCURA
/RUECKSPRUNG WENN KEIN VT100,ODER UEBERTRAGUNGSFEHLER
/RUECKSPRUNG WENN VT100
/(AC,L)=0,?
/***************


/DAS UNTERPROGRAMM SCURA SENDET <ESC[6N> AUS UND ERWARTET VOM TERMINAL
/<ESC[Pn;Pnf>,WOBEI Pn DIE X/Y-KOORDINATEN ANGEBEN
/SENDET DAS TERMINAL ETWAS ANDERES AUS WIRD BEIM ERSTEN AUFRUF DES
/PROGRAMMES DIE GLOBALE VARIABLE ADM3A = 0 GESETZT
/BEI ALLEN FOLGENDEN AUFRUFEN WIRD NACH FEHLERHAFTEM EMPFANG SOFORT
/ZURUECKGESPRUNGEN
/DIE X-KOORDINATE WIRD IN ZALOW HINTERLEGT
/DIE Y-KOORDINATE IN ZAHIGH



OPEN "SCURA","R"

.ENTRY SCURA
DEFMER ZEICH$,MERK$,COUNT$,ZAHLY$

SCURA,	OPNSUB RT:SCURX$

	CLA
	VATAD ADM3A
	SNA CLA
	JMP SCUR3$		/KEIN VT100

	VATAD SPHSR
	DCA MERK$
	VADCA SPHSR

	TAD (-1000.)
	DCA COUNT$

	ESCZEI EK
	TAD ("6)
	TYPECL
	TAD ("n)
	TYPECL
	        
SCUR4$:	ISZ COUNT$	/FLAG EINE ZEITLANG ABFRAGEN
	SKP
	JMP SCUR1$
	RSF+TTY		/FLAGABFRAGE
	JMP SCUR4$
	RRB RFC+TTY	/TTY-BUFFER LESEN
	TAD (-ESC)
	SZA CLA
	JMP SCUR1$
	LIES TTY
	TAD (-"[)
	SZA CLA
	JMP SCUR1$
	DECAUF 2
	CLA
	VATAD ZALOW
	DCA ZAHLY$
	VATAD SPTTY
	TAD (-";)
	SZA CLA
	JMP SCUR1$
	DECAUF 3
	VERGLE VA:SPTTY,("R),NE:SCUR1$
	DCAADD VA:ZAHIGH,ZAHLY$

SCUR3$:	INC SCURA,0
	JMP SCUR2$

SCUR1$:	VADCA ADM3A

SCUR2$:	DCAADD VA:SPHSR,MERK$
SCURX$:	V
	JMP I SCURA

CLOSE "SCURA"

ENDPR