1234567891011121314151617181920212223242526272829303132333435363738394041 |
- /*
- Prefix for .exe images
- Doesn't work yet, even though it starts off the same as a .com
- image as shown by DOS debug.
- */
-
- .text
- .code16
- .arch i386
- .section ".prefix", "ax", @progbits
-
- _prefix:
- .byte 'M', 'Z'
- .short _exe_size_tail /* tail */
- .short _exe_size_pages /* pages */
- .short 0 /* relocations */
- .short 2 /* header paras */
- .short _exe_bss_size /* min */
- .short 0xFFFF /* max paras */
- .short _exe_ss_offset /* SS */
- .short _stack_size /* SP */
- .short 0 /* checksum */
- .short 0 /* IP */
- .short 0 /* CS */
- .short 0x1C /* reloc offset */
- .short 0 /* overlay number */
- .short 0 /* fill */
- .short 0 /* fill */
-
- .section ".text16", "ax", @progbits
- prefix_exit:
- movw $0x4c00,%ax /* return to DOS */
- int $0x21 /* reach this on Quit */
- prefix_exit_end:
- .previous
-
- /* The body of etherboot is attached here at build time.
- * Force 16 byte alignment
- */
- .align 16,0
- _body:
|