Home » CEEFAX disks » telesoftware14.adl » 18-03-89/E\Info

18-03-89/E\Info

This website contains an archive of files for the Acorn Electron, BBC Micro, Acorn Archimedes, Commodore 16 and Commodore 64 computers, which Dominic Ford has rescued from his private collection of floppy disks and cassettes.

Some of these files were originally commercial releases in the 1980s and 1990s, but they are now widely available online. I assume that copyright over them is no longer being asserted. If you own the copyright and would like files to be removed, please contact me.

Tape/disk: Home » CEEFAX disks » telesoftware14.adl
Filename: 18-03-89/E\Info
Read OK:
File size: 1764 bytes
Load address: 0000
Exec address: FFFFFFFF
Duplicates

There is 1 duplicate copy of this file in the archive:

File contents
                  BBC Printer Fonts Designer

  This program allows the user to design his or her own printer fonts
and allows them to be use as the normal character set when printing. The
program can also double as a very effective User Defined Graphics editor.
  When redesigning the fonts the program does not change the font stored
in the printer ( this can only be done on a few printers ), instead it
holds each character as a set of graphics commands for the printer. When
a character, say A, is sent to the printer the program intercepts the
ASCII value 65 and instead sends a graphics sequence to the printer.
  To do this two programs are needed. Firstly the font designer and
secondly the intercept program. Once the fonts have been designed with
the Font Editor a program is generated by the editor that is activated by
a simple * command call to the disc drive. This calls up the Trapper
program.

                  Use
   Once the editor is loaded and run it presents 10 options selected by
pressing the appropriate key. The options are:

 Compile Fonts for Use
   Once all the fonts have been defined this option should be selected to
generate the Trap program. The option will prompt for a filename and a
run time load address. Although any ( disc ) filename can only be 7
characters long I have not placed a limit on the length of the filename
entered as the user may wish to include drive numbers and/or directory
settings, these conditions apply  for  all  filenames  requested by the
program. The run time memory address is important as this is the memory
the Trap program will reside in while running. The program needs 5
consecutive pages ( 1280 bytes - mainly character data ). Any free memory
can be used. When entering this address it must be in hex form e.g. enter
20480 as 5000 not 20480 or even &5000. This restriction is because, while
BBC BASIC can convert hex strings to numbers it can only convert numbers
to hex strings with the ~ function  and the print command  sending the
result directly to the screen.

 Save/Load Fonts
   These option allows all the fonts currently in  use  to  be saved and
reloaded from a disc file.

 View Fonts
    This option allows all the fonts to be viewed in turn.

 Test Print Character
  When selected this option will prompt for the character to be tested.
It will then send 10 of them, separated by spaces, to the printer. This
option and the last are designed to help give an idea of the final
overall effect.

 Give settings for UDG
  As well as providing the printer font function  the basic principle of
