e 3417 src/decNumber/decNumber.c Int e; // E-part value e 3461 src/decNumber/decNumber.c e=0; // no E e 3463 src/decNumber/decNumber.c e=exp+dn->digits-1; // calculate E value e 3465 src/decNumber/decNumber.c if (eng && (e!=0)) { // engineering: may need to adjust e 3469 src/decNumber/decNumber.c if (e<0) { e 3470 src/decNumber/decNumber.c adj=(-e)%3; e 3474 src/decNumber/decNumber.c adj=e%3; e 3476 src/decNumber/decNumber.c e=e-adj; e 3483 src/decNumber/decNumber.c e=e+3; e 3535 src/decNumber/decNumber.c if (e!=0) { e 3539 src/decNumber/decNumber.c u=e; // .. e 3540 src/decNumber/decNumber.c if (e<0) { e 3542 src/decNumber/decNumber.c u=-e; // uInt, please e 914 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 920 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 932 src/dps8/dps8_eis.c word18 address = e -> WN [k - 1]; e 933 src/dps8/dps8_eis.c uint nChars = i + e -> CN [k - 1]; e 942 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 944 src/dps8/dps8_eis.c word36 data = EISRead (& e -> addr [k - 1]); // read it from memory e 950 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 968 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "EISGet469 : k: %u TAk %u coffset %u c %o \n", k, e -> TA [k - 1], residue, c); e 976 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 982 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 994 src/dps8/dps8_eis.c word18 address = e -> WN [k - 1]; e 995 src/dps8/dps8_eis.c uint nChars = i + e -> CN [k - 1]; e 1004 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 1006 src/dps8/dps8_eis.c word36 data = EISRead (& e -> addr [k - 1]); // read it from memory e 1012 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 1027 src/dps8/dps8_eis.c EISWriteIdx (& e -> addr [k - 1], 0, w, true); e 1120 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1121 src/dps8/dps8_eis.c e -> addr [k - 1]. cacheValid = false; e 1160 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1166 src/dps8/dps8_eis.c e -> MF1 = getbits36_7 (cpu.cu.IWB, 29); e 1171 src/dps8/dps8_eis.c e -> MF2 = getbits36_7 (cpu.cu.IWB, 11); e 1176 src/dps8/dps8_eis.c e -> MF3 = getbits36_7 (cpu.cu.IWB, 2); e 1180 src/dps8/dps8_eis.c word18 MFk = e -> MF [k - 1]; e 1189 src/dps8/dps8_eis.c word36 opDesc = e -> op [k - 1]; e 1235 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 1271 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 1275 src/dps8/dps8_eis.c e -> addr [k - 1].SNR = cpu.PR [n].SNR; e 1276 src/dps8/dps8_eis.c e -> addr [k - 1].RNR = max3 (cpu.PR [n].RNR, e 1280 src/dps8/dps8_eis.c e -> addr [k - 1].mat = viaPR; // ARs involved e 1285 src/dps8/dps8_eis.c e->addr [k - 1].mat = OperandRead; // no ARs involved yet e 1304 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 1308 src/dps8/dps8_eis.c e -> op [k - 1] = EISRead (& e -> addr [k - 1]); e 1312 src/dps8/dps8_eis.c e->addr [k - 1].mat = OperandRead; // no ARs involved yet e 1336 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1337 src/dps8/dps8_eis.c word18 MFk = e -> MF [k - 1]; e 1348 src/dps8/dps8_eis.c word36 opDesc = e -> op [k - 1]; e 1362 src/dps8/dps8_eis.c e -> TA [k - 1] = e -> TA [useTA - 1]; e 1364 src/dps8/dps8_eis.c e -> TA [k - 1] = getbits36_2 (opDesc, 21); // type alphanumeric e 1370 src/dps8/dps8_eis.c switch (e->TA[0]) e 1425 src/dps8/dps8_eis.c e -> addr [k - 1].SNR = cpu.PR [n].SNR; e 1426 src/dps8/dps8_eis.c e -> addr [k - 1].RNR = max3 (cpu.PR [n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1428 src/dps8/dps8_eis.c e -> addr [k - 1].mat = viaPR; // ARs involved e 1442 src/dps8/dps8_eis.c e -> N [k - 1] = (uint) getMFReg36 (reg, false, false, mod_fault); // RL=1: disallow du,n,ic e 1446 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 1450 src/dps8/dps8_eis.c e -> N [k - 1] &= 017777777; // 22-bits of length e 1455 src/dps8/dps8_eis.c e -> N [k - 1] &= 07777777; // 21-bits of length. e 1466 src/dps8/dps8_eis.c e -> N [k - 1] = opDesc & 07777; e 1471 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "N%u %o\n", k, e->N[k-1]); e 1492 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 1512 src/dps8/dps8_eis.c e -> CN [k - 1] = effCHAR; e 1513 src/dps8/dps8_eis.c e -> WN [k - 1] = effWORDNO; e 1516 src/dps8/dps8_eis.c k, e -> CN [k - 1]); e 1537 src/dps8/dps8_eis.c e -> CN [k - 1] = effCHAR; // ?????? e 1538 src/dps8/dps8_eis.c e -> WN [k - 1] = effWORDNO; e 1540 src/dps8/dps8_eis.c k, e -> CN [k - 1]); e 1563 src/dps8/dps8_eis.c e -> CN [k - 1] = effCHAR; // ?????? e 1564 src/dps8/dps8_eis.c e -> WN [k - 1] = effWORDNO; e 1566 src/dps8/dps8_eis.c k, e -> CN [k - 1]); e 1576 src/dps8/dps8_eis.c EISaddr * a = & e -> addr [k - 1]; e 1588 src/dps8/dps8_eis.c a -> TA = (int) e -> TA [k - 1]; e 1601 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1602 src/dps8/dps8_eis.c word36 opDesc = e -> op [k - 1]; e 1630 src/dps8/dps8_eis.c e -> addr [k - 1].SNR = cpu.PR[n].SNR; e 1631 src/dps8/dps8_eis.c e -> addr [k - 1].RNR = max3 (cpu.PR [n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1632 src/dps8/dps8_eis.c e -> addr [k - 1].mat = viaPR; e 1643 src/dps8/dps8_eis.c e -> addr [k - 1].address = y; e 1656 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1657 src/dps8/dps8_eis.c word18 MFk = e->MF[k-1]; e 1661 src/dps8/dps8_eis.c word36 opDesc = e->op[k-1]; e 1682 src/dps8/dps8_eis.c e->addr[k-1].SNR = cpu.PR[n].SNR; e 1683 src/dps8/dps8_eis.c e->addr[k-1].RNR = max3(cpu.PR[n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1685 src/dps8/dps8_eis.c e->addr[k-1].mat = viaPR; // ARs involved e 1691 src/dps8/dps8_eis.c e->TN[k-1] = getbits36_1 (opDesc, 21); // type numeric e 1696 src/dps8/dps8_eis.c if (e->TN[0]) e 1703 src/dps8/dps8_eis.c e->S[k-1] = getbits36_2 (opDesc, 22); // Sign and decimal type of data e 1704 src/dps8/dps8_eis.c e->SF[k-1] = SIGNEXT6_int (getbits36_6 (opDesc, 24)); // Scaling factor. e 1715 src/dps8/dps8_eis.c e->N[k-1] = getMFReg18(reg, false, false, mod_fault) & 077; // RL=1: disallow du,n,ic e 1718 src/dps8/dps8_eis.c e->N[k-1] = opDesc & 077; e 1720 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "parseNumericOperandDescriptor(): N%u %0o\n", k, e->N[k-1]); e 1732 src/dps8/dps8_eis.c e 1756 src/dps8/dps8_eis.c switch (e->TN[k-1]) e 1775 src/dps8/dps8_eis.c e->CN[k-1] = effCHAR; // ????? e 1792 src/dps8/dps8_eis.c e->CN[k-1] = effCHAR; // ????? e 1799 src/dps8/dps8_eis.c sim_printf ("parseNumericOperandDescriptor(ta=%d) How'd we get here 2?\n", e->TA[k-1]); e 1804 src/dps8/dps8_eis.c EISaddr *a = &e->addr[k-1]; e 1815 src/dps8/dps8_eis.c a->TN = (int) e->TN[k-1]; e 1818 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "parseNumericOperandDescriptor(): address:%06o cPos:%d bPos:%d N%u %u\n", cpu.du.Dk_PTR_W[k-1], a->cPos, a->bPos, k, e->N[k-1]); e 1820 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "parseNumericOperandDescriptor(): address:%06o cPos:%d bPos:%d N%u %u\n", a->address, a->cPos, a->bPos, k, e->N[k-1]); e 1834 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1835 src/dps8/dps8_eis.c word18 MFk = e->MF[k-1]; e 1836 src/dps8/dps8_eis.c word36 opDesc = e->op[k-1]; e 1864 src/dps8/dps8_eis.c e->addr[k-1].SNR = cpu.PR[n].SNR; e 1865 src/dps8/dps8_eis.c e->addr[k-1].RNR = max3(cpu.PR[n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1866 src/dps8/dps8_eis.c e->addr[k-1].mat = viaPR; // ARs involved e 1877 src/dps8/dps8_eis.c e->N[k-1] = getMFReg36(reg, false, false, mod_fault) & 077777777; // RL=1: disallow du,n,ic e 1878 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "bitstring k %d RL reg %u val %"PRIo64"\n", k, reg, (word36)e->N[k-1]); e 1882 src/dps8/dps8_eis.c e ->N[k-1] = opDesc & 07777; e 1886 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "N%u %u\n", k, e->N[k-1]); e 1912 src/dps8/dps8_eis.c e->B[k-1] = effBITNO; e 1913 src/dps8/dps8_eis.c e->C[k-1] = effCHAR; e 1915 src/dps8/dps8_eis.c EISaddr *a = &e->addr[k-1]; e 1928 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1929 src/dps8/dps8_eis.c if (e -> addr [k - 1].cacheValid && e -> addr [k - 1].cacheDirty) e 1931 src/dps8/dps8_eis.c EISWriteCache(& e -> addr [k - 1]); e 1933 src/dps8/dps8_eis.c e -> addr [k - 1].cacheDirty = false; e 2954 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3004 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3015 src/dps8/dps8_eis.c e 3034 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 3037 src/dps8/dps8_eis.c for (; cpu.du.CHTALLY < min (e->N1, e->N2); cpu.du.CHTALLY ++) e 3052 src/dps8/dps8_eis.c if (e -> N1 < e -> N2) e 3054 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY ++) e 3069 src/dps8/dps8_eis.c else if (e->N1 > e->N2) e 3071 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e->N1; cpu.du.CHTALLY ++) e 3097 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3145 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3149 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3175 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3181 src/dps8/dps8_eis.c switch (e -> TA1) // Use TA1, not TA2 e 3189 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 13) & 017; e 3190 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 9) & 017; e 3199 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 12) & 077; e 3200 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 6) & 077; e 3209 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 9) & 0777; e 3210 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address ) & 0777; e 3224 src/dps8/dps8_eis.c switch (e -> TA1) // Use TA1, not TA2 e 3243 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3248 src/dps8/dps8_eis.c if (e -> N1) e 3250 src/dps8/dps8_eis.c uint limit = e -> N1 - 1; e 3267 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR3, 0, CY3, true); e 3280 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3328 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3332 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3358 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3364 src/dps8/dps8_eis.c switch (e -> TA1) e 3372 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 13) & 017; e 3373 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 9) & 017; e 3382 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 12) & 077; e 3383 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 6) & 077; e 3392 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 9) & 0777; e 3393 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address ) & 0777; e 3407 src/dps8/dps8_eis.c switch (e -> TA1) // Use TA1, not TA2 e 3429 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3432 src/dps8/dps8_eis.c if (e -> N1) e 3434 src/dps8/dps8_eis.c uint limit = e -> N1 - 1; e 3453 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR3, 0, CY3, true); e 3466 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3527 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3531 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3558 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3560 src/dps8/dps8_eis.c word18 duo = GETHI (e -> OP2); e 3565 src/dps8/dps8_eis.c switch (e -> TA1) e 3587 src/dps8/dps8_eis.c switch (e -> TA1) // use TA1, not TA2 e 3600 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3603 src/dps8/dps8_eis.c uint limit = e -> N1; e 3622 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR3, 0, CY3, true); e 3634 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3695 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3703 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3730 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3732 src/dps8/dps8_eis.c word18 duo = GETHI (e -> OP2); e 3737 src/dps8/dps8_eis.c switch (e -> TA1) e 3759 src/dps8/dps8_eis.c switch (e -> TA1) // use TA1, not TA2 e 3772 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3775 src/dps8/dps8_eis.c uint limit = e -> N1; e 3793 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR3, 0, CY3, true); e 3846 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3896 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3900 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000777660) e 3904 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3919 src/dps8/dps8_eis.c "TCT CN1: %d TA1: %d\n", e -> CN1, TA1); e 3922 src/dps8/dps8_eis.c "TCT CN1: %d TA1: %d\n", e -> CN1, e -> TA1); e 3930 src/dps8/dps8_eis.c switch (e -> TA1) e 3963 src/dps8/dps8_eis.c e 3980 src/dps8/dps8_eis.c e 3986 src/dps8/dps8_eis.c "TCT N1 %d\n", e -> N1); e 3988 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3991 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N1; cpu.du.CHTALLY ++) e 4010 src/dps8/dps8_eis.c word9 cout = xlate (&e->ADDR2, CTA9, m); e 4025 src/dps8/dps8_eis.c SC_I_TALLY (cpu.du.CHTALLY == e -> N1); e 4029 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR3, 0, CY3, true); e 4038 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 4091 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 4095 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000777660) e 4099 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 4114 src/dps8/dps8_eis.c "TCTR CN1: %d TA1: %d\n", e -> CN1, TA1); e 4117 src/dps8/dps8_eis.c "TCTR CN1: %d TA1: %d\n", e -> CN1, e -> TA1); e 4125 src/dps8/dps8_eis.c switch (e -> TA1) e 4158 src/dps8/dps8_eis.c e 4175 src/dps8/dps8_eis.c e 4181 src/dps8/dps8_eis.c "TCT N1 %d\n", e -> N1); e 4183 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 4186 src/dps8/dps8_eis.c uint limit = e -> N1; e 4206 src/dps8/dps8_eis.c word9 cout = xlate (&e->ADDR2, CTA9, m); e 4221 src/dps8/dps8_eis.c SC_I_TALLY (cpu.du.CHTALLY == e -> N1); e 4225 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR3, 0, CY3, true); e 4296 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 4330 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 4334 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000010000) e 4352 src/dps8/dps8_eis.c switch (e -> TA1) e 4369 src/dps8/dps8_eis.c switch (e -> TA2) e 4421 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 4425 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (TA1 == 1) && e 4428 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (e -> TA1 == 1) && e 4429 src/dps8/dps8_eis.c (e -> TA2 == 2); // (6-4 move) e 4437 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MLR TALLY %u TA1 %u TA2 %u N1 %u N2 %u CN1 %u CN2 %u\n", cpu.du.CHTALLY, TA1, TA2, e -> N1, e -> N2, e -> CN1, e -> CN2); e 4439 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MLR TALLY %u TA1 %u TA2 %u N1 %u N2 %u CN1 %u CN2 %u\n", cpu.du.CHTALLY, e -> TA1, e -> TA2, e -> N1, e -> N2, e -> CN1, e -> CN2); e 4459 src/dps8/dps8_eis.c e -> TA1 == CTA9 && // src and dst are both char 9 e 4460 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4462 src/dps8/dps8_eis.c (e -> N1 % (PGSZ * 4)) == 0 && // a page e 4463 src/dps8/dps8_eis.c e -> N2 == e -> N1 && // the src is the same size as the dest. e 4464 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4465 src/dps8/dps8_eis.c e -> CN2 == 0 && e 4470 src/dps8/dps8_eis.c (e -> ADDR1.address & PGMK) == 0 && e 4471 src/dps8/dps8_eis.c (e -> ADDR2.address & PGMK) == 0) e 4475 src/dps8/dps8_eis.c while (cpu.du.CHTALLY < e -> N1) e 4478 src/dps8/dps8_eis.c EISReadPage (& e -> ADDR1, cpu.du.CHTALLY / 4, pg); e 4479 src/dps8/dps8_eis.c EISWritePage (& e -> ADDR2, cpu.du.CHTALLY / 4, pg); e 4499 src/dps8/dps8_eis.c e -> TA1 == CTA9 && // src and dst are both char 9 e 4500 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4502 src/dps8/dps8_eis.c e -> N1 == 0 && // the source is entirely fill e 4503 src/dps8/dps8_eis.c (e -> N2 % (PGSZ * 4)) == 0 && // a page e 4504 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4505 src/dps8/dps8_eis.c e -> CN2 == 0 && e 4510 src/dps8/dps8_eis.c (e -> ADDR1.address & PGMK) == 0 && e 4511 src/dps8/dps8_eis.c (e -> ADDR2.address & PGMK) == 0) e 4526 src/dps8/dps8_eis.c while (cpu.du.CHTALLY < e -> N2) e 4528 src/dps8/dps8_eis.c EISWritePage (& e -> ADDR2, cpu.du.CHTALLY / 4, pg); e 4546 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4547 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4549 src/dps8/dps8_eis.c e -> N1 % 4 == 0 && // a whole number of words in the src e 4550 src/dps8/dps8_eis.c e -> N2 == e -> N1 && // the src is the same size as the dest. e 4551 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4552 src/dps8/dps8_eis.c e -> CN2 == 0) e 4555 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2; cpu.du.CHTALLY += 4) e 4558 src/dps8/dps8_eis.c word36 w = EISReadIdx (& e -> ADDR1, n); e 4559 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR2, n, w, true); e 4576 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4577 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4579 src/dps8/dps8_eis.c e -> N1 == 0 && // the source is entirely fill e 4580 src/dps8/dps8_eis.c e -> N2 % 4 == 0 && // a whole number of words in the dest e 4581 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4582 src/dps8/dps8_eis.c e -> CN2 == 0) e 4586 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2; cpu.du.CHTALLY += 4) e 4589 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR2, n, w, true); e 4599 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < min (e->N1, e->N2); cpu.du.CHTALLY ++) e 4607 src/dps8/dps8_eis.c if (e -> TA1 == e -> TA2) e 4647 src/dps8/dps8_eis.c if (ovp && (cpu.du.CHTALLY == e -> N1 - 1)) e 4663 src/dps8/dps8_eis.c if (e -> N1 < e -> N2) e 4665 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2 ; cpu.du.CHTALLY ++) e 4668 src/dps8/dps8_eis.c if (ovp && (cpu.du.CHTALLY == e -> N2 - 1)) e 4682 src/dps8/dps8_eis.c if (e -> N1 > e -> N2) e 4694 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 4728 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 4732 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000010000) e 4750 src/dps8/dps8_eis.c switch (e -> TA1) e 4767 src/dps8/dps8_eis.c switch (e -> TA2) e 4820 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (TA1 == 1) && e 4823 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (e -> TA1 == 1) && e 4824 src/dps8/dps8_eis.c (e -> TA2 == 2); // (6-4 move) e 4830 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 4841 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4842 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4844 src/dps8/dps8_eis.c e -> N1 % 4 == 0 && // a whole number of words in the src e 4845 src/dps8/dps8_eis.c e -> N2 == e -> N1 && // the src is the same size as the dest. e 4846 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4847 src/dps8/dps8_eis.c e -> CN2 == 0) e 4850 src/dps8/dps8_eis.c uint limit = e -> N2; e 4854 src/dps8/dps8_eis.c word36 w = EISReadIdx (& e -> ADDR1, n); e 4855 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR2, n, w, true); e 4872 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4873 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4875 src/dps8/dps8_eis.c e -> N1 == 0 && // the source is entirely fill e 4876 src/dps8/dps8_eis.c e -> N2 % 4 == 0 && // a whole number of words in the dest e 4877 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4878 src/dps8/dps8_eis.c e -> CN2 == 0) e 4885 src/dps8/dps8_eis.c uint limit = e -> N2; e 4886 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2; cpu.du.CHTALLY += 4) e 4889 src/dps8/dps8_eis.c EISWriteIdx (& e -> ADDR2, n, w, true); e 4899 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < min (e -> N1, e -> N2); cpu.du.CHTALLY ++) e 4901 src/dps8/dps8_eis.c word9 c = EISget469 (1, e -> N1 - cpu.du.CHTALLY - 1); // get src char e 4907 src/dps8/dps8_eis.c if (e -> TA1 == e -> TA2) e 4909 src/dps8/dps8_eis.c EISput469 (2, e -> N2 - cpu.du.CHTALLY - 1, c); e 4953 src/dps8/dps8_eis.c EISput469 (2, e -> N2 - cpu.du.CHTALLY - 1, cout); e 4963 src/dps8/dps8_eis.c if (e -> N1 < e -> N2) e 4965 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2 ; cpu.du.CHTALLY ++) e 4968 src/dps8/dps8_eis.c if (ovp && (cpu.du.CHTALLY == e -> N2 - 1)) e 4971 src/dps8/dps8_eis.c EISput469 (2, e -> N2 - cpu.du.CHTALLY - 1, 015); // 015 is decimal - e 4973 src/dps8/dps8_eis.c EISput469 (2, e -> N2 - cpu.du.CHTALLY - 1, 014); // 014 is decimal + e 4977 src/dps8/dps8_eis.c EISput469 (2, e -> N2 - cpu.du.CHTALLY - 1, fillT); e 4984 src/dps8/dps8_eis.c if (e -> N1 > e -> N2) e 5009 src/dps8/dps8_eis.c #define isDecimalZero(c) ((e->srcTA == CTA9) ? \ e 5022 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5024 src/dps8/dps8_eis.c word9 *p = e->inBuffer; // p points to position in inBuffer where 4-bit chars are stored e 5025 src/dps8/dps8_eis.c memset(e->inBuffer, 0, sizeof(e->inBuffer)); // initialize to all 0's e 5027 src/dps8/dps8_eis.c int pos = (int) e->CN[k-1]; e 5029 src/dps8/dps8_eis.c int TN = (int) e->TN[k-1]; e 5030 src/dps8/dps8_eis.c int S = (int) e->S[k-1]; // This is where MVNE gets really nasty. e 5033 src/dps8/dps8_eis.c int N = (int) e->N[k-1]; // number of chars in src string e 5035 src/dps8/dps8_eis.c EISaddr *a = &e->addr[k-1]; e 5037 src/dps8/dps8_eis.c e->sign = 1; e 5038 src/dps8/dps8_eis.c e->exponent = 0; e 5084 src/dps8/dps8_eis.c e->sign = -1; e 5086 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5090 src/dps8/dps8_eis.c e->exponent = (signed char)(c & 0377); // want to do a sign extend e 5091 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5095 src/dps8/dps8_eis.c e->exponent = (c & 0xf);// << 4; e 5096 src/dps8/dps8_eis.c e->exponent <<= 4; e 5097 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5101 src/dps8/dps8_eis.c e->exponent |= (c & 0xf); e 5103 src/dps8/dps8_eis.c signed char ce = (signed char) (e->exponent & 0xff); e 5104 src/dps8/dps8_eis.c e->exponent = ce; e 5106 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5128 src/dps8/dps8_eis.c e->sign = -1; e 5129 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5147 src/dps8/dps8_eis.c e->sign = -1; e 5148 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5168 src/dps8/dps8_eis.c for (word9 *q = e->inBuffer; q < p; q ++) e 5183 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5185 src/dps8/dps8_eis.c word9 * p = e -> inBuffer; e 5186 src/dps8/dps8_eis.c memset (e -> inBuffer, 0, sizeof (e -> inBuffer));// initialize to all 0's e 5194 src/dps8/dps8_eis.c uint N = min (e-> N1, 63); e 5205 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5207 src/dps8/dps8_eis.c for (uint n = 0 ; n < (uint) e -> dstTally; n ++) e 5209 src/dps8/dps8_eis.c word9 c49 = e -> outBuffer [n]; e 5216 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5225 src/dps8/dps8_eis.c if (e -> mvne) e 5240 src/dps8/dps8_eis.c ** dstAddr = c49 | (e -> editInsertionTable [7] & 0760); e 5292 src/dps8/dps8_eis.c e->dstTally -= 1; e 5335 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5336 src/dps8/dps8_eis.c memset(&e->editInsertionTable, 0, sizeof(e->editInsertionTable)); // XXX do we really need this? e 5339 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5341 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5345 src/dps8/dps8_eis.c word9 entry = EISget49(&e->ADDR2, &e->mopPos, CTN9); // get mop table entries e 5347 src/dps8/dps8_eis.c word9 entry = EISget49(e->mopAddress, &e->mopPos, CTN9); // get mop table entries e 5349 src/dps8/dps8_eis.c e->editInsertionTable[i] = entry & 0777; // keep to 9-bits e 5350 src/dps8/dps8_eis.c e->mopTally -= 1; e 5379 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5381 src/dps8/dps8_eis.c if (!(e->mopIF & 010)) e 5384 src/dps8/dps8_eis.c if (!e->mopES && !e->mopSN) e 5386 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[2]); e 5387 src/dps8/dps8_eis.c e->mopES = true; e 5390 src/dps8/dps8_eis.c if (!e->mopES && e->mopSN) e 5392 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[3]); e 5393 src/dps8/dps8_eis.c e->mopES = true; e 5397 src/dps8/dps8_eis.c if (!e->mopES) e 5400 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[4]); e 5401 src/dps8/dps8_eis.c e->mopES = true; e 5407 src/dps8/dps8_eis.c if (e->mopIF & 04) e 5408 src/dps8/dps8_eis.c e->mopBZ = true; e 5425 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5428 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5429 src/dps8/dps8_eis.c e->mopIF = 16; e 5431 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 5433 src/dps8/dps8_eis.c if (e->dstTally == 0) e 5435 src/dps8/dps8_eis.c if (e->srcTally == 0) e 5438 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5442 src/dps8/dps8_eis.c e->srcTally -= 1; e 5443 src/dps8/dps8_eis.c e->in += 1; e 5459 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5461 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5463 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5472 src/dps8/dps8_eis.c if (!e->mopES) e 5474 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[1]); e 5476 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5478 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5480 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5484 src/dps8/dps8_eis.c EISget49(&e->ADDR2, &e->mopPos, CTN9); e 5486 src/dps8/dps8_eis.c EISget49(e->mopAddress, &e->mopPos, CTN9); e 5488 src/dps8/dps8_eis.c e->mopTally -= 1; e 5496 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5498 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5500 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5504 src/dps8/dps8_eis.c word9 c = EISget49(&e->ADDR2, &e->mopPos, CTN9); e 5506 src/dps8/dps8_eis.c word9 c = EISget49(e->mopAddress, &e->mopPos, CTN9); e 5508 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, c); e 5509 src/dps8/dps8_eis.c e->mopTally -= 1; e 5515 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF-1]); e 5522 src/dps8/dps8_eis.c e 5527 src/dps8/dps8_eis.c e 5529 src/dps8/dps8_eis.c e 5532 src/dps8/dps8_eis.c e 5534 src/dps8/dps8_eis.c e 5536 src/dps8/dps8_eis.c e 5543 src/dps8/dps8_eis.c e 5545 src/dps8/dps8_eis.c e 5547 src/dps8/dps8_eis.c e 5550 src/dps8/dps8_eis.c e 5552 src/dps8/dps8_eis.c e 5555 src/dps8/dps8_eis.c e 5561 src/dps8/dps8_eis.c e 5563 src/dps8/dps8_eis.c e 5590 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5592 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5594 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5598 src/dps8/dps8_eis.c if (!e->mopES) e 5603 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5605 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5607 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5609 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5613 src/dps8/dps8_eis.c EISget49(&e->ADDR2, &e->mopPos, CTN9); e 5615 src/dps8/dps8_eis.c EISget49(e->mopAddress, &e->mopPos, CTN9); e 5617 src/dps8/dps8_eis.c e->mopTally -= 1; e 5625 src/dps8/dps8_eis.c if (e->mopIF) e 5630 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF - 1]); e 5635 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5637 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5641 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, EISget49(&e->ADDR2, &e->mopPos, CTN9)); e 5644 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, EISget49(e->mopAddress, &e->mopPos, CTN9)); e 5647 src/dps8/dps8_eis.c e->mopTally -= 1; e 5666 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5667 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5668 src/dps8/dps8_eis.c e->mopIF = 16; e 5669 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 5671 src/dps8/dps8_eis.c if (e->dstTally == 0) e 5673 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5697 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5699 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5701 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5709 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5711 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5713 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5716 src/dps8/dps8_eis.c if (!e->mopSN) e 5722 src/dps8/dps8_eis.c EISget49(&e->ADDR2, &e->mopPos, CTN9); e 5724 src/dps8/dps8_eis.c EISget49(e->mopAddress, &e->mopPos, CTN9); e 5726 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5727 src/dps8/dps8_eis.c e->mopTally -= 1; e 5733 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, EISget49(&e->ADDR2, &e->mopPos, CTN9)); e 5735 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, EISget49(e->mopAddress, &e->mopPos, CTN9)); e 5738 src/dps8/dps8_eis.c e->mopTally -= 1; e 5743 src/dps8/dps8_eis.c if (e->mopSN) e 5747 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF - 1]); e 5749 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5766 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5768 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5770 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5774 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5776 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5778 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5781 src/dps8/dps8_eis.c if (e->mopSN) e 5784 src/dps8/dps8_eis.c EISget49(&e->ADDR2, &e->mopPos, CTN9); e 5786 src/dps8/dps8_eis.c EISget49(e->mopAddress, &e->mopPos, CTN9); e 5788 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5789 src/dps8/dps8_eis.c e->mopTally -= 1; e 5792 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, EISget49(&e->ADDR2, &e->mopPos, CTN9)); e 5794 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, EISget49(e->mopAddress, &e->mopPos, CTN9)); e 5796 src/dps8/dps8_eis.c e->mopTally -= 1; e 5801 src/dps8/dps8_eis.c if (!e->mopSN) e 5803 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF - 1]); e 5805 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5824 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5825 src/dps8/dps8_eis.c if (e->mopIF == 0 || (e->mopIF >= 9 && e->mopIF <= 15)) e 5827 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5830 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5832 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5836 src/dps8/dps8_eis.c word9 next = EISget49(&e->ADDR2, &e->mopPos, CTN9); e 5838 src/dps8/dps8_eis.c word9 next = EISget49(e->mopAddress, &e->mopPos, CTN9); e 5840 src/dps8/dps8_eis.c e->mopTally -= 1; e 5842 src/dps8/dps8_eis.c e->editInsertionTable[e->mopIF - 1] = next; e 5843 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "LTE IT[%d]<=%d\n", e -> mopIF - 1, next); e 5887 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5888 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5889 src/dps8/dps8_eis.c e->mopIF = 16; e 5894 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MFLC IF %d, srcTally %d, dstTally %d\n", e->mopIF, e->srcTally, e->dstTally); e 5895 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 5897 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MFLC n %d, srcTally %d, dstTally %d\n", n, e->srcTally, e->dstTally); e 5898 src/dps8/dps8_eis.c if (e->dstTally == 0) e 5900 src/dps8/dps8_eis.c if (e->srcTally == 0) e 5908 src/dps8/dps8_eis.c word9 c = *(e->in); e 5910 src/dps8/dps8_eis.c if (!e->mopES) { // e->mopES is OFF e 5917 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5918 src/dps8/dps8_eis.c e->in += 1; e 5919 src/dps8/dps8_eis.c e->srcTally -= 1; e 5925 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[4]); e 5927 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 5928 src/dps8/dps8_eis.c e->mopZ = false; // iszero() tested above. e 5929 src/dps8/dps8_eis.c e->in += 1; e 5930 src/dps8/dps8_eis.c e->srcTally -= 1; e 5932 src/dps8/dps8_eis.c e->mopES = true; e 5937 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 5940 src/dps8/dps8_eis.c e->mopZ = false; e 5941 src/dps8/dps8_eis.c e->in += 1; e 5942 src/dps8/dps8_eis.c e->srcTally -= 1; e 5993 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5994 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5995 src/dps8/dps8_eis.c e->mopIF = 16; e 5997 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF; n += 1) e 5999 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6001 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6004 src/dps8/dps8_eis.c word9 c = *(e->in); e 6006 src/dps8/dps8_eis.c if (!e->mopES) { // e->mopES is OFF e 6012 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 6013 src/dps8/dps8_eis.c e->in += 1; e 6014 src/dps8/dps8_eis.c e->srcTally -= 1; e 6017 src/dps8/dps8_eis.c if (!e->mopSN) e 6023 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[2]); e 6025 src/dps8/dps8_eis.c e->in += 1; e 6026 src/dps8/dps8_eis.c e->srcTally -= 1; e 6027 src/dps8/dps8_eis.c e->mopZ = false; // iszero tested above e 6029 src/dps8/dps8_eis.c e 6031 src/dps8/dps8_eis.c e 6036 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6038 src/dps8/dps8_eis.c e->mopES = true; e 6044 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[3]); e 6046 src/dps8/dps8_eis.c e->in += 1; e 6047 src/dps8/dps8_eis.c e->srcTally -= 1; e 6048 src/dps8/dps8_eis.c e->mopZ = false; // iszero tested above e 6050 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6052 src/dps8/dps8_eis.c e->mopES = true; e 6058 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6061 src/dps8/dps8_eis.c e->mopZ = false; e 6062 src/dps8/dps8_eis.c e->in += 1; e 6063 src/dps8/dps8_eis.c e->srcTally -= 1; e 6095 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6096 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6097 src/dps8/dps8_eis.c e->mopIF = 16; e 6099 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MORS mopIF %d src %d dst %d\n", e->mopIF, e->srcTally, e->dstTally); e 6100 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6107 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6109 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6113 src/dps8/dps8_eis.c word9 c = (*e->in | (!e->mopSN ? e->editInsertionTable[2] : e->editInsertionTable[3])); e 6114 src/dps8/dps8_eis.c if (! isDecimalZero (*e->in)) e 6115 src/dps8/dps8_eis.c e->mopZ = false; e 6116 src/dps8/dps8_eis.c e->in += 1; e 6117 src/dps8/dps8_eis.c e->srcTally -= 1; e 6119 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6137 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6138 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6139 src/dps8/dps8_eis.c e->mopIF = 16; e 6141 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MVC mopIF %d\n", e->mopIF); e 6143 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6145 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MVC n %d srcTally %d dstTally %d\n", n, e->srcTally, e->dstTally); e 6148 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6150 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6153 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MVC write to output buffer %o\n", *e->in); e 6154 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, *e->in); e 6155 src/dps8/dps8_eis.c if (! isDecimalZero (*e->in)) e 6156 src/dps8/dps8_eis.c e->mopZ = false; e 6157 src/dps8/dps8_eis.c e->in += 1; e 6159 src/dps8/dps8_eis.c e->srcTally -= 1; e 6194 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6195 src/dps8/dps8_eis.c if (e->mvne == true) e 6198 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6199 src/dps8/dps8_eis.c e->mopIF = 16; e 6203 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6205 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6207 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6222 src/dps8/dps8_eis.c word9 c = *(e->in); e 6225 src/dps8/dps8_eis.c if (c & e->editInsertionTable[2]) // XXX only lower 4-bits are considered e 6228 src/dps8/dps8_eis.c else if (c & e->editInsertionTable[3]) // XXX only lower 4-bits are considered e 6230 src/dps8/dps8_eis.c e->mopSN = true; e 6235 src/dps8/dps8_eis.c e->in += 1; e 6236 src/dps8/dps8_eis.c e->srcTally -= 1; // XXX is this correct? No chars have been consumed, but ...... e 6238 src/dps8/dps8_eis.c e->mopZ = false; e 6239 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6257 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6258 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6259 src/dps8/dps8_eis.c e->mopIF = 16; e 6261 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6263 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6265 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6268 src/dps8/dps8_eis.c word9 c = *e->in; e 6269 src/dps8/dps8_eis.c e->in += 1; e 6270 src/dps8/dps8_eis.c e->srcTally -= 1; e 6274 src/dps8/dps8_eis.c if (!e->mopES && isDecimalZero (c)) e 6279 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[1]); e 6283 src/dps8/dps8_eis.c else if ((! e->mopES) && (! isDecimalZero (c))) e 6287 src/dps8/dps8_eis.c e->mopZ = false; e 6288 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6290 src/dps8/dps8_eis.c e->mopES = true; e 6291 src/dps8/dps8_eis.c } else if (e->mopES) e 6295 src/dps8/dps8_eis.c e->mopZ = false; e 6296 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6323 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6324 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6325 src/dps8/dps8_eis.c e->mopIF = 16; e 6327 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6329 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6331 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6334 src/dps8/dps8_eis.c word9 c = *e->in; e 6335 src/dps8/dps8_eis.c e->srcTally -= 1; e 6336 src/dps8/dps8_eis.c e->in += 1; e 6340 src/dps8/dps8_eis.c if ((!e->mopES) && isDecimalZero (c)) e 6345 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 6349 src/dps8/dps8_eis.c if ((! e->mopES) && (! isDecimalZero (c))) e 6353 src/dps8/dps8_eis.c e->mopZ = false; e 6354 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6356 src/dps8/dps8_eis.c e->mopES = true; e 6357 src/dps8/dps8_eis.c } else if (e->mopES) e 6361 src/dps8/dps8_eis.c e->mopZ = false; e 6362 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, e->srcSZ, e->dstSZ, c); e 6384 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6385 src/dps8/dps8_eis.c if (e->mopIF & 010) e 6386 src/dps8/dps8_eis.c e->mopES = true; e 6388 src/dps8/dps8_eis.c e->mopES = false; e 6390 src/dps8/dps8_eis.c if (e->mopIF & 04) e 6391 src/dps8/dps8_eis.c e->mopBZ = true; e 6449 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6453 src/dps8/dps8_eis.c if (e == NULL) //-V547 e 6461 src/dps8/dps8_eis.c EISaddr *p = &e->ADDR2; e 6463 src/dps8/dps8_eis.c EISaddr *p = e->mopAddress; e 6469 src/dps8/dps8_eis.c if (e->mopPos > 3) // overflows to next word? e 6471 src/dps8/dps8_eis.c e->mopPos = 0; // reset to 1st byte e 6474 src/dps8/dps8_eis.c p->data = EISRead(&e->ADDR2); // read it from memory e 6477 src/dps8/dps8_eis.c PNL (p->data = EISRead(e->mopAddress)); // read it from memory e 6480 src/dps8/dps8_eis.c p->data = EISRead(e->mopAddress); // read it from memory e 6482 src/dps8/dps8_eis.c e->mopAddress->address = (e->mopAddress->address + 1) & AMASK; // bump source to next address e 6483 src/dps8/dps8_eis.c p->data = EISRead(e->mopAddress); // read it from memory e 6488 src/dps8/dps8_eis.c word9 mop9 = (word9) get9 (p -> data, e -> mopPos); // get 9-bit mop e 6490 src/dps8/dps8_eis.c e->mopIF = mop9 & 0xf; e 6493 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MOP %s(%o) %o\n", m -> mopName, mop, e->mopIF); e 6494 src/dps8/dps8_eis.c e->m = m; e 6495 src/dps8/dps8_eis.c if (e->m == NULL || e->m->f == NULL) e 6497 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "getMop(e->m == NULL || e->m->f == NULL): mop:%d IF:%d\n", mop, e->mopIF); e 6501 src/dps8/dps8_eis.c e->mopPos += 1; e 6502 src/dps8/dps8_eis.c e->mopTally -= 1; e 6515 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6518 src/dps8/dps8_eis.c e->mopTally = (int) e->N[KMOP]; // number of micro-ops e 6519 src/dps8/dps8_eis.c e->mopPos = (int) e->CN[KMOP]; // starting at char pos CN e 6521 src/dps8/dps8_eis.c e->mopAddress = &e->addr[kMop-1]; e 6522 src/dps8/dps8_eis.c e->mopTally = (int) e->N[kMop-1]; // number of micro-ops e 6523 src/dps8/dps8_eis.c e->mopPos = (int) e->CN[kMop-1]; // starting at char pos CN e 6526 src/dps8/dps8_eis.c word9 *p9 = e->editInsertionTable; // re-initialize edit insertion table e 6531 src/dps8/dps8_eis.c e->in = e->inBuffer; // reset input buffer pointer e 6532 src/dps8/dps8_eis.c e->out = e->outBuffer; // reset output buffer pointer e 6534 src/dps8/dps8_eis.c e->_faults = 0; // No faults (yet!) e 6543 src/dps8/dps8_eis.c while (e->dstTally) e 6545 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "mopExecutor srcTally %d dstTally %d mopTally %d\n", e->srcTally, e->dstTally, e->mopTally); e 6550 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; // XXX ill proc fault e 6556 src/dps8/dps8_eis.c if (e->_faults & FAULT_IPR) //-V547 e 6572 src/dps8/dps8_eis.c e 6578 src/dps8/dps8_eis.c if (e->mopTally == 0 || mres) e 6583 src/dps8/dps8_eis.c if (e->mopZ && e->mopBZ) e 6585 src/dps8/dps8_eis.c e->out = e->outBuffer; //-V1048 // reset output buffer pointer e 6586 src/dps8/dps8_eis.c e->dstTally = (int) e->N3; // number of chars in dst (max 63) e 6587 src/dps8/dps8_eis.c while (e->dstTally) e 6589 src/dps8/dps8_eis.c writeToOutputBuffer(&e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 6592 src/dps8/dps8_eis.c else if (mres || e->dstTally) //-V560 e 6594 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 6600 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "mop faults %o src %d dst %d mop %d\n", e->_faults, e->srcTally, e->dstTally, e->mopTally); e 6615 src/dps8/dps8_eis.c e 6617 src/dps8/dps8_eis.c e 6618 src/dps8/dps8_eis.c e 6623 src/dps8/dps8_eis.c e 6625 src/dps8/dps8_eis.c e 6631 src/dps8/dps8_eis.c e 6633 src/dps8/dps8_eis.c e 6634 src/dps8/dps8_eis.c e 6640 src/dps8/dps8_eis.c e 6642 src/dps8/dps8_eis.c e 6646 src/dps8/dps8_eis.c if (e -> _faults) e 6652 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6684 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 6689 src/dps8/dps8_eis.c e 6693 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000010000) e 6697 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000010000) e 6711 src/dps8/dps8_eis.c e->mopES = false; // End Suppression flag e 6712 src/dps8/dps8_eis.c e->mopSN = false; // Sign flag e 6713 src/dps8/dps8_eis.c e->mopBZ = false; // Blank-when-zero flag e 6714 src/dps8/dps8_eis.c e->mopZ = true; // Zero flag e 6716 src/dps8/dps8_eis.c e->srcTally = (int) e->N1; // number of chars in src (max 63) e 6717 src/dps8/dps8_eis.c e->dstTally = (int) e->N3; // number of chars in dst (max 63) e 6720 src/dps8/dps8_eis.c e->srcTA = (int) TA1; // type of chars in src e 6722 src/dps8/dps8_eis.c e->srcTA = (int) e->TA1; // type of chars in src e 6725 src/dps8/dps8_eis.c switch (e -> srcTA) e 6728 src/dps8/dps8_eis.c e -> srcSZ = 4; e 6731 src/dps8/dps8_eis.c e -> srcSZ = 6; e 6734 src/dps8/dps8_eis.c e -> srcSZ = 9; e 6741 src/dps8/dps8_eis.c uint dstTA = e -> TA3; // type of chars in dst e 6747 src/dps8/dps8_eis.c e -> dstSZ = 4; e 6750 src/dps8/dps8_eis.c e -> dstSZ = 6; e 6753 src/dps8/dps8_eis.c e -> dstSZ = 9; e 6761 src/dps8/dps8_eis.c e -> mvne = false; e 6769 src/dps8/dps8_eis.c e -> dstTally = (int) e -> N3; // restore dstTally for output e 6779 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6814 src/dps8/dps8_eis.c e 6818 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000070000) e 6823 src/dps8/dps8_eis.c e 6827 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000010000) e 6840 src/dps8/dps8_eis.c uint srcTN = e -> TN1; // type of chars in src e 6854 src/dps8/dps8_eis.c switch(e->S1) e 6857 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 6866 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 6870 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 6880 src/dps8/dps8_eis.c if (e->N[1] == 0) e 6885 src/dps8/dps8_eis.c if (e->N[2] == 0) e 6903 src/dps8/dps8_eis.c e->mopES = false; // End Suppression flag e 6904 src/dps8/dps8_eis.c e->mopSN = false; // Sign flag e 6905 src/dps8/dps8_eis.c e->mopBZ = false; // Blank-when-zero flag e 6906 src/dps8/dps8_eis.c e->mopZ = true; // Zero flag e 6908 src/dps8/dps8_eis.c e -> srcTally = (int) e -> N1; // number of chars in src (max 63) e 6909 src/dps8/dps8_eis.c e -> dstTally = (int) e -> N3; // number of chars in dst (max 63) e 6915 src/dps8/dps8_eis.c e->srcTA = CTA4; // type of chars in src e 6921 src/dps8/dps8_eis.c e->srcSZ = 4; //-V1037 // stored as 4-bit decimals e 6925 src/dps8/dps8_eis.c e->srcSZ = 4; //-V1037 // 'cause everything is stored as 4-bit decimals e 6932 src/dps8/dps8_eis.c uint dstTA = e->TA3; // type of chars in dst e 6938 src/dps8/dps8_eis.c e->dstSZ = 4; e 6942 src/dps8/dps8_eis.c e->dstSZ = 6; e 6946 src/dps8/dps8_eis.c e->dstSZ = 9; e 6953 src/dps8/dps8_eis.c e->N1, e->N2, e->N3, e->TN1, e->CN1, TA3, e->CN3); e 6957 src/dps8/dps8_eis.c e->N1, e->N2, e->N3, e->TN1, e->CN1, e->TA3, e->CN3); e 6973 src/dps8/dps8_eis.c for(int n = 0 ; n < e -> srcTally ; n ++) e 6974 src/dps8/dps8_eis.c sum += e -> inBuffer [n]; e 6975 src/dps8/dps8_eis.c if ((e -> sign == -1) && sum) e 6976 src/dps8/dps8_eis.c e -> mopSN = true; e 6979 src/dps8/dps8_eis.c e -> mvne = true; e 6987 src/dps8/dps8_eis.c e -> dstTally = (int) e -> N3; // restore dstTally for output e 7001 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 7053 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 7059 src/dps8/dps8_eis.c e 7064 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777600) e 7078 src/dps8/dps8_eis.c e->srcTA = (int) TA1; e 7083 src/dps8/dps8_eis.c e->srcTA = (int) e->TA1; e 7084 src/dps8/dps8_eis.c uint dstTA = e->TA2; e 7086 src/dps8/dps8_eis.c switch (e -> TA1) e 7090 src/dps8/dps8_eis.c e -> srcSZ = 4; e 7093 src/dps8/dps8_eis.c e -> srcSZ = 6; e 7096 src/dps8/dps8_eis.c e -> srcSZ = 9; e 7103 src/dps8/dps8_eis.c switch (e -> TA2) e 7107 src/dps8/dps8_eis.c e -> dstSZ = 4; e 7110 src/dps8/dps8_eis.c e -> dstSZ = 6; e 7113 src/dps8/dps8_eis.c e -> dstSZ = 9; e 7134 src/dps8/dps8_eis.c switch(e->TA1) e 7153 src/dps8/dps8_eis.c e 7158 src/dps8/dps8_eis.c int lastpageidx = ((int)e->N1 + (int)e->CN1 -1) / e->srcSZ; e 7160 src/dps8/dps8_eis.c EISReadIdx(&e->ADDR1, (uint)lastpageidx); e 7162 src/dps8/dps8_eis.c EISReadIdx(&e->ADDR3, 0); e 7163 src/dps8/dps8_eis.c EISReadIdx(&e->ADDR3, xlatSize-1); e 7170 src/dps8/dps8_eis.c switch(e->srcSZ) e 7182 src/dps8/dps8_eis.c __func__, e -> CN1, e -> CN2, e -> srcSZ, e -> dstSZ, T, e 7183 src/dps8/dps8_eis.c fill, fillT, e -> N1, e -> N2); e 7185 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 7188 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY ++) e 7196 src/dps8/dps8_eis.c if (e->TA1 == e->TA2) e 7198 src/dps8/dps8_eis.c EISput469(2, cpu.du.CHTALLY, xlate (&e->ADDR3, dstTA, c)); e 7204 src/dps8/dps8_eis.c word9 cout = xlate(&e->ADDR3, dstTA, (uint) cidx); e 7216 src/dps8/dps8_eis.c switch (e->srcSZ) e 7219 src/dps8/dps8_eis.c switch(e->dstSZ) e 7229 src/dps8/dps8_eis.c switch(e->dstSZ) e 7249 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 7251 src/dps8/dps8_eis.c word9 cfill = xlate(&e->ADDR3, dstTA, fillT); e 7252 src/dps8/dps8_eis.c switch (e->srcSZ) e 7255 src/dps8/dps8_eis.c switch(e->dstSZ) e 7265 src/dps8/dps8_eis.c switch(e->dstSZ) e 7277 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < e->N2 ; cpu.du.CHTALLY ++) e 7285 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 7301 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 7343 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 7357 src/dps8/dps8_eis.c switch(e->S1) e 7360 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 7370 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 7371 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7375 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 7376 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7383 src/dps8/dps8_eis.c switch(e->S2) e 7386 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 7387 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 7396 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 7397 src/dps8/dps8_eis.c sc2 = -e->SF2; e 7401 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 7402 src/dps8/dps8_eis.c sc2 = -e->SF2; e 7419 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 7420 src/dps8/dps8_eis.c if (e->sign == -1) e 7422 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 7423 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 7427 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 7428 src/dps8/dps8_eis.c if (e->sign == -1) e 7430 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 7431 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 7608 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 7646 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character e 7653 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 7655 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 7656 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 7660 src/dps8/dps8_eis.c e->TN1, e->CN1, e->N1, e->TN2, e->CN2, e->N2); e 7663 src/dps8/dps8_eis.c e->SF1, e->SF2); e 7666 src/dps8/dps8_eis.c e->OP1, e->OP2); e 7680 src/dps8/dps8_eis.c switch(e->S1) e 7683 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 7693 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 7694 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7698 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 7699 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7714 src/dps8/dps8_eis.c switch(e->S2) e 7717 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 7726 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 7730 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 7747 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber (e->inBuffer, n1, sc1, &_1); e 7749 src/dps8/dps8_eis.c if (e->sign == -1) e 7751 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 7752 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 7764 src/dps8/dps8_eis.c char * res = formatDecimal (out, & set, op1, n2, (int) e->S2, e->SF2, R, e 7775 src/dps8/dps8_eis.c switch(e->S2) e 7785 src/dps8/dps8_eis.c if (e->P) e 7787 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7792 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7797 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7814 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7818 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, (word9) res[i]); e 7823 src/dps8/dps8_eis.c switch(e->S2) e 7832 src/dps8/dps8_eis.c if (e->P) e 7834 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7839 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7845 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7857 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7859 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7863 src/dps8/dps8_eis.c EISwrite49 (& e->ADDR2, & pos, (int) dstTN, e 7875 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 7926 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8013 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8014 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8016 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8017 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8028 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8037 src/dps8/dps8_eis.c e -> N1, e -> N2, e 8038 src/dps8/dps8_eis.c e -> C1, e -> C2, e -> B1, e -> B2, F, T, e 8040 src/dps8/dps8_eis.c e -> addr [0].SNR, e -> addr [0].address, e 8041 src/dps8/dps8_eis.c e -> addr [0].cPos, e -> addr [0].bPos, e 8042 src/dps8/dps8_eis.c e -> addr [1].SNR, e -> addr [1].address, e 8043 src/dps8/dps8_eis.c e -> addr [1].cPos, e -> addr [1].bPos); e 8048 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8051 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY += 1) e 8053 src/dps8/dps8_eis.c bool b1 = EISgetBitRWN(&e->ADDR1, true); e 8054 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8055 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN(&e->ADDR2, true); e 8066 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; // set bit contents to write e 8067 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; // we want to write the bit e 8070 src/dps8/dps8_eis.c EISgetBitRWN(&e->ADDR2, e->ADDR1.last_bit_posn == 35); // write bit w/ addr increment to memory e 8073 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8075 src/dps8/dps8_eis.c for(; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8079 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8080 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN(&e->ADDR2, true); e 8091 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; e 8092 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; e 8095 src/dps8/dps8_eis.c EISgetBitRWN(&e->ADDR2, e->ADDR1.last_bit_posn == 35); // write bit w/ addr increment to memory e 8099 src/dps8/dps8_eis.c EISWriteCache (&e->ADDR2); e 8105 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8212 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8281 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8282 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8284 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8285 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8290 src/dps8/dps8_eis.c getBitOffsets((int) e->N1, (int) e->C1, (int) e->B1, &numWords1, &e->ADDR1.cPos, &e->ADDR1.bPos); e 8297 src/dps8/dps8_eis.c e->ADDR1.address += (word18) numWords1; e 8302 src/dps8/dps8_eis.c e->N1, e->C1, e->B1, numWords1, e->ADDR1.cPos, e->ADDR1.bPos); e 8303 src/dps8/dps8_eis.c getBitOffsets((int) e->N2, (int) e->C2, (int) e->B2, &numWords2, &e->ADDR2.cPos, &e->ADDR2.bPos); e 8306 src/dps8/dps8_eis.c e->N2, e->C2, e->B2, numWords2, e->ADDR2.cPos, e->ADDR2.bPos); e 8313 src/dps8/dps8_eis.c e->ADDR2.address += (word18) numWords2; e 8325 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8331 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8334 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY += 1) e 8336 src/dps8/dps8_eis.c bool b1 = EISgetBitRWNR(&e->ADDR1, true); e 8338 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8339 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(&e->ADDR2, true); e 8347 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; // set bit contents to write e 8348 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; // we want to write the bit e 8351 src/dps8/dps8_eis.c EISgetBitRWNR(&e->ADDR2, e->ADDR1.last_bit_posn == 0); e 8354 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8356 src/dps8/dps8_eis.c for(; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8360 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8361 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(&e->ADDR2, true); e 8372 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; e 8373 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; e 8376 src/dps8/dps8_eis.c EISgetBitRWNR(&e->ADDR2, e->ADDR1.last_bit_posn == 0); e 8380 src/dps8/dps8_eis.c EISWriteCache (&e->ADDR2); e 8386 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8411 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8498 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8499 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8501 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8502 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8513 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8514 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8523 src/dps8/dps8_eis.c e -> N1, e -> N2, e 8524 src/dps8/dps8_eis.c e -> C1, e -> C2, e -> B1, e -> B2, F, T, e 8526 src/dps8/dps8_eis.c e -> addr [0].SNR, e -> addr [0].address, e 8527 src/dps8/dps8_eis.c e -> addr [0].cPos, e -> addr [0].bPos, e 8528 src/dps8/dps8_eis.c e -> addr [1].SNR, e -> addr [1].address, e 8529 src/dps8/dps8_eis.c e -> addr [1].cPos, e -> addr [1].bPos); e 8534 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8537 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min (e->N1, e->N2); cpu.du.CHTALLY += 1) e 8539 src/dps8/dps8_eis.c bool b1 = EISgetBitRWN (& e->ADDR1, true); e 8540 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN (& e->ADDR2, true); e 8552 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8554 src/dps8/dps8_eis.c for (; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8557 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN (& e->ADDR2, true); e 8574 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8599 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8668 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8669 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8671 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8672 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8677 src/dps8/dps8_eis.c getBitOffsets((int) e->N1, (int) e->C1, (int) e->B1, &numWords1, &e->ADDR1.cPos, &e->ADDR1.bPos); e 8684 src/dps8/dps8_eis.c e->ADDR1.address += (word18) numWords1; e 8689 src/dps8/dps8_eis.c e->N1, e->C1, e->B1, numWords1, e->ADDR1.cPos, e->ADDR1.bPos); e 8690 src/dps8/dps8_eis.c getBitOffsets((int) e->N2, (int) e->C2, (int) e->B2, &numWords2, &e->ADDR2.cPos, &e->ADDR2.bPos); e 8693 src/dps8/dps8_eis.c e->N2, e->C2, e->B2, numWords2, e->ADDR2.cPos, e->ADDR2.bPos); e 8700 src/dps8/dps8_eis.c e->ADDR2.address += (word18) numWords2; e 8712 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8718 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8721 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY += 1) e 8723 src/dps8/dps8_eis.c bool b1 = EISgetBitRWNR(&e->ADDR1, true); e 8725 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8726 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(&e->ADDR2, true); e 8738 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8740 src/dps8/dps8_eis.c for(; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8744 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8745 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(&e->ADDR2, true); e 8763 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8833 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8880 src/dps8/dps8_eis.c int charPosn1 = (int) e->C1; e 8881 src/dps8/dps8_eis.c int charPosn2 = (int) e->C2; e 8883 src/dps8/dps8_eis.c int bitPosn1 = (int) e->B1; e 8884 src/dps8/dps8_eis.c int bitPosn2 = (int) e->B2; e 8891 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "cmpb N1 %d N2 %d\n", e -> N1, e -> N2); e 8903 src/dps8/dps8_eis.c e 8909 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8913 src/dps8/dps8_eis.c for(i = 0 ; i < min(e->N1, e->N2) ; i += 1) e 8915 src/dps8/dps8_eis.c bool b1 = EISgetBit (&e->ADDR1, &charPosn1, &bitPosn1); e 8916 src/dps8/dps8_eis.c bool b2 = EISgetBit (&e->ADDR2, &charPosn2, &bitPosn2); e 8932 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8934 src/dps8/dps8_eis.c for(; i < e->N2 ; i += 1) e 8937 src/dps8/dps8_eis.c bool b2 = EISgetBit(&e->ADDR2, &charPosn2, &bitPosn2); e 8952 src/dps8/dps8_eis.c } else if (e->N1 > e->N2) e 8954 src/dps8/dps8_eis.c for(; i < e->N1 ; i += 1) e 8956 src/dps8/dps8_eis.c bool b1 = EISgetBit(&e->ADDR1, &charPosn1, &bitPosn1); e 9100 src/dps8/dps8_eis.c e 9114 src/dps8/dps8_eis.c e 9115 src/dps8/dps8_eis.c e 9116 src/dps8/dps8_eis.c e 9167 src/dps8/dps8_eis.c e 9168 src/dps8/dps8_eis.c e 9187 src/dps8/dps8_eis.c e 9190 src/dps8/dps8_eis.c e 9262 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 9305 src/dps8/dps8_eis.c e->x = signExt9(x, n); // form proper 2's-complement integer e 9315 src/dps8/dps8_eis.c e 9317 src/dps8/dps8_eis.c e 9323 src/dps8/dps8_eis.c e 9330 src/dps8/dps8_eis.c e 9340 src/dps8/dps8_eis.c e 9359 src/dps8/dps8_eis.c e 9362 src/dps8/dps8_eis.c e 9371 src/dps8/dps8_eis.c e 9374 src/dps8/dps8_eis.c e 9386 src/dps8/dps8_eis.c e 9402 src/dps8/dps8_eis.c e 9406 src/dps8/dps8_eis.c e 9418 src/dps8/dps8_eis.c e 9430 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 9513 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000077700) e 9517 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000007700) e 9520 src/dps8/dps8_eis.c if (e->S[1] == 0) e 9533 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 9535 src/dps8/dps8_eis.c if (e->N1 == 0 || e->N1 > 8) e 9538 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 9539 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 9543 src/dps8/dps8_eis.c switch(e->S2) e 9547 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 9551 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 9566 src/dps8/dps8_eis.c load9x((int) e->N1, &e->ADDR1, (int) e->CN1); e 9569 src/dps8/dps8_eis.c e->sign = 1; e 9571 src/dps8/dps8_eis.c word72 x = cast_128 (e->x); e 9572 src/dps8/dps8_eis.c if (islt_s128 (e->x, construct_s128 (0, 0))) e 9574 src/dps8/dps8_eis.c e->sign = -1; e 9593 src/dps8/dps8_eis.c word72 x = (word72)e->x; e 9594 src/dps8/dps8_eis.c if (e->x < 0) { e 9595 src/dps8/dps8_eis.c e->sign = -1; e 9615 src/dps8/dps8_eis.c if (e->sign == -1) e 9621 src/dps8/dps8_eis.c char * res = formatDecimal (out, &set, op1, n2, (int) e->S2, e->SF2, 0, &Ovr, &Trunc); e 9629 src/dps8/dps8_eis.c switch(e->S2) e 9635 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 9636 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (decNumberIsNegative(op1) && !decNumberIsZero(op1)) ? 015 : 013); // special + e 9638 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (decNumberIsNegative(op1) && !decNumberIsZero(op1)) ? 015 : 014); // default + e 9641 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (decNumberIsNegative(op1) && !decNumberIsZero(op1)) ? '-' : '+'); e 9656 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (word9) (res[i] - '0')); e 9659 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (word9) res[i]); e 9664 src/dps8/dps8_eis.c switch(e->S2) e 9670 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 9671 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (decNumberIsNegative(op1) && !decNumberIsZero(op1)) ? 015 : 013); // special + e 9673 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (decNumberIsNegative(op1) && !decNumberIsZero(op1)) ? 015 : 014); // default + e 9677 src/dps8/dps8_eis.c EISwrite49(&e->ADDR2, &pos, (int) dstTN, (decNumberIsNegative(op1) && !decNumberIsZero(op1)) ? '-' : '+'); e 9708 src/dps8/dps8_eis.c e 9717 src/dps8/dps8_eis.c e 9722 src/dps8/dps8_eis.c e 9723 src/dps8/dps8_eis.c e 9737 src/dps8/dps8_eis.c e 9755 src/dps8/dps8_eis.c e 9762 src/dps8/dps8_eis.c e 9777 src/dps8/dps8_eis.c e 9784 src/dps8/dps8_eis.c e 9798 src/dps8/dps8_eis.c e 9805 src/dps8/dps8_eis.c e 9819 src/dps8/dps8_eis.c e 9826 src/dps8/dps8_eis.c e 9847 src/dps8/dps8_eis.c e 9856 src/dps8/dps8_eis.c e 9863 src/dps8/dps8_eis.c e 9864 src/dps8/dps8_eis.c e 9889 src/dps8/dps8_eis.c e 9903 src/dps8/dps8_eis.c e 9909 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 9941 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000007700) e 9947 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000077700) e 9954 src/dps8/dps8_eis.c if (e->S1 == 0 || e->SF1 != 0) e 9970 src/dps8/dps8_eis.c if (e->N2 == 0 || e->N2 > 8) e 9987 src/dps8/dps8_eis.c switch(e->S1) e 9991 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 9995 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10009 src/dps8/dps8_eis.c word72 msk = subtract_128 (lshift_128 (construct_128 (0, 1), (9*e->N2-1)),construct_128 (0, 1)); e 10011 src/dps8/dps8_eis.c word72 msk = ((word72)1<<(9*e->N2-1))-1; // excluding sign e 10016 src/dps8/dps8_eis.c e 10017 src/dps8/dps8_eis.c e 10022 src/dps8/dps8_eis.c e 10034 src/dps8/dps8_eis.c x = add_128 (x, construct_128 (0, (uint) e->inBuffer[i])); e 10040 src/dps8/dps8_eis.c if (e->sign == -1) e 10048 src/dps8/dps8_eis.c x += e->inBuffer[i]; e 10053 src/dps8/dps8_eis.c if (e->sign == -1) e 10060 src/dps8/dps8_eis.c int pos = (int)e->CN2; e 10064 src/dps8/dps8_eis.c int shift = 9*((int)e->N2-1); e 10065 src/dps8/dps8_eis.c for(int i = 0; i < (int)e->N2; i++) { e 10067 src/dps8/dps8_eis.c EISwrite9(&e->ADDR2, &pos, (word9) rshift_128 (x, (uint) shift).l & 0777); e 10069 src/dps8/dps8_eis.c EISwrite9(&e->ADDR2, &pos, (word9) (x >> shift )& 0777); e 10074 src/dps8/dps8_eis.c SC_I_NEG (e->sign == -1); // set negative indicator e 10104 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 10141 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 10148 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 10150 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 10151 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 10153 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 10167 src/dps8/dps8_eis.c switch(e->S1) e 10170 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 10180 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 10181 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10185 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10186 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10193 src/dps8/dps8_eis.c switch(e->S2) e 10196 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 10197 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 10206 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 10207 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10211 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 10212 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10229 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 10230 src/dps8/dps8_eis.c if (e->sign == -1) e 10232 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 10233 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 10237 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 10238 src/dps8/dps8_eis.c if (e->sign == -1) e 10240 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 10241 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 10251 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 10284 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 10299 src/dps8/dps8_eis.c switch(e->S2) e 10306 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 10307 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 10309 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 10312 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 10327 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[j] - '0')); e 10330 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[j]); e 10335 src/dps8/dps8_eis.c switch(e->S2) e 10341 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 10342 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 10344 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 10347 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 10357 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 10358 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 10361 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 10372 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 10453 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 10492 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 10499 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 10501 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 10502 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 10516 src/dps8/dps8_eis.c switch(e->S1) e 10519 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 10529 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 10530 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10534 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10535 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10542 src/dps8/dps8_eis.c switch(e->S2) e 10545 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 10546 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 10555 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 10556 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10560 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 10561 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10568 src/dps8/dps8_eis.c switch(e->S3) e 10571 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 10580 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 10584 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 10600 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 10601 src/dps8/dps8_eis.c if (e->sign == -1) e 10603 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 10604 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 10608 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 10609 src/dps8/dps8_eis.c if (e->sign == -1) e 10611 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 10612 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 10632 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 10665 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 10680 src/dps8/dps8_eis.c switch(e->S3) e 10687 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 10688 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 10690 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 10693 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 10708 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 10711 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 10716 src/dps8/dps8_eis.c switch(e->S3) e 10722 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 10723 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 10725 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 10728 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 10738 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 10739 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 10743 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 10754 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 10795 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 10835 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 10842 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 10844 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 10845 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 10847 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 10861 src/dps8/dps8_eis.c switch(e->S1) e 10864 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 10874 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 10875 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10879 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10880 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10887 src/dps8/dps8_eis.c switch(e->S2) e 10890 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 10891 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 10900 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 10901 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10905 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 10906 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10922 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 10923 src/dps8/dps8_eis.c if (e->sign == -1) e 10925 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 10926 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 10930 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 10931 src/dps8/dps8_eis.c if (e->sign == -1) e 10933 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 10934 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 10944 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 10977 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 10992 src/dps8/dps8_eis.c switch(e->S2) e 10999 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 11000 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11002 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11005 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11020 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 11023 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 11028 src/dps8/dps8_eis.c switch(e->S2) e 11034 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 11035 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11037 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11040 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11050 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 11051 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 11055 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 11066 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11107 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 11145 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 11152 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 11154 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 11155 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 11169 src/dps8/dps8_eis.c switch(e->S1) e 11172 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 11182 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 11183 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11187 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 11188 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11195 src/dps8/dps8_eis.c switch(e->S2) e 11198 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 11199 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 11208 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 11209 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11213 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 11214 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11221 src/dps8/dps8_eis.c switch(e->S3) e 11224 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 11233 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 11237 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 11254 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 11255 src/dps8/dps8_eis.c if (e->sign == -1) e 11257 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 11258 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 11262 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 11263 src/dps8/dps8_eis.c if (e->sign == -1) e 11265 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11266 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 11276 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 11309 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 11322 src/dps8/dps8_eis.c switch(e->S3) e 11329 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 11330 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11332 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11335 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11350 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 11353 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 11358 src/dps8/dps8_eis.c switch(e->S3) e 11364 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 11365 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11367 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11370 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11380 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 11381 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 11385 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 11396 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 11437 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 11474 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 11481 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 11483 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 11484 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 11486 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 11500 src/dps8/dps8_eis.c switch(e->S1) e 11503 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 11513 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 11514 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11518 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 11519 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11526 src/dps8/dps8_eis.c switch(e->S2) e 11529 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 11530 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 11539 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 11540 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11544 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 11545 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11561 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 11562 src/dps8/dps8_eis.c if (e->sign == -1) e 11564 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 11565 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 11569 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 11570 src/dps8/dps8_eis.c if (e->sign == -1) e 11572 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11573 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 11580 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 11591 src/dps8/dps8_eis.c switch(e->S2) e 11598 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 11599 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11601 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11604 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11619 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 11622 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 11627 src/dps8/dps8_eis.c switch(e->S2) e 11633 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 11634 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11636 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11639 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11649 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 11650 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 11654 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 11665 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11706 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 11744 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 11751 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 11753 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 11754 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 11768 src/dps8/dps8_eis.c switch(e->S1) e 11771 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 11781 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 11782 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11786 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 11787 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11794 src/dps8/dps8_eis.c switch(e->S2) e 11797 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 11798 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 11807 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 11808 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11812 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 11813 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11820 src/dps8/dps8_eis.c switch(e->S3) e 11823 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 11832 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 11836 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 11853 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 11854 src/dps8/dps8_eis.c if (e->sign == -1) e 11856 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 11857 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 11861 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 11862 src/dps8/dps8_eis.c if (e->sign == -1) e 11864 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11865 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 11883 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 11894 src/dps8/dps8_eis.c switch(e->S3) e 11901 src/dps8/dps8_eis.c if (e->P) // If TN2 and S2 specify a 4-bit signed number and P e 11905 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11907 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11910 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11925 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 11928 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 11933 src/dps8/dps8_eis.c switch(e->S3) e 11939 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 11940 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 11942 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 11945 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 11955 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 11956 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 11959 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 11970 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 12759 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 12797 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 12804 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 12806 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 12807 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 12809 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 12823 src/dps8/dps8_eis.c switch(e->S1) e 12826 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 12836 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 12837 src/dps8/dps8_eis.c sc1 = -e->SF1; e 12841 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 12842 src/dps8/dps8_eis.c sc1 = -e->SF1; e 12849 src/dps8/dps8_eis.c switch(e->S2) e 12852 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 12853 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 12862 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 12863 src/dps8/dps8_eis.c sc2 = -e->SF2; e 12867 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 12868 src/dps8/dps8_eis.c sc2 = -e->SF2; e 12884 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); // divisor e 12885 src/dps8/dps8_eis.c if (e->sign == -1) e 12887 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 12888 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 12897 src/dps8/dps8_eis.c memcpy (inBufferop1,e->inBuffer,sizeof(inBufferop1)); // save for clz1 calculation later e 12901 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); // dividend e 12902 src/dps8/dps8_eis.c if (e->sign == -1) e 12904 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 12905 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 12908 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 12922 src/dps8/dps8_eis.c if (e->inBuffer[i]!=0) // this still holds op2 digits e 12929 src/dps8/dps8_eis.c NQ = (n2-clz2+1) - (n1-clz1) + (-(e->S1==CSFL?op1->exponent:(int)e->SF1)); e 12931 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "dv2d S1 %d S2 %d N1 %d N2 %d clz1 %d clz2 %d E1 %d E2 %d SF2 %d NQ %d\n",e->S1,e->S2,e->N1,e->N2,clz1,clz2,op1->exponent,op2->exponent,e->SF2,NQ); e 12954 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 12985 src/dps8/dps8_eis.c if (e->S2 == CSFL) { e 13009 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2 -1, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 13019 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 13023 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 13034 src/dps8/dps8_eis.c switch(e->S2) e 13041 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 13042 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 13044 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 13047 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 13062 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 13065 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 13070 src/dps8/dps8_eis.c switch(e->S2) e 13076 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 13077 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 13079 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 13082 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 13092 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 13093 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 13096 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 13107 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 13149 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 13188 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 13195 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 13197 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 13198 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 13212 src/dps8/dps8_eis.c switch(e->S1) e 13215 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 13225 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 13226 src/dps8/dps8_eis.c sc1 = -e->SF1; e 13230 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 13231 src/dps8/dps8_eis.c sc1 = -e->SF1; e 13238 src/dps8/dps8_eis.c switch(e->S2) e 13241 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 13242 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 13251 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 13252 src/dps8/dps8_eis.c sc2 = -e->SF2; e 13256 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 13257 src/dps8/dps8_eis.c sc2 = -e->SF2; e 13264 src/dps8/dps8_eis.c switch(e->S3) e 13267 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 13276 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 13280 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 13295 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 13297 src/dps8/dps8_eis.c if (e->sign == -1) e 13299 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 13300 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 13309 src/dps8/dps8_eis.c memcpy (inBufferop1,e->inBuffer,sizeof(inBufferop1)); // save for clz1 calculation later e 13313 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 13314 src/dps8/dps8_eis.c if (e->sign == -1) e 13316 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 13317 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 13336 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 13350 src/dps8/dps8_eis.c if (e->inBuffer[i]!=0) // this still holds op2 digits e 13357 src/dps8/dps8_eis.c NQ = (n2-clz2+1) - (n1-clz1) + ((e->S2==CSFL?op2->exponent:(int)e->SF2)-(e->S1==CSFL?op1->exponent:(int)e->SF1)-(int)e->SF3); e 13359 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "dv3d S1 %d S2 %d N1 %d N2 %d clz1 %d clz2 %d E1 %d E2 %d SF3 %d NQ %d\n",e->S1,e->S2,e->N1,e->N2,clz1,clz2,op1->exponent,op2->exponent,e->SF3,NQ); e 13382 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 13413 src/dps8/dps8_eis.c if (e->S3 == CSFL) { e 13437 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3 -1, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 13447 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 13451 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 13464 src/dps8/dps8_eis.c switch(e->S3) e 13471 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 13472 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 13474 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 13477 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 13492 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 13495 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 13500 src/dps8/dps8_eis.c switch(e->S3) e 13506 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, then the 13(8) plus sign character is placed appropriately if the result of the operation is positive. e 13507 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 013); // special + e 13509 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? 015 : 014); // default + e 13512 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (decNumberIsNegative(op3) && !decNumberIsZero(op3)) ? '-' : '+'); e 13522 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 13523 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 13526 src/dps8/dps8_eis.c EISwrite49(&e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 13537 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 6041 src/dps8/dps8_ins.c int e = SIGNEXT8_int (cpu.rE); e 6042 src/dps8/dps8_ins.c e = e + y; e 6044 src/dps8/dps8_ins.c cpu.rE = e & 0377; e 6048 src/dps8/dps8_ins.c if (e > 127) e 6055 src/dps8/dps8_ins.c if (e < -128) e 57 src/dps8/dps8_math.c long double exp2l (long double e) { e 58 src/dps8/dps8_math.c return __builtin_exp2l(e); e 92 src/dps8/dps8_math.c int e = SIGNEXT8_int (cpu . rE & MASK8); // make signed e 95 src/dps8/dps8_math.c return -exp2l(e); e 119 src/dps8/dps8_math.c return (S ? -1 : 1) * ldexpl(m, e); e 144 src/dps8/dps8_math.c int e = SIGNEXT8_int (cpu . rE & MASK8); // make signed e 147 src/dps8/dps8_math.c return -exp2(e); e 166 src/dps8/dps8_math.c return (S ? -1 : 1) * ldexp(m, e); e 220 src/dps8/dps8_math.c int e = (int)exp; e 222 src/dps8/dps8_math.c putbits72 (& result, 71-64, 8, e & 0377); e 359 src/dps8/dps8_math.c e 362 src/dps8/dps8_math.c e 374 src/dps8/dps8_math.c e 422 src/dps8/dps8_math.c e 424 src/dps8/dps8_math.c e 846 src/dps8/dps8_math.c int e = * e0; e 866 src/dps8/dps8_math.c e -= 1; e 873 src/dps8/dps8_math.c e -= 1; e 886 src/dps8/dps8_math.c e -= 1; e 896 src/dps8/dps8_math.c e -= 1; e 905 src/dps8/dps8_math.c e -= 1; e 915 src/dps8/dps8_math.c e -= 1; e 928 src/dps8/dps8_math.c e -= 1; e 938 src/dps8/dps8_math.c e -= 1; e 948 src/dps8/dps8_math.c if (e < -128) { e 954 src/dps8/dps8_math.c * E = (word8) e & MASK8; e 967 src/dps8/dps8_math.c * e0 = e; e 1023 src/dps8/dps8_math.c e 1034 src/dps8/dps8_math.c e 1037 src/dps8/dps8_math.c e 1046 src/dps8/dps8_math.c e 4129 src/dps8/dps8_sys.c # define SYMTAB_ENUM32(e) { #e, SYM_ENUM, SYM_UINT32, e } e 256 src/dps8/utarray.h # define utarray_next(a,e) (((e)==NULL) ? utarray_front(a) : ((((a)->i) > (utarray_eltidx(a,e)+1)) ? _utarray_eltptr(a,utarray_eltidx(a,e)+1) : NULL)) e 257 src/dps8/utarray.h # define utarray_prev(a,e) (((e)==NULL) ? utarray_back(a) : ((utarray_eltidx(a,e) > 0) ? _utarray_eltptr(a,utarray_eltidx(a,e)-1) : NULL)) e 259 src/dps8/utarray.h # define utarray_eltidx(a,e) (((char*)(e) >= (char*)((a)->d)) ? (((char*)(e) - (char*)((a)->d))/(ssize_t)(a)->icd.sz) : -1)