Classic Computer Magazine Archive CREATIVE COMPUTING VOL. 9, NO. 1 / JANUARY 1983 / PAGE 270

Eight by eight create. (computer program) Robert Spahitz.

Eight by Eight Create

8X8 Create is a program designed for a 5K or 8K Commodore Vic-20 computer. The program allows you to examine the make-up of the Pet character set. While a character is being examined, it can be changed into any other character that can be created in an 8 X 8 matrix, hence the title and program name.

The program works as follows: after loading the program and typing RUN, a countdown appears at the top of the screen. While the countdown is progressing, the remainder of the screen becomes a canvas of changing colors and characters. This delay allows the computer to duplicate the character set into RAM so that it can later be changed. Soon, the screen changes to an orange background with a cyan border. The screen clears and the characters you will be working with are put onto the top few lines of the screen.

When a flashing cursor appears in the upper lefthand corner of the screen, you move the cursor (using the normal cursor control keys) to the character you would like to change. When you arrive at the character, press the left arrow key, and an enlarged copy of the character will be displayed. To the left of this appear eight numbers that tell the computer how the character is created. To the right of both of these is a copy of the character in its normal size.

Once again, a flashing cursor will appear, this time in the upper felt of the enlarged character. You move the cursor to the square that you want to turn on or off and hit the RVS/ON (9 key) to light it up (yellow) or the RVS/OFF (0 key) to darken it in (red.) As you do this, the character on the far right will change accordingly. Note: if a square is orange, it was off when you began; if it is red it was manually turned off; if it is white, it was on when you began; and if it is yellow, it was manually turned on.

To exit the character-change mode, type either X or +. Hitting the plus key (+) will save the character that you created and return you to character-select mode. To examine the character again, or to get the numbers that can create it, hit the left arrow key. To return the character to the way it was when you first ran the program, just type X instead of +. This also returns you the character-select mode.

Once you have created, designed and examined enough characters, you can copy their associated numbers on paper to be used in any programs you make. Some good designs to try include Space Invader characters, animals, and abstract patterns.

The Program

Lines 10 to 170 initialize everything. The memory pointer (locations 55-56) is adjusted so characters being created are not disturbed by program overhead (string storage).

Lines 20 to 70 duplicate the charactters from ROM to RAM (line 60) while the colorful display of characters is being POKEd into the screen. Memory location 36879 changes the background/ boarder color while 36869 changes from the normal character set to the programmable character set. After the characters are screem-POKEd (line 120), two special characters are created for later use (lines 140-170).

Lines 180 to 290 allow the cursor to move only within the boundary of the printed characters. If a left-arrow is hit (line 280) a jump is made to the section which handles character-changing.

Lines 300 to 360 test the cursor for our-of-bounds and also adjust the variables that will move the cursor (up, down, right, or left).

Lines 370 to 480 print the numbers, enlarged character, and normal-sized character as described in the instructions.

Lines 490 to 560 prepare the present cursor position for any change that may take place.

Lines 570 to 660 allow for the different types of changes (cursor up, down, right, left; exit and restore original character; turn on square; turn off square; or exit and save).

Lines 670 to 710 allow the cursor to move without going beyond the boundaries.

Lines 720 to 750 restore the original character from ROM to the appropriate position, and return program control to the character-select section.

Lines 760 to 800 turn a position on not only in the enlarged character, but also in the normal-sized character.

Lines 810 to 840 turn a position off in both the enlarged character and the normal-sized character.


When in character-create mode, hit the left arrow then the + to recreate the character in only two colors (orange/ white) or to examine the correct numbers required to create the character.

Avoid changing the number characters (0,1,2,3,4,5,6,7,8,9) unless you have no use for the values left of the enlarged character. If you change them, the numbers printed to the left will also be changed. They can be restored using the X function for each number.

To start out with a different character set, change the 32768 in line 60, and the 28672 in line 730 (4096 less than the number in line 60). I suggest using 33792 for reversed upper case, 34816 for lower case, or 35840 for reversed lower case. Caution: using a different character set may affect the appearance of numbers and thereby make reading the numbers virtually impossible.

Table: Listing 1.

Table: Table 1.