5 ! FINDPO.BAS -- tells user if I/O port is occupied or vacant
10 MAP1 SET,S,16,"123456789ABCDEF"
12 k = 0
13 ? tab(-1,0);
15 loop:
17 k = k + 1
20 A$ = k
30 X = LEN(A$) : HEX = 0
40 IF X > 2 OR X < 1 PRINT "INVALID" : GOTO 130
50 FOR I=X-1 TO 0 STEP -1
60 HEX = HEX + (16**I) * INSTR(1,SET,A$[(X-I);1])
70 NEXT I
80 X = IO(HEX)
! 90 PRINT "DATA AT HEX PORT ";A$;" IS ";X;" DECIMAL."
! 100 PRINT "PORT ";A$;" APPEARS TO BE ";
110 IF X # 255 THEN ? "Port " A$ " appears to be in use"
120 goto loop
130 end