diff --git a/sources/IMAGEIO b/sources/IMAGEIO
index 336b7ec8..468f1dc0 100644
--- a/sources/IMAGEIO
+++ b/sources/IMAGEIO
@@ -1,12 +1,12 @@
 (DEFINE-FILE-INFO PACKAGE "INTERLISP" READTABLE "INTERLISP" BASE 10)
 
-(FILECREATED "29-Dec-2025 10:41:40" {WMEDLEY}<sources>IMAGEIO.;37 97380  
+(FILECREATED "30-Dec-2025 08:53:44" {WMEDLEY}<sources>IMAGEIO.;39 97916  
 
       :EDIT-BY rmk
 
-      :CHANGES-TO (FNS IMAGESOURCETYPE)
+      :CHANGES-TO (VARS IMAGEIOCOMS)
 
-      :PREVIOUS-DATE "28-Dec-2025 17:57:56" {WMEDLEY}<sources>IMAGEIO.;36)
+      :PREVIOUS-DATE "29-Dec-2025 16:58:31" {WMEDLEY}<sources>IMAGEIO.;38)
 
 
 (PRETTYCOMPRINT IMAGEIOCOMS)
@@ -26,9 +26,9 @@
                                                         WINDOW.TO.IMAGEFILE SCREENREGION 
                                                         SCREENREGION.TO.IMAGEFILE BITMAPFILE 
                                                         BITMAPFILE.TO.IMAGEFILE]
-              (ALISTS (PRINTFILETYPES BITMAP WINDOW SCREENREGION BITMAPFILE)))
+              (ALISTS (PRINTFILETYPES BITMAP WINDOW SCREENREGION BITMAPFILE TEXT)))
         (COMS                                                (* ; "Until HTML streams")
-              (ALISTS (PRINTFILETYPES HMTL))
+              (ALISTS (PRINTFILETYPES HTML))
               (FNS HTMLFILEP))
         (INITVARS (IMAGESTREAMTYPES NIL))
         (FNS \GOOD.DASHLST)
