mknote.c 876 B

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. /*
  2. * Copyright (C) Cort Dougan 1999.
  3. *
  4. * This program is free software; you can redistribute it and/or
  5. * modify it under the terms of the GNU General Public License
  6. * as published by the Free Software Foundation; either version
  7. * 2 of the License, or (at your option) any later version.
  8. *
  9. * Generate a note section as per the CHRP specification.
  10. *
  11. */
  12. #include <stdio.h>
  13. #define PL(x) printf("%c%c%c%c", ((x)>>24)&0xff, ((x)>>16)&0xff, ((x)>>8)&0xff, (x)&0xff );
  14. int main(void)
  15. {
  16. /* header */
  17. /* namesz */
  18. PL(strlen("PowerPC")+1);
  19. /* descrsz */
  20. PL(6*4);
  21. /* type */
  22. PL(0x1275);
  23. /* name */
  24. printf("PowerPC"); printf("%c", 0);
  25. /* descriptor */
  26. /* real-mode */
  27. PL(0xffffffff);
  28. /* real-base */
  29. PL(0x00c00000);
  30. /* real-size */
  31. PL(0xffffffff);
  32. /* virt-base */
  33. PL(0xffffffff);
  34. /* virt-size */
  35. PL(0xffffffff);
  36. /* load-base */
  37. PL(0x4000);
  38. return 0;
  39. }