1
0
mirror of https://github.com/rcornwell/sims.git synced 2026-02-02 06:41:52 +00:00

I7000: Fixed end of line printer output be DOS compatible.

This commit is contained in:
Richard Cornwell
2017-12-02 14:54:20 -05:00
parent d609e81f66
commit 4625870e02
2 changed files with 14 additions and 12 deletions

View File

@@ -214,6 +214,7 @@ print_line(UNIT * uptr, int chan, int unit)
/* Trim trailing spaces */
for (--i; i > 0 && out[i] == ' '; i--) ;
out[++i] = '\r';
out[++i] = '\n';
out[++i] = '\0';
sim_debug(DEBUG_DETAIL, &lpr_dev, "WRS unit=%d [%s]\n", unit, &out[0]);
@@ -236,14 +237,15 @@ print_line(UNIT * uptr, int chan, int unit)
i = (uptr->u5 >> 12) & 0x7f;
if (i == 0) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\r", 1, 1, uptr->fileref);
sim_fwrite("\r\n", 1, 2, uptr->fileref);
if (uptr->flags & ECHO)
sim_putchar('\r');
} else {
for (; i > 1; i--) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\n", 1, 1, uptr->fileref);
sim_fwrite("\r\n", 1, 2, uptr->fileref);
if (uptr->flags & ECHO)
sim_putchar('\r');
sim_putchar('\n');
uptr->u4++;
if (uptr->u4 > (int32)uptr->capac) {
@@ -329,7 +331,7 @@ uint32 lpr_cmd(UNIT * uptr, uint16 cmd, uint16 dev)
case 040: /* Space before */
for (i = dev & 03; i > 1; i--) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\n", 1, 1, uptr->fileref);
sim_fwrite("\r\n", 1, 2, uptr->fileref);
if (uptr->flags & ECHO) {
sim_putchar('\r');
sim_putchar('\n');
@@ -356,7 +358,7 @@ uint32 lpr_cmd(UNIT * uptr, uint16 cmd, uint16 dev)
}
for (; i > 0; i--) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\n", 1, 1, uptr->fileref);
sim_fwrite("\r\n", 1, 2, uptr->fileref);
if (uptr->flags & ECHO) {
sim_putchar('\r');
sim_putchar('\n');

View File

@@ -175,10 +175,10 @@ print_line(UNIT * uptr, int chan, int unit)
if (outsel & PRINT_3) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\n\r", 1, 4, uptr->fileref);
sim_fwrite("\r\n", 1, 2, uptr->fileref);
if (uptr->flags & ECHO) {
sim_putchar('\n');
sim_putchar('\r');
sim_putchar('\n');
}
uptr->u5 &= ~LPRSTA_COL72;
uptr->u4++;
@@ -186,12 +186,12 @@ print_line(UNIT * uptr, int chan, int unit)
if (outsel & PRINT_4) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\n\r\n\r", 1, 6, uptr->fileref);
sim_fwrite("\r\n\r\n", 1, 4, uptr->fileref);
if (uptr->flags & ECHO) {
sim_putchar('\n');
sim_putchar('\r');
sim_putchar('\n');
sim_putchar('\r');
sim_putchar('\n');
}
uptr->u5 &= ~LPRSTA_COL72;
uptr->u4++;
@@ -281,10 +281,10 @@ print_line(UNIT * uptr, int chan, int unit)
/* Space printer */
if (outsel & PRINT_2) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\n\r", 1, 2, uptr->fileref);
sim_fwrite("\r\n", 1, 2, uptr->fileref);
if (uptr->flags & ECHO) {
sim_putchar('\n');
sim_putchar('\r');
sim_putchar('\n');
}
uptr->u4++;
}
@@ -292,10 +292,10 @@ print_line(UNIT * uptr, int chan, int unit)
if (outsel & PRINT_1) {
while (uptr->u4 < (int32)uptr->capac) {
if (uptr->flags & UNIT_ATT)
sim_fwrite("\n\r", 1, 2, uptr->fileref);
sim_fwrite("\r\n", 1, 2, uptr->fileref);
if (uptr->flags & ECHO) {
sim_putchar('\n');
sim_putchar('\r');
sim_putchar('\n');
}
uptr->u4++;
}