Annotation of coherent/b/kernel/tools/biosports.c, revision 1.1

1.1     ! root        1: /* biosports.c - report com1-4 and lpt1-3 */
        !             2: 
        !             3: #include <fcntl.h>
        !             4: 
        !             5: /* a machine-dependent structure */
        !             6: struct bports {
        !             7:        short com[4];
        !             8:        short lpt[3];
        !             9: } bp;
        !            10: 
        !            11: #define MEM_FILE       "/dev/mem"
        !            12: #define SBP            sizeof(bp)
        !            13: #define PORTADDR       0x400
        !            14: 
        !            15: main()
        !            16: {
        !            17:        int fd, i, res;
        !            18: 
        !            19:        if ((fd = open(MEM_FILE, O_RDONLY)) < 0) {
        !            20:                printf("Can't open %s\n", MEM_FILE);
        !            21:                exit(1);
        !            22:        }
        !            23: 
        !            24:        if (lseek(fd, PORTADDR, 0) != PORTADDR) {
        !            25:                printf("Can't lseek to offset %d in %s\n", PORTADDR, MEM_FILE);
        !            26:                exit(1);
        !            27:        }
        !            28: 
        !            29:        if ((res = read(fd, &bp, SBP)) != SBP) {
        !            30:                printf("Can't read %d bytes from %s\n", SBP, MEM_FILE);
        !            31:                printf("res = %d  ");
        !            32:                perror("read");
        !            33:                exit(1);
        !            34:        }
        !            35: 
        !            36:        for (i = 0; i < 4; i++)
        !            37:                printf("com%d = 0x%04x\n", i+1, bp.com[i]);
        !            38: 
        !            39:        for (i = 0; i < 3; i++)
        !            40:                printf("lpt%d = 0x%04x\n", i+1, bp.lpt[i]);
        !            41: 
        !            42:        close(fd);
        !            43:        exit(0);
        !            44: }

unix.superglobalmegacorp.com

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