diff --git a/sources/MCCS b/sources/MCCS
index d98baa4b..95997ff0 100644
--- a/sources/MCCS
+++ b/sources/MCCS
@@ -1,12 +1,14 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "20-Sep-2025 09:45:41" {WMEDLEY}<sources>MCCS.;138 51315  
+(FILECREATED " 6-Oct-2025 16:44:20" {WMEDLEY}<sources>MCCS.;149 56371  
 
       :EDIT-BY rmk
 
-      :CHANGES-TO (FNS MCCSMAPPAIRS)
+      :CHANGES-TO (VARS PALATINOTOMCCS MCCSCOMS)
+                  (FNS MCCSMAPPAIRS XCCS.CS0.UNDEFINED XCCSUNDEFINEDPAIRS XCCSUNDEFINEDCONTROLS 
+                       PALATINOTOMCODE MCCSMAPFN)
 
-      :PREVIOUS-DATE " 9-Sep-2025 22:45:13" {WMEDLEY}<sources>MCCS.;137)
+      :PREVIOUS-DATE "20-Sep-2025 09:45:41" {WMEDLEY}<sources>MCCS.;138)
 
 
 (PRETTYCOMPRINT MCCSCOMS)
@@ -38,25 +40,26 @@
         (FNS MTOXCODE XTOMCODE XTOMSTRING MTOXSTRING)
         (FNS MTOX$CODE X$TOMCODE)
         (FNS KANJICHARSETP CHINESECHARSETP)
-        (COMS                                                (* ; " Mapping functions to MCCS")
-              
-              (* ;; "Used by \TEDIT.MCCS.TRANSLATE .")
-
-              (VARS ALTOTEXT2MCCS SYMBOLTOMCCS SIGMATOMCCS HIPPOTOMCCS CYRILLICTOMCCS MATHTOMCCS)
+        (COMS                                                (* ; " Mapping to MCCS")
+              (VARS ALTOTEXT2MCCS SYMBOLTOMCCS SIGMATOMCCS HIPPOTOMCCS CYRILLICTOMCCS MATHTOMCCS 
+                    PALATINOTOMCCS)
               (FNS MCCSCODEMAPARRAY)
               (GLOBALVARS ALTOTOMCCSARRAY SYMBOLTOMCCSARRAY HIPPOTOMCCSARRAY CYRILLICTOMCCSARRAY 
-                     MATHTOMCCSARRAY SIGMATOMCCSARRAY)
+                     MATHTOMCCSARRAY SIGMATOMCCSARRAY PALATINOTOMCCSARRAY)
               (INITVARS (ALTOTOMCCSARRAY (MCCSCODEMAPARRAY 'MCCS))
                      (SYMBOLTOMCCSARRAY (MCCSCODEMAPARRAY SYMBOLTOMCCS))
                      (HIPPOTOMCCSARRAY (MCCSCODEMAPARRAY HIPPOTOMCCS))
                      (CYRILLICTOMCCSARRAY (MCCSCODEMAPARRAY CYRILLICTOMCCS))
                      (MATHTOMCCSARRAY (MCCSCODEMAPARRAY MATHTOMCCS))
-                     (SIGMATOMCCSARRAY (MCCSCODEMAPARRAY SIGMATOMCCS)))
-              (FNS MCCSMAPFN MCCSMAPPAIRS XCCSUNDEFINEDPAIRS)
-              (COMS                                          (* ; 
-                                         "Mappings into MCCS: needed for hardcopy and Tedit coercion")
+                     (SIGMATOMCCSARRAY (MCCSCODEMAPARRAY SIGMATOMCCS))
+                     (PALATINOTOMCCSARRAY (MCCSCODEMAPARRAY PALATINOTOMCCS)))
+              (FNS MCCSMAPFN MCCSMAPPAIRS XCCS.CS0.UNDEFINED XCCSUNDEFINEDPAIRS)
+              (COMS 
+                    (* ;; 
+             "Mappings into MCCS: needed for hardcopy and Tedit coercion, e.g. \TEDIT.MCCS.TRANSLATE")
+
                     (FNS GACHATOMCODE SYMBOLTOMCODE SIGMATOMCODE ATOMCODE MATHTOMCODE HIPPOTOMCODE 
-                         CYRILLICTOMCODE])
+                         CYRILLICTOMCODE PALATINOTOMCODE])
 
 
 
@@ -458,12 +461,7 @@
 
 
 
-(* ; " Mapping functions to MCCS")
-
-
-
-
-(* ;; "Used by \TEDIT.MCCS.TRANSLATE .")
+(* ; " Mapping to MCCS")
 
 
 (RPAQQ ALTOTEXT2MCCS
@@ -1158,6 +1156,95 @@
         ("0,375" Null)
         ("0,376" Null)
         ("0,377" Null)))
