Annotation of Net2/arch/i386/netboot/genprom.c, revision 1.1.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.