summaryrefslogtreecommitdiff
path: root/image/test/reftest/bmp/bmpsuite/g
diff options
context:
space:
mode:
Diffstat (limited to 'image/test/reftest/bmp/bmpsuite/g')
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal1.bmpbin0 -> 1086 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal1.pngbin0 -> 586 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal1bg.bmpbin0 -> 1086 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal1bg.pngbin0 -> 604 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal1wb.bmpbin0 -> 1086 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal4.bmpbin0 -> 4198 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal4.pngbin0 -> 1428 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal4rle.bmpbin0 -> 3836 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8-0.bmpbin0 -> 9270 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8.bmpbin0 -> 9254 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8.pngbin0 -> 3772 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8nonsquare-e.pngbin0 -> 2513 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.bmpbin0 -> 5158 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.pngbin0 -> 2714 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8os2.bmpbin0 -> 8986 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8rle.bmpbin0 -> 8788 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8topdown.bmpbin0 -> 9254 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8v4.bmpbin0 -> 9322 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8v5.bmpbin0 -> 9338 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8w124.bmpbin0 -> 8626 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8w124.pngbin0 -> 3585 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8w125.bmpbin0 -> 8998 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8w125.pngbin0 -> 3628 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8w126.bmpbin0 -> 9126 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/pal8w126.pngbin0 -> 3714 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/reftest-stylo.list113
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/reftest.list112
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb16-565.bmpbin0 -> 16450 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb16-565.pngbin0 -> 1297 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb16-565pal.bmpbin0 -> 17474 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb16.bmpbin0 -> 16438 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb16.pngbin0 -> 1177 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb24.bmpbin0 -> 24630 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb24.pngbin0 -> 1072 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb24pal.bmpbin0 -> 25654 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb32.bmpbin0 -> 32566 bytes
-rw-r--r--image/test/reftest/bmp/bmpsuite/g/rgb32bf.bmpbin0 -> 32578 bytes
37 files changed, 225 insertions, 0 deletions
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal1.bmp b/image/test/reftest/bmp/bmpsuite/g/pal1.bmp
new file mode 100644
index 0000000000..4776f82778
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal1.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal1.png b/image/test/reftest/bmp/bmpsuite/g/pal1.png
new file mode 100644
index 0000000000..89a433ed76
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal1.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal1bg.bmp b/image/test/reftest/bmp/bmpsuite/g/pal1bg.bmp
new file mode 100644
index 0000000000..466d0ba727
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal1bg.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal1bg.png b/image/test/reftest/bmp/bmpsuite/g/pal1bg.png
new file mode 100644
index 0000000000..20c4bb838f
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal1bg.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal1wb.bmp b/image/test/reftest/bmp/bmpsuite/g/pal1wb.bmp
new file mode 100644
index 0000000000..56cb93203e
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal1wb.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal4.bmp b/image/test/reftest/bmp/bmpsuite/g/pal4.bmp
new file mode 100644
index 0000000000..7fd36303ca
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal4.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal4.png b/image/test/reftest/bmp/bmpsuite/g/pal4.png
new file mode 100644
index 0000000000..188bb0499e
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal4.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal4rle.bmp b/image/test/reftest/bmp/bmpsuite/g/pal4rle.bmp
new file mode 100644
index 0000000000..a5672aebd6
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal4rle.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8-0.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8-0.bmp
new file mode 100644
index 0000000000..ab8815a360
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8-0.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8.bmp
new file mode 100644
index 0000000000..96b2f86680
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8.png b/image/test/reftest/bmp/bmpsuite/g/pal8.png
new file mode 100644
index 0000000000..2bfd3e650f
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare-e.png b/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare-e.png
new file mode 100644
index 0000000000..646665f2d0
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare-e.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.bmp
new file mode 100644
index 0000000000..0aa8de04cb
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.png b/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.png
new file mode 100644
index 0000000000..9648cb6825
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8nonsquare.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8os2.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8os2.bmp
new file mode 100644
index 0000000000..14901b3882
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8os2.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8rle.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8rle.bmp
new file mode 100644
index 0000000000..d43101490f
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8rle.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8topdown.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8topdown.bmp
new file mode 100644
index 0000000000..4b2f8e019f
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8topdown.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8v4.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8v4.bmp
new file mode 100644
index 0000000000..7064be3154
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8v4.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8v5.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8v5.bmp
new file mode 100644
index 0000000000..c54647a31a
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8v5.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8w124.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8w124.bmp
new file mode 100644
index 0000000000..b7cc2d8bf7
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8w124.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8w124.png b/image/test/reftest/bmp/bmpsuite/g/pal8w124.png
new file mode 100644
index 0000000000..f80236df60
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8w124.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8w125.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8w125.bmp
new file mode 100644
index 0000000000..06efed7443
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8w125.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8w125.png b/image/test/reftest/bmp/bmpsuite/g/pal8w125.png
new file mode 100644
index 0000000000..2a45116b91
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8w125.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8w126.bmp b/image/test/reftest/bmp/bmpsuite/g/pal8w126.bmp
new file mode 100644
index 0000000000..112aa9fe67
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8w126.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/pal8w126.png b/image/test/reftest/bmp/bmpsuite/g/pal8w126.png
new file mode 100644
index 0000000000..a41eab93d0
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/pal8w126.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/reftest-stylo.list b/image/test/reftest/bmp/bmpsuite/g/reftest-stylo.list
new file mode 100644
index 0000000000..ba8a53b4f5
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/reftest-stylo.list
@@ -0,0 +1,113 @@
+# DO NOT EDIT! This is a auto-generated temporary list for Stylo testing
+# bmpsuite "good" tests
+
+# See ../README.mozilla for details.
+
+# BMP: bihsize=40, 127 x 64, bpp=1, compression=0, colors=2
+# "1 bit/pixel paletted image, in which black is the first color in the
+# palette."
+fails == pal1.bmp pal1.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=1, compression=0, colors=2
+# "1 bit/pixel paletted image, in which white is the first color in the
+# palette."
+fails == pal1wb.bmp pal1wb.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=1, compression=0, colors=2
+# "1 bit/pixel paletted image, with colors other than black and white."
+fails == pal1bg.bmp pal1bg.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=4, compression=0, colors=12
+# "Paletted image with 12 palette colors, and 4 bits/pixel."
+fails == pal4.bmp pal4.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=4, compression=2, colors=12
+# "4-bit image that uses RLE compression."
+== pal4rle.bmp pal4rle.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=8, compression=0, colors=252
+# "Our standard paletted image, with 252 palette colors, and 8 bits/pixel."
+fails == pal8.bmp pal8.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=8, compression=0, colors=0
+# "Every field that can be set to 0 is set to 0: pixels/meter=0; colors used=0
+# (meaning the default 256); size-of-image=0."
+fails == pal8-0.bmp pal8-0.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=8, compression=1, colors=252
+# "8-bit image that uses RLE compression."
+== pal8rle.bmp pal8rle.bmp
+
+# BMP: bihsize=40, 126 x 63, bpp=8, compression=0, colors=252
+# BMP: bihsize=40, 125 x 62, bpp=8, compression=0, colors=252
+# BMP: bihsize=40, 124 x 61, bpp=8, compression=0, colors=252
+# "Images with different widths and heights. In BMP format, rows are padded to
+# a multiple of four bytes, so we test all four possibilities."
+fails == pal8w126.bmp pal8w126.bmp
+fails == pal8w125.bmp pal8w125.bmp
+fails == pal8w124.bmp pal8w124.bmp
+
+# BMP: bihsize=40, 127 x -64, bpp=8, compression=0, colors=252
+# "BMP images are normally stored from the bottom up, but there is a way to
+# store them from the top down."
+fails == pal8topdown.bmp pal8topdown.bmp
+
+# BMP: bihsize=40, 127 x 32, bpp=8, compression=0, colors=252
+# "An image with non-square pixels: the X pixels/meter is twice the Y
+# pixels/meter. Image editors can be expected to leave the image 'squashed';
+# image viewers should consider stretching it to its correct proportions."
+# [We leave it squashed, as does Chromium.]
+fails == pal8nonsquare.bmp pal8nonsquare.bmp
+
+# BMP: bihsize=12, 127 x 64, bpp=8, compression=0, colors=0
+# "An OS/2-style bitmap."
+fails == pal8os2.bmp pal8os2.bmp
+
+# BMP: bihsize=108, 127 x 64, bpp=8, compression=0, colors=252
+# "A v4 bitmap. I’m not sure that the gamma and chromaticity values in this
+# file are sensible, because I can’t find any detailed documentation of them."
+fails == pal8v4.bmp pal8v4.bmp
+
+# BMP: bihsize=124, 127 x 64, bpp=8, compression=0, colors=252
+# "A v5 bitmap. Version 5 has additional colorspace options over v4, so it is
+# easier to create, and ought to be more portable."
+fails == pal8v5.bmp pal8v5.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=16, compression=0, colors=0
+# "A 16-bit image with the default color format: 5 bits each for red, green, and
+# blue, and 1 unused bit. The whitest colors should (I assume) be displayed as
+# pure white: (255,255,255), not (248,248,248)."
+fails == rgb16.bmp rgb16.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=16, compression=3, colors=0
+# "A 16-bit image with a BITFIELDS segment indicating 5 red, 6 green, and 5 blue
+# bits. This is a standard 16-bit format, even supported by old versions of
+# Windows that don’t support any other non-default 16-bit formats. The whitest
+# colors should be displayed as pure white: (255,255,255), not (248,252,248)."
+== rgb16.bmp rgb16.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=16, compression=3, colors=256
+# "A 16-bit image with both a BITFIELDS segment and a palette."
+== rgb16.bmp rgb16.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=24, compression=0, colors=0
+# "A perfectly ordinary 24-bit (truecolor) image."
+fails == rgb24.bmp rgb24.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=24, compression=0, colors=256
+# "A 24-bit image, with a palette containing 256 colors. There is little if any
+# reason for a truecolor image to contain a palette, but it is legal."
+fails == rgb24pal.bmp rgb24pal.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=32, compression=0, colors=0
+# "A 32-bit image using the default color format for 32-bit images (no
+# BITFIELDS segment). There are 8 bits per color channel, and 8 unused bits.
+# The unused bits are set to 0."
+skip == rgb32.bmp rgb32.bmp
+
+# BMP: bihsize=40, 127 x 64, bpp=32, compression=3, colors=0
+# "A 32-bit image with a BITFIELDS segment. As usual, there are 8 bits per color
+# channel, and 8 unused bits. But the color channels are in an unusual order,
+# so the viewer must read the BITFIELDS, and not just guess."
+fails == rgb32bf.bmp rgb32bf.bmp
+
diff --git a/image/test/reftest/bmp/bmpsuite/g/reftest.list b/image/test/reftest/bmp/bmpsuite/g/reftest.list
new file mode 100644
index 0000000000..9715b1ac82
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/reftest.list
@@ -0,0 +1,112 @@
+# bmpsuite "good" tests
+
+# See ../README.mozilla for details.
+
+# BMP: bihsize=40, 127 x 64, bpp=1, compression=0, colors=2
+# "1 bit/pixel paletted image, in which black is the first color in the
+# palette."
+== pal1.bmp pal1.png
+
+# BMP: bihsize=40, 127 x 64, bpp=1, compression=0, colors=2
+# "1 bit/pixel paletted image, in which white is the first color in the
+# palette."
+== pal1wb.bmp pal1.png
+
+# BMP: bihsize=40, 127 x 64, bpp=1, compression=0, colors=2
+# "1 bit/pixel paletted image, with colors other than black and white."
+== pal1bg.bmp pal1bg.png
+
+# BMP: bihsize=40, 127 x 64, bpp=4, compression=0, colors=12
+# "Paletted image with 12 palette colors, and 4 bits/pixel."
+== pal4.bmp pal4.png
+
+# BMP: bihsize=40, 127 x 64, bpp=4, compression=2, colors=12
+# "4-bit image that uses RLE compression."
+== pal4rle.bmp pal4.png
+
+# BMP: bihsize=40, 127 x 64, bpp=8, compression=0, colors=252
+# "Our standard paletted image, with 252 palette colors, and 8 bits/pixel."
+fuzzy(1,899) == pal8.bmp pal8.png
+
+# BMP: bihsize=40, 127 x 64, bpp=8, compression=0, colors=0
+# "Every field that can be set to 0 is set to 0: pixels/meter=0; colors used=0
+# (meaning the default 256); size-of-image=0."
+fuzzy(1,899) == pal8-0.bmp pal8.png
+
+# BMP: bihsize=40, 127 x 64, bpp=8, compression=1, colors=252
+# "8-bit image that uses RLE compression."
+fuzzy(1,899) == pal8rle.bmp pal8.png
+
+# BMP: bihsize=40, 126 x 63, bpp=8, compression=0, colors=252
+# BMP: bihsize=40, 125 x 62, bpp=8, compression=0, colors=252
+# BMP: bihsize=40, 124 x 61, bpp=8, compression=0, colors=252
+# "Images with different widths and heights. In BMP format, rows are padded to
+# a multiple of four bytes, so we test all four possibilities."
+fuzzy(1,889) == pal8w126.bmp pal8w126.png
+fuzzy(1,879) == pal8w125.bmp pal8w125.png
+fuzzy(1,869) == pal8w124.bmp pal8w124.png
+
+# BMP: bihsize=40, 127 x -64, bpp=8, compression=0, colors=252
+# "BMP images are normally stored from the bottom up, but there is a way to
+# store them from the top down."
+fuzzy(1,899) == pal8topdown.bmp pal8.png
+
+# BMP: bihsize=40, 127 x 32, bpp=8, compression=0, colors=252
+# "An image with non-square pixels: the X pixels/meter is twice the Y
+# pixels/meter. Image editors can be expected to leave the image 'squashed';
+# image viewers should consider stretching it to its correct proportions."
+# [We leave it squashed, as does Chromium.]
+fuzzy(1,473) == pal8nonsquare.bmp pal8nonsquare-e.png
+
+# BMP: bihsize=12, 127 x 64, bpp=8, compression=0, colors=0
+# "An OS/2-style bitmap."
+fuzzy(1,899) == pal8os2.bmp pal8.png
+
+# BMP: bihsize=108, 127 x 64, bpp=8, compression=0, colors=252
+# "A v4 bitmap. I’m not sure that the gamma and chromaticity values in this
+# file are sensible, because I can’t find any detailed documentation of them."
+fuzzy(1,899) == pal8v4.bmp pal8.png
+
+# BMP: bihsize=124, 127 x 64, bpp=8, compression=0, colors=252
+# "A v5 bitmap. Version 5 has additional colorspace options over v4, so it is
+# easier to create, and ought to be more portable."
+fuzzy(1,899) == pal8v5.bmp pal8.png
+
+# BMP: bihsize=40, 127 x 64, bpp=16, compression=0, colors=0
+# "A 16-bit image with the default color format: 5 bits each for red, green, and
+# blue, and 1 unused bit. The whitest colors should (I assume) be displayed as
+# pure white: (255,255,255), not (248,248,248)."
+fuzzy(1,1296) == rgb16.bmp rgb16.png
+
+# BMP: bihsize=40, 127 x 64, bpp=16, compression=3, colors=0
+# "A 16-bit image with a BITFIELDS segment indicating 5 red, 6 green, and 5 blue
+# bits. This is a standard 16-bit format, even supported by old versions of
+# Windows that don’t support any other non-default 16-bit formats. The whitest
+# colors should be displayed as pure white: (255,255,255), not (248,252,248)."
+fuzzy(1,1296) == rgb16.bmp rgb16.png
+
+# BMP: bihsize=40, 127 x 64, bpp=16, compression=3, colors=256
+# "A 16-bit image with both a BITFIELDS segment and a palette."
+fuzzy(1,1516) == rgb16.bmp rgb16.png
+
+# BMP: bihsize=40, 127 x 64, bpp=24, compression=0, colors=0
+# "A perfectly ordinary 24-bit (truecolor) image."
+== rgb24.bmp rgb24.png
+
+# BMP: bihsize=40, 127 x 64, bpp=24, compression=0, colors=256
+# "A 24-bit image, with a palette containing 256 colors. There is little if any
+# reason for a truecolor image to contain a palette, but it is legal."
+== rgb24pal.bmp rgb24.png
+
+# BMP: bihsize=40, 127 x 64, bpp=32, compression=0, colors=0
+# "A 32-bit image using the default color format for 32-bit images (no
+# BITFIELDS segment). There are 8 bits per color channel, and 8 unused bits.
+# The unused bits are set to 0."
+== rgb32.bmp rgb24.png
+
+# BMP: bihsize=40, 127 x 64, bpp=32, compression=3, colors=0
+# "A 32-bit image with a BITFIELDS segment. As usual, there are 8 bits per color
+# channel, and 8 unused bits. But the color channels are in an unusual order,
+# so the viewer must read the BITFIELDS, and not just guess."
+== rgb32bf.bmp rgb24.png
+
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb16-565.bmp b/image/test/reftest/bmp/bmpsuite/g/rgb16-565.bmp
new file mode 100644
index 0000000000..c03a27975a
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb16-565.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb16-565.png b/image/test/reftest/bmp/bmpsuite/g/rgb16-565.png
new file mode 100644
index 0000000000..04a3121d24
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb16-565.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb16-565pal.bmp b/image/test/reftest/bmp/bmpsuite/g/rgb16-565pal.bmp
new file mode 100644
index 0000000000..e7632e344b
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb16-565pal.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb16.bmp b/image/test/reftest/bmp/bmpsuite/g/rgb16.bmp
new file mode 100644
index 0000000000..6bfe47af4f
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb16.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb16.png b/image/test/reftest/bmp/bmpsuite/g/rgb16.png
new file mode 100644
index 0000000000..d9545840ab
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb16.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb24.bmp b/image/test/reftest/bmp/bmpsuite/g/rgb24.bmp
new file mode 100644
index 0000000000..40f8bb094b
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb24.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb24.png b/image/test/reftest/bmp/bmpsuite/g/rgb24.png
new file mode 100644
index 0000000000..86a9c945b0
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb24.png
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb24pal.bmp b/image/test/reftest/bmp/bmpsuite/g/rgb24pal.bmp
new file mode 100644
index 0000000000..102e971dd3
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb24pal.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb32.bmp b/image/test/reftest/bmp/bmpsuite/g/rgb32.bmp
new file mode 100644
index 0000000000..5d57eaaea8
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb32.bmp
Binary files differ
diff --git a/image/test/reftest/bmp/bmpsuite/g/rgb32bf.bmp b/image/test/reftest/bmp/bmpsuite/g/rgb32bf.bmp
new file mode 100644
index 0000000000..20fa9a1326
--- /dev/null
+++ b/image/test/reftest/bmp/bmpsuite/g/rgb32bf.bmp
Binary files differ