From 8b782111565f785c91c9afe9eb552c08da0b5d7d Mon Sep 17 00:00:00 2001 From: "Janet B. Anderson" Date: Fri, 10 Jul 1992 13:00:34 +0000 Subject: [PATCH] added code to process the records when the database is initialized --- src/drv/drvXy240.c | 12 +++++++++++- 1 file changed, 11 insertions(+), 1 deletion(-) diff --git a/src/drv/drvXy240.c b/src/drv/drvXy240.c index 2474f35aa..f83139e0b 100644 --- a/src/drv/drvXy240.c +++ b/src/drv/drvXy240.c @@ -64,18 +64,24 @@ struct dio_rec dio[XY240_MAX_CARDS]; /*define array of control structures*/ *task to check for change of state * */ + extern int wakeup_init; dio_scan() { int i; + int first_scan,first_scan_complete; + first_scan = first_scan_complete = 0; for (;;) { + if (wakeup_init & !first_scan_complete) first_scan = 1; + for (i = 0; i < XY240_MAX_CARDS; i++) { if (dio[i].dptr) if (((dio[i].dptr->port0_1) ^ (dio[i].sport0_1)) || - ((dio[i].dptr->port2_3) ^ (dio[i].sport2_3))) + ((dio[i].dptr->port2_3) ^ (dio[i].sport2_3)) + || first_scan) { /* printf("io_scanner_wakeup for card no %d\n",i); */ io_scanner_wakeup(IO_BI,XY240,i); @@ -83,6 +89,10 @@ dio_scan() dio[i].sport2_3 = dio[i].dptr->port2_3; } } + if (first_scan){ + first_scan = 0; + first_scan_complete = 1; + } taskDelay(1); } }