Hmm, in der Hilfe steht..
"Nur 16-Bit-Bitmaps von PCX oder BMP Bilddateien können verwendet werden. Die modifizierte Bitmap wird mit game_save gesichert, ist aber frühestens einen Framezyklus nach der bmap_for_screen-Anweisung verfügbar (fügen Sie wait(1) ein). "
"depth -
Farbtiefe 0 keine Änderung
16 16 bit / high color
32 32 bit / true color
"
Nun die Frage:
Hast du standart 32 Bit? dann wird das GameStudio wohl übernehmen und dadurch hast du nicht die bedingungen für bmap_for_screen erfüllt, die da währen "nur 16-Bit..."
und da steht noch "... füge ein Wait(1) ein.. " was ich bei dir auch nicht sehe..

Ich hab noch nie mit screenshots gearbeitet, aber so wie's in der Hilfe steht würde das zu deinem Problem passen..
Hoffe hat dir geholfen!
PS: ich arbeite in der Main mit ON_P = grab_screen();.. ich habs so in nem Tutorial gelernt, und nu frage ich mich was besser ist? deine Version oder meine?