Classy Front End Pt 1

Developer(s): Paul Bingham
Date: 1987
Type: Program
Platform(s): TS 2068

This program renders user-supplied text as large pixel-art characters drawn directly on the high-resolution graphics screen using PLOT and DRAW commands. The user inputs a phrase of up to 200 characters, a row position (0–21), and a column position (0–31); the program then maps screen-grid coordinates to pixel coordinates and iterates through each character in the string. Each ASCII character code (32–127) dispatches to a dedicated subroutine at the matching line number, where a series of PLOT/DRAW statements trace that character’s outline at a size of roughly 6–8 pixels wide and 8 pixels tall. Width-aware kerning is implemented through a set of advance routines at lines 1120–1180, which increment the x position by 2–8 pixels depending on the character’s width category, with automatic line-wrap handled by line 1300. The subroutine at line 1100 serves as a shared starting-point helper, plotting the baseline pixel at (x+1, y+1) before returning for further drawing in the calling routine.


Program Analysis

Program Structure

The program is organized into four conceptual zones:

  1. Initialization (lines 1–10): Dimensions the string array n$ to 200 characters and jumps to the input routine.
  2. Character drawing routines (lines 32–201): One line per ASCII code, each rendering a specific glyph using PLOT/DRAW and ending with a GO TO to an advance routine.
  3. Main input and dispatch loop (lines 1000–1050): Accepts the phrase and screen position, converts grid coordinates to pixel coordinates, then iterates over the string dispatching each character via GO SUB a.
  4. Utility routines (lines 1100–1300): A shared plot helper (1100), width-advance routines (11201180), and a line-wrap handler (1300).

Dispatch Mechanism

The core dispatch at line 1040 is elegant: LET a=CODE n$(t): GO SUB a. Since ASCII codes for printable characters start at 32 (space) and the drawing routines are placed at exactly those line numbers (32, 33, 34, … 127), the CODE function returns the character’s ASCII value and GO SUB a jumps directly to the corresponding drawing routine. This avoids any lookup table or conditional chain. The loop runs unconditionally for all 200 positions, relying on line 999 (RETURN) as a catch-all for unmapped codes and the padding space characters at the end of the fixed-length string.

Coordinate System

The user enters a position in PRINT AT row/column terms (rows 0–21, columns 0–31). Line 1040 converts these to pixel coordinates: x = xx*8 (column × 8 pixels) and y = 168 - yy*8. The subtraction from 168 flips the vertical axis, since the graphics origin is at the bottom-left of the screen while PRINT AT rows count from the top. Each character cell is treated as 8 pixels tall.

Proportional Width System

Characters are proportionally spaced. After drawing, each routine jumps to one of several advance subroutines that add a fixed number of pixels to x before returning:

LineAdvance (pixels)Typical use
11202(reserved/narrow)
11303Very narrow (e.g. !, [, ], i)
11404Narrow characters
11505Medium-narrow characters
11606Standard-width characters
11707Wide characters
11808Very wide characters

Each advance routine also checks whether x has exceeded 248 (the right edge of the 256-pixel-wide screen minus a margin) and if so calls line 1300 to wrap to the next line by resetting x=0 and decrementing y by 8.

Shared Helper: Line 1100

Line 1100 simply executes PLOT x+1,y+1 and returns. Many character routines GO SUB 1100 at their start to establish a common anchor pixel before continuing with relative DRAW commands. This saves repeating the same PLOT boilerplate and also means changing the baseline offset only requires editing one line.

Notable Techniques

  • Line-number-as-jump-table: Using GO SUB a where a is the ASCII value turns the BASIC line-number space directly into a character dispatch table — an unusual and efficient idiom.
  • Relative drawing: All PLOT commands use offsets from x and y, and all DRAW commands are relative, making each glyph routine fully position-independent.
  • Fixed-length string padding: DIM n$(200) pads the string with spaces (ASCII 32). Line 32 simply does GO TO 1130, advancing 3 pixels per space, which acts as the inter-word spacer.
  • FLASH in INPUT prompts: Lines 1010–1020 use FLASH 1 and FLASH 0 inline within INPUT statements to highlight the flashing question-mark placeholder, drawing attention to the variable entry point.
  • Line 200 anomaly: LET x=x-1: RETURN at line 200 (ASCII for ‘È’/extended char 200) would be reached if a character with code 200 appeared in the string. This nudges x back one pixel, which is likely an artifact of the fixed-length string’s terminal behaviour rather than an intentional glyph.
  • Line 184 and 191: Code 184 calls the line-wrap subroutine (GO SUB 1300) directly without a following RETURN on the same line, and line 191 adds a large 20-pixel advance. These handle extended or special character codes in the 128–200 range that might appear if the string contains non-ASCII values.
  • Duplicate listing: The entire program is listed twice in the source. This is a common technique used to ensure the tokenized file is written correctly when saved, not a logical duplication within a running program.

Limitations and Anomalies

  • Not all ASCII codes 32–127 have drawing routines. Codes without a defined line will fall through to line 999 (RETURN) if the BASIC interpreter searches upward, though in practice the interpreter may error on a missing line number in GO SUB. The catch-all 999 RETURN only works for codes above any defined glyph line if BASIC executes the next available line — this behavior depends on implementation.
  • The FOR loop always runs all 200 iterations regardless of actual phrase length, meaning trailing space characters will advance x by 3 pixels each, consuming horizontal space after the text ends.
  • Line 1030 PRINT n$ prints the raw string to the text area before drawing the pixel-art version, presumably for reference or debugging and not part of the intended display output.

Content

Appears On

Related Products

Related Articles

Program demonstrates printing with variable-width fonts using PLOT/DRAW.

Related Content

Image Gallery

