AmigaOS 4.0


IBrowse - Get It

Valid XHTML 1.0!


RegisterRegister Now
Bug Tracker
Futaura.co.uk / Oliver Roberts
· WarpBMP.datatype
A fast 24-bit capable BMP picture datatype!
For 68k, OS4, WarpOS and MorphOS.
Copyright © 2000-2020 Oliver Roberts, All Rights Reserved.
Version: 45.8
Released: 9 May 2020

WarpBMP.datatype is a datatype which allows you to view and read Windows or OS/2 BMP image files. A unique feature of this particular BMP datatype is that in addition to supporting the 68k (with optimized versions for 020, 030, 040 and 060), it also supports the PowerPC processor, with native OS4, WarpOS and MorphOS versions. Even better, it is fast, compact, clean and well behaved - a true plug'n'play PPC datatype. One of the key features is its superior speed, hence the name WarpBMP. This datatype uses the same engine as used by my other WarpDTs. There are various user settings available, which can be changed using the WarpDT Preferences program.

· Features

  • Supports common BMP file types, including both Windows and OS/2 BMP formats. These include BMP images with a bit depth of 1, 4, 8, 16, 24 and 32, and also all RLE compressed BMP files
  • Highly optimized datatype dispatch engine and BMP decoder, resulting in a very efficient, compact and quick BMP datatype
  • Asynchronous file i/o and double buffering techniques (WarpOS only), which speeds up image decoding
  • Optimized versions for 68020, 030, 040 and 060
  • PowerPC support with native OS4, WarpOS and MorphOS versions
  • Alter the pen allocation precision when images are remapped to an 8-bit display
  • Specific support for the AmigaOS picture.datatype v44+, when available
  • The dithering feature of the AmigaOS picture.datatype v44+ can be configured to your liking (e.g. disabled for 15/16-bit displays)
Warp Datatypes

· Speed

The table below shows the time (in seconds) it took to decode 8 different images on my A1200 603e/240MHz 060/50MHz, with BVision and CGX picture.datatype, with other tested datatypes configured as close as possible to WarpBMP's internal settings. However, due to the nature of BMP files (mostly uncompressed, and even the RLE compression used in compressed files is not all that good, and needs nowhere near as much CPU power as JPEG and PNG, for example), don't expect miracles from the PPC versions.

Really, there wasn't much to benchmark my datatype against, apart from Gunther Nikl's BMP datatype. And, as you can see, there's really not a lot in it in terms of speed. The main points to note is that WarpBMP is much faster at decoding compressed BMPs, with the PPC versions also being faster than the 68K version. With uncompressed images, the WarpOS version is around about the same speed as the 68K version, which is not really that surprising. Notabably, the MorphOS version won all speed tests, except for BMP files that are small in size.

Benchmarked system
A1200 + BlizzardPPC 603e+/240MHz 060/50MHz,
BVision, CGX picture.datatype + SCSI2SD V6
PowerPC M68K
WarpPNG 45.8MOS
BMPdt 40.15
C= v42
PicDT 39.4
578x800 24-bit, 1388854 bytes0.310.250.280.350.35x
450x366 24-bit, 494886 bytes0.
630x422 24-bit RLE compressed, 794004 bytes0.190.18x0.24xx
320x240 16-bit, 153654 bytes0.
914x891 8-bit RLE compressed, 573662 bytes0.
640x480 8-bit RLE compressed, 308246 bytes0.
800x600 8-bit, 481080 bytes0.
320x188 4-bit, 30198 bytes0.
791x495 1-bit, 47852 bytes0.

(x = not supported)

Note: all tests were performed, multiple times, using Visage, with the following command line: "visage test.bmp time test".

· System Requirements

68k version

  • Kickstart 3.0 or higher
  • 68020 processor or higher (optimized versions included)
  • picture.datatype v43 or higher (supplied with AmigaOS 3.1.4, 3.2, 3.5, 3.9, CyberGraphX, P96 or AfA OS)
WarpOS version
  • Kickstart 3.0 or higher
  • PPC accelerator card + 68040/060
  • WarpUp Release 5.0 or higher
  • picture.datatype v43 or higher (supplied with AmigaOS 3.1.4, 3.2, 3.5, 3.9, CyberGraphX, P96 or AfA OS)
OS4 version
  • PPC accelerator card / AmigaOne / SAM
  • AmigaOS 4.0 or higher
MorphOS version
  • PPC accelerator card / Pegasos / Efika
  • MorphOS 1.4 or higher
Note that a graphics card is not necessary.

Page design by Oliver Roberts - Copyright © 2001-2024, All Rights Reserved - Terms & Conditions