designing a font are the same as designing a User Defined Graphic ( UDG
). This option gives the VDU 23 code that must be issued for the
specified character to be generated as a UDG on a BBC. ( The x in the
command stands for whatever UDG is being defined e.g. any character
number depending on how the UDG's have been exploded. )

 Set all Characters to Default
  This option is very useful when first redesigning the character set. It
simply sets every character ( ASCII 32 to 126 ) to their default settings
e.g. how the BBC defines them. NOTE: these will not be the same as the
printer since each printer has it's own definitions of each character.
Some printer manuals list the definitions used by the printer.

 *Command
   Although not listed on the menu, typing * at the menu will allow any *
command to be issued.

 Edit Fonts
  I have left this option to last because it is the most complicated.
Once selected the program will prompt for a character. As with the other
options which prompt for a character you can enter the character directly
from the keyboard by pressing it on the keyboard and then RETURN. If,
however, you prefer, pressing RETURN on its own will prompt for the ASCII
code for the character.
  Once the code is selected the program produces an 8 by 8 grid on which
the character is displayed  clearly.  On  this grid is placed a cross to
help with altering the character. To the left of the grid are details the
cross's position, the character being edited and how the character
currently looks as a UDG.
   The cross can be moved by pressing the appropriate cursor key to move
the cross and pressing RETURN to toggle the square between one and off.
As well as this the function keys allow more option to be selected.

    Function Key    Normal Action          Shifted action

       f0            Clear Grid             Inverse Grid

       f1            Fill Grid              Change Current
                                            character

       f2            Vertical Fill          Vertical Clear

       f3            Horizontal Fill        Horizontal Clear

       f4            Restore Default        Set current character
                     setting of             to default setting of
                     character              another character

       f5            Copy current           Swap current character
                     character to           with another
                     another character      character

       f6            Copy another           Activate Printer
                     character to the       Dump   *
                     the current character

       f7            Vertical Inverse       Vertial Reverse

       f8            Horizontal Inverse     Horizontal Reverse

       f9            Exit to Menu           Flip character

  * You will have to insert you own printer dump program at the very end
of the program e.g. my own Printer Dump Program ( PDP ) or it's close
relative Printer Dump ROM ( PDR ) which have already been broadcast by
Ceefax.

   As well as moving the cross pressing one of the cursor keys while
holding SHIFT down will allow the character on the grid to me moved up,
down, left and right.
   I  hope the  functions  provided  are  comprehensive  enough without
being too numerous and divergent to understand. Some experimentation will
probably be needed before any "major works" can be produced.
00000000  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00000010  20 20 42 42 43 20 50 72  69 6e 74 65 72 20 46 6f  |  BBC Printer Fo|
00000020  6e 74 73 20 44 65 73 69  67 6e 65 72 0d 0d 20 20  |nts Designer..  |
00000030  54 68 69 73 20 70 72 6f  67 72 61 6d 20 61 6c 6c  |This program all|
00000040  6f 77 73 20 74 68 65 20  75 73 65 72 20 74 6f 20  |ows the user to |
00000050  64 65 73 69 67 6e 20 68  69 73 20 6f 72 20 68 65  |design his or he|
00000060  72 20 6f 77 6e 20 70 72  69 6e 74 65 72 20 66 6f  |r own printer fo|
00000070  6e 74 73 0d 61 6e 64 20  61 6c 6c 6f 77 73 20 74  |nts.and allows t|
00000080  68 65 6d 20 74 6f 20 62  65 20 75 73 65 20 61 73  |hem to be use as|
00000090  20 74 68 65 20 6e 6f 72  6d 61 6c 20 63 68 61 72  | the normal char|
000000a0  61 63 74 65 72 20 73 65  74 20 77 68 65 6e 20 70  |acter set when p|
000000b0  72 69 6e 74 69 6e 67 2e  20 54 68 65 0d 70 72 6f  |rinting. The.pro|
000000c0  67 72 61 6d 20 63 61 6e  20 61 6c 73 6f 20 64 6f  |gram can also do|
000000d0  75 62 6c 65 20 61 73 20  61 20 76 65 72 79 20 65  |uble as a very e|
000000e0  66 66 65 63 74 69 76 65  20 55 73 65 72 20 44 65  |ffective User De|
000000f0  66 69 6e 65 64 20 47 72  61 70 68 69 63 73 20 65  |fined Graphics e|
00000100  64 69 74 6f 72 2e 0d 20  20 57 68 65 6e 20 72 65  |ditor..  When re|
00000110  64 65 73 69 67 6e 69 6e  67 20 74 68 65 20 66 6f  |designing the fo|
00000120  6e 74 73 20 74 68 65 20  70 72 6f 67 72 61 6d 20  |nts the program |
00000130  64 6f 65 73 20 6e 6f 74  20 63 68 61 6e 67 65 20  |does not change |
00000140  74 68 65 20 66 6f 6e 74  20 73 74 6f 72 65 64 0d  |the font stored.|
00000150  69 6e 20 74 68 65 20 70  72 69 6e 74 65 72 20 28  |in the printer (|
00000160  20 74 68 69 73 20 63 61  6e 20 6f 6e 6c 79 20 62  | this can only b|
00000170  65 20 64 6f 6e 65 20 6f  6e 20 61 20 66 65 77 20  |e done on a few |
00000180  70 72 69 6e 74 65 72 73  20 29 2c 20 69 6e 73 74  |printers ), inst|
00000190  65 61 64 20 69 74 0d 68  6f 6c 64 73 20 65 61 63  |ead it.holds eac|
000001a0  68 20 63 68 61 72 61 63  74 65 72 20 61 73 20 61  |h character as a|
000001b0  20 73 65 74 20 6f 66 20  67 72 61 70 68 69 63 73  | set of graphics|
000001c0  20 63 6f 6d 6d 61 6e 64  73 20 66 6f 72 20 74 68  | commands for th|
000001d0  65 20 70 72 69 6e 74 65  72 2e 20 57 68 65 6e 0d  |e printer. When.|
000001e0  61 20 63 68 61 72 61 63  74 65 72 2c 20 73 61 79  |a character, say|
000001f0  20 41 2c 20 69 73 20 73  65 6e 74 20 74 6f 20 74  | A, is sent to t|
00000200  68 65 20 70 72 69 6e 74  65 72 20 74 68 65 20 70  |he printer the p|
00000210  72 6f 67 72 61 6d 20 69  6e 74 65 72 63 65 70 74  |rogram intercept|
00000220  73 20 74 68 65 0d 41 53  43 49 49 20 76 61 6c 75  |s the.ASCII valu|
00000230  65 20 36 35 20 61 6e 64  20 69 6e 73 74 65 61 64  |e 65 and instead|
00000240  20 73 65 6e 64 73 20 61  20 67 72 61 70 68 69 63  | sends a graphic|
00000250  73 20 73 65 71 75 65 6e  63 65 20 74 6f 20 74 68  |s sequence to th|
00000260  65 20 70 72 69 6e 74 65  72 2e 0d 20 20 54 6f 20  |e printer..  To |
00000270  64 6f 20 74 68 69 73 20  74 77 6f 20 70 72 6f 67  |do this two prog|
00000280  72 61 6d 73 20 61 72 65  20 6e 65 65 64 65 64 2e  |rams are needed.|
00000290  20 46 69 72 73 74 6c 79  20 74 68 65 20 66 6f 6e  | Firstly the fon|
000002a0  74 20 64 65 73 69 67 6e  65 72 20 61 6e 64 0d 73  |t designer and.s|
000002b0  65 63 6f 6e 64 6c 79 20  74 68 65 20 69 6e 74 65  |econdly the inte|
000002c0  72 63 65 70 74 20 70 72  6f 67 72 61 6d 2e 20 4f  |rcept program. O|
000002d0  6e 63 65 20 74 68 65 20  66 6f 6e 74 73 20 68 61  |nce the fonts ha|
000002e0  76 65 20 62 65 65 6e 20  64 65 73 69 67 6e 65 64  |ve been designed|
000002f0  20 77 69 74 68 0d 74 68  65 20 46 6f 6e 74 20 45  | with.the Font E|
00000300  64 69 74 6f 72 20 61 20  70 72 6f 67 72 61 6d 20  |ditor a program |
00000310  69 73 20 67 65 6e 65 72  61 74 65 64 20 62 79 20  |is generated by |
00000320  74 68 65 20 65 64 69 74  6f 72 20 74 68 61 74 20  |the editor that |
00000330  69 73 20 61 63 74 69 76  61 74 65 64 20 62 79 0d  |is activated by.|
00000340  61 20 73 69 6d 70 6c 65  20 2a 20 63 6f 6d 6d 61  |a simple * comma|
00000350  6e 64 20 63 61 6c 6c 20  74 6f 20 74 68 65 20 64  |nd call to the d|
00000360  69 73 63 20 64 72 69 76  65 2e 20 54 68 69 73 20  |isc drive. This |
00000370  63 61 6c 6c 73 20 75 70  20 74 68 65 20 54 72 61  |calls up the Tra|
00000380  70 70 65 72 0d 70 72 6f  67 72 61 6d 2e 0d 0d 20  |pper.program... |
00000390  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
000003a0  20 55 73 65 0d 20 20 20  4f 6e 63 65 20 74 68 65  | Use.   Once the|
000003b0  20 65 64 69 74 6f 72 20  69 73 20 6c 6f 61 64 65  | editor is loade|
000003c0  64 20 61 6e 64 20 72 75  6e 20 69 74 20 70 72 65  |d and run it pre|
000003d0  73 65 6e 74 73 20 31 30  20 6f 70 74 69 6f 6e 73  |sents 10 options|
000003e0  20 73 65 6c 65 63 74 65  64 20 62 79 0d 70 72 65  | selected by.pre|
000003f0  73 73 69 6e 67 20 74 68  65 20 61 70 70 72 6f 70  |ssing the approp|
00000400  72 69 61 74 65 20 6b 65  79 2e 20 54 68 65 20 6f  |riate key. The o|
00000410  70 74 69 6f 6e 73 20 61  72 65 3a 0d 0d 20 43 6f  |ptions are:.. Co|
00000420  6d 70 69 6c 65 20 46 6f  6e 74 73 20 66 6f 72 20  |mpile Fonts for |
00000430  55 73 65 0d 20 20 20 4f  6e 63 65 20 61 6c 6c 20  |Use.   Once all |
00000440  74 68 65 20 66 6f 6e 74  73 20 68 61 76 65 20 62  |the fonts have b|
00000450  65 65 6e 20 64 65 66 69  6e 65 64 20 74 68 69 73  |een defined this|
00000460  20 6f 70 74 69 6f 6e 20  73 68 6f 75 6c 64 20 62  | option should b|
00000470  65 20 73 65 6c 65 63 74  65 64 20 74 6f 0d 67 65  |e selected to.ge|
00000480  6e 65 72 61 74 65 20 74  68 65 20 54 72 61 70 20  |nerate the Trap |
00000490  70 72 6f 67 72 61 6d 2e  20 54 68 65 20 6f 70 74  |program. The opt|
000004a0  69 6f 6e 20 77 69 6c 6c  20 70 72 6f 6d 70 74 20  |ion will prompt |
000004b0  66 6f 72 20 61 20 66 69  6c 65 6e 61 6d 65 20 61  |for a filename a|
000004c0  6e 64 20 61 0d 72 75 6e  20 74 69 6d 65 20 6c 6f  |nd a.run time lo|
000004d0  61 64 20 61 64 64 72 65  73 73 2e 20 41 6c 74 68  |ad address. Alth|
000004e0  6f 75 67 68 20 61 6e 79  20 28 20 64 69 73 63 20  |ough any ( disc |
000004f0  29 20 66 69 6c 65 6e 61  6d 65 20 63 61 6e 20 6f  |) filename can o|
00000500  6e 6c 79 20 62 65 20 37  0d 63 68 61 72 61 63 74  |nly be 7.charact|
00000510  65 72 73 20 6c 6f 6e 67  20 49 20 68 61 76 65 20  |ers long I have |
00000520  6e 6f 74 20 70 6c 61 63  65 64 20 61 20 6c 69 6d  |not placed a lim|
00000530  69 74 20 6f 6e 20 74 68  65 20 6c 65 6e 67 74 68  |it on the length|
00000540  20 6f 66 20 74 68 65 20  66 69 6c 65 6e 61 6d 65  | of the filename|
00000550  0d 65 6e 74 65 72 65 64  20 61 73 20 74 68 65 20  |.entered as the |
00000560  75 73 65 72 20 6d 61 79  20 77 69 73 68 20 74 6f  |user may wish to|
00000570  20 69 6e 63 6c 75 64 65  20 64 72 69 76 65 20 6e  | include drive n|
00000580  75 6d 62 65 72 73 20 61  6e 64 2f 6f 72 20 64 69  |umbers and/or di|
00000590  72 65 63 74 6f 72 79 0d  73 65 74 74 69 6e 67 73  |rectory.settings|
000005a0  2c 20 74 68 65 73 65 20  63 6f 6e 64 69 74 69 6f  |, these conditio|
000005b0  6e 73 20 61 70 70 6c 79  20 20 66 6f 72 20 20 61  |ns apply  for  a|
000005c0  6c 6c 20 20 66 69 6c 65  6e 61 6d 65 73 20 20 72  |ll  filenames  r|
000005d0  65 71 75 65 73 74 65 64  20 62 79 20 74 68 65 0d  |equested by the.|
000005e0  70 72 6f 67 72 61 6d 2e  20 54 68 65 20 72 75 6e  |program. The run|
000005f0  20 74 69 6d 65 20 6d 65  6d 6f 72 79 20 61 64 64  | time memory add|
00000600  72 65 73 73 20 69 73 20  69 6d 70 6f 72 74 61 6e  |ress is importan|
00000610  74 20 61 73 20 74 68 69  73 20 69 73 20 74 68 65  |t as this is the|
00000620  20 6d 65 6d 6f 72 79 0d  74 68 65 20 54 72 61 70  | memory.the Trap|
00000630  20 70 72 6f 67 72 61 6d  20 77 69 6c 6c 20 72 65  | program will re|
00000640  73 69 64 65 20 69 6e 20  77 68 69 6c 65 20 72 75  |side in while ru|
00000650  6e 6e 69 6e 67 2e 20 54  68 65 20 70 72 6f 67 72  |nning. The progr|
00000660  61 6d 20 6e 65 65 64 73  20 35 0d 63 6f 6e 73 65  |am needs 5.conse|
00000670  63 75 74 69 76 65 20 70  61 67 65 73 20 28 20 31  |cutive pages ( 1|
00000680  32 38 30 20 62 79 74 65  73 20 2d 20 6d 61 69 6e  |280 bytes - main|
00000690  6c 79 20 63 68 61 72 61  63 74 65 72 20 64 61 74  |ly character dat|
000006a0  61 20 29 2e 20 41 6e 79  20 66 72 65 65 20 6d 65  |a ). Any free me|
000006b0  6d 6f 72 79 0d 63 61 6e  20 62 65 20 75 73 65 64  |mory.can be used|
000006c0  2e 20 57 68 65 6e 20 65  6e 74 65 72 69 6e 67 20  |. When entering |
000006d0  74 68 69 73 20 61 64 64  72 65 73 73 20 69 74 20  |this address it |
000006e0  6d 75 73 74 20 62 65 20  69 6e 20 68 65 78 20 66  |must be in hex f|
000006f0  6f 72 6d 20 65 2e 67 2e  20 65 6e 74 65 72 0d 32  |orm e.g. enter.2|
00000700  30 34 38 30 20 61 73 20  35 30 30 30 20 6e 6f 74  |0480 as 5000 not|
00000710  20 32 30 34 38 30 20 6f  72 20 65 76 65 6e 20 26  | 20480 or even &|
00000720  35 30 30 30 2e 20 54 68  69 73 20 72 65 73 74 72  |5000. This restr|
00000730  69 63 74 69 6f 6e 20 69  73 20 62 65 63 61 75 73  |iction is becaus|
00000740  65 2c 20 77 68 69 6c 65  0d 42 42 43 20 42 41 53  |e, while.BBC BAS|
00000750  49 43 20 63 61 6e 20 63  6f 6e 76 65 72 74 20 68  |IC can convert h|
00000760  65 78 20 73 74 72 69 6e  67 73 20 74 6f 20 6e 75  |ex strings to nu|
00000770  6d 62 65 72 73 20 69 74  20 63 61 6e 20 6f 6e 6c  |mbers it can onl|
00000780  79 20 63 6f 6e 76 65 72  74 20 6e 75 6d 62 65 72  |y convert number|
00000790  73 0d 74 6f 20 68 65 78  20 73 74 72 69 6e 67 73  |s.to hex strings|
000007a0  20 77 69 74 68 20 74 68  65 20 7e 20 66 75 6e 63  | with the ~ func|
000007b0  74 69 6f 6e 20 20 61 6e  64 20 74 68 65 20 70 72  |tion  and the pr|
000007c0  69 6e 74 20 63 6f 6d 6d  61 6e 64 20 20 73 65 6e  |int command  sen|
000007d0  64 69 6e 67 20 74 68 65  0d 72 65 73 75 6c 74 20  |ding the.result |
000007e0  64 69 72 65 63 74 6c 79  20 74 6f 20 74 68 65 20  |directly to the |
000007f0  73 63 72 65 65 6e 2e 0d  0d 20 53 61 76 65 2f 4c  |screen... Save/L|
00000800  6f 61 64 20 46 6f 6e 74  73 0d 20 20 20 54 68 65  |oad Fonts.   The|
00000810  73 65 20 6f 70 74 69 6f  6e 20 61 6c 6c 6f 77 73  |se option allows|
00000820  20 61 6c 6c 20 74 68 65  20 66 6f 6e 74 73 20 63  | all the fonts c|
00000830  75 72 72 65 6e 74 6c 79  20 69 6e 20 20 75 73 65  |urrently in  use|
00000840  20 20 74 6f 20 20 62 65  20 73 61 76 65 64 20 61  |  to  be saved a|
00000850  6e 64 0d 72 65 6c 6f 61  64 65 64 20 66 72 6f 6d  |nd.reloaded from|
00000860  20 61 20 64 69 73 63 20  66 69 6c 65 2e 0d 0d 20  | a disc file... |
00000870  56 69 65 77 20 46 6f 6e  74 73 0d 20 20 20 20 54  |View Fonts.    T|
00000880  68 69 73 20 6f 70 74 69  6f 6e 20 61 6c 6c 6f 77  |his option allow|
00000890  73 20 61 6c 6c 20 74 68  65 20 66 6f 6e 74 73 20  |s all the fonts |
000008a0  74 6f 20 62 65 20 76 69  65 77 65 64 20 69 6e 20  |to be viewed in |
000008b0  74 75 72 6e 2e 0d 0d 20  54 65 73 74 20 50 72 69  |turn... Test Pri|
000008c0  6e 74 20 43 68 61 72 61  63 74 65 72 0d 20 20 57  |nt Character.  W|
000008d0  68 65 6e 20 73 65 6c 65  63 74 65 64 20 74 68 69  |hen selected thi|
000008e0  73 20 6f 70 74 69 6f 6e  20 77 69 6c 6c 20 70 72  |s option will pr|
000008f0  6f 6d 70 74 20 66 6f 72  20 74 68 65 20 63 68 61  |ompt for the cha|
00000900  72 61 63 74 65 72 20 74  6f 20 62 65 20 74 65 73  |racter to be tes|
00000910  74 65 64 2e 0d 49 74 20  77 69 6c 6c 20 74 68 65  |ted..It will the|
00000920  6e 20 73 65 6e 64 20 31  30 20 6f 66 20 74 68 65  |n send 10 of the|
00000930  6d 2c 20 73 65 70 61 72  61 74 65 64 20 62 79 20  |m, separated by |
00000940  73 70 61 63 65 73 2c 20  74 6f 20 74 68 65 20 70  |spaces, to the p|
00000950  72 69 6e 74 65 72 2e 20  54 68 69 73 0d 6f 70 74  |rinter. This.opt|
00000960  69 6f 6e 20 61 6e 64 20  74 68 65 20 6c 61 73 74  |ion and the last|
00000970  20 61 72 65 20 64 65 73  69 67 6e 65 64 20 74 6f  | are designed to|
00000980  20 68 65 6c 70 20 67 69  76 65 20 61 6e 20 69 64  | help give an id|
00000990  65 61 20 6f 66 20 74 68  65 20 66 69 6e 61 6c 0d  |ea of the final.|
000009a0  6f 76 65 72 61 6c 6c 20  65 66 66 65 63 74 2e 0d  |overall effect..|
000009b0  0d 20 47 69 76 65 20 73  65 74 74 69 6e 67 73 20  |. Give settings |
000009c0  66 6f 72 20 55 44 47 0d  20 20 41 73 20 77 65 6c  |for UDG.  As wel|
000009d0  6c 20 61 73 20 70 72 6f  76 69 64 69 6e 67 20 74  |l as providing t|
000009e0  68 65 20 70 72 69 6e 74  65 72 20 66 6f 6e 74 20  |he printer font |
000009f0  66 75 6e 63 74 69 6f 6e  20 20 74 68 65 20 62 61  |function  the ba|
00000a00  73 69 63 20 70 72 69 6e  63 69 70 6c 65 20 6f 66  |sic principle of|
00000a10  0d 64 65 73 69 67 6e 69  6e 67 20 61 20 66 6f 6e  |.designing a fon|
00000a20  74 20 61 72 65 20 74 68  65 20 73 61 6d 65 20 61  |t are the same a|
00000a30  73 20 64 65 73 69 67 6e  69 6e 67 20 61 20 55 73  |s designing a Us|
00000a40  65 72 20 44 65 66 69 6e  65 64 20 47 72 61 70 68  |er Defined Graph|
00000a50  69 63 20 28 20 55 44 47  0d 29 2e 20 54 68 69 73  |ic ( UDG.). This|
00000a60  20 6f 70 74 69 6f 6e 20  67 69 76 65 73 20 74 68  | option gives th|
00000a70  65 20 56 44 55 20 32 33  20 63 6f 64 65 20 74 68  |e VDU 23 code th|
00000a80  61 74 20 6d 75 73 74 20  62 65 20 69 73 73 75 65  |at must be issue|
00000a90  64 20 66 6f 72 20 74 68  65 0d 73 70 65 63 69 66  |d for the.specif|
00000aa0  69 65 64 20 63 68 61 72  61 63 74 65 72 20 74 6f  |ied character to|
00000ab0  20 62 65 20 67 65 6e 65  72 61 74 65 64 20 61 73  | be generated as|
00000ac0  20 61 20 55 44 47 20 6f  6e 20 61 20 42 42 43 2e  | a UDG on a BBC.|
00000ad0  20 28 20 54 68 65 20 78  20 69 6e 20 74 68 65 0d  | ( The x in the.|
00000ae0  63 6f 6d 6d 61 6e 64 20  73 74 61 6e 64 73 20 66  |command stands f|
00000af0  6f 72 20 77 68 61 74 65  76 65 72 20 55 44 47 20  |or whatever UDG |
00000b00  69 73 20 62 65 69 6e 67  20 64 65 66 69 6e 65 64  |is being defined|
00000b10  20 65 2e 67 2e 20 61 6e  79 20 63 68 61 72 61 63  | e.g. any charac|
00000b20  74 65 72 0d 6e 75 6d 62  65 72 20 64 65 70 65 6e  |ter.number depen|
00000b30  64 69 6e 67 20 6f 6e 20  68 6f 77 20 74 68 65 20  |ding on how the |
00000b40  55 44 47 27 73 20 68 61  76 65 20 62 65 65 6e 20  |UDG's have been |
00000b50  65 78 70 6c 6f 64 65 64  2e 20 29 0d 0d 20 53 65  |exploded. ).. Se|
00000b60  74 20 61 6c 6c 20 43 68  61 72 61 63 74 65 72 73  |t all Characters|
00000b70  20 74 6f 20 44 65 66 61  75 6c 74 0d 20 20 54 68  | to Default.  Th|
00000b80  69 73 20 6f 70 74 69 6f  6e 20 69 73 20 76 65 72  |is option is ver|
00000b90  79 20 75 73 65 66 75 6c  20 77 68 65 6e 20 66 69  |y useful when fi|
00000ba0  72 73 74 20 72 65 64 65  73 69 67 6e 69 6e 67 20  |rst redesigning |
00000bb0  74 68 65 20 63 68 61 72  61 63 74 65 72 20 73 65  |the character se|
00000bc0  74 2e 20 49 74 0d 73 69  6d 70 6c 79 20 73 65 74  |t. It.simply set|
00000bd0  73 20 65 76 65 72 79 20  63 68 61 72 61 63 74 65  |s every characte|
00000be0  72 20 28 20 41 53 43 49  49 20 33 32 20 74 6f 20  |r ( ASCII 32 to |
00000bf0  31 32 36 20 29 20 74 6f  20 74 68 65 69 72 20 64  |126 ) to their d|
00000c00  65 66 61 75 6c 74 20 73  65 74 74 69 6e 67 73 0d  |efault settings.|
00000c10  65 2e 67 2e 20 68 6f 77  20 74 68 65 20 42 42 43  |e.g. how the BBC|
00000c20  20 64 65 66 69 6e 65 73  20 74 68 65 6d 2e 20 4e  | defines them. N|
00000c30  4f 54 45 3a 20 74 68 65  73 65 20 77 69 6c 6c 20  |OTE: these will |
00000c40  6e 6f 74 20 62 65 20 74  68 65 20 73 61 6d 65 20  |not be the same |
00000c50  61 73 20 74 68 65 0d 70  72 69 6e 74 65 72 20 73  |as the.printer s|
00000c60  69 6e 63 65 20 65 61 63  68 20 70 72 69 6e 74 65  |ince each printe|
00000c70  72 20 68 61 73 20 69 74  27 73 20 6f 77 6e 20 64  |r has it's own d|
00000c80  65 66 69 6e 69 74 69 6f  6e 73 20 6f 66 20 65 61  |efinitions of ea|
00000c90  63 68 20 63 68 61 72 61  63 74 65 72 2e 0d 53 6f  |ch character..So|
00000ca0  6d 65 20 70 72 69 6e 74  65 72 20 6d 61 6e 75 61  |me printer manua|
00000cb0  6c 73 20 6c 69 73 74 20  74 68 65 20 64 65 66 69  |ls list the defi|
00000cc0  6e 69 74 69 6f 6e 73 20  75 73 65 64 20 62 79 20  |nitions used by |
00000cd0  74 68 65 20 70 72 69 6e  74 65 72 2e 0d 0d 20 2a  |the printer... *|
00000ce0  43 6f 6d 6d 61 6e 64 0d  20 20 20 41 6c 74 68 6f  |Command.   Altho|
00000cf0  75 67 68 20 6e 6f 74 20  6c 69 73 74 65 64 20 6f  |ugh not listed o|
00000d00  6e 20 74 68 65 20 6d 65  6e 75 2c 20 74 79 70 69  |n the menu, typi|
00000d10  6e 67 20 2a 20 61 74 20  74 68 65 20 6d 65 6e 75  |ng * at the menu|
00000d20  20 77 69 6c 6c 20 61 6c  6c 6f 77 20 61 6e 79 20  | will allow any |
00000d30  2a 0d 63 6f 6d 6d 61 6e  64 20 74 6f 20 62 65 20  |*.command to be |
00000d40  69 73 73 75 65 64 2e 0d  0d 20 45 64 69 74 20 46  |issued... Edit F|
00000d50  6f 6e 74 73 0d 20 20 49  20 68 61 76 65 20 6c 65  |onts.  I have le|
00000d60  66 74 20 74 68 69 73 20  6f 70 74 69 6f 6e 20 74  |ft this option t|
00000d70  6f 20 6c 61 73 74 20 62  65 63 61 75 73 65 20 69  |o last because i|
00000d80  74 20 69 73 20 74 68 65  20 6d 6f 73 74 20 63 6f  |t is the most co|
00000d90  6d 70 6c 69 63 61 74 65  64 2e 0d 4f 6e 63 65 20  |mplicated..Once |
00000da0  73 65 6c 65 63 74 65 64  20 74 68 65 20 70 72 6f  |selected the pro|
00000db0  67 72 61 6d 20 77 69 6c  6c 20 70 72 6f 6d 70 74  |gram will prompt|
00000dc0  20 66 6f 72 20 61 20 63  68 61 72 61 63 74 65 72  | for a character|
00000dd0  2e 20 41 73 20 77 69 74  68 20 74 68 65 20 6f 74  |. As with the ot|
00000de0  68 65 72 0d 6f 70 74 69  6f 6e 73 20 77 68 69 63  |her.options whic|
00000df0  68 20 70 72 6f 6d 70 74  20 66 6f 72 20 61 20 63  |h prompt for a c|
00000e00  68 61 72 61 63 74 65 72  20 79 6f 75 20 63 61 6e  |haracter you can|
00000e10  20 65 6e 74 65 72 20 74  68 65 20 63 68 61 72 61  | enter the chara|
00000e20  63 74 65 72 20 64 69 72  65 63 74 6c 79 0d 66 72  |cter directly.fr|
00000e30  6f 6d 20 74 68 65 20 6b  65 79 62 6f 61 72 64 20  |om the keyboard |
00000e40  62 79 20 70 72 65 73 73  69 6e 67 20 69 74 20 6f  |by pressing it o|
00000e50  6e 20 74 68 65 20 6b 65  79 62 6f 61 72 64 20 61  |n the keyboard a|
00000e60  6e 64 20 74 68 65 6e 20  52 45 54 55 52 4e 2e 20  |nd then RETURN. |
00000e70  49 66 2c 0d 68 6f 77 65  76 65 72 2c 20 79 6f 75  |If,.however, you|
00000e80  20 70 72 65 66 65 72 2c  20 70 72 65 73 73 69 6e  | prefer, pressin|
00000e90  67 20 52 45 54 55 52 4e  20 6f 6e 20 69 74 73 20  |g RETURN on its |
00000ea0  6f 77 6e 20 77 69 6c 6c  20 70 72 6f 6d 70 74 20  |own will prompt |
00000eb0  66 6f 72 20 74 68 65 20  41 53 43 49 49 0d 63 6f  |for the ASCII.co|
00000ec0  64 65 20 66 6f 72 20 74  68 65 20 63 68 61 72 61  |de for the chara|
00000ed0  63 74 65 72 2e 0d 20 20  4f 6e 63 65 20 74 68 65  |cter..  Once the|
00000ee0  20 63 6f 64 65 20 69 73  20 73 65 6c 65 63 74 65  | code is selecte|
00000ef0  64 20 74 68 65 20 70 72  6f 67 72 61 6d 20 70 72  |d the program pr|
00000f00  6f 64 75 63 65 73 20 61  6e 20 38 20 62 79 20 38  |oduces an 8 by 8|
00000f10  20 67 72 69 64 20 6f 6e  20 77 68 69 63 68 0d 74  | grid on which.t|
00000f20  68 65 20 63 68 61 72 61  63 74 65 72 20 69 73 20  |he character is |
00000f30  64 69 73 70 6c 61 79 65  64 20 20 63 6c 65 61 72  |displayed  clear|
00000f40  6c 79 2e 20 20 4f 6e 20  20 74 68 69 73 20 67 72  |ly.  On  this gr|
00000f50  69 64 20 69 73 20 70 6c  61 63 65 64 20 61 20 63  |id is placed a c|
00000f60  72 6f 73 73 20 74 6f 0d  68 65 6c 70 20 77 69 74  |ross to.help wit|
00000f70  68 20 61 6c 74 65 72 69  6e 67 20 74 68 65 20 63  |h altering the c|
00000f80  68 61 72 61 63 74 65 72  2e 20 54 6f 20 74 68 65  |haracter. To the|
00000f90  20 6c 65 66 74 20 6f 66  20 74 68 65 20 67 72 69  | left of the gri|
00000fa0  64 20 61 72 65 20 64 65  74 61 69 6c 73 20 74 68  |d are details th|
00000fb0  65 0d 63 72 6f 73 73 27  73 20 70 6f 73 69 74 69  |e.cross's positi|
00000fc0  6f 6e 2c 20 74 68 65 20  63 68 61 72 61 63 74 65  |on, the characte|
00000fd0  72 20 62 65 69 6e 67 20  65 64 69 74 65 64 20 61  |r being edited a|
00000fe0  6e 64 20 68 6f 77 20 74  68 65 20 63 68 61 72 61  |nd how the chara|
00000ff0  63 74 65 72 0d 63 75 72  72 65 6e 74 6c 79 20 6c  |cter.currently l|
00001000  6f 6f 6b 73 20 61 73 20  61 20 55 44 47 2e 0d 20  |ooks as a UDG.. |
00001010  20 20 54 68 65 20 63 72  6f 73 73 20 63 61 6e 20  |  The cross can |
00001020  62 65 20 6d 6f 76 65 64  20 62 79 20 70 72 65 73  |be moved by pres|
00001030  73 69 6e 67 20 74 68 65  20 61 70 70 72 6f 70 72  |sing the appropr|
00001040  69 61 74 65 20 63 75 72  73 6f 72 20 6b 65 79 20  |iate cursor key |
00001050  74 6f 20 6d 6f 76 65 0d  74 68 65 20 63 72 6f 73  |to move.the cros|
00001060  73 20 61 6e 64 20 70 72  65 73 73 69 6e 67 20 52  |s and pressing R|
00001070  45 54 55 52 4e 20 74 6f  20 74 6f 67 67 6c 65 20  |ETURN to toggle |
00001080  74 68 65 20 73 71 75 61  72 65 20 62 65 74 77 65  |the square betwe|
00001090  65 6e 20 6f 6e 65 20 61  6e 64 20 6f 66 66 2e 0d  |en one and off..|
000010a0  41 73 20 77 65 6c 6c 20  61 73 20 74 68 69 73 20  |As well as this |
000010b0  74 68 65 20 66 75 6e 63  74 69 6f 6e 20 6b 65 79  |the function key|
000010c0  73 20 61 6c 6c 6f 77 20  6d 6f 72 65 20 6f 70 74  |s allow more opt|
000010d0  69 6f 6e 20 74 6f 20 62  65 20 73 65 6c 65 63 74  |ion to be select|
000010e0  65 64 2e 0d 0d 20 20 20  20 46 75 6e 63 74 69 6f  |ed...    Functio|
000010f0  6e 20 4b 65 79 20 20 20  20 4e 6f 72 6d 61 6c 20  |n Key    Normal |
00001100  41 63 74 69 6f 6e 20 20  20 20 20 20 20 20 20 20  |Action          |
00001110  53 68 69 66 74 65 64 20  61 63 74 69 6f 6e 0d 0d  |Shifted action..|
00001120  20 20 20 20 20 20 20 66  30 20 20 20 20 20 20 20  |       f0       |
00001130  20 20 20 20 20 43 6c 65  61 72 20 47 72 69 64 20  |     Clear Grid |
00001140  20 20 20 20 20 20 20 20  20 20 20 20 49 6e 76 65  |            Inve|
00001150  72 73 65 20 47 72 69 64  0d 0d 20 20 20 20 20 20  |rse Grid..      |
00001160  20 66 31 20 20 20 20 20  20 20 20 20 20 20 20 46  | f1            F|
00001170  69 6c 6c 20 47 72 69 64  20 20 20 20 20 20 20 20  |ill Grid        |
00001180  20 20 20 20 20 20 43 68  61 6e 67 65 20 43 75 72  |      Change Cur|
00001190  72 65 6e 74 0d 20 20 20  20 20 20 20 20 20 20 20  |rent.           |
000011a0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
*
000011c0  20 63 68 61 72 61 63 74  65 72 0d 0d 20 20 20 20  | character..    |
000011d0  20 20 20 66 32 20 20 20  20 20 20 20 20 20 20 20  |   f2           |
000011e0  20 56 65 72 74 69 63 61  6c 20 46 69 6c 6c 20 20  | Vertical Fill  |
000011f0  20 20 20 20 20 20 20 20  56 65 72 74 69 63 61 6c  |        Vertical|
00001200  20 43 6c 65 61 72 0d 0d  20 20 20 20 20 20 20 66  | Clear..       f|
00001210  33 20 20 20 20 20 20 20  20 20 20 20 20 48 6f 72  |3            Hor|
00001220  69 7a 6f 6e 74 61 6c 20  46 69 6c 6c 20 20 20 20  |izontal Fill    |
00001230  20 20 20 20 48 6f 72 69  7a 6f 6e 74 61 6c 20 43  |    Horizontal C|
00001240  6c 65 61 72 0d 0d 20 20  20 20 20 20 20 66 34 20  |lear..       f4 |
00001250  20 20 20 20 20 20 20 20  20 20 20 52 65 73 74 6f  |           Resto|
00001260  72 65 20 44 65 66 61 75  6c 74 20 20 20 20 20 20  |re Default      |
00001270  20 20 53 65 74 20 63 75  72 72 65 6e 74 20 63 68  |  Set current ch|
00001280  61 72 61 63 74 65 72 0d  20 20 20 20 20 20 20 20  |aracter.        |
00001290  20 20 20 20 20 20 20 20  20 20 20 20 20 73 65 74  |             set|
000012a0  74 69 6e 67 20 6f 66 20  20 20 20 20 20 20 20 20  |ting of         |
000012b0  20 20 20 20 74 6f 20 64  65 66 61 75 6c 74 20 73  |    to default s|
000012c0  65 74 74 69 6e 67 20 6f  66 0d 20 20 20 20 20 20  |etting of.      |
000012d0  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 63  |               c|
000012e0  68 61 72 61 63 74 65 72  20 20 20 20 20 20 20 20  |haracter        |
000012f0  20 20 20 20 20 20 61 6e  6f 74 68 65 72 20 63 68  |      another ch|
00001300  61 72 61 63 74 65 72 0d  0d 20 20 20 20 20 20 20  |aracter..       |
00001310  66 35 20 20 20 20 20 20  20 20 20 20 20 20 43 6f  |f5            Co|
00001320  70 79 20 63 75 72 72 65  6e 74 20 20 20 20 20 20  |py current      |
00001330  20 20 20 20 20 53 77 61  70 20 63 75 72 72 65 6e  |     Swap curren|
00001340  74 20 63 68 61 72 61 63  74 65 72 0d 20 20 20 20  |t character.    |
00001350  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001360  20 63 68 61 72 61 63 74  65 72 20 74 6f 20 20 20  | character to   |
00001370  20 20 20 20 20 20 20 20  77 69 74 68 20 61 6e 6f  |        with ano|
00001380  74 68 65 72 0d 20 20 20  20 20 20 20 20 20 20 20  |ther.           |
00001390  20 20 20 20 20 20 20 20  20 20 61 6e 6f 74 68 65  |          anothe|
000013a0  72 20 63 68 61 72 61 63  74 65 72 20 20 20 20 20  |r character     |
000013b0  20 63 68 61 72 61 63 74  65 72 0d 0d 20 20 20 20  | character..    |
000013c0  20 20 20 66 36 20 20 20  20 20 20 20 20 20 20 20  |   f6           |
000013d0  20 43 6f 70 79 20 61 6e  6f 74 68 65 72 20 20 20  | Copy another   |
000013e0  20 20 20 20 20 20 20 20  41 63 74 69 76 61 74 65  |        Activate|
000013f0  20 50 72 69 6e 74 65 72  0d 20 20 20 20 20 20 20  | Printer.       |
00001400  20 20 20 20 20 20 20 20  20 20 20 20 20 20 63 68  |              ch|
00001410  61 72 61 63 74 65 72 20  74 6f 20 74 68 65 20 20  |aracter to the  |
00001420  20 20 20 20 20 44 75 6d  70 20 20 20 2a 0d 20 20  |     Dump   *.  |
00001430  20 20 20 20 20 20 20 20  20 20 20 20 20 20 20 20  |                |
00001440  20 20 20 74 68 65 20 63  75 72 72 65 6e 74 20 63  |   the current c|
00001450  68 61 72 61 63 74 65 72  0d 0d 20 20 20 20 20 20  |haracter..      |
00001460  20 66 37 20 20 20 20 20  20 20 20 20 20 20 20 56  | f7            V|
00001470  65 72 74 69 63 61 6c 20  49 6e 76 65 72 73 65 20  |ertical Inverse |
00001480  20 20 20 20 20 20 56 65  72 74 69 61 6c 20 52 65  |      Vertial Re|
00001490  76 65 72 73 65 0d 0d 20  20 20 20 20 20 20 66 38  |verse..       f8|
000014a0  20 20 20 20 20 20 20 20  20 20 20 20 48 6f 72 69  |            Hori|
000014b0  7a 6f 6e 74 61 6c 20 49  6e 76 65 72 73 65 20 20  |zontal Inverse  |
000014c0  20 20 20 48 6f 72 69 7a  6f 6e 74 61 6c 20 52 65  |   Horizontal Re|
000014d0  76 65 72 73 65 0d 0d 20  20 20 20 20 20 20 66 39  |verse..       f9|
000014e0  20 20 20 20 20 20 20 20  20 20 20 20 45 78 69 74  |            Exit|
000014f0  20 74 6f 20 4d 65 6e 75  20 20 20 20 20 20 20 20  | to Menu        |
00001500  20 20 20 46 6c 69 70 20  63 68 61 72 61 63 74 65  |   Flip characte|
00001510  72 0d 0d 20 20 2a 20 59  6f 75 20 77 69 6c 6c 20  |r..  * You will |
00001520  68 61 76 65 20 74 6f 20  69 6e 73 65 72 74 20 79  |have to insert y|
00001530  6f 75 20 6f 77 6e 20 70  72 69 6e 74 65 72 20 64  |ou own printer d|
00001540  75 6d 70 20 70 72 6f 67  72 61 6d 20 61 74 20 74  |ump program at t|
00001550  68 65 20 76 65 72 79 20  65 6e 64 0d 6f 66 20 74  |he very end.of t|
00001560  68 65 20 70 72 6f 67 72  61 6d 20 65 2e 67 2e 20  |he program e.g. |
00001570  6d 79 20 6f 77 6e 20 50  72 69 6e 74 65 72 20 44  |my own Printer D|
00001580  75 6d 70 20 50 72 6f 67  72 61 6d 20 28 20 50 44  |ump Program ( PD|
00001590  50 20 29 20 6f 72 20 69  74 27 73 20 63 6c 6f 73  |P ) or it's clos|
000015a0  65 0d 72 65 6c 61 74 69  76 65 20 50 72 69 6e 74  |e.relative Print|
000015b0  65 72 20 44 75 6d 70 20  52 4f 4d 20 28 20 50 44  |er Dump ROM ( PD|
000015c0  52 20 29 20 77 68 69 63  68 20 68 61 76 65 20 61  |R ) which have a|
000015d0  6c 72 65 61 64 79 20 62  65 65 6e 20 62 72 6f 61  |lready been broa|
000015e0  64 63 61 73 74 20 62 79  0d 43 65 65 66 61 78 2e  |dcast by.Ceefax.|
000015f0  0d 0d 20 20 20 41 73 20  77 65 6c 6c 20 61 73 20  |..   As well as |
00001600  6d 6f 76 69 6e 67 20 74  68 65 20 63 72 6f 73 73  |moving the cross|
00001610  20 70 72 65 73 73 69 6e  67 20 6f 6e 65 20 6f 66  | pressing one of|
00001620  20 74 68 65 20 63 75 72  73 6f 72 20 6b 65 79 73  | the cursor keys|
00001630  20 77 68 69 6c 65 0d 68  6f 6c 64 69 6e 67 20 53  | while.holding S|
00001640  48 49 46 54 20 64 6f 77  6e 20 77 69 6c 6c 20 61  |HIFT down will a|
00001650  6c 6c 6f 77 20 74 68 65  20 63 68 61 72 61 63 74  |llow the charact|
00001660  65 72 20 6f 6e 20 74 68  65 20 67 72 69 64 20 74  |er on the grid t|
00001670  6f 20 6d 65 20 6d 6f 76  65 64 20 75 70 2c 0d 64  |o me moved up,.d|
00001680  6f 77 6e 2c 20 6c 65 66  74 20 61 6e 64 20 72 69  |own, left and ri|
00001690  67 68 74 2e 0d 20 20 20  49 20 20 68 6f 70 65 20  |ght..   I  hope |
000016a0  74 68 65 20 20 66 75 6e  63 74 69 6f 6e 73 20 20  |the  functions  |
000016b0  70 72 6f 76 69 64 65 64  20 20 61 72 65 20 20 63  |provided  are  c|
000016c0  6f 6d 70 72 65 68 65 6e  73 69 76 65 20 20 65 6e  |omprehensive  en|
000016d0  6f 75 67 68 20 77 69 74  68 6f 75 74 0d 62 65 69  |ough without.bei|
000016e0  6e 67 20 74 6f 6f 20 6e  75 6d 65 72 6f 75 73 20  |ng too numerous |
000016f0  61 6e 64 20 64 69 76 65  72 67 65 6e 74 20 74 6f  |and divergent to|
00001700  20 75 6e 64 65 72 73 74  61 6e 64 2e 20 53 6f 6d  | understand. Som|
00001710  65 20 65 78 70 65 72 69  6d 65 6e 74 61 74 69 6f  |e experimentatio|
00001720  6e 20 77 69 6c 6c 0d 70  72 6f 62 61 62 6c 79 20  |n will.probably |
00001730  62 65 20 6e 65 65 64 65  64 20 62 65 66 6f 72 65  |be needed before|
00001740  20 61 6e 79 20 22 6d 61  6a 6f 72 20 77 6f 72 6b  | any "major work|
00001750  73 22 20 63 61 6e 20 62  65 20 70 72 6f 64 75 63  |s" can be produc|
00001760  65 64 2e 0d                                       |ed..|
00001764
18-03-89/E\Info.m0
18-03-89/E\Info.m1
18-03-89/E\Info.m2
18-03-89/E\Info.m4
18-03-89/E\Info.m5