Bpp of 2 is invalid unless you are translating something...
LD HL,0B140H ; set X[3] to 320
CALL send_gpu
LD HL,7102H ; set dest raster width to X[3] and bpp to 2
bpp 0 = 1 bit color, 2 colors
bpp 1 = 2 bit color, 4 colors
bpp 3 = 4 bit color, 16 colors
bpp 7 = 8 bit color, 256 colors
bpp 15 = 16 bit color, 65536 true colors
(we can change these numbers to bpp 0,1,2,3, & 4, or even match the maggie color settings as they are look up table driven.)
Your maggie must match the number of color bits as well. But remember, it's setting orientation may be different.
Also, in the maggie, when you have 4 bit color, it's screen bytes/line setting isn't 320, it's width setting is set in bytes/line. Since each line is 320 pixels and there are 2 pixels in a byte, then the maggie bytes/line should be set to 180.