Home » Archimedes archive » Acorn Computing » 1994 11 subscription disc.adf » 9411s » FontMgr2/!FontMGR2/TechText/FontPath

FontMgr2/!FontMGR2/TechText/FontPath

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 » Archimedes archive » Acorn Computing » 1994 11 subscription disc.adf » 9411s
Filename: FontMgr2/!FontMGR2/TechText/FontPath
Read OK:
File size: 041C bytes
Load address: 0000
Exec address: 0000
File contents
!FontManager and how it changes Font$Path
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

-----------------------------------------------

When EXTENDED PATHS is ON
~~~~~~~~~~~~~~~~~~~~~~~~~

This creates a number of system variables

<Za$Path>, <Zb$Path>, <Zc$Path> etc...

each of these system variables is a macro, and
it holds the pathname of a group.

<F$Dir>.Symbols, <F$Dir>.SanSerifs

You may have noticed that the first paths are
shorter and that in fact they can be
represented by an even shorter notation:

Za:, Zb:, Zc:

So, written to <Font$Path> is Za:,Zb:,Zc: and
so more groups can fit into the 256bytes that
are avaiable.

-----------------------------------------------

With EXTENDED PATHS turned OFF.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

This simply writes the paths into <Font$Path>

Resources:$.Fonts.,<F$Dir>.SanSerif., <F$Dir>.
Roman.,<F$Dir>.Old.

So you can see how 256 bytes can be eaten up
*VERY* quickly.  This is the reason why I
strongly reccomend that EXTENDED PATHS be
left on.

-----------------------------------------------

