The way your array is defined appears to give strange results. This modified version works, and note that only the progmem access works, not the direct access.
byte PROGMEM BitMap [8] = { 22, 33, 44, 55, 66, 77, 88, 99 };
void setup()
{
Serial.begin(115200);
}
void loop()
{
for (int i = 0; i < 8; i++)
{
Serial.print(BitMap[i]);
Serial.print(" ");
Serial.print(pgm_read_byte (&BitMap[i]));
Serial.println ();
}
while (true); // loop forever
}
Output:
0 22
0 33
184 44
0 55
0 66
0 77
1 88
0 99