Create-A-Font Datamaker

16K Cassette or Disk
by E.K. Garringer


Create-A-Font, published in February's ANALOG, issue 16, makes redefining a character set easy enough for a child -- and as entertaining as a game. But, after you have enjoyed creating your own special character set, you may have asked, "What now?"

Font Datamaker makes using your character set as easy as creating it. It does.all the work for you. Here's how to use it.

  1. Type in Font Datamaker and SAVE it to tape or diskette.
  2. Design a character set with Create-A-Font and SAVE it to disk or tape.
  3. RUN Font Datamaker and follow the prompts: (a) enter the complete name of your data file saved by Create-A-Font; (b) enter the complete name of the subroutine you will be creating; and (c) enter the line number with which you would like the subroutine to begin.

At this point, Datamaker will read your font file into memory and then ask you to insert your output diskette or tape. Your font will be compared to the ROM internal character set. Only those characters which have been changed will generate data statements for the subroutine. This effectively cuts down the length of the subroutine and the amount of memory required to store your program.

As Datamaker works, it will generate your subroutine and write it to diskette or tape. This process takes about one minute. When complete, Datamaker returns control to BASIC, and the READY prompt appears on the screen.

Note: The disk write process occurs only when the buffer is full. Some drives shut down between writes. Datamaker is not finished until the READY prompt appears!

Font Datamaker generates a subroutine which does all the work required to store and access your redefined character set in memory. To use your subroutine, follow these steps:

  1. Write and debug your program using the ROM character set for trial runs.
  2. When satisfied, ENTER the routine created by Font Datamaker.
  3. Start your program with GOSUB X, where X is the beginning line number of your subroutine.
  4. To access your character set, [POKE 756, CHSET/256] after each GRAPHICS call.
  5. SAVE your complete program, with subroutine intact, to cassette or diskette.
  6. Press SYSTEM RESET before RUNning your program and between RUNS.

Additional information.

As stated in Create-A-Font, a scrolling text window can destroy your character set. If you wish to use a scrolling window, protect your character set by changing Line 340 to:

340 ? #2;LINO;" POKE 106,PEEK(106)-8:G
RAPHICS 0:CHSET=(PEEK(106)+4)*256:? ";
CHR$(34);"ONE MOMENT";CHR$(34)

If your player will be using Player/Missile Graphics, location 106 must be adjusted to suit your specific application.

You may wish to save the original contents of location 106 to a numeric variable before the GOSUB X [i.e., RTOP=PEEK(106)].

FONTDATA.LST is available in ATASCII format.

This BASIC listing uses an image to display special characters

Checksum Data
10 DATA 165,123,602,514,17,832,344,193
,894,920,913,992,46,359,569,7483
105 DATA 858,276,390,318,961,405,167,6
5,677,929,781,340,984,461,872,8484
230 DATA 748,115,210,591,358,67,391,51
0,469,638,833,933,105,401,955,7324
380 DATA 500,744,630,963,107,147,393,4
11,218,314,304,763,350,321,101,6266
530 DATA 639,217,565,11,292,621,818,38
5,524,725,4797

Previous | Contents | Next

Original text copyright 1984 by ANALOG Computing. Reprinted with permission by the Digital ANALOG Archive.