DECLARE SUB font (x, y, text$, col) DECLARE FUNCTION bin$ (ch$) SCREEN 12 OPEN "scribble.fnt" FOR BINARY AS 1 INPUT "File: ", ab$ OPEN ab$ FOR BINARY AS 2 a$ = " " 'PRINT bin$(CHR$(100)) 'END 'font 0, 0, "Yo man. This is awesome.", 1 'font 0, 8, "Cool dude. It is very cool.", 2 'font 0, 16, "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmn", 3 'font 0, 24, "opqrstuvwxyz1234567890!@#$%^&*()-=_+~`':", 4 'font 0, 32, ";<>,.?/|\{}[]", 5 'font 0, 40, "E = MC" + CHR$(253), 6 x = -8 y = 0 CLS DO WHILE NOT EOF(2) 'k$ = INKEY$ GET #2, , a$ k$ = a$ IF k$ <> "" THEN SELECT CASE k$ CASE CHR$(13): x = -8: y = y + 8: a = ABS(a - 1): IF a = 1 THEN PRINT "" CASE CHR$(27): END CASE CHR$(8): LINE (x, y)-(x + 8, y + 8), 0, BF: x = x - 8 CASE ELSE: x = x + 8: font x, y, k$, 4 END SELECT END IF IF y >= 465 THEN y = 465 LOOP DO WHILE INKEY$ = "" LOOP FUNCTION bin$ (ch$) a = VAL(ch$) stri$ = "" FOR x = 7 TO 0 STEP -1 c = INT(a / (2 ^ x)) a = a - c * (2 ^ x) stri$ = stri$ + LTRIM$(STR$(c)) NEXT bin$ = stri$ END FUNCTION SUB font (x, y, text$, col) a$ = " " FOR loch = 1 TO LEN(text$) ch$ = MID$(text$, loch, 1) 'PRINT ch$ FOR yo = 0 TO 7 GET #1, ASC(ch$) * 8 + yo + 1, a$ num$ = bin$(STR$(ASC(a$))) 'PRINT a$; num$; FOR xo = 0 TO 7 'PRINT ch$; a$; num$; PSET (x + (loch - 1) * 8 + xo, y + yo), VAL(MID$(num$, xo + 1, 1)) * col 'IF VAL(MID$(num$, xo + 1, 1)) = 1 THEN PSET (x + (loch - 1) * 8 + xo, y + yo), col 'DO: LOOP WHILE INKEY$ = "" NEXT NEXT NEXT END SUB