1: DECLARE SUB GetFnt (a!, bg!, os!, f$) 2: SCREEN 9: CLS 3: OPEN "C:\upside.FNT" FOR OUTPUT AS #1 4: FOR c = 0 TO 31: PRINT #1, "": NEXT c 5: FOR q = 32 TO 170 6: IF q = 0 THEN d = 32 ELSE d = q 7: LOCATE 1, 1: PRINT CHR$(d); 8: GetFnt 33, 15, 33, lt$ 9: CLS 10: tt = LEN(lt$) + tt 11: IF tt > 25000 THEN CLOSE 1: END 12: PRINT #1, lt$ 13: DRAW "X" + VARPTR$(lt$) 14: NEXT q 15: CLOSE 1 16: 17: SUB GetFnt (a, bg, os, f$) 18: 'LINE (d * 8, m)-((d + 1) * 8, 15 + m), 1, B 19: d = a - os: u = 15: r = 0 20: FOR x = (d) * 8 TO (1 + d) * 8 21: FOR y = 0 + m TO 15 + m 22: u = u + 1 23: IF POINT(x, y) = bg THEN ELSE GOTO 10 24: uh$ = LTRIM$(RTRIM$(STR$(u))) 25: ur$ = LTRIM$(RTRIM$(STR$(u - 1))) 26: lt$ = lt$ + "BU" + uh$ + "DBD" + ur$ 27: PSET (x, y), 14 28: 10 NEXT y 29: r = r + 1: u = 15 30: lt$ = lt$ + "br" 31: NEXT x 32: f$ = lt$ 33: END SUB 34: |