#include #include #include #include "port.h" void send(int); long filelength(FILE *); int main(int argc, char *argv[]) { int i; long length; FILE *f; char name[255]; long start, end; unsigned char *buffer; if (argc < 3) { printf ("Usage: %s
\n\n", argv[0]); exit (EXIT_FAILURE); } ioperm (0x378, 3, 1); port_out (0x379, 255); /* Clear data */ port_out (0x378, 0); strcpy (name, argv[1]); sscanf (argv[2], "%lx", &start); if ((f = fopen(argv[1], "r")) != NULL) { length = filelength(f); end = start+length; printf ("Sending file: %s\n", argv[1]); printf ("Length: %.4lX\n", length); printf ("Start Address: %.4lX\n", start); printf ("End Address: %.4lX\n", end); buffer = malloc(length); fread(buffer, 1, length, f); fclose (f); send (0); send (start & 0x00FF); send ((start & 0xFF00) >> 8); send (end & 0x00FF); send ((end & 0xFF00) >> 8); printf ("Connected...\n"); for (i=0; i