;*************************************************************************** ; ; INKEY.M68 ; ; ; Written By: James A. Jarboe IV ; 1401 19th Street ; Huntsville, TX 77340 ; 409-295-5767 ; ; 11/20/85 ; ;**************************************************************************** ; Description: gets a character from terminal if it is there ; if no character then it returns to basic ; ; Type: XCALL INKEY,STRING ; Can take up to 1 variable in String and return character ; input form keyboard. ; Example: ; 10 MAP1 STRING,S,1 ; 20 TOP: ; 30 XCALL INKEY,STRING ; 40 IF STRING ="" THEN GOTO TOP ; 50 ? "WE HAVE ";STRING;" AS INPUT CHARACTER" ; 60 ? "IT'S VALUE IS ";ASC(STRING) ; 70 GOTO TOP SEARCH SYS SEARCH SYSSYM OBJNAM .SBR ASECT .=0 P.TOP: BLKW 1 A.TYP: BLKW 1 A.ADR: BLKL 1 A.SIZ: BLKL 1 PSECT PHDR -1,0,PH$REE!PH$REU ; ; Check for variable & set up registers ; CMMW P.TOP(A3),#1 ; 1 variable JNE BADPARM ; no then return MOV A.ADR(A3),A0 ; A0 gets to be pointer BEGIN: CTRLC BADPARM ; exit on control c JOBIDX A4 ; job index MOV JOBTRM(A4),A2 ORW #3,@A2 GETIT: TCKI ; is character there BNE BADPARM ; no get ready to go KBD ; Yes then get it MOVB D1,@A0 ; put in variable RTN ;[101] : go home BADPARM: CLRB @A0 ;[101] : STRING="" RTN ; go home END