Source Code

    1 REM CLASSY FRONT END Part 1       
   10 DIM n$(200): GO TO 1000
   32 GO TO 1130
   33 PLOT x+2,y+1: DRAW 1,0: PLOT x+2,y+3: DRAW 0,3: DRAW 1,0: DRAW 0,-3: GO TO 1140
   34 PLOT x+2,y+7: DRAW 0,-2: PLOT x+5,y+5: DRAW 0,2: GO TO 1170
   35 PLOT x+1,y: DRAW 0,7: PLOT x+4,y: DRAW 0,7: PLOT x,y+2: DRAW 5,0: PLOT x,y+6: DRAW 5,0: GO TO 1160
   36 PLOT x+3,y: DRAW 0,7: PLOT x+1,y+2: DRAW 1,0: DRAW 0,-1: DRAW 2,0: PLOT x+4,y+4: DRAW -2,0: DRAW 0,2: DRAW 2,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+1,y+5: GO TO 1160
   37 PLOT x+3,y+5: DRAW -1,-1: DRAW -1,0: DRAW 0,1: DRAW 1,1: DRAW 4,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-2: DRAW 1,0: DRAW 0,-1: DRAW -1,-1: PLOT x+3,y+1: DRAW 0,1: DRAW 1,0: DRAW 0,1: GO TO 1170
   38 PLOT x+4,y+1: DRAW -1,-1: DRAW 0,1: DRAW -1,0: DRAW 0,4: DRAW 2,0: PLOT x+1,y+2: PLOT x+3,y+6: DRAW -2,-2: DRAW 2,-1: DRAW 1,0: GO TO 1150
   39 PLOT x+3,y+7: DRAW 0,-1: DRAW -1,-1: GO TO 1130
   40 PLOT x+3,y: PLOT x+3,y+7: PLOT x+2,y+1: DRAW 0,5: PLOT x+1,y+2: DRAW 0,3: GO TO 1140
   41 PLOT x+1,y: PLOT x+1,y+7: PLOT x+2,y+1: DRAW 0,5: PLOT x+3,y+2: DRAW 0,3: GO TO 1140
   42 PLOT x+1,y+4: DRAW 1,1: DRAW -1,1: PLOT x+3,y+3: DRAW 0,4: PLOT x+5,y+4: DRAW -1,1: DRAW 1,1: GO TO 1160
   43 PLOT x+3,y+1: DRAW 0,4: PLOT x+1,y+3: DRAW 4,0: GO TO 1160
   44 PLOT x+2,y: PLOT x+3,y+1: DRAW 0,2: DRAW -1,0: GO TO 1140
   45 PLOT x+2,y+3: DRAW 3,0: DRAW 0,1: DRAW -3,0: GO TO 1170
   46 PLOT x+2,y+1: DRAW 1,0: DRAW 0,1: DRAW -1,0: GO TO 1150
   47 PLOT x+2,y+1: DRAW 0,1: PLOT x+3,y+3: DRAW 0,1: PLOT x+4,y+5: DRAW 0,1: GO TO 1150
   48 PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,3: PLOT x+3,y+3: PLOT x+4,y+4: GO TO 1160
   49 GO SUB 1100: DRAW 2,0: DRAW -1,0: DRAW 0,5: PLOT x+1,y+5: GO TO 1140
   50 GO SUB 1100: DRAW 0,1: DRAW 1,0: DRAW 0,-1: DRAW 2,0: PLOT x+1,y+5: PLOT x+2,y+6: DRAW 1,0: PLOT x+4,y+4: DRAW 0,1: PLOT x+3,y+3: GO TO 1150
   51 PLOT x+1,y+2: PLOT x+2,y+1: DRAW 2,0: DRAW 0,5: DRAW -3,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+5,y+6: PLOT x+3,y+4: GO TO 1160
   52 PLOT x+3,y+1: DRAW 0,5: DRAW -1,0: DRAW 0,-1: PLOT x+4,y+3: DRAW -3,0: DRAW 0,2: GO TO 1150
   53 PLOT x+1,y+2: PLOT x+4,y+6: DRAW -3,0: DRAW 0,-2: DRAW 2,0: PLOT x+2,y+5: PLOT x+4,y+2: DRAW 0,1: PLOT x+2,y+1: DRAW 1,0: GO TO 1150
   54 PLOT x+4,y+1: DRAW -2,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW 1,0: DRAW 0,2: PLOT x+4,y+4: DRAW -3,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+3,y+6: DRAW 1,0: GO TO 1160
   55 PLOT x+1,y+1: DRAW 0,2: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,2: DRAW -3,0: GO TO 1140
   56 PLOT x+4,y+1: DRAW -2,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW 1,0: DRAW 0,3: DRAW 2,0: PLOT x+1,y+5: PLOT x+5,y+5: PLOT x+3,y+4: DRAW 1,0: PLOT x+5,y+2: DRAW 0,1: GO TO 1160
   57 PLOT x+5,y+2: DRAW 0,1: DRAW -3,0: DRAW 0,3: DRAW 2,0: PLOT x+1,y+4: DRAW 0,1: PLOT x+2,y+1: DRAW 2,0: PLOT x+5,y+4: DRAW 0,1: GO TO 1160
   58 PLOT x+2,y+4: DRAW 1,0: PLOT x+3,y+2: DRAW -1,0: GO TO 1140
   59 PLOT x+2,y+4: DRAW 1,0: PLOT x+2,y: PLOT x+3,y+1: DRAW 0,1: DRAW -1,0: GO TO 1140
   60 PLOT x+1,y+3: DRAW 3,-3: PLOT x+1,y+4: DRAW 3,3: PLOT x+3,y+2: DRAW -1,1: DRAW 0,1: DRAW 1,1: GO TO 1150
   61 PLOT x,y+2: DRAW 0,2: PLOT x,y+4: DRAW 0,2: GO TO 1130
   62 PLOT x+4,y+3: DRAW -3,-3: PLOT x+4,y+4: DRAW -3,3: PLOT x+2,y+2: DRAW 1,1: DRAW 0,1: DRAW -1,1: GO TO 1150
   63 PLOT x+1,y+5: PLOT x+3,y+1: DRAW 1,0: PLOT x+2,y+6: DRAW 2,0: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: GO TO 1160
   64 PLOT x+3,y+2: DRAW -1,0: DRAW 0,1: PLOT x+1,y+5: PLOT x+3,y+4: DRAW 1,0: DRAW 0,-3: DRAW 1,0: PLOT x+6,y+2: DRAW 0,3: PLOT x+2,y+6: DRAW 3,0: GO TO 1170
   65 GO SUB 1100: DRAW 0,4: PLOT x+2,y+1: DRAW 0,5: DRAW 2,0: PLOT x+5,y+1: DRAW 0,4: PLOT x+5,y+3: DRAW -2,0: GO TO 1160
   66 GO SUB 1100: DRAW 0,5: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+5: PLOT x+3,y+4: DRAW 1,0: PLOT x+5,y+2: DRAW 0,1: GO TO 1160
   67 PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: PLOT x+5,y+5: GO TO 1160
   68 GO SUB 1100: DRAW 0,5: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,3: GO TO 1160
   69 PLOT x+5,y+1: DRAW -4,0: DRAW 0,5: DRAW 4,0: DRAW -3,0: DRAW 0,-2: DRAW 2,0: DRAW -2,0: DRAW 0,-2: GO TO 1160
   70 PLOT x+5,y+6: DRAW -4,0: DRAW 0,-5: DRAW 1,0: DRAW 0,3: DRAW 2,0: PLOT x+2,y+5: GO TO 1150
   71 PLOT x+4,y+3: DRAW 1,0: DRAW 0,-2: DRAW -3,0: DRAW 0,5: DRAW 2,0: PLOT x+1,y+2: DRAW 0,3: PLOT x+5,y+5: GO TO 1160
   72 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: DRAW 0,3: DRAW 3,0: DRAW 0,2: DRAW 0,-5: GO TO 1160
   73 GO SUB 1100: DRAW 2,0: DRAW 0,5: DRAW -2,0: DRAW 3,0: DRAW -2,0: DRAW 0,-5: DRAW 2,0: GO TO 1150
   74 PLOT x+2,y+1: DRAW 2,0: DRAW 0,5: DRAW 1,0: DRAW 0,-4: PLOT x+1,y+2: DRAW 0,1: GO TO 1160
   75 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: PLOT x+3,y+3: DRAW 0,1: PLOT x+4,y+2: PLOT x+4,y+5: PLOT x+5,y+1: PLOT x+5,y+6: GO TO 1160
   76 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: DRAW 3,0: GO TO 1160
   77 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: PLOT x+3,y+5: PLOT x+4,y+4: PLOT x+5,y+5: DRAW 1,0: DRAW 0,1: DRAW 0,-5: GO TO 1170
   78 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: PLOT x+3,y+5: DRAW 0,-1: PLOT x+4,y+3: DRAW 0,-1: PLOT x+5,y+1: DRAW 0,5: GO TO 1160
   79 PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,3: GO TO 1160
   80 GO SUB 1100: DRAW 0,5: DRAW 3,0: DRAW -2,0: DRAW 0,-5: DRAW 0,2: DRAW 2,0: PLOT x+5,y+4: DRAW 0,1: GO TO 1160
   81 PLOT x+3,y+3: PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+2: DRAW 0,-1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y: DRAW 0,5: GO TO 1160
   82 GO SUB 1100: DRAW 0,5: DRAW 3,0: DRAW -2,0: DRAW 0,-5: DRAW 0,2: DRAW 2,0: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: PLOT x+5,y+4: DRAW 0,1: GO TO 1160
   83 PLOT x+1,y+2: DRAW 1,0: DRAW 0,-1: DRAW 2,0: PLOT x+4,y+4: DRAW -2,0: DRAW 0,2: DRAW 2,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+1,y+5: GO TO 1160
   84 PLOT x+1,y+6: DRAW 2,0: DRAW 0,-5: DRAW 1,0: DRAW 0,5: DRAW 2,0: GO TO 1160
   85 PLOT x+1,y+2: DRAW 0,4: DRAW 1,0: DRAW 0,-5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,4: GO TO 1160
   86 PLOT x+1,y+5: DRAW 0,1: DRAW 1,0: DRAW 0,-3: DRAW 1,0: DRAW 0,1: DRAW 0,-3: DRAW 1,0: DRAW 0,1: PLOT x+5,y+3: DRAW 0,1: PLOT x+6,y+5: DRAW 0,1: GO TO 1160
   87 PLOT x+1,y+2: DRAW 0,4: DRAW 1,0: DRAW 0,-5: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,2: DRAW 0,-2: DRAW 2,0: DRAW 0,4: PLOT x+5,y+1: GO TO 1170
   88 GO SUB 1100: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW -1,0: PLOT x+5,y+2: PLOT x+5,y+5: PLOT x+6,y+1: PLOT x+6,y+6: GO TO 1170
   89 PLOT x+4,y+4: DRAW 0,-3: DRAW -1,0: DRAW 0,3: DRAW -1,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: PLOT x+6,y+6: PLOT x+5,y+5: GO TO 1160
   90 PLOT x+1,y+6: DRAW 4,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW 4,0: GO TO 1160
   91 PLOT x+2,y: DRAW -1,0: DRAW 0,7: DRAW 1,0: GO TO 1130
   92 PLOT x+4,y+1: DRAW 0,1: PLOT x+3,y+3: DRAW 0,1: PLOT x+2,y+5: DRAW 0,1: GO TO 1150
   93 PLOT x+1,y: DRAW 1,0: DRAW 0,7: DRAW -1,0: GO TO 1130
   94 PLOT x+1,y+4: DRAW 2,2: DRAW 2,-2: DRAW -2,2: DRAW 0,-5: GO TO 1160
   95 PLOT x,y: DRAW 7,0: GO TO 1180
   96 PLOT x+6,y: DRAW -5,0: DRAW 0,5: DRAW 1,0: DRAW 0,1: DRAW 5,0: DRAW 0,-5: DRAW -5,0: DRAW 0,3: GO TO 1180
   97 PLOT x+4,y+4: DRAW 0,-3: DRAW -2,0: DRAW 0,3: DRAW 1,0: PLOT x+1,y+2: DRAW 0,1: GO TO 1150
   98 GO SUB 1100: DRAW 0,5: DRAW 0,-2: DRAW 2,0: DRAW 0,-3: DRAW -1,0: PLOT x+4,y+2: DRAW 0,1: GO TO 1150
   99 PLOT x+1,y+2: DRAW 0,1: PLOT x+4,y+1: DRAW -2,0: DRAW 0,3: DRAW 2,0: GO TO 1150
  100 PLOT x+4,y+6: DRAW 0,-5: DRAW -2,0: DRAW 0,3: DRAW 1,0: PLOT x+1,y+2: DRAW 0,1: GO TO 1150
  101 PLOT x+4,y+3: DRAW 0,1: DRAW -2,0: DRAW 0,-3: DRAW 2,0: DRAW -1,0: DRAW 0,1: DRAW -2,0: DRAW 0,1: GO TO 1150
  102 PLOT x+1,y+4: DRAW 2,0: PLOT x+2,y+1: DRAW 0,5: PLOT x+3,y+6: GO TO 1140
  103 PLOT x+4,y: DRAW 0,4: DRAW -2,0: DRAW 0,-3: DRAW 1,0: PLOT x+1,y+3: DRAW 0,-1: PLOT x+4,y: DRAW -3,0: GO TO 1150
  104 GO SUB 1100: DRAW 0,5: PLOT x+2,y+4: DRAW 1,0: PLOT x+4,y+3: DRAW 0,-2: GO TO 1150
  105 GO SUB 1100: DRAW 2,0: DRAW -1,0: DRAW 0,3: DRAW -1,0: PLOT x+2,y+6: GO TO 1140
  106 PLOT x,y: DRAW 1,0: PLOT x+2,y+1: DRAW 0,3: PLOT x+2,y+6: GO TO 1130
  107 GO SUB 1100: DRAW 0,5: PLOT x+2,y+3: DRAW 1,0: DRAW 0,-1: PLOT x+4,y+1: PLOT x+4,y+4: GO TO 1150
  108 GO SUB 1100: DRAW 2,0: DRAW -1,0: DRAW 0,5: PLOT x+1,y+6: GO TO 1140
  109 GO SUB 1100: DRAW 0,3: PLOT x+2,y+1: DRAW 0,3: DRAW 3,0: PLOT x+4,y+1: DRAW 0,2: PLOT x+6,y+1: DRAW 0,2: GO TO 1170
  110 GO SUB 1100: DRAW 0,3: PLOT x+2,y+1: DRAW 0,3: DRAW 1,0: PLOT x+4,y+1: DRAW 0,2: GO TO 1150
  111 PLOT x+3,y+1: DRAW -1,0: DRAW 0,3: DRAW 1,0: PLOT x+1,y+2: DRAW 0,1: PLOT x+4,y+2: DRAW 0,1: GO TO 1150
  112 PLOT x+1,y: DRAW 0,4: DRAW 2,0: DRAW 0,-3: DRAW -1,0: PLOT x+4,y+3: DRAW 0,-1: GO TO 1150
  113 PLOT x+4,y: DRAW 0,4: DRAW -2,0: DRAW 0,-3: DRAW 1,0: PLOT x+1,y+3: DRAW 0,-1: GO TO 1150
  114 GO SUB 1100: DRAW 0,3: PLOT x+2,y+1: DRAW 0,2: PLOT x+3,y+4: DRAW 1,0: GO TO 1150
  115 GO SUB 1100: DRAW 2,0: DRAW 0,2: DRAW -2,0: PLOT x+4,y+2: PLOT x+4,y+4: DRAW -2,0: GO TO 1150
  116 PLOT x+2,y+1: DRAW 0,5: PLOT x+1,y+4: DRAW 2,0: PLOT x+3,y+1: GO TO 1140
  117 PLOT x+1,y+2: DRAW 0,2: PLOT x+2,y+4: DRAW 0,-3: DRAW 2,0: DRAW 0,3: GO TO 1150
  118 PLOT x+1,y+4: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: PLOT x+4,y+3: DRAW 0,1: GO TO 1150
  119 PLOT x+1,y+2: DRAW 0,2: PLOT x+2,y+4: DRAW 0,-3: DRAW 3,0: DRAW -1,0: DRAW 0,2: PLOT x+6,y+2: DRAW 0,2: GO TO 1170
  120 GO SUB 1100: PLOT x+1,y+4: PLOT x+4,y+4: PLOT x+4,y+1: PLOT x+2,y+2: DRAW 1,0: DRAW 0,1: DRAW -1,0: GO TO 1150
  121 PLOT x+1,y: DRAW 1,0: PLOT x+3,y+1: PLOT x+1,y+3: DRAW 0,1: DRAW 1,0: DRAW 0,-2: DRAW 2,0: DRAW 0,2: GO TO 1150
  122 GO SUB 1100: DRAW 3,0: PLOT x+1,y+4: DRAW 3,0: PLOT x+2,y+2: PLOT x+3,y+3: GO TO 1150
  123 PLOT x,y+7: DRAW 5,0: GO TO 1160
  124 PLOT x+1,y: DRAW 0,7: PLOT x+2,y: DRAW 0,7: GO TO 1140
  125 PLOT x,y: DRAW 5,0: PLOT x,y+2: DRAW 5,0: PLOT x,y+4: DRAW 5,0: PLOT x,y+6: DRAW 5,0: GO TO 1160
  126 GO SUB 1100: DRAW 3,3: PLOT x+7,y+1: DRAW -2,2: PLOT x+2,y+1: DRAW 4,4: PLOT x+5,y+3: DRAW 2,2: PLOT x+6,y+1: DRAW -4,4: PLOT x+4,y+4: DRAW 0,3: PLOT x+3,y+3: DRAW -2,2: GO TO 1180
  127 PLOT x+1,y+3: DRAW 0,1: PLOT x+4,y+2: DRAW -2,0: DRAW 0,3: DRAW 2,0: PLOT x+3,y: DRAW 0,2: PLOT x+3,y+5: DRAW 0,2: GO TO 1150
  184 GO SUB 1300
  191 LET x=x+20: RETURN 
  199 PLOT x+1,y+3: DRAW 0,1: PLOT x+2,y+3: DRAW 0,1: GO TO 1130
  200 LET x=x-1: RETURN 
  201 PLOT x,y: DRAW 2,0: PLOT x,y+1: DRAW 2,2: PLOT x,y+4: DRAW 2,2: PLOT x,y+7: DRAW 2,0: GO TO 1130
  999 RETURN 
 1000 INPUT "PHRASE: ";n$
 1010 INPUT "PRINT AT "; FLASH 1;"?"; FLASH 0;",x (to 21):";yy
 1020 INPUT "PRINT AT y,"; FLASH 1;"?"; FLASH 0;" (to 31):";xx
 1030 PRINT n$
 1040 LET x=xx*8: LET y=168-yy*8: FOR t=1 TO 200: LET a=CODE n$(t): GO SUB a: NEXT t
 1050 STOP 
 1100 PLOT x+1,y+1: RETURN 
 1120 LET x=x+2: IF x>248 THEN GO TO 1300
 1125 RETURN 
 1130 LET x=x+3: IF x>248 THEN GO TO 1300
 1135 RETURN 
 1140 LET x=x+4: IF x>248 THEN GO TO 1300
 1145 RETURN 
 1150 LET x=x+5: IF x>248 THEN GO TO 1300
 1155 RETURN 
 1160 LET x=x+6: IF x>248 THEN GO TO 1300
 1165 RETURN 
 1170 LET x=x+7: IF x>248 THEN GO TO 1300
 1175 RETURN 
 1180 LET x=x+8: IF x>248 THEN GO TO 1300
 1185 RETURN 
 1300 LET x=0: LET y=y-8: RETURN 
 9999 SAVE "cfe" LINE 1: SAVE "cfe" LINE 1
    1 REM CLASSY FRONT END Part 1       
   10 DIM n$(200): GO TO 1000
   32 GO TO 1130
   33 PLOT x+2,y+1: DRAW 1,0: PLOT x+2,y+3: DRAW 0,3: DRAW 1,0: DRAW 0,-3: GO TO 1140
   34 PLOT x+2,y+7: DRAW 0,-2: PLOT x+5,y+5: DRAW 0,2: GO TO 1170
   35 PLOT x+1,y: DRAW 0,7: PLOT x+4,y: DRAW 0,7: PLOT x,y+2: DRAW 5,0: PLOT x,y+6: DRAW 5,0: GO TO 1160
   36 PLOT x+3,y: DRAW 0,7: PLOT x+1,y+2: DRAW 1,0: DRAW 0,-1: DRAW 2,0: PLOT x+4,y+4: DRAW -2,0: DRAW 0,2: DRAW 2,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+1,y+5: GO TO 1160
   37 PLOT x+3,y+5: DRAW -1,-1: DRAW -1,0: DRAW 0,1: DRAW 1,1: DRAW 4,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-2: DRAW 1,0: DRAW 0,-1: DRAW -1,-1: PLOT x+3,y+1: DRAW 0,1: DRAW 1,0: DRAW 0,1: GO TO 1170
   38 PLOT x+4,y+1: DRAW -1,-1: DRAW 0,1: DRAW -1,0: DRAW 0,4: DRAW 2,0: PLOT x+1,y+2: PLOT x+3,y+6: DRAW -2,-2: DRAW 2,-1: DRAW 1,0: GO TO 1150
   39 PLOT x+3,y+7: DRAW 0,-1: DRAW -1,-1: GO TO 1130
   40 PLOT x+3,y: PLOT x+3,y+7: PLOT x+2,y+1: DRAW 0,5: PLOT x+1,y+2: DRAW 0,3: GO TO 1140
   41 PLOT x+1,y: PLOT x+1,y+7: PLOT x+2,y+1: DRAW 0,5: PLOT x+3,y+2: DRAW 0,3: GO TO 1140
   42 PLOT x+1,y+4: DRAW 1,1: DRAW -1,1: PLOT x+3,y+3: DRAW 0,4: PLOT x+5,y+4: DRAW -1,1: DRAW 1,1: GO TO 1160
   43 PLOT x+3,y+1: DRAW 0,4: PLOT x+1,y+3: DRAW 4,0: GO TO 1160
   44 PLOT x+2,y: PLOT x+3,y+1: DRAW 0,2: DRAW -1,0: GO TO 1140
   45 PLOT x+2,y+3: DRAW 3,0: DRAW 0,1: DRAW -3,0: GO TO 1170
   46 PLOT x+2,y+1: DRAW 1,0: DRAW 0,1: DRAW -1,0: GO TO 1150
   47 PLOT x+2,y+1: DRAW 0,1: PLOT x+3,y+3: DRAW 0,1: PLOT x+4,y+5: DRAW 0,1: GO TO 1150
   48 PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,3: PLOT x+3,y+3: PLOT x+4,y+4: GO TO 1160
   49 GO SUB 1100: DRAW 2,0: DRAW -1,0: DRAW 0,5: PLOT x+1,y+5: GO TO 1140
   50 GO SUB 1100: DRAW 0,1: DRAW 1,0: DRAW 0,-1: DRAW 2,0: PLOT x+1,y+5: PLOT x+2,y+6: DRAW 1,0: PLOT x+4,y+4: DRAW 0,1: PLOT x+3,y+3: GO TO 1150
   51 PLOT x+1,y+2: PLOT x+2,y+1: DRAW 2,0: DRAW 0,5: DRAW -3,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+5,y+6: PLOT x+3,y+4: GO TO 1160
   52 PLOT x+3,y+1: DRAW 0,5: DRAW -1,0: DRAW 0,-1: PLOT x+4,y+3: DRAW -3,0: DRAW 0,2: GO TO 1150
   53 PLOT x+1,y+2: PLOT x+4,y+6: DRAW -3,0: DRAW 0,-2: DRAW 2,0: PLOT x+2,y+5: PLOT x+4,y+2: DRAW 0,1: PLOT x+2,y+1: DRAW 1,0: GO TO 1150
   54 PLOT x+4,y+1: DRAW -2,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW 1,0: DRAW 0,2: PLOT x+4,y+4: DRAW -3,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+3,y+6: DRAW 1,0: GO TO 1160
   55 PLOT x+1,y+1: DRAW 0,2: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,2: DRAW -3,0: GO TO 1140
   56 PLOT x+4,y+1: DRAW -2,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW 1,0: DRAW 0,3: DRAW 2,0: PLOT x+1,y+5: PLOT x+5,y+5: PLOT x+3,y+4: DRAW 1,0: PLOT x+5,y+2: DRAW 0,1: GO TO 1160
   57 PLOT x+5,y+2: DRAW 0,1: DRAW -3,0: DRAW 0,3: DRAW 2,0: PLOT x+1,y+4: DRAW 0,1: PLOT x+2,y+1: DRAW 2,0: PLOT x+5,y+4: DRAW 0,1: GO TO 1160
   58 PLOT x+2,y+4: DRAW 1,0: PLOT x+3,y+2: DRAW -1,0: GO TO 1140
   59 PLOT x+2,y+4: DRAW 1,0: PLOT x+2,y: PLOT x+3,y+1: DRAW 0,1: DRAW -1,0: GO TO 1140
   60 PLOT x+1,y+3: DRAW 3,-3: PLOT x+1,y+4: DRAW 3,3: PLOT x+3,y+2: DRAW -1,1: DRAW 0,1: DRAW 1,1: GO TO 1150
   61 PLOT x,y+2: DRAW 0,2: PLOT x,y+4: DRAW 0,2: GO TO 1130
   62 PLOT x+4,y+3: DRAW -3,-3: PLOT x+4,y+4: DRAW -3,3: PLOT x+2,y+2: DRAW 1,1: DRAW 0,1: DRAW -1,1: GO TO 1150
   63 PLOT x+1,y+5: PLOT x+3,y+1: DRAW 1,0: PLOT x+2,y+6: DRAW 2,0: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: GO TO 1160
   64 PLOT x+3,y+2: DRAW -1,0: DRAW 0,1: PLOT x+1,y+5: PLOT x+3,y+4: DRAW 1,0: DRAW 0,-3: DRAW 1,0: PLOT x+6,y+2: DRAW 0,3: PLOT x+2,y+6: DRAW 3,0: GO TO 1170
   65 GO SUB 1100: DRAW 0,4: PLOT x+2,y+1: DRAW 0,5: DRAW 2,0: PLOT x+5,y+1: DRAW 0,4: PLOT x+5,y+3: DRAW -2,0: GO TO 1160
   66 GO SUB 1100: DRAW 0,5: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+5: PLOT x+3,y+4: DRAW 1,0: PLOT x+5,y+2: DRAW 0,1: GO TO 1160
   67 PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: PLOT x+5,y+5: GO TO 1160
   68 GO SUB 1100: DRAW 0,5: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,3: GO TO 1160
   69 PLOT x+5,y+1: DRAW -4,0: DRAW 0,5: DRAW 4,0: DRAW -3,0: DRAW 0,-2: DRAW 2,0: DRAW -2,0: DRAW 0,-2: GO TO 1160
   70 PLOT x+5,y+6: DRAW -4,0: DRAW 0,-5: DRAW 1,0: DRAW 0,3: DRAW 2,0: PLOT x+2,y+5: GO TO 1150
   71 PLOT x+4,y+3: DRAW 1,0: DRAW 0,-2: DRAW -3,0: DRAW 0,5: DRAW 2,0: PLOT x+1,y+2: DRAW 0,3: PLOT x+5,y+5: GO TO 1160
   72 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: DRAW 0,3: DRAW 3,0: DRAW 0,2: DRAW 0,-5: GO TO 1160
   73 GO SUB 1100: DRAW 2,0: DRAW 0,5: DRAW -2,0: DRAW 3,0: DRAW -2,0: DRAW 0,-5: DRAW 2,0: GO TO 1150
   74 PLOT x+2,y+1: DRAW 2,0: DRAW 0,5: DRAW 1,0: DRAW 0,-4: PLOT x+1,y+2: DRAW 0,1: GO TO 1160
   75 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: PLOT x+3,y+3: DRAW 0,1: PLOT x+4,y+2: PLOT x+4,y+5: PLOT x+5,y+1: PLOT x+5,y+6: GO TO 1160
   76 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: DRAW 3,0: GO TO 1160
   77 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: PLOT x+3,y+5: PLOT x+4,y+4: PLOT x+5,y+5: DRAW 1,0: DRAW 0,1: DRAW 0,-5: GO TO 1170
   78 GO SUB 1100: DRAW 0,5: DRAW 1,0: DRAW 0,-5: PLOT x+3,y+5: DRAW 0,-1: PLOT x+4,y+3: DRAW 0,-1: PLOT x+5,y+1: DRAW 0,5: GO TO 1160
   79 PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,3: GO TO 1160
   80 GO SUB 1100: DRAW 0,5: DRAW 3,0: DRAW -2,0: DRAW 0,-5: DRAW 0,2: DRAW 2,0: PLOT x+5,y+4: DRAW 0,1: GO TO 1160
   81 PLOT x+3,y+3: PLOT x+1,y+2: DRAW 0,3: PLOT x+4,y+2: DRAW 0,-1: DRAW -2,0: DRAW 0,5: DRAW 2,0: PLOT x+5,y: DRAW 0,5: GO TO 1160
   82 GO SUB 1100: DRAW 0,5: DRAW 3,0: DRAW -2,0: DRAW 0,-5: DRAW 0,2: DRAW 2,0: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: PLOT x+5,y+4: DRAW 0,1: GO TO 1160
   83 PLOT x+1,y+2: DRAW 1,0: DRAW 0,-1: DRAW 2,0: PLOT x+4,y+4: DRAW -2,0: DRAW 0,2: DRAW 2,0: PLOT x+5,y+2: DRAW 0,1: PLOT x+1,y+5: GO TO 1160
   84 PLOT x+1,y+6: DRAW 2,0: DRAW 0,-5: DRAW 1,0: DRAW 0,5: DRAW 2,0: GO TO 1160
   85 PLOT x+1,y+2: DRAW 0,4: DRAW 1,0: DRAW 0,-5: DRAW 2,0: PLOT x+5,y+2: DRAW 0,4: GO TO 1160
   86 PLOT x+1,y+5: DRAW 0,1: DRAW 1,0: DRAW 0,-3: DRAW 1,0: DRAW 0,1: DRAW 0,-3: DRAW 1,0: DRAW 0,1: PLOT x+5,y+3: DRAW 0,1: PLOT x+6,y+5: DRAW 0,1: GO TO 1160
   87 PLOT x+1,y+2: DRAW 0,4: DRAW 1,0: DRAW 0,-5: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,2: DRAW 0,-2: DRAW 2,0: DRAW 0,4: PLOT x+5,y+1: GO TO 1170
   88 GO SUB 1100: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,1: DRAW 1,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: DRAW -1,0: PLOT x+5,y+2: PLOT x+5,y+5: PLOT x+6,y+1: PLOT x+6,y+6: GO TO 1170
   89 PLOT x+4,y+4: DRAW 0,-3: DRAW -1,0: DRAW 0,3: DRAW -1,0: DRAW 0,1: DRAW -1,0: DRAW 0,1: PLOT x+6,y+6: PLOT x+5,y+5: GO TO 1160
   90 PLOT x+1,y+6: DRAW 4,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW -1,0: DRAW 0,-1: DRAW 4,0: GO TO 1160
   91 PLOT x+2,y: DRAW -1,0: DRAW 0,7: DRAW 1,0: GO TO 1130
   92 PLOT x+4,y+1: DRAW 0,1: PLOT x+3,y+3: DRAW 0,1: PLOT x+2,y+5: DRAW 0,1: GO TO 1150
   93 PLOT x+1,y: DRAW 1,0: DRAW 0,7: DRAW -1,0: GO TO 1130
   94 PLOT x+1,y+4: DRAW 2,2: DRAW 2,-2: DRAW -2,2: DRAW 0,-5: GO TO 1160
   95 PLOT x,y: DRAW 7,0: GO TO 1180
   96 PLOT x+6,y: DRAW -5,0: DRAW 0,5: DRAW 1,0: DRAW 0,1: DRAW 5,0: DRAW 0,-5: DRAW -5,0: DRAW 0,3: GO TO 1180
   97 PLOT x+4,y+4: DRAW 0,-3: DRAW -2,0: DRAW 0,3: DRAW 1,0: PLOT x+1,y+2: DRAW 0,1: GO TO 1150
   98 GO SUB 1100: DRAW 0,5: DRAW 0,-2: DRAW 2,0: DRAW 0,-3: DRAW -1,0: PLOT x+4,y+2: DRAW 0,1: GO TO 1150
   99 PLOT x+1,y+2: DRAW 0,1: PLOT x+4,y+1: DRAW -2,0: DRAW 0,3: DRAW 2,0: GO TO 1150
  100 PLOT x+4,y+6: DRAW 0,-5: DRAW -2,0: DRAW 0,3: DRAW 1,0: PLOT x+1,y+2: DRAW 0,1: GO TO 1150
  101 PLOT x+4,y+3: DRAW 0,1: DRAW -2,0: DRAW 0,-3: DRAW 2,0: DRAW -1,0: DRAW 0,1: DRAW -2,0: DRAW 0,1: GO TO 1150
  102 PLOT x+1,y+4: DRAW 2,0: PLOT x+2,y+1: DRAW 0,5: PLOT x+3,y+6: GO TO 1140
  103 PLOT x+4,y: DRAW 0,4: DRAW -2,0: DRAW 0,-3: DRAW 1,0: PLOT x+1,y+3: DRAW 0,-1: PLOT x+4,y: DRAW -3,0: GO TO 1150
  104 GO SUB 1100: DRAW 0,5: PLOT x+2,y+4: DRAW 1,0: PLOT x+4,y+3: DRAW 0,-2: GO TO 1150
  105 GO SUB 1100: DRAW 2,0: DRAW -1,0: DRAW 0,3: DRAW -1,0: PLOT x+2,y+6: GO TO 1140
  106 PLOT x,y: DRAW 1,0: PLOT x+2,y+1: DRAW 0,3: PLOT x+2,y+6: GO TO 1130
  107 GO SUB 1100: DRAW 0,5: PLOT x+2,y+3: DRAW 1,0: DRAW 0,-1: PLOT x+4,y+1: PLOT x+4,y+4: GO TO 1150
  108 GO SUB 1100: DRAW 2,0: DRAW -1,0: DRAW 0,5: PLOT x+1,y+6: GO TO 1140
  109 GO SUB 1100: DRAW 0,3: PLOT x+2,y+1: DRAW 0,3: DRAW 3,0: PLOT x+4,y+1: DRAW 0,2: PLOT x+6,y+1: DRAW 0,2: GO TO 1170
  110 GO SUB 1100: DRAW 0,3: PLOT x+2,y+1: DRAW 0,3: DRAW 1,0: PLOT x+4,y+1: DRAW 0,2: GO TO 1150
  111 PLOT x+3,y+1: DRAW -1,0: DRAW 0,3: DRAW 1,0: PLOT x+1,y+2: DRAW 0,1: PLOT x+4,y+2: DRAW 0,1: GO TO 1150
  112 PLOT x+1,y: DRAW 0,4: DRAW 2,0: DRAW 0,-3: DRAW -1,0: PLOT x+4,y+3: DRAW 0,-1: GO TO 1150
  113 PLOT x+4,y: DRAW 0,4: DRAW -2,0: DRAW 0,-3: DRAW 1,0: PLOT x+1,y+3: DRAW 0,-1: GO TO 1150
  114 GO SUB 1100: DRAW 0,3: PLOT x+2,y+1: DRAW 0,2: PLOT x+3,y+4: DRAW 1,0: GO TO 1150
  115 GO SUB 1100: DRAW 2,0: DRAW 0,2: DRAW -2,0: PLOT x+4,y+2: PLOT x+4,y+4: DRAW -2,0: GO TO 1150
  116 PLOT x+2,y+1: DRAW 0,5: PLOT x+1,y+4: DRAW 2,0: PLOT x+3,y+1: GO TO 1140
  117 PLOT x+1,y+2: DRAW 0,2: PLOT x+2,y+4: DRAW 0,-3: DRAW 2,0: DRAW 0,3: GO TO 1150
  118 PLOT x+1,y+4: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: DRAW 1,0: DRAW 0,-1: PLOT x+4,y+3: DRAW 0,1: GO TO 1150
  119 PLOT x+1,y+2: DRAW 0,2: PLOT x+2,y+4: DRAW 0,-3: DRAW 3,0: DRAW -1,0: DRAW 0,2: PLOT x+6,y+2: DRAW 0,2: GO TO 1170
  120 GO SUB 1100: PLOT x+1,y+4: PLOT x+4,y+4: PLOT x+4,y+1: PLOT x+2,y+2: DRAW 1,0: DRAW 0,1: DRAW -1,0: GO TO 1150
  121 PLOT x+1,y: DRAW 1,0: PLOT x+3,y+1: PLOT x+1,y+3: DRAW 0,1: DRAW 1,0: DRAW 0,-2: DRAW 2,0: DRAW 0,2: GO TO 1150
  122 GO SUB 1100: DRAW 3,0: PLOT x+1,y+4: DRAW 3,0: PLOT x+2,y+2: PLOT x+3,y+3: GO TO 1150
  123 PLOT x,y+7: DRAW 5,0: GO TO 1160
  124 PLOT x+1,y: DRAW 0,7: PLOT x+2,y: DRAW 0,7: GO TO 1140
  125 PLOT x,y: DRAW 5,0: PLOT x,y+2: DRAW 5,0: PLOT x,y+4: DRAW 5,0: PLOT x,y+6: DRAW 5,0: GO TO 1160
  126 GO SUB 1100: DRAW 3,3: PLOT x+7,y+1: DRAW -2,2: PLOT x+2,y+1: DRAW 4,4: PLOT x+5,y+3: DRAW 2,2: PLOT x+6,y+1: DRAW -4,4: PLOT x+4,y+4: DRAW 0,3: PLOT x+3,y+3: DRAW -2,2: GO TO 1180
  127 PLOT x+1,y+3: DRAW 0,1: PLOT x+4,y+2: DRAW -2,0: DRAW 0,3: DRAW 2,0: PLOT x+3,y: DRAW 0,2: PLOT x+3,y+5: DRAW 0,2: GO TO 1150
  184 GO SUB 1300
  191 LET x=x+20: RETURN 
  199 PLOT x+1,y+3: DRAW 0,1: PLOT x+2,y+3: DRAW 0,1: GO TO 1130
  200 LET x=x-1: RETURN 
  201 PLOT x,y: DRAW 2,0: PLOT x,y+1: DRAW 2,2: PLOT x,y+4: DRAW 2,2: PLOT x,y+7: DRAW 2,0: GO TO 1130
  999 RETURN 
 1000 INPUT "PHRASE: ";n$
 1010 INPUT "PRINT AT "; FLASH 1;"?"; FLASH 0;",x (to 21):";yy
 1020 INPUT "PRINT AT y,"; FLASH 1;"?"; FLASH 0;" (to 31):";xx
 1030 PRINT n$
 1040 LET x=xx*8: LET y=168-yy*8: FOR t=1 TO 200: LET a=CODE n$(t): GO SUB a: NEXT t
 1050 STOP 
 1100 PLOT x+1,y+1: RETURN 
 1120 LET x=x+2: IF x>248 THEN GO TO 1300
 1125 RETURN 
 1130 LET x=x+3: IF x>248 THEN GO TO 1300
 1135 RETURN 
 1140 LET x=x+4: IF x>248 THEN GO TO 1300
 1145 RETURN 
 1150 LET x=x+5: IF x>248 THEN GO TO 1300
 1155 RETURN 
 1160 LET x=x+6: IF x>248 THEN GO TO 1300
 1165 RETURN 
 1170 LET x=x+7: IF x>248 THEN GO TO 1300
 1175 RETURN 
 1180 LET x=x+8: IF x>248 THEN GO TO 1300
 1185 RETURN 
 1300 LET x=0: LET y=y-8: RETURN 
 9999 SAVE "cfe" LINE 1: SAVE "cfe" LINE 1

Note: Type-in program listings on this website use ZMAKEBAS notation for graphics characters.

Scroll to Top