@@ -157,27 +157,31 @@
                          (CL:PATHNAMEP IMAGESOURCE])
 
 (IMAGESOURCETYPE
-  [LAMBDA (X)                                                (* ; "Edited 29-Dec-2025 10:40 by rmk")
+  [LAMBDA (X)                                                (* ; "Edited 29-Dec-2025 16:57 by rmk")
                                                              (* ; "Edited 24-Dec-2025 14:38 by rmk")
                                                              (* ; "Edited 20-Dec-2025 14:07 by rmk")
                                                              (* ; "Edited 28-Sep-2025 11:35 by rmk")
                                                              (* ; "Edited 18-Sep-2025 11:13 by rmk")
                                                              (* ; "Edited 13-Sep-2025 23:36 by rmk")
                                                              (* ; "Edited  3-Mar-93 14:34 by rmk:")
-                                                             (* ; "Edited 22-Aug-92 14:27 by jds")
-    (CL:WHEN (IMAGESOURCEFILEP X)
-        (SETQ X (FINDFILE X T)))                             (* ; "Edited 26-Aug-87 14:22 by Snow")
+                                                             (* ; "Edited 22-Aug-92 14:27 by jds")
+                                                             (* ; "Edited 26-Aug-87 14:22 by Snow")
     (if (WINDOWP X)
         then (OR (WINDOWPROP X 'IMAGETYPE)
                  'WINDOW)
-      elseif [CAR (find ITYPE TESTFN in PRINTFILETYPES when [SETQ TESTFN (CAR (GETMULTI ITYPE
-                                                                                     'TEST]
-                     suchthat (CAR (NLSETQ (APPLY* TESTFN X]
       elseif (IMAGESTREAMP X)
-        then (IMAGESTREAMTYPE X)
-      elseif (LISPSOURCEFILEP X)
-        then 'TEXT
-      else (GETFILEINFO X 'TYPE])
+      else (LET (FULLX EXT)
+                (CL:WHEN (IMAGESOURCEFILEP X)                (* ; "Should the caller do this?")
+                    (SETQ FULLX (FINDFILE X T))
+                    (SETQ EXT (FILENAMEFIELD FULLX 'EXTENSION)))
+                (if [AND EXT (CAR (find ITYPE TESTFN in PRINTFILETYPES suchthat (
+                                                                         IMAGEFILETYPE.FROM.EXTENSION
+                                                                                 NIL EXT]
+                  elseif [CAR (find ITYPE TESTFN in PRINTFILETYPES
+                                 when [SETQ TESTFN (CAR (GETMULTI ITYPE 'TEST]
+                                 suchthat (CAR (NLSETQ (APPLY* TESTFN (OR FULLX X]
+                  elseif FULLX
+                    then (GETFILEINFO FULLX 'TYPE])
 )
 (DEFINEQ
 
@@ -474,19 +478,23 @@
 (DEFAULT.IMAGETYPE.CONVERSIONS '(BITMAP BITMAP.TO.IMAGEFILE WINDOW WINDOW.TO.IMAGEFILE SCREENREGION 
                                        SCREENREGION.TO.IMAGEFILE BITMAPFILE BITMAPFILE.TO.IMAGEFILE))
 
-(ADDTOVAR PRINTFILETYPES (BITMAP (TEST BITMAPP))
-                         (WINDOW (TEST WINDOWP))
-                         (SCREENREGION (TEST REGIONP))
-                         (BITMAPFILE (TEST BITMAPFILEP)
-                                (EXTENSION (BM BITMAP))
-                                (CONVERSION (BITMAP BITMAP.TO.BITMAPFILE))))
+(ADDTOVAR PRINTFILETYPES
+          (BITMAP (TEST BITMAPP))
+          (WINDOW (TEST WINDOWP))
+          (SCREENREGION (TEST REGIONP))
+          (BITMAPFILE (TEST BITMAPFILEP)
+                 (EXTENSION (BM BITMAP))
+                 (CONVERSION (BITMAP BITMAP.TO.BITMAPFILE)))
+          (TEXT (TEST LISPSOURCEFILEP)
+                (EXTENSION (TXT TEXT))))
 
 
 
 (* ; "Until HTML streams")
 
 
-(ADDTOVAR PRINTFILETYPES )
+(ADDTOVAR PRINTFILETYPES (HTML (TEST HTMLFILEP)
+                               (EXTENSION (HTML HTM))))
 (DEFINEQ
 
 (HTMLFILEP
@@ -1842,32 +1850,32 @@
 (ADDTOVAR LAMA IMAGESTREAMP)
 )
 (DECLARE%: DONTCOPY
-  (FILEMAP (NIL (4327 5968 (OPENIMAGESTREAM 4337 . 5966)) (5969 10062 (IMAGESTREAMP 5979 . 6811) (
-IMAGESTREAMTYPE 6813 . 7026) (IMAGESTREAMTYPEP 7028 . 7663) (IMAGEFILEPROP 7665 . 8203) (
-IMAGESOURCEFILEP 8205 . 8482) (IMAGESOURCETYPE 8484 . 10060)) (10063 11068 (
-EXTENSIONS.FOR.IMAGEFILETYPE 10073 . 10429) (IMAGEFILETYPE.FROM.EXTENSION 10431 . 11066)) (11069 15564
- (CONVERT.TO.IMAGEFILE 11079 . 15562)) (15565 19656 (BITMAPFILEP 15575 . 17076) (BITMAP.TO.BITMAPFILE 
-17078 . 18755) (BITMAPFILE.TO.BITMAP 18757 . 19411) (BITMAPFILE.TO.IMAGEFILE 19413 . 19654)) (19657 
-25982 (BITMAP.TO.IMAGEFILE 19667 . 21224) (WINDOW.TO.IMAGEFILE 21226 . 24055) (
-SCREENREGION.TO.IMAGEFILE 24057 . 24961) (COPY.WINDOW.TO.BITMAP 24963 . 25980)) (26081 26718 (
-DEFAULT.IMAGETYPE.CONVERSIONS 26091 . 26716)) (27341 27567 (HTMLFILEP 27351 . 27565)) (27602 29717 (
-\GOOD.DASHLST 27612 . 29715)) (29718 32015 (DRAWDASHEDLINE 29728 . 32013)) (32016 39356 (DSPBACKCOLOR 
-32026 . 32398) (DSPBOTTOMMARGIN 32400 . 32785) (DSPCOLOR 32787 . 33151) (DSPCLIPPINGREGION 33153 . 
-33858) (DSPRESET 33860 . 34140) (DSPFONT 34142 . 34506) (DSPLEFTMARGIN 34508 . 34889) (DSPLINEFEED 
-34891 . 35191) (DSPOPERATION 35193 . 35570) (DSPRIGHTMARGIN 35572 . 35955) (DSPTOPMARGIN 35957 . 36336
-) (DSPSCALE 36338 . 36705) (DSPSPACEFACTOR 36707 . 37100) (DSPXPOSITION 37102 . 37407) (DSPYPOSITION 
-37409 . 37714) (DSPROTATE 37716 . 38011) (DSPPUSHSTATE 38013 . 38259) (DSPPOPSTATE 38261 . 38504) (
-DSPDEFAULTSTATE 38506 . 38758) (DSPSCALE2 38760 . 39051) (DSPTRANSLATE 39053 . 39354)) (39357 48158 (
-DSPNEWPAGE 39367 . 40059) (DRAWBETWEEN 40061 . 40763) (DRAWCIRCLE 40765 . 41261) (DRAWARC 41263 . 
-41780) (DRAWCURVE 41782 . 42459) (DRAWELLIPSE 42461 . 43247) (DRAWLINE 43249 . 43639) (DRAWPOLYGON 
-43641 . 44096) (DRAWPOINT 44098 . 44517) (FILLPOLYGON 44519 . 45085) (DRAWTO 45087 . 45505) (
-FILLCIRCLE 45507 . 45730) (MOVETO 45732 . 46096) (RELDRAWTO 46098 . 47015) (BITMAPIMAGESIZE 47017 . 
-47188) (SCALEDBITBLT 47190 . 48156)) (48159 55198 (\DRAWPOINT.GENERIC 48169 . 48516) (
-\DRAWPOLYGON.GENERIC 48518 . 50826) (\DRAWCIRCLE.GENERIC 50828 . 52486) (\DRAWELLIPSE.GENERIC 52488 . 
-55196)) (55199 60143 (\IMAGEIOINIT 55209 . 58489) (\NOIMAGE.DSPFONT 58491 . 59977) (\UNIMPIMAGEOP 
-59979 . 60141)) (60266 63390 (INSURE.BRUSH 60276 . 61650) (BRUSHP 61652 . 62442) (\POSSIBLECOLOR 62444
- . 62995) (NEGSHADE 62997 . 63388)) (63946 64630 (DASHINGP 63956 . 64286) (INSURE.DASHING 64288 . 
-64628)) (75368 95914 (\DisplayEventFn 75378 . 75888) (\DISPLAYINIT 75890 . 81473) (\4DISPLAYINIT 81475
- . 86176) (\8DISPLAYINIT 86178 . 90881) (\24DISPLAYINIT 90883 . 95655) (\DISPLAYSTREAMTYPEBPP 95657 . 
-95912)))))
+  (FILEMAP (NIL (4329 5970 (OPENIMAGESTREAM 4339 . 5968)) (5971 10507 (IMAGESTREAMP 5981 . 6813) (
+IMAGESTREAMTYPE 6815 . 7028) (IMAGESTREAMTYPEP 7030 . 7665) (IMAGEFILEPROP 7667 . 8205) (
+IMAGESOURCEFILEP 8207 . 8484) (IMAGESOURCETYPE 8486 . 10505)) (10508 11513 (
+EXTENSIONS.FOR.IMAGEFILETYPE 10518 . 10874) (IMAGEFILETYPE.FROM.EXTENSION 10876 . 11511)) (11514 16009
+ (CONVERT.TO.IMAGEFILE 11524 . 16007)) (16010 20101 (BITMAPFILEP 16020 . 17521) (BITMAP.TO.BITMAPFILE 
+17523 . 19200) (BITMAPFILE.TO.BITMAP 19202 . 19856) (BITMAPFILE.TO.IMAGEFILE 19858 . 20099)) (20102 
+26427 (BITMAP.TO.IMAGEFILE 20112 . 21669) (WINDOW.TO.IMAGEFILE 21671 . 24500) (
+SCREENREGION.TO.IMAGEFILE 24502 . 25406) (COPY.WINDOW.TO.BITMAP 25408 . 26425)) (26526 27163 (
+DEFAULT.IMAGETYPE.CONVERSIONS 26536 . 27161)) (27877 28103 (HTMLFILEP 27887 . 28101)) (28138 30253 (
+\GOOD.DASHLST 28148 . 30251)) (30254 32551 (DRAWDASHEDLINE 30264 . 32549)) (32552 39892 (DSPBACKCOLOR 
+32562 . 32934) (DSPBOTTOMMARGIN 32936 . 33321) (DSPCOLOR 33323 . 33687) (DSPCLIPPINGREGION 33689 . 
+34394) (DSPRESET 34396 . 34676) (DSPFONT 34678 . 35042) (DSPLEFTMARGIN 35044 . 35425) (DSPLINEFEED 
+35427 . 35727) (DSPOPERATION 35729 . 36106) (DSPRIGHTMARGIN 36108 . 36491) (DSPTOPMARGIN 36493 . 36872
+) (DSPSCALE 36874 . 37241) (DSPSPACEFACTOR 37243 . 37636) (DSPXPOSITION 37638 . 37943) (DSPYPOSITION 
+37945 . 38250) (DSPROTATE 38252 . 38547) (DSPPUSHSTATE 38549 . 38795) (DSPPOPSTATE 38797 . 39040) (
+DSPDEFAULTSTATE 39042 . 39294) (DSPSCALE2 39296 . 39587) (DSPTRANSLATE 39589 . 39890)) (39893 48694 (
+DSPNEWPAGE 39903 . 40595) (DRAWBETWEEN 40597 . 41299) (DRAWCIRCLE 41301 . 41797) (DRAWARC 41799 . 
+42316) (DRAWCURVE 42318 . 42995) (DRAWELLIPSE 42997 . 43783) (DRAWLINE 43785 . 44175) (DRAWPOLYGON 
+44177 . 44632) (DRAWPOINT 44634 . 45053) (FILLPOLYGON 45055 . 45621) (DRAWTO 45623 . 46041) (
+FILLCIRCLE 46043 . 46266) (MOVETO 46268 . 46632) (RELDRAWTO 46634 . 47551) (BITMAPIMAGESIZE 47553 . 
+47724) (SCALEDBITBLT 47726 . 48692)) (48695 55734 (\DRAWPOINT.GENERIC 48705 . 49052) (
+\DRAWPOLYGON.GENERIC 49054 . 51362) (\DRAWCIRCLE.GENERIC 51364 . 53022) (\DRAWELLIPSE.GENERIC 53024 . 
+55732)) (55735 60679 (\IMAGEIOINIT 55745 . 59025) (\NOIMAGE.DSPFONT 59027 . 60513) (\UNIMPIMAGEOP 
+60515 . 60677)) (60802 63926 (INSURE.BRUSH 60812 . 62186) (BRUSHP 62188 . 62978) (\POSSIBLECOLOR 62980
+ . 63531) (NEGSHADE 63533 . 63924)) (64482 65166 (DASHINGP 64492 . 64822) (INSURE.DASHING 64824 . 
+65164)) (75904 96450 (\DisplayEventFn 75914 . 76424) (\DISPLAYINIT 76426 . 82009) (\4DISPLAYINIT 82011
+ . 86712) (\8DISPLAYINIT 86714 . 91417) (\24DISPLAYINIT 91419 . 96191) (\DISPLAYSTREAMTYPEBPP 96193 . 
+96448)))))
 STOP
diff --git a/sources/IMAGEIO.LCOM b/sources/IMAGEIO.LCOM
index 2b22348b..4b8c256c 100644
Binary files a/sources/IMAGEIO.LCOM and b/sources/IMAGEIO.LCOM differ
