diff --git a/src/frontend/subckt.c b/src/frontend/subckt.c index d179f0a43..69ed615a5 100644 --- a/src/frontend/subckt.c +++ b/src/frontend/subckt.c @@ -1593,6 +1593,7 @@ inp_numnodes(char c) case 'l': return (2); case 'm': return (7); /* This means that 7 is the maximun number of nodes */ case 'o': return (4); + case 'p': return (0); case 'q': return (4); case 'r': return (2); case 's': return (4); @@ -1601,6 +1602,7 @@ inp_numnodes(char c) case 'v': return (2); /* change 3 to 2 here to fix w bug, NCF 1/31/95 */ case 'w': return (2); + case 'y': return (2); case 'z': return (3); default: diff --git a/src/spicelib/analysis/cktdojob.c b/src/spicelib/analysis/cktdojob.c index 29fb0f563..b07dee15a 100644 --- a/src/spicelib/analysis/cktdojob.c +++ b/src/spicelib/analysis/cktdojob.c @@ -157,6 +157,8 @@ printf("Doing analysis at TEMP = %f and TNOM = %f\n", /* gtri - end - 6/10/91 - wbk - Setup event-driven data */ #endif error = (*(analInfo[i]->an_func))(ckt, reset); + /* txl, cpl addition */ + if (error == 1111) break; } if (error) error2 = error; diff --git a/src/spicelib/analysis/dctran.c b/src/spicelib/analysis/dctran.c index 338d8f479..ff99a21b7 100644 --- a/src/spicelib/analysis/dctran.c +++ b/src/spicelib/analysis/dctran.c @@ -688,6 +688,11 @@ resume: *(ckt->CKTstate3+i) = *(ckt->CKTstate1+i); } } + /* txl, cpl addition */ + if (converged == 1111) { + return(converged); + } + if(converged != 0) { #ifndef CLUSTER ckt->CKTtime = ckt->CKTtime -ckt->CKTdelta;