+
+(RPAQQ PALATINOTOMCCS
+       (("0,32" "361,353")
+        ("0,34" "361,260")
+        ("0,35" "361,277")
+        ("0,36" "361,304")
+        ("0,37" "361,153")
+        ("0,136" "0,255")
+        ("0,137" "0,254")
+        (NIL "0,240")
+        ("0,200" "361,047")
+        ("0,201" "361,124")
+        ("0,202" "361,043")
+        ("0,203" "361,077")
+        ("0,204" "361,114")
+        ("0,205" "361,120")
+        ("0,206" "361,121")
+        ("0,207" "361,117")
+        ("0,210" "361,122")
+        ("0,211" "361,134")
+        ("0,212" "361,140")
+        ("0,213" "361,141")
+        ("0,214" "361,145")
+        ("0,215" "361,137")
+        ("0,216" "361,155")
+        ("0,217" "361,160")
+        ("0,220" "361,142")
+        ("0,221" "361,241")
+        ("0,222" "361,243")
+        ("0,223" "361,276")
+        ("0,224" "361,250")
+        ("0,225" "361,320")
+        ("0,226" "361,321")
+        ("0,227" "361,322")
+        ("0,230" "361,322")
+        ("0,231" "361,334")
+        ("0,232" "361,244")
+        ("0,233" "361,341")
+        ("0,234" "361,261")
+        ("0,235" "361,337")
+        ("0,236" "361,262")
+        ("0,237" "361,255")
+        ("0,240" "361,247")
+        ("0,244" "0,057")
+                                                             (* ; "Slash, but should be fraction")
+        ("0,246" "357,243")
+        ("0,250" "0,244")
+        ("0,254" "357,052")
+        ("0,255" "357,053")
+        ("0,256" "360,004")
+        ("0,257" "360,005")
+        ("0,261" EMDASH)
+        ("0,262" "357,060")
+        ("0,263" "357,061")
+        ("0,267" "357,146")
+        ("0,270" "43,262")
+        ("0,271" "357,050")
+        ("0,274" "41,104")
+        ("0,275" "357,101")
+        ("0,311" "357,153")
+        ("0,314" "361,314")
+        ("0,321" "375,261")
+        ("0,324" "361,324")
+        ("0,325" "375,362")
+        ("0,326" "375,363")
+        ("0,327" "0,274")
+        ("0,330" "0,275")
+        ("0,331" "0,264")
+        ("0,332" "0,270")
+        ("0,333" "357,152")
+        ("0,334" "361,265")
+        ("0,335" "0,261")
+        ("0,336" "361,042")
+        ("0,337" "357,044")
+        ("0,340" "361,340")
+        ("0,344" "361,041")
+        ("0,345" "361,345")
+        ("0,346" "361,050")
+        ("0,347" "361,044")
+        ("0,355" "361,355")
+        ("0,356" "361,055")
+        ("0,357" "361,061")
+        ("0,360" "361,360")
+        ("0,362" "361,062")
+        ("0,364" "361,065")
+        ("0,366" "361,060")
+        ("0,367" "361,277")
+        ("0,375" "361,100")
+        ("0,376" "361,104")))
 (DEFINEQ
 
 (MCCSCODEMAPARRAY
@@ -1192,7 +1279,7 @@
 (DECLARE%: DOEVAL@COMPILE DONTCOPY
 
 (GLOBALVARS ALTOTOMCCSARRAY SYMBOLTOMCCSARRAY HIPPOTOMCCSARRAY CYRILLICTOMCCSARRAY MATHTOMCCSARRAY 
-       SIGMATOMCCSARRAY)
+       SIGMATOMCCSARRAY PALATINOTOMCCSARRAY)
 )
 
 (RPAQ? ALTOTOMCCSARRAY (MCCSCODEMAPARRAY 'MCCS))
@@ -1206,10 +1293,13 @@
 (RPAQ? MATHTOMCCSARRAY (MCCSCODEMAPARRAY MATHTOMCCS))
 
 (RPAQ? SIGMATOMCCSARRAY (MCCSCODEMAPARRAY SIGMATOMCCS))
+
+(RPAQ? PALATINOTOMCCSARRAY (MCCSCODEMAPARRAY PALATINOTOMCCS))
 (DEFINEQ
 
 (MCCSMAPFN
-  [LAMBDA (FROMENCODING)                                     (* ; "Edited  6-Sep-2025 12:40 by rmk")
+  [LAMBDA (FROMENCODING)                                     (* ; "Edited  5-Oct-2025 19:56 by rmk")
+                                                             (* ; "Edited  6-Sep-2025 12:40 by rmk")
                                                              (* ; "Edited  4-Sep-2025 08:06 by rmk")
                                                              (* ; "Edited 24-May-2025 10:55 by rmk")
 
@@ -1234,11 +1324,13 @@
         (CYRILLIC (FUNCTION CYRILLICTOMCODE))
         (XCCS (FUNCTION XTOMCODE))
         (GACHA (FUNCTION GACHATOMCODE))
+        (PALATINO (FUNCTION PALATINOTOMCODE))
         (MCCS NIL)
         NIL])
 
 (MCCSMAPPAIRS
-  [LAMBDA (FROMENCODING NONIDENTITY)                         (* ; "Edited 20-Sep-2025 09:45 by rmk")
+  [LAMBDA (FROMENCODING NONIDENTITY)                         (* ; "Edited  6-Oct-2025 09:47 by rmk")
+                                                             (* ; "Edited 20-Sep-2025 09:45 by rmk")
                                                              (* ; "Edited  6-Sep-2025 16:43 by rmk")
                                                              (* ; "Edited 31-Aug-2025 16:16 by rmk")
 
@@ -1259,37 +1351,56 @@
                                       (Leftarrow Lowline)
                                       (Lowline Leftarrow)
                                       (Circumflex Uparrow)))
+                             (PALATINO (APPEND (XCCS.CS0.UNDEFINED)
+                                              PALATINOTOMCCS))
                              (for C M from 0 to \MAXTHINCHAR when (SETQ M (APPLY* FN C NONIDENTITY))
                                 collect (LIST C M]
 
-             (* ;; "Weed out interspersed comments")
+             (* ;; "Weed out interspersed comments, convert to charcodes")
 
-             [for P in PAIRS when (LISTP P) unless (EQ '* (CAR P))
-                collect (LIST (if (LISTP (CAR P))
-                                  then 
-                                       (* ;; 
+             [SETQ PAIRS (for P in PAIRS when (LISTP P) unless (EQ '* (CAR P))
+                            collect (LIST (if (LISTP (CAR P))
+                                              then 
+                                                   (* ;; 
                                     "Allows for the (Uparrow TERMINAL) case above, for MOVEFONTCHARS")
 
-                                       (CONS (CL:IF (CHARCODEP (CAAR P))
-                                                 (CAAR P)
-                                                 (CHARCODE.DECODE (CAAR P)))
-                                             (CDAR P))
-                                elseif (CHARCODEP (CAR P))
-                                  then (CAR P)
-                                else (CHARCODE.DECODE (CAR P)))
-                              (CL:IF (CHARCODEP (CADR P))
-                                  (CADR P)
-                                  (CHARCODE.DECODE (CADR P)))])])
+                                                   (CONS (CL:IF (CHARCODEP (CAAR P))
+                                                             (CAAR P)
+                                                             (CHARCODE.DECODE (CAAR P)))
+                                                         (CDAR P))
+                                            elseif (CHARCODEP (CAR P))
+                                              then (CAR P)
+                                            else (CHARCODE.DECODE (CAR P)))
+                                          (CL:IF (CHARCODEP (CADR P))
+                                              (CADR P)
+                                              (CHARCODE.DECODE (CADR P)))]
+
+             (* ;; 
+    "Any character that is moved gets replaced by a slug.  It may then be coerced from another font.")
+
+             [APPEND PAIRS (for P in PAIRS when (CAR P) collect (LIST NIL (CAR P])])
+
+(XCCS.CS0.UNDEFINED
+  [LAMBDA NIL                                                (* ; "Edited  5-Oct-2025 22:44 by rmk")
+
+    (* ;; "Maps slugs to all undefined/reserved characters in XCCS")
+
+    (APPEND (for I from 0 to (SUB1 (CHARCODE SPACE)) collect (LIST NIL I))
+           (for I from (CHARCODE "0,#NULL") to (SUB1 (CHARCODE "0,#SPACE"))
+              collect (LIST NIL I))
+           (for I in (CHARCODE ("0,177" "0,246" "0,250" "0,300" "0,351" "0,326" "0,327" "0,330" 
+                                      "0,331" "0,332" "0,333" "0,377")) collect (LIST NIL I])
 
 (XCCSUNDEFINEDPAIRS
-  [LAMBDA NIL                                                (* ; "Edited  2-Sep-2025 13:14 by rmk")
-    (APPEND (for I from 0 to (SUB1 (CHARCODE SPACE)) collect (LIST NIL I))
-           (for I from 127 to \MAXTHINCHAR collect (LIST NIL I])
+  [LAMBDA NIL                                                (* ; "Edited  5-Oct-2025 22:39 by rmk")
+                                                             (* ; "Edited  2-Sep-2025 13:14 by rmk")
+    (APPEND (XCCS.CS0.UNDEFINED)
+           (for I from 128 to \MAXTHINCHAR collect (LIST NIL I])
 )
 
 
 
-(* ; "Mappings into MCCS: needed for hardcopy and Tedit coercion")
+(* ;; "Mappings into MCCS: needed for hardcopy and Tedit coercion, e.g. \TEDIT.MCCS.TRANSLATE")
 
 (DEFINEQ
 
@@ -1365,16 +1476,29 @@
                  (CL:UNLESS (EQ MCODE CCODE)
                         MCODE)))
         CCODE])
+
+(PALATINOTOMCODE
+  [LAMBDA (PCODE)                                            (* ; "Edited  5-Oct-2025 20:08 by rmk")
+                                                             (* ; "Edited  7-Sep-2025 22:39 by rmk")
+                                                             (* ; "Edited  3-Sep-2025 10:21 by rmk")
+                                                             (* ; "Edited  7-Aug-2025 09:37 by rmk")
+                                                             (* ; "Edited  1-Jun-2025 07:02 by rmk")
+    (OR (CL:WHEN (ILEQ PCODE \MAXTHINCHAR)
+            (LET ((MCODE (ELT PALATINOTOMCCSARRAY PCODE)))
+                 (CL:UNLESS (EQ MCODE PCODE)
+                        MCODE)))
+        PCODE])
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (2791 14362 (\MCCSINCCODE 2801 . 5889) (\MCCSPEEKCCODE 5891 . 8778) (\MCCSOUTCHAR 8780
- . 10879) (\MCCSBACKCCODE 10881 . 12425) (\MCCSFORMATBYTESTREAM 12427 . 13157) (\MCCSCHARSETFN 13159
- . 14360)) (14363 15245 (\CREATE.MCCS.EXTERNALFORMAT 14373 . 15243)) (15246 16223 (
-\MCCS.24BITENCODING.ERROR 15256 . 16221)) (17599 20237 (MTOXCODE 17609 . 18406) (XTOMCODE 18408 . 
-19065) (XTOMSTRING 19067 . 19652) (MTOXSTRING 19654 . 20235)) (20238 21898 (MTOX$CODE 20248 . 20980) (
-X$TOMCODE 20982 . 21896)) (21899 22539 (KANJICHARSETP 21909 . 22165) (CHINESECHARSETP 22167 . 22537)) 
-(40660 42534 (MCCSCODEMAPARRAY 40670 . 42532)) (43063 47227 (MCCSMAPFN 43073 . 44285) (MCCSMAPPAIRS 
-44287 . 46919) (XCCSUNDEFINEDPAIRS 46921 . 47225)) (47303 51292 (GACHATOMCODE 47313 . 47825) (
-SYMBOLTOMCODE 47827 . 48475) (SIGMATOMCODE 48477 . 49123) (ATOMCODE 49125 . 49657) (MATHTOMCODE 49659
- . 50315) (HIPPOTOMCODE 50317 . 50854) (CYRILLICTOMCODE 50856 . 51290)))))
+  (FILEMAP (NIL (3015 14586 (\MCCSINCCODE 3025 . 6113) (\MCCSPEEKCCODE 6115 . 9002) (\MCCSOUTCHAR 9004
+ . 11103) (\MCCSBACKCCODE 11105 . 12649) (\MCCSFORMATBYTESTREAM 12651 . 13381) (\MCCSCHARSETFN 13383
+ . 14584)) (14587 15469 (\CREATE.MCCS.EXTERNALFORMAT 14597 . 15467)) (15470 16447 (
+\MCCS.24BITENCODING.ERROR 15480 . 16445)) (17823 20461 (MTOXCODE 17833 . 18630) (XTOMCODE 18632 . 
+19289) (XTOMSTRING 19291 . 19876) (MTOXSTRING 19878 . 20459)) (20462 22122 (MTOX$CODE 20472 . 21204) (
+X$TOMCODE 21206 . 22120)) (22123 22763 (KANJICHARSETP 22133 . 22389) (CHINESECHARSETP 22391 . 22761)) 
+(43331 45205 (MCCSCODEMAPARRAY 43341 . 45203)) (45821 51491 (MCCSMAPFN 45831 . 47198) (MCCSMAPPAIRS 
+47200 . 50497) (XCCS.CS0.UNDEFINED 50499 . 51128) (XCCSUNDEFINEDPAIRS 51130 . 51489)) (51596 56348 (
+GACHATOMCODE 51606 . 52118) (SYMBOLTOMCODE 52120 . 52768) (SIGMATOMCODE 52770 . 53416) (ATOMCODE 53418
+ . 53950) (MATHTOMCODE 53952 . 54608) (HIPPOTOMCODE 54610 . 55147) (CYRILLICTOMCODE 55149 . 55583) (
+PALATINOTOMCODE 55585 . 56346)))))
 STOP
diff --git a/sources/MCCS.LCOM b/sources/MCCS.LCOM
index 3f8baaf2..7a88ef6c 100644
Binary files a/sources/MCCS.LCOM and b/sources/MCCS.LCOM differ
