summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--emulators/doscmd/files/patch-desqview-timeslice36
-rw-r--r--emulators/doscmd/files/patch-quietmode317
2 files changed, 0 insertions, 353 deletions
diff --git a/emulators/doscmd/files/patch-desqview-timeslice b/emulators/doscmd/files/patch-desqview-timeslice
deleted file mode 100644
index 0e5c085..0000000
--- a/emulators/doscmd/files/patch-desqview-timeslice
+++ /dev/null
@@ -1,36 +0,0 @@
---- /usr/ports/emulators/doscmd/work/doscmd-20040330/bios.c Mon Mar 29 16:00:00 2004
-+++ bios.c Mon May 1 18:39:31 2006
-@@ -31,6 +31,7 @@
- */
-
- #include <sys/cdefs.h>
-+#include <time.h>
- __FBSDID("$FreeBSD: projects/doscmd/bios.c,v 1.9 2002/03/07 12:52:26 obrien Exp $");
-
- #include "doscmd.h"
-@@ -110,6 +111,7 @@
- static void
- int15(regcontext_t *REGS)
- {
-+ const struct timespec rqtp={0,1};
- R_FLAGS &= ~PSL_C;
-
- switch (R_AH) {
-@@ -119,6 +121,17 @@
- break;
- case 0x04: /* Set ABIOS table */
- R_FLAGS |= PSL_C; /* We don't support it */
-+ break;
-+ case 0x10: /* DesqView */
-+ switch (R_AL) {
-+ case 0x00: /* Give up CPU time */
-+ nanosleep(&rqtp, NULL);
-+ break;
-+ case 0x22: /* Get version */
-+ R_BH = 0x0a; /* Use v2.0 for timeslice support */
-+ R_BL = 0x01;
-+ break;
-+ }
- break;
- case 0x4f: /* Keyboard intercept */
- debug(D_TRAPS | 0x15, "BIOS: Keyboard intercept\n");
diff --git a/emulators/doscmd/files/patch-quietmode b/emulators/doscmd/files/patch-quietmode
deleted file mode 100644
index c077635..0000000
--- a/emulators/doscmd/files/patch-quietmode
+++ /dev/null
@@ -1,317 +0,0 @@
-diff -u ./debug.c /home/admin/doscmd.working/doscmd-20040330/debug.c
---- ./debug.c Mon Mar 29 16:00:00 2004
-+++ /home/admin/doscmd.working/doscmd-20040330/debug.c Wed May 3 13:58:35 2006
-@@ -106,7 +106,7 @@
-
- dead = 1;
-
-- if (xmode) {
-+ if (xmode && !quietmode) {
- char buf[1024];
- const char *m;
-
-diff -u ./dos.c /home/admin/doscmd.working/doscmd-20040330/dos.c
---- ./dos.c Mon Mar 29 16:00:00 2004
-+++ /home/admin/doscmd.working/doscmd-20040330/dos.c Wed May 3 13:58:35 2006
-@@ -625,9 +625,12 @@
- {
- int n;
-
-- /* XXX this is pretty bogus, actually */
-- if (!xmode) {
-- R_AL = 0xff; /* no X mode, always claim data available */
-+ if (quietmode && !xmode) {
-+ const struct timespec rqtp={0,1};
-+
-+ /* In case of camping */
-+ nanosleep(&rqtp, NULL);
-+ R_AL = 0;
- return(0);
- }
- /* XXX tty_peek is broken */
-diff -u ./doscmd.c /home/admin/doscmd.working/doscmd-20040330/doscmd.c
---- ./doscmd.c Wed May 3 14:06:55 2006
-+++ /home/admin/doscmd.working/doscmd-20040330/doscmd.c Wed May 3 13:58:35 2006
-@@ -64,6 +64,7 @@
- int capture_fd = -1;
- int dead = 0;
- int xmode = 0;
-+int quietmode = 0;
- int booting = 0;
- int raw_kbd = 0;
- int timer_disable = 0;
-@@ -226,7 +227,7 @@
- kbd_init();
- kbd_bios_init();
- video_init();
-- if (xmode)
-+ if (xmode || quietmode)
- mouse_init();
- video_bios_init();
- disk_bios_init();
-@@ -511,7 +512,7 @@
- FILE *fp;
- char *col;
-
-- while ((c = getopt(argc, argv, "234AbCc:Dd:EFGHIi:kLMOo:Pp:RrS:TtU:vVxXYz")) != -1) {
-+ while ((c = getopt(argc, argv, "234AbCc:Dd:EFGHIi:kLMOo:PpQ:RrS:TtU:vVxXYz")) != -1) {
- switch (c) {
- case '2':
- debug_flags |= D_TRAPS2;
-@@ -620,6 +621,9 @@
- define_output_port_handler(p++, outb_port);
- }
- break;
-+ case 'Q':
-+ quietmode = 1;
-+ break;
- case 'R':
- debug_flags |= D_REDIR;
- break;
-@@ -826,7 +830,7 @@
- done(regcontext_t *REGS, int val)
- {
- if (curpsp < 2) {
-- if (xmode) {
-+ if (xmode && !quietmode) {
- const char *m;
-
- tty_move(24, 0);
-@@ -861,7 +865,7 @@
- coq = coq->next;
- c->func(c->arg);
- }
-- if (!xmode) /* XXX not for bootmode */
-+ if (!(xmode || quietmode)) /* XXX not for bootmode */
- puts("\n");
- exit(status);
- }
-diff -u ./doscmd.h /home/admin/doscmd.working/doscmd-20040330/doscmd.h
---- ./doscmd.h Wed May 3 14:06:55 2006
-+++ /home/admin/doscmd.working/doscmd-20040330/doscmd.h Wed May 3 13:58:35 2006
-@@ -175,6 +175,7 @@
- extern int capture_fd;
- extern int dead;
- extern int xmode;
-+extern int quietmode;
- extern int booting;
- extern int raw_kbd;
- extern int timer_disable;
-diff -u ./int10.c /home/admin/doscmd.working/doscmd-20040330/int10.c
---- ./int10.c Mon Mar 29 16:00:00 2004
-+++ /home/admin/doscmd.working/doscmd-20040330/int10.c Wed May 3 13:58:35 2006
-@@ -57,7 +57,7 @@
-
- switch (R_AH) {
- case 0x00: /* Set display mode */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- init_mode(R_AL);
- break;
-@@ -94,12 +94,12 @@
- break;
- }
- case 0x02: /* Position cursor */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- tty_move(R_DH, R_DL);
- break;
- case 0x03: /* Read cursor position */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- tty_report(&i, &j);
- R_DH = i;
-@@ -111,7 +111,7 @@
- debug(D_VIDEO, "Select current display page %d\n", R_AL);
- break;
- case 0x06: /* initialize window/scroll text upward */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- if (R_AL == 0) /* clear screen */
- R_AL = DpyRows + 1;
-@@ -120,7 +120,7 @@
- R_AL, R_BH << 8);
- break;
- case 0x07: /* initialize window/scroll text downward */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- if (R_AL == 0) /* clear screen */
- R_AL = DpyRows + 1;
-@@ -129,24 +129,24 @@
- R_AL, R_BH << 8);
- break;
- case 0x08: /* read character/attribute */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- i = tty_char(-1, -1);
- R_AX = i;
- break;
- case 0x09: /* write character/attribute */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- tty_rwrite(R_CX, R_AL, R_BL << 8);
- break;
- case 0x0a: /* write character */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- debug(D_HALF, "Int 10:0a: Write char: %02x\n", R_AL);
- tty_rwrite(R_CX, R_AL, -1);
- break;
- case 0x0b: /* set border color */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- video_setborder(R_BL);
- break;
-@@ -165,7 +165,7 @@
- R_BH = 0;/*ActivePage *//* display page */
- break;
- case 0x10:
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- switch (R_AL) {
- case 0x00: /* Set single palette register */
-@@ -350,7 +350,7 @@
- }
- break;
- case 0x12: /* Alternate function select */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- switch (R_BL) {
- case 0x10: /* Read EGA/VGA config */
-@@ -372,7 +372,7 @@
- }
- break;
- case 0x13: /* write character string */
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- addr = (char *)MAKEPTR(R_ES, R_BP);
- switch (R_AL & 0x03) {
-@@ -407,7 +407,7 @@
- }
- break;
- case 0x1a:
-- if (!xmode)
-+ if (!(xmode || quietmode))
- goto unsupported;
- R_AL = 0x1a; /* I am VGA */
- R_BL = 8; /* Color VGA */
-diff -u ./int16.c /home/admin/doscmd.working/doscmd-20040330/int16.c
---- ./int16.c Mon Mar 29 16:00:00 2004
-+++ /home/admin/doscmd.working/doscmd-20040330/int16.c Wed May 3 13:58:35 2006
-@@ -78,7 +78,7 @@
- void
- int16(regcontext_t *REGS)
- {
-- if (!xmode && !raw_kbd) {
-+ if (!(xmode || raw_kbd || quietmode)) {
- if (vflag) dump_regs(REGS);
- fatal ("int16 func 0x%x only supported in X mode\n", R_AH);
- }
-diff -u ./tty.c /home/admin/doscmd.working/doscmd-20040330/tty.c
---- ./tty.c Wed May 3 14:06:55 2006
-+++ /home/admin/doscmd.working/doscmd-20040330/tty.c Wed May 3 13:58:35 2006
-@@ -34,6 +34,7 @@
- __FBSDID("$FreeBSD: projects/doscmd/tty.c,v 1.25 2002/04/12 21:18:05 charnier Exp $");
-
- #include <sys/ioctl.h>
-+#include <sys/select.h>
- #include <sys/time.h>
- #include <sys/types.h>
- #include <sys/mman.h>
-@@ -1471,7 +1472,8 @@
- {
- if (attr == TTYF_REDIRECT) {
- if (redirect1) {
-- write(1, &c, 1);
-+ if(!quietmode)
-+ write(1, &c, 1);
- return;
- }
- attr = -1;
-@@ -1487,8 +1489,10 @@
- #ifndef NO_X
- XBell(dpy, 0);
- #endif
-- } else
-+ } else {
-+ if(!quietmode)
- write(1, "\007", 1);
-+ }
- break;
- case 0x08:
- if (row > (height - 1) || col > width)
-@@ -1658,20 +1662,14 @@
- {
- int r;
-
-+ if(quietmode && !xmode)
-+ return(0);
-+
- if ((r = nextchar) != 0) {
- nextchar = 0;
- return(r & 0xff);
- }
-
-- if ((flag & TTYF_REDIRECT) && redirect0) {
-- char c;
-- if (read(STDIN_FILENO, &c, 1) != 1)
-- return(-1);
-- if (c == '\n')
-- c = '\r';
-- return(c);
-- }
--
- if (KbdEmpty()) {
- if (flag & TTYF_BLOCK) {
- while (KbdEmpty())
-@@ -1858,6 +1856,22 @@
- int
- KbdEmpty()
- {
-+ if(!xmode) {
-+ fd_set rd;
-+ struct timeval tv;
-+
-+ FD_ZERO(&rd);
-+ FD_SET(STDIN_FILENO, &rd);
-+ tv.tv_sec=0;
-+ tv.tv_usec=0;
-+ if(select(STDIN_FILENO+1, &rd, NULL, NULL, &tv)==1) {
-+ char ch=0;
-+ read(STDIN_FILENO, &ch, 1);
-+ if(ch == '\n')
-+ ch = '\r';
-+ KbdWrite(ch);
-+ }
-+ }
- return(K_NEXT == K_FREE);
- }
-
-diff -u ./video.c /home/admin/doscmd.working/doscmd-20040330/video.c
---- ./video.c Wed May 3 14:06:55 2006
-+++ /home/admin/doscmd.working/doscmd-20040330/video.c Wed May 3 13:58:35 2006
-@@ -276,9 +276,9 @@
- define_output_port_handler(GDC_DataPort, video_outb);
- }
-
-- redirect0 = isatty(0) == 0 || !xmode ;
-- redirect1 = isatty(1) == 0 || !xmode ;
-- redirect2 = isatty(2) == 0 || !xmode ;
-+ redirect0 = isatty(0) == 0 || !(xmode || quietmode);
-+ redirect1 = isatty(1) == 0 || !(xmode || quietmode);
-+ redirect2 = isatty(2) == 0 || !(xmode || quietmode);
-
- return;
- }
OpenPOWER on IntegriCloud