diff --git a/Graphics/Gloss/Raster/Array.hs b/Graphics/Gloss/Raster/Array.hs
--- a/Graphics/Gloss/Raster/Array.hs
+++ b/Graphics/Gloss/Raster/Array.hs
@@ -9,7 +9,8 @@
 --  result add INLINE pragmas to all of your numeric functions and use the following
 --  compile options.  
 --
---  @-threaded -Odph -fno-liberate-case -funfolding-use-threshold1000 -funfolding-keeness-factor1000 -fllvm -optlo-O3@
+--  @-threaded -Odph -fno-liberate-case -funfolding-use-threshold1000 
+--   -funfolding-keeness-factor1000 -fllvm -optlo-O3@
 --
 --  See the examples the @raster@ directory of the @gloss-examples@ package 
 --  for more details.
@@ -110,7 +111,7 @@
                 P.++ show (scaleX, scaleY)
    else let {-# INLINE frame #-}
             frame !time          = return $ makeFrame scale (makeArray time)
-        in  animateFixedIO display black frame
+        in  animateFixedIO display black frame (const $ return ())
 {-# INLINE animateArray #-}
 --  INLINE so the repa functions fuse with the users client functions.
 
@@ -137,7 +138,7 @@
                 P.++ show (scaleX, scaleY)
    else let {-# INLINE frame #-}
             frame !time          = fmap (makeFrame scale) (makeArray time)
-        in  animateFixedIO display black frame
+        in  animateFixedIO display black frame (const $ return ())
 {-# INLINE animateArrayIO #-}
 --  INLINE so the repa functions fuse with the users client functions.
 
@@ -252,7 +253,8 @@
                 = Scale (fromIntegral scaleX) (fromIntegral scaleY)
                 $ bitmapOfForeignPtr
                         sizeX sizeY     -- raw image size
-                        (R.toForeignPtr $ unsafeCoerce arrRGB)   
+                        (BitmapFormat BottomToTop PxABGR)
+                        (R.toForeignPtr $ unsafeCoerce arrRGB)
                                         -- the image data.
                         False           -- don't cache this in texture memory.
 
diff --git a/Graphics/Gloss/Raster/Field.hs b/Graphics/Gloss/Raster/Field.hs
--- a/Graphics/Gloss/Raster/Field.hs
+++ b/Graphics/Gloss/Raster/Field.hs
@@ -118,7 +118,7 @@
                 = return
                 $ makePicture winSizeX winSizeY zoomX zoomY (makePixel time)
 
-   in   animateFixedIO display black frame
+   in   animateFixedIO display black frame (const $ return ())
 {-# INLINE animateField #-}
 --  INLINE so the repa functions fuse with the users client functions.
 
@@ -205,11 +205,12 @@
         traceEventIO "Gloss.Raster[makePicture]: done, returning picture."
 
         -- Wrap the ForeignPtr from the Array as a gloss picture.
-        let picture     
+        let picture
                 = Scale (fromIntegral zoomX) (fromIntegral zoomY)
                 $ bitmapOfForeignPtr
                         sizeX sizeY     -- raw image size
-                        (R.toForeignPtr $ unsafeCoerce arrRGB)   
+                        (BitmapFormat BottomToTop PxABGR)
+                        (R.toForeignPtr $ unsafeCoerce arrRGB)
                                         -- the image data.
                         False           -- don't cache this in texture memory.
 
diff --git a/gloss-raster.cabal b/gloss-raster.cabal
--- a/gloss-raster.cabal
+++ b/gloss-raster.cabal
@@ -1,5 +1,5 @@
 Name:                gloss-raster
-Version:             1.9.4.1
+Version:             1.10.1.1
 License:             MIT
 License-file:        LICENSE
 Author:              Ben Lippmeier
@@ -27,13 +27,13 @@
         location:       https://github.com/benl23x5/gloss
 
 Library
-  Build-Depends: 
+  Build-Depends:
         base            == 4.8.*,
         ghc-prim        == 0.4.*,
         containers      == 0.5.*,
         repa            == 3.4.*,
-        gloss           == 1.9.4.*,
-        gloss-rendering == 1.9.3.*
+        gloss           == 1.10.*,
+        gloss-rendering == 1.10.*
 
   ghc-options:
         -Odph -fno-liberate-case
