diff --git a/sources/FONT b/sources/FONT
index e5ea0bb5..127082ce 100644
--- a/sources/FONT
+++ b/sources/FONT
@@ -1,11 +1,11 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED " 6-Nov-2025 13:54:22" {WMEDLEY}<sources>FONT.;623 285863 
+(FILECREATED " 7-Nov-2025 11:53:58" {WMEDLEY}<sources>FONT.;626 286841 
 
       :EDIT-BY rmk
 
       :CHANGES-TO (VARS FONTCOMS)
-                  (FNS FONTSAVAILABLE)
+                  (FNS MAKEFONTFACE MAKEFONTSPEC FONTSAVAILABLE)
 
       :PREVIOUS-DATE "20-Oct-2025 09:54:15" {WMEDLEY}<sources>FONT.;622)
 
@@ -67,6 +67,8 @@
              )
         (FNS MATCHFONTFACE MAKEFONTFACE FONTFACETOATOM)
         (INITVARS \FONTSINCORE \FONTEXISTS?-CACHE \FONTSAVAILABLEFILECACHE \DEFAULTDEVICEFONTS)
+        (ADDVARS (MEDLEY-INIT-VARS (\FONTEXISTS?-CACHE)
+                        (\FONTSAVAILABLEFILECACHE)))
         [COMS (GLOBALVARS \DEFAULTDEVICEFONTS \UNITWIDTHSVECTOR)
               (INITVARS \UNITWIDTHSVECTOR)
               (FNS \UNITWIDTHSVECTOR)
@@ -1091,17 +1093,22 @@
 (DEFINEQ
 
 (MAKEFONTSPEC
-  [LAMBDA (FAMILY SIZE FACE ROTATION DEVICE)                 (* ; "Edited 28-Aug-2025 14:32 by rmk")
+  [LAMBDA (FAMILY SIZE FACE ROTATION DEVICE BASE)            (* ; "Edited  7-Nov-2025 07:52 by rmk")
+                                                             (* ; "Edited 28-Aug-2025 14:32 by rmk")
                                                              (* ; "Edited 17-Aug-2025 20:44 by rmk")
 
     (* ;; "This is a function, not a macro, so that it can be used in the loadup sequence to create the FONTSPEC for the \GUARANTEEDDISPLAYFONT.  That font is created by \CREATEFONT and therefore is not dependent on \FONT.CHECKARGS or on the multi-alist multi-key indexing functions.  The strategy might change if MULTI-ALIST is moved earlier in the loadup sequence.")
 
+    (* ;; "BASE (fontspec or font) provides defaults for NIL arguments, essentialy models a (create using BASE...)")
+
+    (CL:WHEN (FONTP BASE)
+        (SETQ BASE (FONTPROP BASE 'SPEC)))
     (create FONTSPEC
-           FSFAMILY _ FAMILY
-           FSSIZE _ SIZE
-           FSFACE _ FACE
-           FSROTATION _ ROTATION
-           FSDEVICE _ DEVICE])
+           FSFAMILY _ (OR FAMILY (fetch (FONTSPEC FSFAMILY) of BASE))
+           FSSIZE _ (OR SIZE (fetch (FONTSPEC FSSIZE) of BASE))
+           FSFACE _ (OR FACE (fetch (FONTSPEC FSFACE) of BASE))
+           FSROTATION _ (OR ROTATION (fetch (FONTSPEC FSROTATION) of BASE))
+           FSDEVICE _ (OR DEVICE (fetch (FONTSPEC FSDEVICE) of BASE])
 )
 (DEFINEQ
 
@@ -3110,7 +3117,10 @@
                       (EQ PEXPANSION '*])
 
 (MAKEFONTFACE
-  [LAMBDA (WEIGHT SLOPE EXPANSION BASE COLOR)                (* ; "Edited 30-Aug-2025 10:22 by rmk")
+  [LAMBDA (WEIGHT SLOPE EXPANSION BASE COLOR)                (* ; "Edited  7-Nov-2025 08:50 by rmk")
+                                                             (* ; "Edited 30-Aug-2025 10:22 by rmk")
+    (CL:WHEN (FONTP BASE)
+        (SETQ BASE (FONTPROP BASE 'FACE)))
     (CL:UNLESS WEIGHT
         (SETQ WEIGHT (CL:IF BASE
                          (fetch (FONTFACE WEIGHT) of BASE)
@@ -3172,6 +3182,9 @@
 (RPAQ? \FONTSAVAILABLEFILECACHE NIL)
 
 (RPAQ? \DEFAULTDEVICEFONTS NIL)
+
+(ADDTOVAR MEDLEY-INIT-VARS (\FONTEXISTS?-CACHE)
+                           (\FONTSAVAILABLEFILECACHE))
 (DECLARE%: DOEVAL@COMPILE DONTCOPY
 
 (GLOBALVARS \DEFAULTDEVICEFONTS \UNITWIDTHSVECTOR)
@@ -4654,44 +4667,44 @@
 (ADDTOVAR LAMA FONTCOPY)
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (12098 21811 (CHARWIDTH 12108 . 12893) (CHARWIDTHY 12895 . 14412) (STRINGWIDTH 14414 . 
-15507) (\CHARWIDTH.DISPLAY 15509 . 15922) (\STRINGWIDTH.DISPLAY 15924 . 16348) (\STRINGWIDTH.GENERIC 
-16350 . 21809)) (21812 28332 (DEFAULTFONT 21822 . 23107) (FONTCLASS 23109 . 25271) (FONTCLASSUNPARSE 
-25273 . 26172) (FONTCLASSCOMPONENT 26174 . 26762) (SETFONTCLASSCOMPONENT 26764 . 27206) (
-GETFONTCLASSCOMPONENT 27208 . 28330)) (30011 54392 (FONTCREATE 30021 . 33266) (FONTCREATE1 33268 . 
-35883) (FONTCREATE.SLUGFD 35885 . 37367) (\FONT.CHECKARGS 37369 . 43959) (\FONT.CHECKARGS1 43961 . 
-48484) (\FONTCREATE1.NOFN 48486 . 48700) (FONTFILEP 48702 . 49590) (\READCHARSET 49592 . 54390)) (
-54393 61310 (\FONT.CHECKARGS 54403 . 60993) (\CHARSET.CHECK 60995 . 61308)) (61311 64394 (
-COERCEFONTSPEC 61321 . 64392)) (66464 67254 (MAKEFONTSPEC 66474 . 67252)) (67255 75432 (COMPLETE.FONT 
-67265 . 69788) (COMPLETEFONTP 69790 . 70413) (COMPLETE.CHARSET 70415 . 73100) (PRUNESLUGCSINFOS 73102
- . 74027) (MONOSPACEFONTP 74029 . 75430)) (75471 83392 (FONTASCENT 75481 . 75865) (FONTDESCENT 75867
- . 76352) (FONTHEIGHT 76354 . 76756) (FONTPROP 76758 . 82669) (\AVGCHARWIDTH 82671 . 83390)) (84049 
-84957 (FONTDEVICEPROP 84059 . 84955)) (85003 85857 (EDITCHAR 85013 . 85855)) (85903 98093 (
-GETCHARBITMAP 85913 . 87037) (PUTCHARBITMAP 87039 . 89197) (\GETCHARBITMAP.CSINFO 89199 . 91215) (
-\PUTCHARBITMAP.CSINFO 91217 . 98091)) (98094 118574 (MOVECHARBITMAP 98104 . 99998) (MOVEFONTCHARS 
-100000 . 103960) (\MOVEFONTCHAR 103962 . 108805) (\MOVEFONTCHARS.SOURCEDATA 108807 . 114912) (
-\MAKESLUGCHAR 114914 . 117449) (SLUGCHARP.DISPLAY 117451 . 118572)) (119507 139645 (FONTFILES 119517
- . 121350) (\FINDFONTFILE 121352 . 123069) (\FONTFILENAMES 123071 . 124066) (\FONTFILENAME 124068 . 
-128051) (\FONTFILENAME.OLD 128053 . 131002) (\FONTFILENAME.NEW 131004 . 133261) (FONTSPECFROMFILENAME 
-133263 . 137364) (\FONTINFOFROMFILENAME.OLD 137366 . 139643)) (139912 175715 (FONTCOPY 139922 . 144985
-) (FONTP 144987 . 145286) (FONTUNPARSE 145288 . 147007) (SETFONTDESCRIPTOR 147009 . 148473) (
-\STREAMCHARWIDTH 148475 . 152639) (\COERCECHARSET 152641 . 155236) (\BUILDSLUGCSINFO 155238 . 158861) 
-(\FONTSYMBOL 158863 . 159513) (\DEVICESYMBOL 159515 . 160384) (\FONTFACE 160386 . 167576) (
-\FONTFACE.COLOR 167578 . 174498) (SETFONTCHARENCODING 174500 . 175713)) (175716 196655 (FONTSAVAILABLE
- 175726 . 180969) (FONTEXISTS? 180971 . 184949) (\SEARCHFONTFILES 184951 . 188036) (FLUSHFONTSINCORE 
-188038 . 191211) (FINDFONTFILES 191213 . 194427) (SORTFONTSPECS 194429 . 196653)) (196656 200079 (
-MATCHFONTFACE 196666 . 197481) (MAKEFONTFACE 197483 . 198323) (FONTFACETOATOM 198325 . 200077)) (
-200349 200841 (\UNITWIDTHSVECTOR 200359 . 200839)) (215435 217502 (FONTDESCRIPTOR.DEFPRINT 215445 . 
-217024) (FONTCLASS.DEFPRINT 217026 . 217500)) (221331 224121 (\CREATEKERNELEMENT 221341 . 221699) (
-\FSETLEFTKERN 221701 . 222192) (\FGETLEFTKERN 222194 . 224119)) (224122 233758 (\CREATEFONT 224132 . 
-225571) (\CREATECHARSET 225573 . 229509) (\INSTALLCHARSETINFO 229511 . 232845) (
-\INSTALLCHARSETINFO.CHARENCODING 232847 . 233756)) (234080 235444 (\FONTRESETCHARWIDTHS 234090 . 
-235442)) (236074 246121 (\CREATEDISPLAYFONT 236084 . 237933) (\CREATECHARSET.DISPLAY 237935 . 243644) 
-(\FONTEXISTS?.DISPLAY 243646 . 246119)) (246122 260987 (STRIKEFONT.FILEP 246132 . 247020) (
-STRIKEFONT.GETCHARSET 247022 . 252614) (WRITESTRIKEFONTFILE 252616 . 257527) (STRIKECSINFO 257529 . 
-260985)) (261018 277335 (MAKEBOLD.CHARSET 261028 . 264677) (MAKEBOLD.CHAR 264679 . 266431) (
-MAKEITALIC.CHARSET 266433 . 270106) (MAKEITALIC.CHAR 270108 . 272454) (\SFMAKEBOLD 272456 . 274680) (
-\SFMAKEITALIC 274682 . 277333)) (277336 281485 (\SFMAKEROTATEDFONT 277346 . 278747) (\SFROTATECSINFO 
-278749 . 279386) (\SFROTATEFONTCHARACTERS 279388 . 279768) (\SFROTATECSINFOOFFSETS 279770 . 281483)) (
-281486 282867 (\SFMAKECOLOR 281496 . 282865)))))
+  (FILEMAP (NIL (12233 21946 (CHARWIDTH 12243 . 13028) (CHARWIDTHY 13030 . 14547) (STRINGWIDTH 14549 . 
+15642) (\CHARWIDTH.DISPLAY 15644 . 16057) (\STRINGWIDTH.DISPLAY 16059 . 16483) (\STRINGWIDTH.GENERIC 
+16485 . 21944)) (21947 28467 (DEFAULTFONT 21957 . 23242) (FONTCLASS 23244 . 25406) (FONTCLASSUNPARSE 
+25408 . 26307) (FONTCLASSCOMPONENT 26309 . 26897) (SETFONTCLASSCOMPONENT 26899 . 27341) (
+GETFONTCLASSCOMPONENT 27343 . 28465)) (30146 54527 (FONTCREATE 30156 . 33401) (FONTCREATE1 33403 . 
+36018) (FONTCREATE.SLUGFD 36020 . 37502) (\FONT.CHECKARGS 37504 . 44094) (\FONT.CHECKARGS1 44096 . 
+48619) (\FONTCREATE1.NOFN 48621 . 48835) (FONTFILEP 48837 . 49725) (\READCHARSET 49727 . 54525)) (
+54528 61445 (\FONT.CHECKARGS 54538 . 61128) (\CHARSET.CHECK 61130 . 61443)) (61446 64529 (
+COERCEFONTSPEC 61456 . 64527)) (66599 67938 (MAKEFONTSPEC 66609 . 67936)) (67939 76116 (COMPLETE.FONT 
+67949 . 70472) (COMPLETEFONTP 70474 . 71097) (COMPLETE.CHARSET 71099 . 73784) (PRUNESLUGCSINFOS 73786
+ . 74711) (MONOSPACEFONTP 74713 . 76114)) (76155 84076 (FONTASCENT 76165 . 76549) (FONTDESCENT 76551
+ . 77036) (FONTHEIGHT 77038 . 77440) (FONTPROP 77442 . 83353) (\AVGCHARWIDTH 83355 . 84074)) (84733 
+85641 (FONTDEVICEPROP 84743 . 85639)) (85687 86541 (EDITCHAR 85697 . 86539)) (86587 98777 (
+GETCHARBITMAP 86597 . 87721) (PUTCHARBITMAP 87723 . 89881) (\GETCHARBITMAP.CSINFO 89883 . 91899) (
+\PUTCHARBITMAP.CSINFO 91901 . 98775)) (98778 119258 (MOVECHARBITMAP 98788 . 100682) (MOVEFONTCHARS 
+100684 . 104644) (\MOVEFONTCHAR 104646 . 109489) (\MOVEFONTCHARS.SOURCEDATA 109491 . 115596) (
+\MAKESLUGCHAR 115598 . 118133) (SLUGCHARP.DISPLAY 118135 . 119256)) (120191 140329 (FONTFILES 120201
+ . 122034) (\FINDFONTFILE 122036 . 123753) (\FONTFILENAMES 123755 . 124750) (\FONTFILENAME 124752 . 
+128735) (\FONTFILENAME.OLD 128737 . 131686) (\FONTFILENAME.NEW 131688 . 133945) (FONTSPECFROMFILENAME 
+133947 . 138048) (\FONTINFOFROMFILENAME.OLD 138050 . 140327)) (140596 176399 (FONTCOPY 140606 . 145669
+) (FONTP 145671 . 145970) (FONTUNPARSE 145972 . 147691) (SETFONTDESCRIPTOR 147693 . 149157) (
+\STREAMCHARWIDTH 149159 . 153323) (\COERCECHARSET 153325 . 155920) (\BUILDSLUGCSINFO 155922 . 159545) 
+(\FONTSYMBOL 159547 . 160197) (\DEVICESYMBOL 160199 . 161068) (\FONTFACE 161070 . 168260) (
+\FONTFACE.COLOR 168262 . 175182) (SETFONTCHARENCODING 175184 . 176397)) (176400 197339 (FONTSAVAILABLE
+ 176410 . 181653) (FONTEXISTS? 181655 . 185633) (\SEARCHFONTFILES 185635 . 188720) (FLUSHFONTSINCORE 
+188722 . 191895) (FINDFONTFILES 191897 . 195111) (SORTFONTSPECS 195113 . 197337)) (197340 200949 (
+MATCHFONTFACE 197350 . 198165) (MAKEFONTFACE 198167 . 199193) (FONTFACETOATOM 199195 . 200947)) (
+201327 201819 (\UNITWIDTHSVECTOR 201337 . 201817)) (216413 218480 (FONTDESCRIPTOR.DEFPRINT 216423 . 
+218002) (FONTCLASS.DEFPRINT 218004 . 218478)) (222309 225099 (\CREATEKERNELEMENT 222319 . 222677) (
+\FSETLEFTKERN 222679 . 223170) (\FGETLEFTKERN 223172 . 225097)) (225100 234736 (\CREATEFONT 225110 . 
+226549) (\CREATECHARSET 226551 . 230487) (\INSTALLCHARSETINFO 230489 . 233823) (
+\INSTALLCHARSETINFO.CHARENCODING 233825 . 234734)) (235058 236422 (\FONTRESETCHARWIDTHS 235068 . 
+236420)) (237052 247099 (\CREATEDISPLAYFONT 237062 . 238911) (\CREATECHARSET.DISPLAY 238913 . 244622) 
+(\FONTEXISTS?.DISPLAY 244624 . 247097)) (247100 261965 (STRIKEFONT.FILEP 247110 . 247998) (
+STRIKEFONT.GETCHARSET 248000 . 253592) (WRITESTRIKEFONTFILE 253594 . 258505) (STRIKECSINFO 258507 . 
+261963)) (261996 278313 (MAKEBOLD.CHARSET 262006 . 265655) (MAKEBOLD.CHAR 265657 . 267409) (
+MAKEITALIC.CHARSET 267411 . 271084) (MAKEITALIC.CHAR 271086 . 273432) (\SFMAKEBOLD 273434 . 275658) (
+\SFMAKEITALIC 275660 . 278311)) (278314 282463 (\SFMAKEROTATEDFONT 278324 . 279725) (\SFROTATECSINFO 
+279727 . 280364) (\SFROTATEFONTCHARACTERS 280366 . 280746) (\SFROTATECSINFOOFFSETS 280748 . 282461)) (
+282464 283845 (\SFMAKECOLOR 282474 . 283843)))))
 STOP
diff --git a/sources/FONT.LCOM b/sources/FONT.LCOM
index 51df1d80..04031c4f 100644
Binary files a/sources/FONT.LCOM and b/sources/FONT.LCOM differ
