diff --git a/basis/images/images.factor b/basis/images/images.factor
index 11452aa7d2..32fbc54978 100644
--- a/basis/images/images.factor
+++ b/basis/images/images.factor
@@ -1,7 +1,8 @@
 ! Copyright (C) 2009 Doug Coleman.
 ! See http://factorcode.org/license.txt for BSD license.
 USING: kernel accessors grouping sequences combinators
-math specialized-arrays.direct.uint byte-arrays ;
+math specialized-arrays.direct.uint byte-arrays
+specialized-arrays.direct.ushort ;
 IN: images
 
 SINGLETONS: BGR RGB BGRA RGBA ABGR ARGB RGBX XRGB BGRX XBGR
@@ -28,6 +29,13 @@ GENERIC: load-image* ( path tuple -- image )
                 >byte-array add-dummy-alpha
             ] change-bitmap
         ] }
+        { R16G16B16 [
+            [
+                dup length 2 / <direct-ushort-array>
+                [ -8 shift ] map
+                >byte-array add-dummy-alpha
+            ] change-bitmap
+        ] }
         { BGRA [
             [
                 4 <sliced-groups> dup [ [ 0 3 ] dip <slice> reverse-here ] each