Both the P96 and CGX developer APIs are available.
Even if you just use CGX v3 functionality you will be compatible with a broad range of systems.
For chunky pixel access to a BitMap under CGX, all you need to do is use LockBitMapTags(), having first ensured that the bitmap is a CGX compatible one. Things like allocating, freeing, blitting etc are still handled by the normal graphics.library.