Annotation of qemu/roms/ipxe/src/arch/i386/prefix/nbiprefix.S, revision 1.1.1.1

1.1       root        1:        .text
                      2:        .arch i386
                      3:        .code16
                      4:        .section ".prefix", "ax", @progbits
                      5:        .org 0
                      6: 
                      7: nbi_header:
                      8:        
                      9: /*****************************************************************************
                     10:  * NBI file header
                     11:  *****************************************************************************
                     12:  */
                     13: file_header:
                     14:        .long   0x1b031336      /* Signature */
                     15:        .byte   0x04            /* 16 bytes header, no vendor info */
                     16:        .byte   0
                     17:        .byte   0
                     18:        .byte   0               /* No flags */
                     19:        .word   0x0000, 0x07c0  /* Load header to 0x07c0:0x0000 */
                     20:        .word   _nbi_start, 0x07c0      /* Start execution at 0x07c0:entry */
                     21:        .size   file_header, . - file_header
                     22: 
                     23: /*****************************************************************************
                     24:  * NBI segment header
                     25:  *****************************************************************************
                     26:  */
                     27: segment_header:
                     28:        .byte   0x04            /* 16 bytes header, no vendor info */
                     29:        .byte   0
                     30:        .byte   0
                     31:        .byte   0x04            /* Last segment */
                     32:        .long   0x00007e00
                     33: imglen:        .long   -512
                     34: memlen:        .long   -512
                     35:        .size   segment_header, . - segment_header
                     36: 
                     37:        .section ".zinfo.fixup", "a", @progbits /* Compressor fixups */
                     38:        .ascii  "ADDL"
                     39:        .long   imglen
                     40:        .long   1
                     41:        .long   0
                     42:        .ascii  "ADDL"
                     43:        .long   memlen
                     44:        .long   1
                     45:        .long   0
                     46:        .previous
                     47: 
                     48: /*****************************************************************************
                     49:  * NBI entry point
                     50:  *****************************************************************************
                     51:  */
                     52:        .globl  _nbi_start
                     53: _nbi_start:
                     54:        /* Install iPXE */
                     55:        call    install
                     56: 
                     57:        /* Jump to .text16 segment */
                     58:        pushw   %ax
                     59:        pushw   $1f
                     60:        lret
                     61:        .section ".text16", "awx", @progbits
                     62: 1:
                     63:        pushl   $main
                     64:        pushw   %cs
                     65:        call    prot_call
                     66:        popl    %ecx /* discard */
                     67: 
                     68:        /* Uninstall iPXE */
                     69:        call    uninstall
                     70: 
                     71:        /* Reboot system */
                     72:        int $0x19
                     73: 
                     74:        .previous
                     75:        .size   _nbi_start, . - _nbi_start
                     76: 
                     77: nbi_header_end:
                     78:        .org 512

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.