Annotation of Net2/arch/i386/netboot/genprom.c, revision 1.1

1.1     ! root        1: /* netboot
        !             2:  *
        !             3:  * genprom.c,v
        !             4:  * Revision 1.1  1993/07/08  16:03:58  brezak
        !             5:  * Diskless boot prom code from Jim McKim ([email protected])
        !             6:  *
        !             7:  * Revision 1.2  1993/06/30  20:15:38  mckim
        !             8:  * Display code size.
        !             9:  *
        !            10:  * Revision 1.1.1.1  1993/05/28  11:41:06  mckim
        !            11:  * Initial version.
        !            12:  *
        !            13:  *
        !            14:  * Read a binary image of a bios extension, generate the
        !            15:  * appropriate block count and checksum and write them
        !            16:  * into the rom image (replacing 2nd and 5th bytes)
        !            17:  * The binary image should be sized before being filtered
        !            18:  * through this routine.
        !            19:  */
        !            20: 
        !            21: #include <stdio.h>
        !            22: 
        !            23: #define USE_SIZE ROM_SIZE
        !            24: #define PROM_SIZE 0x10000
        !            25: 
        !            26: main() {
        !            27:   char w[PROM_SIZE], ck;
        !            28:   int i, sum;
        !            29:   memset(w, 0xff, PROM_SIZE);
        !            30:   i = fread(w, 1, PROM_SIZE, stdin);
        !            31:   fprintf(stderr, "bios extension size: %d (0x%x), read %d bytes\n",
        !            32:          USE_SIZE, USE_SIZE, i);
        !            33:   w[2] = USE_SIZE / 512;
        !            34:   for (sum=0, i=0; i<USE_SIZE; i++) {
        !            35:     sum += w[i];
        !            36:   }
        !            37:   w[5] = -sum;
        !            38:   for (ck=0, i=0; i<USE_SIZE; i++) {
        !            39:     ck += w[i];
        !            40:   }
        !            41:   fwrite(w, 1, PROM_SIZE, stdout);
        !            42: }
        !            43:   

unix.superglobalmegacorp.com

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