ramseg.h 382 B

12345678910111213141516
  1. #ifndef __RAMSEG_H__
  2. #define __RAMSEG_H__
  3. #define RAMSEG int
  4. #define RAMSEGBITS 4
  5. #define DOUBLEBITS 8 /* 2 * ramsegbits */
  6. #define SEGLENLESS 15 /* 2 ^ ramsegbits - 1 */
  7. #define SEG_INDEX(s,r,c) (int) \
  8. (((((r) >> RAMSEGBITS) * (s) + ((c) >> RAMSEGBITS)) << DOUBLEBITS) \
  9. + (((r) & SEGLENLESS) << RAMSEGBITS) + ((c) & SEGLENLESS))
  10. #endif /* __RAMSEG_H__ */