00000000  21 46 6f 6e 74 4d 61 6e  61 67 65 72 20 61 6e 64  |!FontManager and|
00000010  20 68 6f 77 20 69 74 20  63 68 61 6e 67 65 73 20  | how it changes |
00000020  46 6f 6e 74 24 50 61 74  68 0a 7e 7e 7e 7e 7e 7e  |Font$Path.~~~~~~|
00000030  7e 7e 7e 7e 7e 7e 7e 7e  7e 7e 7e 7e 7e 7e 7e 7e  |~~~~~~~~~~~~~~~~|
*
00000050  7e 7e 7e 0a 0a 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |~~~..-----------|
00000060  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00000080  2d 2d 2d 2d 0a 0a 57 68  65 6e 20 45 58 54 45 4e  |----..When EXTEN|
00000090  44 45 44 20 50 41 54 48  53 20 69 73 20 4f 4e 0a  |DED PATHS is ON.|
000000a0  7e 7e 7e 7e 7e 7e 7e 7e  7e 7e 7e 7e 7e 7e 7e 7e  |~~~~~~~~~~~~~~~~|
000000b0  7e 7e 7e 7e 7e 7e 7e 7e  7e 0a 0a 54 68 69 73 20  |~~~~~~~~~..This |
000000c0  63 72 65 61 74 65 73 20  61 20 6e 75 6d 62 65 72  |creates a number|
000000d0  20 6f 66 20 73 79 73 74  65 6d 20 76 61 72 69 61  | of system varia|
000000e0  62 6c 65 73 0a 0a 3c 5a  61 24 50 61 74 68 3e 2c  |bles..<Za$Path>,|
000000f0  20 3c 5a 62 24 50 61 74  68 3e 2c 20 3c 5a 63 24  | <Zb$Path>, <Zc$|
00000100  50 61 74 68 3e 20 65 74  63 2e 2e 2e 0a 0a 65 61  |Path> etc.....ea|
00000110  63 68 20 6f 66 20 74 68  65 73 65 20 73 79 73 74  |ch of these syst|
00000120  65 6d 20 76 61 72 69 61  62 6c 65 73 20 69 73 20  |em variables is |
00000130  61 20 6d 61 63 72 6f 2c  20 61 6e 64 0a 69 74 20  |a macro, and.it |
00000140  68 6f 6c 64 73 20 74 68  65 20 70 61 74 68 6e 61  |holds the pathna|
00000150  6d 65 20 6f 66 20 61 20  67 72 6f 75 70 2e 0a 0a  |me of a group...|
00000160  3c 46 24 44 69 72 3e 2e  53 79 6d 62 6f 6c 73 2c  |<F$Dir>.Symbols,|
00000170  20 3c 46 24 44 69 72 3e  2e 53 61 6e 53 65 72 69  | <F$Dir>.SanSeri|
00000180  66 73 0a 0a 59 6f 75 20  6d 61 79 20 68 61 76 65  |fs..You may have|
00000190  20 6e 6f 74 69 63 65 64  20 74 68 61 74 20 74 68  | noticed that th|
000001a0  65 20 66 69 72 73 74 20  70 61 74 68 73 20 61 72  |e first paths ar|
000001b0  65 0a 73 68 6f 72 74 65  72 20 61 6e 64 20 74 68  |e.shorter and th|
000001c0  61 74 20 69 6e 20 66 61  63 74 20 74 68 65 79 20  |at in fact they |
000001d0  63 61 6e 20 62 65 0a 72  65 70 72 65 73 65 6e 74  |can be.represent|
000001e0  65 64 20 62 79 20 61 6e  20 65 76 65 6e 20 73 68  |ed by an even sh|
000001f0  6f 72 74 65 72 20 6e 6f  74 61 74 69 6f 6e 3a 0a  |orter notation:.|
00000200  0a 5a 61 3a 2c 20 5a 62  3a 2c 20 5a 63 3a 0a 0a  |.Za:, Zb:, Zc:..|
00000210  53 6f 2c 20 77 72 69 74  74 65 6e 20 74 6f 20 3c  |So, written to <|
00000220  46 6f 6e 74 24 50 61 74  68 3e 20 69 73 20 5a 61  |Font$Path> is Za|
00000230  3a 2c 5a 62 3a 2c 5a 63  3a 20 61 6e 64 0a 73 6f  |:,Zb:,Zc: and.so|
00000240  20 6d 6f 72 65 20 67 72  6f 75 70 73 20 63 61 6e  | more groups can|
00000250  20 66 69 74 20 69 6e 74  6f 20 74 68 65 20 32 35  | fit into the 25|
00000260  36 62 79 74 65 73 20 74  68 61 74 0a 61 72 65 20  |6bytes that.are |
00000270  61 76 61 69 61 62 6c 65  2e 0a 0a 2d 2d 2d 2d 2d  |avaiable...-----|
00000280  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
000002a0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 0a 0a 57 69 74 68  |----------..With|
000002b0  20 45 58 54 45 4e 44 45  44 20 50 41 54 48 53 20  | EXTENDED PATHS |
000002c0  74 75 72 6e 65 64 20 4f  46 46 2e 0a 7e 7e 7e 7e  |turned OFF..~~~~|
000002d0  7e 7e 7e 7e 7e 7e 7e 7e  7e 7e 7e 7e 7e 7e 7e 7e  |~~~~~~~~~~~~~~~~|
000002e0  7e 7e 7e 7e 7e 7e 7e 7e  7e 7e 7e 0a 0a 54 68 69  |~~~~~~~~~~~..Thi|
000002f0  73 20 73 69 6d 70 6c 79  20 77 72 69 74 65 73 20  |s simply writes |
00000300  74 68 65 20 70 61 74 68  73 20 69 6e 74 6f 20 3c  |the paths into <|
00000310  46 6f 6e 74 24 50 61 74  68 3e 0a 0a 52 65 73 6f  |Font$Path>..Reso|
00000320  75 72 63 65 73 3a 24 2e  46 6f 6e 74 73 2e 2c 3c  |urces:$.Fonts.,<|
00000330  46 24 44 69 72 3e 2e 53  61 6e 53 65 72 69 66 2e  |F$Dir>.SanSerif.|
00000340  2c 20 3c 46 24 44 69 72  3e 2e 0a 52 6f 6d 61 6e  |, <F$Dir>..Roman|
00000350  2e 2c 3c 46 24 44 69 72  3e 2e 4f 6c 64 2e 0a 0a  |.,<F$Dir>.Old...|
00000360  53 6f 20 79 6f 75 20 63  61 6e 20 73 65 65 20 68  |So you can see h|
00000370  6f 77 20 32 35 36 20 62  79 74 65 73 20 63 61 6e  |ow 256 bytes can|
00000380  20 62 65 20 65 61 74 65  6e 20 75 70 0a 2a 56 45  | be eaten up.*VE|
00000390  52 59 2a 20 71 75 69 63  6b 6c 79 2e 20 20 54 68  |RY* quickly.  Th|
000003a0  69 73 20 69 73 20 74 68  65 20 72 65 61 73 6f 6e  |is is the reason|
000003b0  20 77 68 79 20 49 0a 73  74 72 6f 6e 67 6c 79 20  | why I.strongly |
000003c0  72 65 63 63 6f 6d 65 6e  64 20 74 68 61 74 20 45  |reccomend that E|
000003d0  58 54 45 4e 44 45 44 20  50 41 54 48 53 20 62 65  |XTENDED PATHS be|
000003e0  0a 6c 65 66 74 20 6f 6e  2e 0a 0a 2d 2d 2d 2d 2d  |.left on...-----|
000003f0  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 2d 2d 2d 2d 2d 2d  |----------------|
*
00000410  2d 2d 2d 2d 2d 2d 2d 2d  2d 2d 0a 0a              |----------..|
0000041c