home *** CD-ROM | disk | FTP | other *** search
/ The World of Computer Software / World_Of_Computer_Software-02-386-Vol-2of3.iso / b / baswiz19.zip / BW$BAS.ZIP / G9BANNER.BAS < prev    next >
BASIC Source File  |  1993-01-29  |  2KB  |  48 lines

  1. '   +----------------------------------------------------------------------+
  2. '   |                                                                      |
  3. '   |        BASWIZ  Copyright (c) 1990-1993  Thomas G. Hanlin III         |
  4. '   |                                                                      |
  5. '   |                      The BASIC Wizard's Library                      |
  6. '   |                                                                      |
  7. '   +----------------------------------------------------------------------+
  8.  
  9.    DECLARE FUNCTION Power2I% (BYVAL PowerOf2 AS INTEGER)
  10.    DECLARE SUB G9Box (BYVAL X1%, BYVAL Y1%, BYVAL X2%, BYVAL Y2%, BYVAL Fill%)
  11.    DECLARE SUB G9Plot (BYVAL X%, BYVAL Y%)
  12.  
  13.    DECLARE FUNCTION BFontRow0% (BYVAL ch%, BYVAL Row%)
  14.    DECLARE FUNCTION BFontRows0% ()
  15.  
  16.    DEFINT A-Z
  17.  
  18. SUB G9Banner (St$, X, Y, Xmul, Ymul)
  19.    MaxRow = BFontRows0 - 1
  20.    IF Xmul <= 1 AND Ymul <= 1 THEN
  21.       FOR tmp = 1 TO LEN(St$)
  22.          cha = ASC(MID$(St$, tmp, 1))
  23.          FOR Row = 0 TO MaxRow
  24.             ch = BFontRow0(cha, Row)
  25.             FOR Col = 0 TO 7
  26.                IF ch AND Power2I%(7 - Col) THEN
  27.                   G9Plot (tmp - 1) * 8 + Col + X, Row + Y
  28.                END IF
  29.             NEXT
  30.          NEXT
  31.       NEXT
  32.    ELSE
  33.       FOR tmp = 1 TO LEN(St$)
  34.          cha = ASC(MID$(St$, tmp, 1))
  35.          FOR Row = 0 TO MaxRow
  36.             vy = Row * Ymul + Y
  37.             ch = BFontRow0(cha, Row)
  38.             FOR Col = 0 TO 7
  39.                IF ch AND Power2I%(7 - Col) THEN
  40.                   vx = ((tmp - 1) * 8 + Col) * Xmul + X
  41.                   G9Box vx, vy, vx + Xmul - 1, vy + Ymul - 1, 1
  42.                END IF
  43.             NEXT
  44.          NEXT
  45.       NEXT
  46.    END IF
  47. END SUB
  48.