38. Double-height input ~~~~~~~~~~~~~~~~~~~ This is a Function which enables you to INPUT strings in two-tone double-height lettering. You have to pass the following variables into the Function: The prompt or question word(s), the first letters of the top and bottom colours, the X and Y tab positions you want it to start from, and the maximum length. You must enter at least one character before pressing , but if you don't like this restriction, then omit the "OR g%=13" from line 160. The space available for the input is shown by a dotted line. If you don't want this, then omit both STRING$ statements from line 130, and change the 46 to 32 in line 170. The example in lines 10 and 20 gives a good demonstration of this nice little routine, which was adapted from an original passed on by Andrew G8YHI. You may omit all spaces from the listing to save memory space, if you wish. 10 MODE7:N$=FNdhin("Name ? ","G","M",5,10,15) 20 PRINT''''N$:END 30 : 100 DEF FNdhin(prompt$,top$,bot$,x%,y%,len%) 110 LOCAL a$,g%,top%,bot% 120 top%=128+INSTR("RGYBMCW",top$):bot%=128+INSTR("RGYBMCW",bot$) 130 VDU31,x%,y%,top%,141:PRINT prompt$;STRING$(len%,"."): VDU31,x%,y%+1,bot%,141:PRINT prompt$;STRING$(len%,".") TAB(x%+LEN(prompt$)+2,y%); 140 REPEAT 150 g%=GET 160 IF (g%=32 OR g%=13 OR g%=127) AND LEN(a$)=0 THEN VDU7:GOTO 150 170 IF g%=127 THEN a$=LEFT$(a$,LEN(a$)-1):VDU127,10,46,8,11:GOTO 200 180 IF LEN(a$)31 AND g%<127 THEN a$=a$+CHR$(g%) ELSE IF g%<>13 THEN VDU7:GOTO 150 190 VDUg%,10,8,g%,11 200 UNTIL g%=13: =a$