PROGMEM: storing and retrieving unsigned long data

I tried using pgm_read_dword to read my MAPGreen string, but it does not seem to work

My reading code: (simplified

for(int x = 0; x < 20; x++){
  for(int y = 0; y < 20; y++){
    if((bitRead(pgm_read_dword(MAPGreen[y]), x) == 1){
      locationX = x;
      locationY = y;
    }
  }
}