diff options
Diffstat (limited to 'emulators/hercules/files/patch-af')
-rw-r--r-- | emulators/hercules/files/patch-af | 64 |
1 files changed, 64 insertions, 0 deletions
diff --git a/emulators/hercules/files/patch-af b/emulators/hercules/files/patch-af new file mode 100644 index 000000000000..ab64f9b2275a --- /dev/null +++ b/emulators/hercules/files/patch-af @@ -0,0 +1,64 @@ +diff -uNr tapecopy.c +--- tapecopy.c Thu Nov 29 07:53:46 2001 ++++ tapecopy.c Thu Jan 17 14:04:09 2002 +@@ -32,6 +32,7 @@ + static BYTE hdrlbl[] = "\xC8\xC4\xD9"; /* EBCDIC characters "HDR" */ + static BYTE eoflbl[] = "\xC5\xD6\xC6"; /* EBCDIC characters "EOF" */ + static BYTE eovlbl[] = "\xC5\xD6\xE5"; /* EBCDIC characters "EOV" */ ++#ifdef GNU_MTIO_SUPPORT + static struct mt_tape_info tapeinfo[] = MT_TAPE_INFO; + static struct mt_tape_info densinfo[] = { + {0x01, "NRZI (800 bpi)"}, +@@ -59,6 +60,7 @@ + {0x8C, "EXB-8505 compressed"}, + {0x90, "EXB-8205 compressed"}, + {0, NULL}}; ++#endif + static BYTE buf[65500]; + + /*-------------------------------------------------------------------*/ +@@ -71,6 +73,7 @@ + /*-------------------------------------------------------------------*/ + static void print_status (BYTE *devname, long stat) + { ++#ifdef GNU_MTIO_SUPPORT + printf ("%s status: %8.8lX", devname, stat); + if (GMT_EOF(stat)) printf (" EOF"); + if (GMT_BOT(stat)) printf (" BOT"); +@@ -84,6 +87,7 @@ + if (GMT_D_800(stat)) printf (" 800"); + if (GMT_DR_OPEN(stat)) printf (" NOTAPE"); + printf ("\n"); ++#endif + + } /* end function print_status */ + +@@ -104,10 +108,12 @@ + return -1; + } + ++#ifdef GNU_MTIO_SUPPORT + print_status (devname, stblk.mt_gstat); + + if (GMT_EOD(stblk.mt_gstat)) return 1; + if (GMT_EOT(stblk.mt_gstat)) return 1; ++#endif + + return 0; + } /* end function print_status */ +@@ -174,6 +180,7 @@ + exit (7); + } + ++#ifdef GNU_MTIO_SUPPORT + /* Display tape status information */ + for (i = 0; tapeinfo[i].t_type != 0 + && tapeinfo[i].t_type != stblk.mt_type; i++); +@@ -201,6 +208,7 @@ + + /* Set the tape device to process variable length blocks */ + opblk.mt_op = MTSETBLK; ++#endif + opblk.mt_count = 0; + rc = ioctl (devfd, MTIOCTOP, (char*)&opblk); + if (rc < 0) |