1
0
mirror of https://github.com/prirun/p50em.git synced 2026-03-04 10:08:30 +00:00

Don't install signals with dedicated registers

This commit is contained in:
Jim
2012-07-24 15:41:56 -04:00
parent 3dce2cef47
commit 233ef630d4
2 changed files with 11 additions and 2 deletions

View File

@@ -991,10 +991,15 @@ int devpnc (int class, int func, int device) {
}
TRACE(T_RIO, "PNC configured\n");
devpoll[device] = PNCPOLL*gvp->instpermsec;
/* can't use signals with NOREGS, so PNC I/O is very slow */
#ifdef NOREGS
if (signal(SIGIO, pnchavedata) == SIG_ERR) {
perror("installing SIGIO handler");
fatal(NULL);
}
#endif
if (gettimeofday(&tv0, NULL) != 0)
fatal("pnc gettimeofday 1 failed");
tv0ts = tv0.tv_sec + tv0.tv_usec/1000000.0;

8
em.c
View File

@@ -6747,8 +6747,9 @@ d_bdx: /* 0140734 */
if (delayusec > 1000) {
if (gettimeofday(&tv0, NULL) != 0)
fatal("em: gettimeofday 0 failed");
/* NOTE: on OSX, a signal (sigio for pnc) will interrupt usleep */
/* for some reason, the SIGTERM signal handler gets reset
during emulator initialization; this re-installs it */
{
static int firsttime=1;
@@ -6757,6 +6758,9 @@ d_bdx: /* 0140734 */
firsttime = 0;
}
}
/* NOTE: on OSX, a signal (sigio for pnc) will interrupt usleep */
usleep(delayusec);
if (gettimeofday(&tv1, NULL) != 0)
fatal("em: gettimeofday 1 failed");