You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

exeprefix.S 941B

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. /*
  2. Prefix for .exe images
  3. Doesn't work yet, even though it starts off the same as a .com
  4. image as shown by DOS debug.
  5. */
  6. .text
  7. .code16
  8. .arch i386
  9. .section ".prefix", "ax", @progbits
  10. _prefix:
  11. .byte 'M', 'Z'
  12. .short _exe_size_tail /* tail */
  13. .short _exe_size_pages /* pages */
  14. .short 0 /* relocations */
  15. .short 2 /* header paras */
  16. .short _exe_bss_size /* min */
  17. .short 0xFFFF /* max paras */
  18. .short _exe_ss_offset /* SS */
  19. .short _stack_size /* SP */
  20. .short 0 /* checksum */
  21. .short 0 /* IP */
  22. .short 0 /* CS */
  23. .short 0x1C /* reloc offset */
  24. .short 0 /* overlay number */
  25. .short 0 /* fill */
  26. .short 0 /* fill */
  27. .section ".text16", "ax", @progbits
  28. prefix_exit:
  29. movw $0x4c00,%ax /* return to DOS */
  30. int $0x21 /* reach this on Quit */
  31. prefix_exit_end:
  32. .previous
  33. /* The body of etherboot is attached here at build time.
  34. * Force 16 byte alignment
  35. */
  36. .align 16,0
  37. _body: