e 3400 src/decNumber/decNumber.c Int e; // E-part value e 3444 src/decNumber/decNumber.c e=0; // no E e 3446 src/decNumber/decNumber.c e=exp+dn->digits-1; // calculate E value e 3448 src/decNumber/decNumber.c if (eng && (e!=0)) { // engineering: may need to adjust e 3452 src/decNumber/decNumber.c if (e<0) { e 3453 src/decNumber/decNumber.c adj=(-e)%3; e 3457 src/decNumber/decNumber.c adj=e%3; e 3459 src/decNumber/decNumber.c e=e-adj; e 3466 src/decNumber/decNumber.c e=e+3; e 3518 src/decNumber/decNumber.c if (e!=0) { e 3522 src/decNumber/decNumber.c u=e; // .. e 3523 src/decNumber/decNumber.c if (e<0) { e 3525 src/decNumber/decNumber.c u=-e; // uInt, please e 907 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 913 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 925 src/dps8/dps8_eis.c word18 address = e -> WN [k - 1]; e 926 src/dps8/dps8_eis.c uint nChars = i + e -> CN [k - 1]; e 935 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 937 src/dps8/dps8_eis.c word36 data = EISRead (cpup, & e -> addr [k - 1]); // read it from memory e 943 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 961 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 969 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 975 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 987 src/dps8/dps8_eis.c word18 address = e -> WN [k - 1]; e 988 src/dps8/dps8_eis.c uint nChars = i + e -> CN [k - 1]; e 997 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 999 src/dps8/dps8_eis.c word36 data = EISRead (cpup, & e -> addr [k - 1]); // read it from memory e 1005 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 1020 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> addr [k - 1], 0, w, true); e 1113 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1114 src/dps8/dps8_eis.c e -> addr [k - 1]. cacheValid = false; e 1153 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1159 src/dps8/dps8_eis.c e -> MF1 = getbits36_7 (cpu.cu.IWB, 29); e 1164 src/dps8/dps8_eis.c e -> MF2 = getbits36_7 (cpu.cu.IWB, 11); e 1169 src/dps8/dps8_eis.c e -> MF3 = getbits36_7 (cpu.cu.IWB, 2); e 1173 src/dps8/dps8_eis.c word18 MFk = e -> MF [k - 1]; e 1182 src/dps8/dps8_eis.c word36 opDesc = e -> op [k - 1]; e 1228 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 1264 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 1268 src/dps8/dps8_eis.c e -> addr [k - 1].SNR = cpu.PR [n].SNR; e 1269 src/dps8/dps8_eis.c e -> addr [k - 1].RNR = max3 (cpu.PR [n].RNR, e 1273 src/dps8/dps8_eis.c e -> addr [k - 1].mat = viaPR; // ARs involved e 1278 src/dps8/dps8_eis.c e->addr [k - 1].mat = OperandRead; // no ARs involved yet e 1297 src/dps8/dps8_eis.c e -> addr [k - 1].address = address; e 1301 src/dps8/dps8_eis.c e -> op [k - 1] = EISRead (cpup, & e -> addr [k - 1]); e 1305 src/dps8/dps8_eis.c e->addr [k - 1].mat = OperandRead; // no ARs involved yet e 1329 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1330 src/dps8/dps8_eis.c word18 MFk = e -> MF [k - 1]; e 1341 src/dps8/dps8_eis.c word36 opDesc = e -> op [k - 1]; e 1355 src/dps8/dps8_eis.c e -> TA [k - 1] = e -> TA [useTA - 1]; e 1357 src/dps8/dps8_eis.c e -> TA [k - 1] = getbits36_2 (opDesc, 21); // type alphanumeric e 1363 src/dps8/dps8_eis.c switch (e->TA[0]) e 1418 src/dps8/dps8_eis.c e -> addr [k - 1].SNR = cpu.PR [n].SNR; e 1419 src/dps8/dps8_eis.c e -> addr [k - 1].RNR = max3 (cpu.PR [n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1421 src/dps8/dps8_eis.c e -> addr [k - 1].mat = viaPR; // ARs involved e 1435 src/dps8/dps8_eis.c e -> N [k - 1] = (uint) getMFReg36 (cpup, reg, false, false, mod_fault); // RL=1: disallow du,n,ic e 1439 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 1443 src/dps8/dps8_eis.c e -> N [k - 1] &= 017777777; // 22-bits of length e 1448 src/dps8/dps8_eis.c e -> N [k - 1] &= 07777777; // 21-bits of length. e 1459 src/dps8/dps8_eis.c e -> N [k - 1] = opDesc & 07777; e 1464 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "N%u %o\n", k, e->N[k-1]); e 1485 src/dps8/dps8_eis.c switch (e -> TA [k - 1]) e 1505 src/dps8/dps8_eis.c e -> CN [k - 1] = effCHAR; e 1506 src/dps8/dps8_eis.c e -> WN [k - 1] = effWORDNO; e 1509 src/dps8/dps8_eis.c k, e -> CN [k - 1]); e 1530 src/dps8/dps8_eis.c e -> CN [k - 1] = effCHAR; // ?????? e 1531 src/dps8/dps8_eis.c e -> WN [k - 1] = effWORDNO; e 1533 src/dps8/dps8_eis.c k, e -> CN [k - 1]); e 1556 src/dps8/dps8_eis.c e -> CN [k - 1] = effCHAR; // ?????? e 1557 src/dps8/dps8_eis.c e -> WN [k - 1] = effWORDNO; e 1559 src/dps8/dps8_eis.c k, e -> CN [k - 1]); e 1569 src/dps8/dps8_eis.c EISaddr * a = & e -> addr [k - 1]; e 1581 src/dps8/dps8_eis.c a -> TA = (int) e -> TA [k - 1]; e 1594 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1595 src/dps8/dps8_eis.c word36 opDesc = e -> op [k - 1]; e 1623 src/dps8/dps8_eis.c e -> addr [k - 1].SNR = cpu.PR[n].SNR; e 1624 src/dps8/dps8_eis.c e -> addr [k - 1].RNR = max3 (cpu.PR [n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1625 src/dps8/dps8_eis.c e -> addr [k - 1].mat = viaPR; e 1636 src/dps8/dps8_eis.c e -> addr [k - 1].address = y; e 1649 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1650 src/dps8/dps8_eis.c word18 MFk = e->MF[k-1]; e 1654 src/dps8/dps8_eis.c word36 opDesc = e->op[k-1]; e 1675 src/dps8/dps8_eis.c e->addr[k-1].SNR = cpu.PR[n].SNR; e 1676 src/dps8/dps8_eis.c e->addr[k-1].RNR = max3(cpu.PR[n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1678 src/dps8/dps8_eis.c e->addr[k-1].mat = viaPR; // ARs involved e 1684 src/dps8/dps8_eis.c e->TN[k-1] = getbits36_1 (opDesc, 21); // type numeric e 1689 src/dps8/dps8_eis.c if (e->TN[0]) e 1696 src/dps8/dps8_eis.c e->S[k-1] = getbits36_2 (opDesc, 22); // Sign and decimal type of data e 1697 src/dps8/dps8_eis.c e->SF[k-1] = SIGNEXT6_int (getbits36_6 (opDesc, 24)); // Scaling factor. e 1708 src/dps8/dps8_eis.c e->N[k-1] = getMFReg18 (cpup,reg, false, false, mod_fault) & 077; // RL=1: disallow du,n,ic e 1711 src/dps8/dps8_eis.c e->N[k-1] = opDesc & 077; e 1713 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "parseNumericOperandDescriptor(cpup, ): N%u %0o\n", k, e->N[k-1]); e 1725 src/dps8/dps8_eis.c e 1749 src/dps8/dps8_eis.c switch (e->TN[k-1]) e 1768 src/dps8/dps8_eis.c e->CN[k-1] = effCHAR; // ????? e 1785 src/dps8/dps8_eis.c e->CN[k-1] = effCHAR; // ????? e 1794 src/dps8/dps8_eis.c e->TA[k-1]); e 1799 src/dps8/dps8_eis.c EISaddr *a = &e->addr[k-1]; e 1810 src/dps8/dps8_eis.c a->TN = (int) e->TN[k-1]; e 1815 src/dps8/dps8_eis.c cpu.du.Dk_PTR_W[k-1], a->cPos, a->bPos, k, e->N[k-1]); e 1819 src/dps8/dps8_eis.c a->address, a->cPos, a->bPos, k, e->N[k-1]); e 1832 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1833 src/dps8/dps8_eis.c word18 MFk = e->MF[k-1]; e 1834 src/dps8/dps8_eis.c word36 opDesc = e->op[k-1]; e 1862 src/dps8/dps8_eis.c e->addr[k-1].SNR = cpu.PR[n].SNR; e 1863 src/dps8/dps8_eis.c e->addr[k-1].RNR = max3(cpu.PR[n].RNR, cpu.TPR.TRR, cpu.PPR.PRR); e 1864 src/dps8/dps8_eis.c e->addr[k-1].mat = viaPR; // ARs involved e 1875 src/dps8/dps8_eis.c e->N[k-1] = getMFReg36(cpup, reg, false, false, mod_fault) & 077777777; // RL=1: disallow du,n,ic e 1876 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 1880 src/dps8/dps8_eis.c e ->N[k-1] = opDesc & 07777; e 1884 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "N%u %u\n", k, e->N[k-1]); e 1910 src/dps8/dps8_eis.c e->B[k-1] = effBITNO; e 1911 src/dps8/dps8_eis.c e->C[k-1] = effCHAR; e 1913 src/dps8/dps8_eis.c EISaddr *a = &e->addr[k-1]; e 1926 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 1927 src/dps8/dps8_eis.c if (e -> addr [k - 1].cacheValid && e -> addr [k - 1].cacheDirty) e 1929 src/dps8/dps8_eis.c EISWriteCache(cpup, & e -> addr [k - 1]); e 1931 src/dps8/dps8_eis.c e -> addr [k - 1].cacheDirty = false; e 2989 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3039 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3050 src/dps8/dps8_eis.c e 3069 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 3072 src/dps8/dps8_eis.c for (; cpu.du.CHTALLY < min (e->N1, e->N2); cpu.du.CHTALLY ++) e 3087 src/dps8/dps8_eis.c if (e -> N1 < e -> N2) e 3089 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY ++) e 3104 src/dps8/dps8_eis.c else if (e->N1 > e->N2) e 3106 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e->N1; cpu.du.CHTALLY ++) e 3132 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3180 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3184 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3210 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3216 src/dps8/dps8_eis.c switch (e -> TA1) // Use TA1, not TA2 e 3224 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 13) & 017; e 3225 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 9) & 017; e 3234 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 12) & 077; e 3235 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 6) & 077; e 3244 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 9) & 0777; e 3245 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address ) & 0777; e 3259 src/dps8/dps8_eis.c switch (e -> TA1) // Use TA1, not TA2 e 3278 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3283 src/dps8/dps8_eis.c if (e -> N1) e 3285 src/dps8/dps8_eis.c uint limit = e -> N1 - 1; e 3302 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR3, 0, CY3, true); e 3315 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3363 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3367 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3393 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3399 src/dps8/dps8_eis.c switch (e -> TA1) e 3407 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 13) & 017; e 3408 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 9) & 017; e 3417 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 12) & 077; e 3418 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address >> 6) & 077; e 3427 src/dps8/dps8_eis.c c1 = (e -> ADDR2.address >> 9) & 0777; e 3428 src/dps8/dps8_eis.c c2 = (e -> ADDR2.address ) & 0777; e 3442 src/dps8/dps8_eis.c switch (e -> TA1) // Use TA1, not TA2 e 3464 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3467 src/dps8/dps8_eis.c if (e -> N1) e 3469 src/dps8/dps8_eis.c uint limit = e -> N1 - 1; e 3488 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR3, 0, CY3, true); e 3501 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3562 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3566 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3593 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3595 src/dps8/dps8_eis.c word18 duo = GETHI (e -> OP2); e 3600 src/dps8/dps8_eis.c switch (e -> TA1) e 3622 src/dps8/dps8_eis.c switch (e -> TA1) // use TA1, not TA2 e 3635 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3638 src/dps8/dps8_eis.c uint limit = e -> N1; e 3657 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR3, 0, CY3, true); e 3669 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3730 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3738 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3765 src/dps8/dps8_eis.c if (! (e -> MF2 & MFkID) && ((e -> MF2 & MFkREGMASK) == 3)) // MF2.du e 3767 src/dps8/dps8_eis.c word18 duo = GETHI (e -> OP2); e 3772 src/dps8/dps8_eis.c switch (e -> TA1) e 3794 src/dps8/dps8_eis.c switch (e -> TA1) // use TA1, not TA2 e 3807 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 3810 src/dps8/dps8_eis.c uint limit = e -> N1; e 3828 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR3, 0, CY3, true); e 3881 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 3931 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 3935 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000777660) e 3939 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 3954 src/dps8/dps8_eis.c "TCT CN1: %d TA1: %d\n", e -> CN1, TA1); e 3957 src/dps8/dps8_eis.c "TCT CN1: %d TA1: %d\n", e -> CN1, e -> TA1); e 3965 src/dps8/dps8_eis.c switch (e -> TA1) e 3998 src/dps8/dps8_eis.c e 4015 src/dps8/dps8_eis.c e 4021 src/dps8/dps8_eis.c "TCT N1 %d\n", e -> N1); e 4023 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 4026 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N1; cpu.du.CHTALLY ++) e 4045 src/dps8/dps8_eis.c word9 cout = xlate (cpup, &e->ADDR2, CTA9, m); e 4060 src/dps8/dps8_eis.c SC_I_TALLY (cpu.du.CHTALLY == e -> N1); e 4064 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR3, 0, CY3, true); e 4073 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 4126 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 4130 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000777660) e 4134 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777660) e 4149 src/dps8/dps8_eis.c "TCTR CN1: %d TA1: %d\n", e -> CN1, TA1); e 4152 src/dps8/dps8_eis.c "TCTR CN1: %d TA1: %d\n", e -> CN1, e -> TA1); e 4160 src/dps8/dps8_eis.c switch (e -> TA1) e 4193 src/dps8/dps8_eis.c e 4210 src/dps8/dps8_eis.c e 4216 src/dps8/dps8_eis.c "TCT N1 %d\n", e -> N1); e 4218 src/dps8/dps8_eis.c PNL (L68_ (if (e->N1 < 128) e 4221 src/dps8/dps8_eis.c uint limit = e -> N1; e 4241 src/dps8/dps8_eis.c word9 cout = xlate (cpup, &e->ADDR2, CTA9, m); e 4256 src/dps8/dps8_eis.c SC_I_TALLY (cpu.du.CHTALLY == e -> N1); e 4260 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR3, 0, CY3, true); e 4331 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 4365 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 4369 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000010000) e 4387 src/dps8/dps8_eis.c switch (e -> TA1) e 4404 src/dps8/dps8_eis.c switch (e -> TA2) e 4456 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 4460 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (TA1 == 1) && e 4463 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (e -> TA1 == 1) && e 4464 src/dps8/dps8_eis.c (e -> TA2 == 2); // (6-4 move) e 4474 src/dps8/dps8_eis.c cpu.du.CHTALLY, TA1, TA2, e -> N1, e -> N2, e -> CN1, e -> CN2); e 4478 src/dps8/dps8_eis.c cpu.du.CHTALLY, e -> TA1, e -> TA2, e -> N1, e -> N2, e -> CN1, e -> CN2); e 4498 src/dps8/dps8_eis.c e -> TA1 == CTA9 && // src and dst are both char 9 e 4499 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4501 src/dps8/dps8_eis.c (e -> N1 % (PGSZ * 4)) == 0 && // a page e 4502 src/dps8/dps8_eis.c e -> N2 == e -> N1 && // the src is the same size as the dest. e 4503 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4504 src/dps8/dps8_eis.c e -> CN2 == 0 && e 4509 src/dps8/dps8_eis.c (e -> ADDR1.address & PGMK) == 0 && e 4510 src/dps8/dps8_eis.c (e -> ADDR2.address & PGMK) == 0) e 4514 src/dps8/dps8_eis.c while (cpu.du.CHTALLY < e -> N1) e 4517 src/dps8/dps8_eis.c EISReadPage (cpup, & e -> ADDR1, cpu.du.CHTALLY / 4, pg); e 4518 src/dps8/dps8_eis.c EISWritePage (cpup, & e -> ADDR2, cpu.du.CHTALLY / 4, pg); e 4538 src/dps8/dps8_eis.c e -> TA1 == CTA9 && // src and dst are both char 9 e 4539 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4541 src/dps8/dps8_eis.c e -> N1 == 0 && // the source is entirely fill e 4542 src/dps8/dps8_eis.c (e -> N2 % (PGSZ * 4)) == 0 && // a page e 4543 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4544 src/dps8/dps8_eis.c e -> CN2 == 0 && e 4549 src/dps8/dps8_eis.c (e -> ADDR1.address & PGMK) == 0 && e 4550 src/dps8/dps8_eis.c (e -> ADDR2.address & PGMK) == 0) e 4565 src/dps8/dps8_eis.c while (cpu.du.CHTALLY < e -> N2) e 4567 src/dps8/dps8_eis.c EISWritePage (cpup, & e -> ADDR2, cpu.du.CHTALLY / 4, pg); e 4585 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4586 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4588 src/dps8/dps8_eis.c e -> N1 % 4 == 0 && // a whole number of words in the src e 4589 src/dps8/dps8_eis.c e -> N2 == e -> N1 && // the src is the same size as the dest. e 4590 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4591 src/dps8/dps8_eis.c e -> CN2 == 0) e 4594 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2; cpu.du.CHTALLY += 4) e 4597 src/dps8/dps8_eis.c word36 w = EISReadIdx (cpup, & e -> ADDR1, n); e 4598 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR2, n, w, true); e 4615 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4616 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4618 src/dps8/dps8_eis.c e -> N1 == 0 && // the source is entirely fill e 4619 src/dps8/dps8_eis.c e -> N2 % 4 == 0 && // a whole number of words in the dest e 4620 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4621 src/dps8/dps8_eis.c e -> CN2 == 0) e 4625 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2; cpu.du.CHTALLY += 4) e 4628 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR2, n, w, true); e 4638 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < min (e->N1, e->N2); cpu.du.CHTALLY ++) e 4646 src/dps8/dps8_eis.c if (e -> TA1 == e -> TA2) e 4686 src/dps8/dps8_eis.c if (ovp && (cpu.du.CHTALLY == e -> N1 - 1)) e 4702 src/dps8/dps8_eis.c if (e -> N1 < e -> N2) e 4704 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2 ; cpu.du.CHTALLY ++) e 4707 src/dps8/dps8_eis.c if (ovp && (cpu.du.CHTALLY == e -> N2 - 1)) e 4721 src/dps8/dps8_eis.c if (e -> N1 > e -> N2) e 4733 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 4767 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 4771 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000010000) e 4789 src/dps8/dps8_eis.c switch (e -> TA1) e 4806 src/dps8/dps8_eis.c switch (e -> TA2) e 4859 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (TA1 == 1) && e 4862 src/dps8/dps8_eis.c bool ovp = (e -> N1 < e -> N2) && (fill & 0400) && (e -> TA1 == 1) && e 4863 src/dps8/dps8_eis.c (e -> TA2 == 2); // (6-4 move) e 4869 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 4880 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4881 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4883 src/dps8/dps8_eis.c e -> N1 % 4 == 0 && // a whole number of words in the src e 4884 src/dps8/dps8_eis.c e -> N2 == e -> N1 && // the src is the same size as the dest. e 4885 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4886 src/dps8/dps8_eis.c e -> CN2 == 0) e 4889 src/dps8/dps8_eis.c uint limit = e -> N2; e 4893 src/dps8/dps8_eis.c word36 w = EISReadIdx (cpup, & e -> ADDR1, n); e 4894 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR2, n, w, true); e 4911 src/dps8/dps8_eis.c if (e -> TA1 == CTA9 && // src and dst are both char 9 e 4912 src/dps8/dps8_eis.c e -> TA2 == CTA9 && e 4914 src/dps8/dps8_eis.c e -> N1 == 0 && // the source is entirely fill e 4915 src/dps8/dps8_eis.c e -> N2 % 4 == 0 && // a whole number of words in the dest e 4916 src/dps8/dps8_eis.c e -> CN1 == 0 && // and it starts at a word boundary // BITNO? e 4917 src/dps8/dps8_eis.c e -> CN2 == 0) e 4924 src/dps8/dps8_eis.c uint limit = e -> N2; e 4925 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2; cpu.du.CHTALLY += 4) e 4928 src/dps8/dps8_eis.c EISWriteIdx (cpup, & e -> ADDR2, n, w, true); e 4938 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < min (e -> N1, e -> N2); cpu.du.CHTALLY ++) e 4940 src/dps8/dps8_eis.c word9 c = EISget469 (cpup, 1, e -> N1 - cpu.du.CHTALLY - 1); // get src char e 4946 src/dps8/dps8_eis.c if (e -> TA1 == e -> TA2) e 4948 src/dps8/dps8_eis.c EISput469 (cpup, 2, e -> N2 - cpu.du.CHTALLY - 1, c); e 4992 src/dps8/dps8_eis.c EISput469 (cpup, 2, e -> N2 - cpu.du.CHTALLY - 1, cout); e 5002 src/dps8/dps8_eis.c if (e -> N1 < e -> N2) e 5004 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < e -> N2 ; cpu.du.CHTALLY ++) e 5007 src/dps8/dps8_eis.c if (ovp && (cpu.du.CHTALLY == e -> N2 - 1)) e 5010 src/dps8/dps8_eis.c EISput469 (cpup, 2, e -> N2 - cpu.du.CHTALLY - 1, 015); // 015 is decimal - e 5012 src/dps8/dps8_eis.c EISput469 (cpup, 2, e -> N2 - cpu.du.CHTALLY - 1, 014); // 014 is decimal + e 5016 src/dps8/dps8_eis.c EISput469 (cpup, 2, e -> N2 - cpu.du.CHTALLY - 1, fillT); e 5023 src/dps8/dps8_eis.c if (e -> N1 > e -> N2) e 5048 src/dps8/dps8_eis.c #define isDecimalZero(c) ((e->srcTA == CTA9) ? \ e 5061 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5063 src/dps8/dps8_eis.c word9 *p = e->inBuffer; // p points to position in inBuffer where 4-bit chars are stored e 5064 src/dps8/dps8_eis.c (void)memset(e->inBuffer, 0, sizeof(e->inBuffer)); // initialize to all 0's e 5066 src/dps8/dps8_eis.c int pos = (int) e->CN[k-1]; e 5068 src/dps8/dps8_eis.c int TN = (int) e->TN[k-1]; e 5069 src/dps8/dps8_eis.c int S = (int) e->S[k-1]; // This is where MVNE gets really nasty. e 5072 src/dps8/dps8_eis.c int N = (int) e->N[k-1]; // number of chars in src string e 5074 src/dps8/dps8_eis.c EISaddr *a = &e->addr[k-1]; e 5076 src/dps8/dps8_eis.c e->sign = 1; e 5077 src/dps8/dps8_eis.c e->exponent = 0; e 5123 src/dps8/dps8_eis.c e->sign = -1; e 5125 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5129 src/dps8/dps8_eis.c e->exponent = (signed char)(c & 0377); // want to do a sign extend e 5130 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5134 src/dps8/dps8_eis.c e->exponent = (c & 0xf);// << 4; e 5135 src/dps8/dps8_eis.c e->exponent <<= 4; e 5136 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5140 src/dps8/dps8_eis.c e->exponent |= (c & 0xf); e 5142 src/dps8/dps8_eis.c signed char ce = (signed char) (e->exponent & 0xff); e 5143 src/dps8/dps8_eis.c e->exponent = ce; e 5145 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5169 src/dps8/dps8_eis.c e->sign = -1; e 5170 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5188 src/dps8/dps8_eis.c e->sign = -1; e 5189 src/dps8/dps8_eis.c e->srcTally -= 1; // 1 less source char e 5209 src/dps8/dps8_eis.c for (word9 *q = e->inBuffer; q < p; q ++) e 5224 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5226 src/dps8/dps8_eis.c word9 * p = e -> inBuffer; e 5227 src/dps8/dps8_eis.c memset (e -> inBuffer, 0, sizeof (e -> inBuffer));// initialize to all 0's e 5235 src/dps8/dps8_eis.c uint N = min (e-> N1, 63); e 5246 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5248 src/dps8/dps8_eis.c for (uint n = 0 ; n < (uint) e -> dstTally; n ++) e 5250 src/dps8/dps8_eis.c word9 c49 = e -> outBuffer [n]; e 5257 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5266 src/dps8/dps8_eis.c if (e -> mvne) e 5281 src/dps8/dps8_eis.c ** dstAddr = c49 | (e -> editInsertionTable [7] & 0760); e 5333 src/dps8/dps8_eis.c e->dstTally -= 1; e 5376 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5377 src/dps8/dps8_eis.c (void)memset(&e->editInsertionTable, 0, sizeof(e->editInsertionTable)); // XXX do we really need this? e 5380 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5382 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5386 src/dps8/dps8_eis.c word9 entry = EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9); // get mop table entries e 5388 src/dps8/dps8_eis.c word9 entry = EISget49(cpup, e->mopAddress, &e->mopPos, CTN9); // get mop table entries e 5390 src/dps8/dps8_eis.c e->editInsertionTable[i] = entry & 0777; // keep to 9-bits e 5391 src/dps8/dps8_eis.c e->mopTally -= 1; e 5420 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5422 src/dps8/dps8_eis.c if (!(e->mopIF & 010)) e 5425 src/dps8/dps8_eis.c if (!e->mopES && !e->mopSN) e 5427 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[2]); e 5428 src/dps8/dps8_eis.c e->mopES = true; e 5431 src/dps8/dps8_eis.c if (!e->mopES && e->mopSN) e 5433 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[3]); e 5434 src/dps8/dps8_eis.c e->mopES = true; e 5438 src/dps8/dps8_eis.c if (!e->mopES) e 5441 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[4]); e 5442 src/dps8/dps8_eis.c e->mopES = true; e 5448 src/dps8/dps8_eis.c if (e->mopIF & 04) e 5449 src/dps8/dps8_eis.c e->mopBZ = true; e 5466 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5469 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5470 src/dps8/dps8_eis.c e->mopIF = 16; e 5472 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 5474 src/dps8/dps8_eis.c if (e->dstTally == 0) e 5476 src/dps8/dps8_eis.c if (e->srcTally == 0) e 5479 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5483 src/dps8/dps8_eis.c e->srcTally -= 1; e 5484 src/dps8/dps8_eis.c e->in += 1; e 5500 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5502 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5504 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5513 src/dps8/dps8_eis.c if (!e->mopES) e 5515 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[1]); e 5517 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5519 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5521 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5525 src/dps8/dps8_eis.c EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9); e 5527 src/dps8/dps8_eis.c EISget49(cpup, e->mopAddress, &e->mopPos, CTN9); e 5529 src/dps8/dps8_eis.c e->mopTally -= 1; e 5537 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5539 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5541 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5545 src/dps8/dps8_eis.c word9 c = EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9); e 5547 src/dps8/dps8_eis.c word9 c = EISget49(cpup, e->mopAddress, &e->mopPos, CTN9); e 5549 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, c); e 5550 src/dps8/dps8_eis.c e->mopTally -= 1; e 5556 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF-1]); e 5563 src/dps8/dps8_eis.c e 5568 src/dps8/dps8_eis.c e 5570 src/dps8/dps8_eis.c e 5573 src/dps8/dps8_eis.c e 5575 src/dps8/dps8_eis.c e 5577 src/dps8/dps8_eis.c e 5584 src/dps8/dps8_eis.c e 5586 src/dps8/dps8_eis.c e 5588 src/dps8/dps8_eis.c e 5591 src/dps8/dps8_eis.c e 5593 src/dps8/dps8_eis.c e 5596 src/dps8/dps8_eis.c e 5602 src/dps8/dps8_eis.c e 5604 src/dps8/dps8_eis.c e 5631 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5633 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5635 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5639 src/dps8/dps8_eis.c if (!e->mopES) e 5644 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5646 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5648 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5650 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5654 src/dps8/dps8_eis.c EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9); e 5656 src/dps8/dps8_eis.c EISget49(cpup, e->mopAddress, &e->mopPos, CTN9); e 5658 src/dps8/dps8_eis.c e->mopTally -= 1; e 5665 src/dps8/dps8_eis.c if (e->mopIF) e 5670 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF - 1]); e 5675 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5677 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5681 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9)); e 5684 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, EISget49(cpup, e->mopAddress, &e->mopPos, CTN9)); e 5687 src/dps8/dps8_eis.c e->mopTally -= 1; e 5706 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5707 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5708 src/dps8/dps8_eis.c e->mopIF = 16; e 5709 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 5711 src/dps8/dps8_eis.c if (e->dstTally == 0) e 5713 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5737 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5739 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5741 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5749 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5751 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5753 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5756 src/dps8/dps8_eis.c if (!e->mopSN) e 5762 src/dps8/dps8_eis.c EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9); e 5764 src/dps8/dps8_eis.c EISget49(cpup, e->mopAddress, &e->mopPos, CTN9); e 5766 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5767 src/dps8/dps8_eis.c e->mopTally -= 1; e 5773 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9)); e 5775 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, EISget49(cpup, e->mopAddress, &e->mopPos, CTN9)); e 5778 src/dps8/dps8_eis.c e->mopTally -= 1; e 5783 src/dps8/dps8_eis.c if (e->mopSN) e 5787 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF - 1]); e 5789 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5806 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5808 src/dps8/dps8_eis.c if (e->mopIF >= 9 && e->mopIF <= 15) e 5810 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5814 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5816 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5818 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5821 src/dps8/dps8_eis.c if (e->mopSN) e 5824 src/dps8/dps8_eis.c EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9); e 5826 src/dps8/dps8_eis.c EISget49(cpup, e->mopAddress, &e->mopPos, CTN9); e 5828 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5829 src/dps8/dps8_eis.c e->mopTally -= 1; e 5832 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9)); e 5834 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, EISget49(cpup, e->mopAddress, &e->mopPos, CTN9)); e 5836 src/dps8/dps8_eis.c e->mopTally -= 1; e 5841 src/dps8/dps8_eis.c if (!e->mopSN) e 5843 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[e->mopIF - 1]); e 5845 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5864 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5865 src/dps8/dps8_eis.c if (e->mopIF == 0 || (e->mopIF >= 9 && e->mopIF <= 15)) e 5867 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5870 src/dps8/dps8_eis.c if (e->mopTally == 0) e 5872 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 5876 src/dps8/dps8_eis.c word9 next = EISget49(cpup, &e->ADDR2, &e->mopPos, CTN9); e 5878 src/dps8/dps8_eis.c word9 next = EISget49(cpup, e->mopAddress, &e->mopPos, CTN9); e 5880 src/dps8/dps8_eis.c e->mopTally -= 1; e 5882 src/dps8/dps8_eis.c e->editInsertionTable[e->mopIF - 1] = next; e 5883 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "LTE IT[%d]<=%d\n", e -> mopIF - 1, next); e 5927 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 5928 src/dps8/dps8_eis.c if (e->mopIF == 0) e 5929 src/dps8/dps8_eis.c e->mopIF = 16; e 5934 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 5935 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 5937 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 5938 src/dps8/dps8_eis.c if (e->dstTally == 0) e 5940 src/dps8/dps8_eis.c if (e->srcTally == 0) e 5948 src/dps8/dps8_eis.c word9 c = *(e->in); e 5950 src/dps8/dps8_eis.c if (!e->mopES) { // e->mopES is OFF e 5957 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 5958 src/dps8/dps8_eis.c e->in += 1; e 5959 src/dps8/dps8_eis.c e->srcTally -= 1; e 5965 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[4]); e 5967 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 5968 src/dps8/dps8_eis.c e->mopZ = false; // iszero() tested above. e 5969 src/dps8/dps8_eis.c e->in += 1; e 5970 src/dps8/dps8_eis.c e->srcTally -= 1; e 5972 src/dps8/dps8_eis.c e->mopES = true; e 5977 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 5980 src/dps8/dps8_eis.c e->mopZ = false; e 5981 src/dps8/dps8_eis.c e->in += 1; e 5982 src/dps8/dps8_eis.c e->srcTally -= 1; e 6033 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6034 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6035 src/dps8/dps8_eis.c e->mopIF = 16; e 6037 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF; n += 1) e 6039 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6041 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6044 src/dps8/dps8_eis.c word9 c = *(e->in); e 6046 src/dps8/dps8_eis.c if (!e->mopES) { // e->mopES is OFF e 6054 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 6055 src/dps8/dps8_eis.c e->in += 1; e 6056 src/dps8/dps8_eis.c e->srcTally -= 1; e 6059 src/dps8/dps8_eis.c if (!e->mopSN) e 6068 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[2]); e 6070 src/dps8/dps8_eis.c e->in += 1; e 6071 src/dps8/dps8_eis.c e->srcTally -= 1; e 6072 src/dps8/dps8_eis.c e->mopZ = false; // iszero tested above e 6074 src/dps8/dps8_eis.c e 6076 src/dps8/dps8_eis.c e 6081 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6083 src/dps8/dps8_eis.c e->mopES = true; e 6092 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[3]); e 6094 src/dps8/dps8_eis.c e->in += 1; e 6095 src/dps8/dps8_eis.c e->srcTally -= 1; e 6096 src/dps8/dps8_eis.c e->mopZ = false; // iszero tested above e 6098 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6100 src/dps8/dps8_eis.c e->mopES = true; e 6106 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6109 src/dps8/dps8_eis.c e->mopZ = false; e 6110 src/dps8/dps8_eis.c e->in += 1; e 6111 src/dps8/dps8_eis.c e->srcTally -= 1; e 6143 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6144 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6145 src/dps8/dps8_eis.c e->mopIF = 16; e 6147 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 6148 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6155 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6157 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6161 src/dps8/dps8_eis.c word9 c = (*e->in | (!e->mopSN ? e->editInsertionTable[2] : e->editInsertionTable[3])); e 6162 src/dps8/dps8_eis.c if (! isDecimalZero (*e->in)) e 6163 src/dps8/dps8_eis.c e->mopZ = false; e 6164 src/dps8/dps8_eis.c e->in += 1; e 6165 src/dps8/dps8_eis.c e->srcTally -= 1; e 6167 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6185 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6186 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6187 src/dps8/dps8_eis.c e->mopIF = 16; e 6189 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MVC mopIF %d\n", e->mopIF); e 6191 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6193 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 6196 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6198 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6201 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MVC write to output buffer %o\n", *e->in); e 6202 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, *e->in); e 6203 src/dps8/dps8_eis.c if (! isDecimalZero (*e->in)) e 6204 src/dps8/dps8_eis.c e->mopZ = false; e 6205 src/dps8/dps8_eis.c e->in += 1; e 6207 src/dps8/dps8_eis.c e->srcTally -= 1; e 6242 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6243 src/dps8/dps8_eis.c if (e->mvne == true) e 6246 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6247 src/dps8/dps8_eis.c e->mopIF = 16; e 6251 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6253 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6255 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6270 src/dps8/dps8_eis.c word9 c = *(e->in); e 6273 src/dps8/dps8_eis.c if (c & e->editInsertionTable[2]) // XXX only lower 4-bits are considered e 6276 src/dps8/dps8_eis.c else if (c & e->editInsertionTable[3]) // XXX only lower 4-bits are considered e 6278 src/dps8/dps8_eis.c e->mopSN = true; e 6283 src/dps8/dps8_eis.c e->in += 1; e 6284 src/dps8/dps8_eis.c e->srcTally -= 1; // XXX is this correct? No chars have been consumed, but ...... e 6286 src/dps8/dps8_eis.c e->mopZ = false; e 6287 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6305 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6306 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6307 src/dps8/dps8_eis.c e->mopIF = 16; e 6309 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6311 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6313 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6316 src/dps8/dps8_eis.c word9 c = *e->in; e 6317 src/dps8/dps8_eis.c e->in += 1; e 6318 src/dps8/dps8_eis.c e->srcTally -= 1; e 6322 src/dps8/dps8_eis.c if (!e->mopES && isDecimalZero (c)) e 6327 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[1]); e 6331 src/dps8/dps8_eis.c else if ((! e->mopES) && (! isDecimalZero (c))) e 6335 src/dps8/dps8_eis.c e->mopZ = false; e 6336 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6338 src/dps8/dps8_eis.c e->mopES = true; e 6339 src/dps8/dps8_eis.c } else if (e->mopES) e 6343 src/dps8/dps8_eis.c e->mopZ = false; e 6344 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6371 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6372 src/dps8/dps8_eis.c if (e->mopIF == 0) e 6373 src/dps8/dps8_eis.c e->mopIF = 16; e 6375 src/dps8/dps8_eis.c for(int n = 0 ; n < e->mopIF ; n += 1) e 6377 src/dps8/dps8_eis.c if (e->dstTally == 0) e 6379 src/dps8/dps8_eis.c if (e->srcTally == 0) e 6382 src/dps8/dps8_eis.c word9 c = *e->in; e 6383 src/dps8/dps8_eis.c e->srcTally -= 1; e 6384 src/dps8/dps8_eis.c e->in += 1; e 6388 src/dps8/dps8_eis.c if ((!e->mopES) && isDecimalZero (c)) e 6393 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 6397 src/dps8/dps8_eis.c if ((! e->mopES) && (! isDecimalZero (c))) e 6401 src/dps8/dps8_eis.c e->mopZ = false; e 6402 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6404 src/dps8/dps8_eis.c e->mopES = true; e 6405 src/dps8/dps8_eis.c } else if (e->mopES) e 6409 src/dps8/dps8_eis.c e->mopZ = false; e 6410 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, e->srcSZ, e->dstSZ, c); e 6432 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6433 src/dps8/dps8_eis.c if (e->mopIF & 010) e 6434 src/dps8/dps8_eis.c e->mopES = true; e 6436 src/dps8/dps8_eis.c e->mopES = false; e 6438 src/dps8/dps8_eis.c if (e->mopIF & 04) e 6439 src/dps8/dps8_eis.c e->mopBZ = true; e 6497 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6501 src/dps8/dps8_eis.c if (e == NULL) //-V547 e 6509 src/dps8/dps8_eis.c EISaddr *p = &e->ADDR2; e 6511 src/dps8/dps8_eis.c EISaddr *p = e->mopAddress; e 6517 src/dps8/dps8_eis.c if (e->mopPos > 3) // overflows to next word? e 6519 src/dps8/dps8_eis.c e->mopPos = 0; // reset to 1st byte e 6522 src/dps8/dps8_eis.c p->data = EISRead(cpup, &e->ADDR2); // read it from memory e 6525 src/dps8/dps8_eis.c PNL (p->data = EISRead(cpup, e->mopAddress)); // read it from memory e 6528 src/dps8/dps8_eis.c p->data = EISRead(cpup, e->mopAddress); // read it from memory e 6530 src/dps8/dps8_eis.c e->mopAddress->address = (e->mopAddress->address + 1) & AMASK; // bump source to next address e 6531 src/dps8/dps8_eis.c p->data = EISRead(cpup, e->mopAddress); // read it from memory e 6536 src/dps8/dps8_eis.c word9 mop9 = (word9) get9 (p -> data, e -> mopPos); // get 9-bit mop e 6538 src/dps8/dps8_eis.c e->mopIF = mop9 & 0xf; e 6541 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "MOP %s(%o) %o\n", m -> mopName, mop, e->mopIF); e 6542 src/dps8/dps8_eis.c e->m = m; e 6543 src/dps8/dps8_eis.c if (e->m == NULL || e->m->f == NULL) e 6545 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 6549 src/dps8/dps8_eis.c e->mopPos += 1; e 6550 src/dps8/dps8_eis.c e->mopTally -= 1; e 6563 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6566 src/dps8/dps8_eis.c e->mopTally = (int) e->N[KMOP]; // number of micro-ops e 6567 src/dps8/dps8_eis.c e->mopPos = (int) e->CN[KMOP]; // starting at char pos CN e 6569 src/dps8/dps8_eis.c e->mopAddress = &e->addr[kMop-1]; e 6570 src/dps8/dps8_eis.c e->mopTally = (int) e->N[kMop-1]; // number of micro-ops e 6571 src/dps8/dps8_eis.c e->mopPos = (int) e->CN[kMop-1]; // starting at char pos CN e 6574 src/dps8/dps8_eis.c word9 *p9 = e->editInsertionTable; // re-initialize edit insertion table e 6579 src/dps8/dps8_eis.c e->in = e->inBuffer; // reset input buffer pointer e 6580 src/dps8/dps8_eis.c e->out = e->outBuffer; // reset output buffer pointer e 6582 src/dps8/dps8_eis.c e->_faults = 0; // No faults (yet!) e 6591 src/dps8/dps8_eis.c while (e->dstTally) e 6595 src/dps8/dps8_eis.c e->srcTally, e->dstTally, e->mopTally); e 6600 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; // XXX ill proc fault e 6606 src/dps8/dps8_eis.c if (e->_faults & FAULT_IPR) //-V547 e 6622 src/dps8/dps8_eis.c e 6628 src/dps8/dps8_eis.c if (e->mopTally == 0 || mres) e 6633 src/dps8/dps8_eis.c if (e->mopZ && e->mopBZ) e 6635 src/dps8/dps8_eis.c e->out = e->outBuffer; //-V1048 // reset output buffer pointer e 6636 src/dps8/dps8_eis.c e->dstTally = (int) e->N3; // number of chars in dst (max 63) e 6637 src/dps8/dps8_eis.c while (e->dstTally) e 6639 src/dps8/dps8_eis.c writeToOutputBuffer(cpup, &e->out, 9, e->dstSZ, e->editInsertionTable[0]); e 6642 src/dps8/dps8_eis.c else if (mres || e->dstTally) //-V560 e 6644 src/dps8/dps8_eis.c e->_faults |= FAULT_IPR; e 6651 src/dps8/dps8_eis.c e->_faults, e->srcTally, e->dstTally, e->mopTally); e 6666 src/dps8/dps8_eis.c e 6670 src/dps8/dps8_eis.c e 6671 src/dps8/dps8_eis.c e 6676 src/dps8/dps8_eis.c e 6678 src/dps8/dps8_eis.c e 6684 src/dps8/dps8_eis.c e 6686 src/dps8/dps8_eis.c e 6687 src/dps8/dps8_eis.c e 6693 src/dps8/dps8_eis.c e 6695 src/dps8/dps8_eis.c e 6699 src/dps8/dps8_eis.c if (e -> _faults) e 6705 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6737 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 6742 src/dps8/dps8_eis.c e 6746 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000010000) e 6750 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000010000) e 6764 src/dps8/dps8_eis.c e->mopES = false; // End Suppression flag e 6765 src/dps8/dps8_eis.c e->mopSN = false; // Sign flag e 6766 src/dps8/dps8_eis.c e->mopBZ = false; // Blank-when-zero flag e 6767 src/dps8/dps8_eis.c e->mopZ = true; // Zero flag e 6769 src/dps8/dps8_eis.c e->srcTally = (int) e->N1; // number of chars in src (max 63) e 6770 src/dps8/dps8_eis.c e->dstTally = (int) e->N3; // number of chars in dst (max 63) e 6773 src/dps8/dps8_eis.c e->srcTA = (int) TA1; // type of chars in src e 6775 src/dps8/dps8_eis.c e->srcTA = (int) e->TA1; // type of chars in src e 6778 src/dps8/dps8_eis.c switch (e -> srcTA) e 6781 src/dps8/dps8_eis.c e -> srcSZ = 4; e 6784 src/dps8/dps8_eis.c e -> srcSZ = 6; e 6787 src/dps8/dps8_eis.c e -> srcSZ = 9; e 6794 src/dps8/dps8_eis.c uint dstTA = e -> TA3; // type of chars in dst e 6800 src/dps8/dps8_eis.c e -> dstSZ = 4; e 6803 src/dps8/dps8_eis.c e -> dstSZ = 6; e 6806 src/dps8/dps8_eis.c e -> dstSZ = 9; e 6814 src/dps8/dps8_eis.c e -> mvne = false; e 6822 src/dps8/dps8_eis.c e -> dstTally = (int) e -> N3; // restore dstTally for output e 6832 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 6867 src/dps8/dps8_eis.c e 6871 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000070000) e 6876 src/dps8/dps8_eis.c e 6880 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000010000) e 6893 src/dps8/dps8_eis.c uint srcTN = e -> TN1; // type of chars in src e 6907 src/dps8/dps8_eis.c switch(e->S1) e 6910 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 6919 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 6923 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 6933 src/dps8/dps8_eis.c if (e->N[1] == 0) e 6938 src/dps8/dps8_eis.c if (e->N[2] == 0) e 6956 src/dps8/dps8_eis.c e->mopES = false; // End Suppression flag e 6957 src/dps8/dps8_eis.c e->mopSN = false; // Sign flag e 6958 src/dps8/dps8_eis.c e->mopBZ = false; // Blank-when-zero flag e 6959 src/dps8/dps8_eis.c e->mopZ = true; // Zero flag e 6961 src/dps8/dps8_eis.c e -> srcTally = (int) e -> N1; // number of chars in src (max 63) e 6962 src/dps8/dps8_eis.c e -> dstTally = (int) e -> N3; // number of chars in dst (max 63) e 6968 src/dps8/dps8_eis.c e->srcTA = CTA4; // type of chars in src e 6974 src/dps8/dps8_eis.c e->srcSZ = 4; //-V1037 // stored as 4-bit decimals e 6978 src/dps8/dps8_eis.c e->srcSZ = 4; //-V1037 // 'cause everything is stored as 4-bit decimals e 6985 src/dps8/dps8_eis.c uint dstTA = e->TA3; // type of chars in dst e 6991 src/dps8/dps8_eis.c e->dstSZ = 4; e 6995 src/dps8/dps8_eis.c e->dstSZ = 6; e 6999 src/dps8/dps8_eis.c e->dstSZ = 9; e 7006 src/dps8/dps8_eis.c e->N1, e->N2, e->N3, e->TN1, e->CN1, TA3, e->CN3); e 7010 src/dps8/dps8_eis.c e->N1, e->N2, e->N3, e->TN1, e->CN1, e->TA3, e->CN3); e 7026 src/dps8/dps8_eis.c for(int n = 0 ; n < e -> srcTally ; n ++) e 7027 src/dps8/dps8_eis.c sum += e -> inBuffer [n]; e 7028 src/dps8/dps8_eis.c if ((e -> sign == -1) && sum) e 7029 src/dps8/dps8_eis.c e -> mopSN = true; e 7032 src/dps8/dps8_eis.c e -> mvne = true; e 7040 src/dps8/dps8_eis.c e -> dstTally = (int) e -> N3; // restore dstTally for output e 7054 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 7106 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000010000) e 7112 src/dps8/dps8_eis.c e 7117 src/dps8/dps8_eis.c if (!(e->MF[2] & MFkID) && e -> op [2] & 0000000777600) e 7131 src/dps8/dps8_eis.c e->srcTA = (int) TA1; e 7136 src/dps8/dps8_eis.c e->srcTA = (int) e->TA1; e 7137 src/dps8/dps8_eis.c uint dstTA = e->TA2; e 7139 src/dps8/dps8_eis.c switch (e -> TA1) e 7143 src/dps8/dps8_eis.c e -> srcSZ = 4; e 7146 src/dps8/dps8_eis.c e -> srcSZ = 6; e 7149 src/dps8/dps8_eis.c e -> srcSZ = 9; e 7156 src/dps8/dps8_eis.c switch (e -> TA2) e 7160 src/dps8/dps8_eis.c e -> dstSZ = 4; e 7163 src/dps8/dps8_eis.c e -> dstSZ = 6; e 7166 src/dps8/dps8_eis.c e -> dstSZ = 9; e 7187 src/dps8/dps8_eis.c switch(e->TA1) e 7206 src/dps8/dps8_eis.c e 7211 src/dps8/dps8_eis.c int lastpageidx = ((int)e->N1 + (int)e->CN1 -1) / e->srcSZ; e 7213 src/dps8/dps8_eis.c EISReadIdx(cpup, &e->ADDR1, (uint)lastpageidx); e 7215 src/dps8/dps8_eis.c EISReadIdx(cpup, &e->ADDR3, 0); e 7216 src/dps8/dps8_eis.c EISReadIdx(cpup, &e->ADDR3, xlatSize-1); e 7223 src/dps8/dps8_eis.c switch(e->srcSZ) e 7235 src/dps8/dps8_eis.c __func__, e -> CN1, e -> CN2, e -> srcSZ, e -> dstSZ, T, e 7236 src/dps8/dps8_eis.c fill, fillT, e -> N1, e -> N2); e 7238 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 7241 src/dps8/dps8_eis.c for ( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY ++) e 7249 src/dps8/dps8_eis.c if (e->TA1 == e->TA2) e 7251 src/dps8/dps8_eis.c EISput469(cpup, 2, cpu.du.CHTALLY, xlate (cpup, &e->ADDR3, dstTA, c)); e 7259 src/dps8/dps8_eis.c word9 cout = xlate(cpup, &e->ADDR3, dstTA, (uint) cidx); e 7271 src/dps8/dps8_eis.c switch (e->srcSZ) e 7274 src/dps8/dps8_eis.c switch(e->dstSZ) e 7284 src/dps8/dps8_eis.c switch(e->dstSZ) e 7304 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 7306 src/dps8/dps8_eis.c word9 cfill = xlate(cpup, &e->ADDR3, dstTA, fillT); e 7307 src/dps8/dps8_eis.c switch (e->srcSZ) e 7310 src/dps8/dps8_eis.c switch(e->dstSZ) e 7320 src/dps8/dps8_eis.c switch(e->dstSZ) e 7332 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < e->N2 ; cpu.du.CHTALLY ++) e 7340 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 7356 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 7398 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 7412 src/dps8/dps8_eis.c switch(e->S1) e 7415 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 7425 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 7426 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7430 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 7431 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7438 src/dps8/dps8_eis.c switch(e->S2) e 7441 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 7442 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 7451 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 7452 src/dps8/dps8_eis.c sc2 = -e->SF2; e 7456 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 7457 src/dps8/dps8_eis.c sc2 = -e->SF2; e 7474 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 7475 src/dps8/dps8_eis.c if (e->sign == -1) e 7477 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 7478 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 7482 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 7483 src/dps8/dps8_eis.c if (e->sign == -1) e 7485 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 7486 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 7662 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 7700 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character e 7707 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 7709 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 7710 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 7714 src/dps8/dps8_eis.c e->TN1, e->CN1, e->N1, e->TN2, e->CN2, e->N2); e 7717 src/dps8/dps8_eis.c e->SF1, e->SF2); e 7720 src/dps8/dps8_eis.c e->OP1, e->OP2); e 7734 src/dps8/dps8_eis.c switch(e->S1) e 7737 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 7747 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 7748 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7752 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 7753 src/dps8/dps8_eis.c sc1 = -e->SF1; e 7768 src/dps8/dps8_eis.c switch(e->S2) e 7771 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 7780 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 7784 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 7801 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber (e->inBuffer, n1, sc1, &_1); e 7803 src/dps8/dps8_eis.c if (e->sign == -1) e 7805 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 7806 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 7818 src/dps8/dps8_eis.c char * res = formatDecimal (out, & set, op1, n2, (int) e->S2, e->SF2, R, e 7829 src/dps8/dps8_eis.c switch(e->S2) e 7839 src/dps8/dps8_eis.c if (e->P) e 7841 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7846 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7851 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7868 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7872 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, (word9) res[i]); e 7877 src/dps8/dps8_eis.c switch(e->S2) e 7886 src/dps8/dps8_eis.c if (e->P) e 7888 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7893 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7899 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7911 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7913 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7917 src/dps8/dps8_eis.c EISwrite49 (cpup, & e->ADDR2, & pos, (int) dstTN, e 7929 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 7980 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8067 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8068 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8070 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8071 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8082 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8091 src/dps8/dps8_eis.c e -> N1, e -> N2, e 8092 src/dps8/dps8_eis.c e -> C1, e -> C2, e -> B1, e -> B2, F, T, e 8094 src/dps8/dps8_eis.c e -> addr [0].SNR, e -> addr [0].address, e 8095 src/dps8/dps8_eis.c e -> addr [0].cPos, e -> addr [0].bPos, e 8096 src/dps8/dps8_eis.c e -> addr [1].SNR, e -> addr [1].address, e 8097 src/dps8/dps8_eis.c e -> addr [1].cPos, e -> addr [1].bPos); e 8102 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8105 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY += 1) e 8107 src/dps8/dps8_eis.c bool b1 = EISgetBitRWN(cpup, &e->ADDR1, true); e 8108 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8109 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN(cpup, &e->ADDR2, true); e 8120 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; // set bit contents to write e 8121 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; // we want to write the bit e 8124 src/dps8/dps8_eis.c EISgetBitRWN(cpup, &e->ADDR2, e->ADDR1.last_bit_posn == 35); // write bit w/ addr increment to memory e 8127 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8129 src/dps8/dps8_eis.c for(; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8133 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8134 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN(cpup, &e->ADDR2, true); e 8145 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; e 8146 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; e 8149 src/dps8/dps8_eis.c EISgetBitRWN(cpup, &e->ADDR2, e->ADDR1.last_bit_posn == 35); // write bit w/ addr increment to memory e 8153 src/dps8/dps8_eis.c EISWriteCache (cpup, &e->ADDR2); e 8159 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8266 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8335 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8336 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8338 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8339 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8344 src/dps8/dps8_eis.c getBitOffsets((int) e->N1, (int) e->C1, (int) e->B1, &numWords1, &e->ADDR1.cPos, &e->ADDR1.bPos); e 8351 src/dps8/dps8_eis.c e->ADDR1.address += (word18) numWords1; e 8356 src/dps8/dps8_eis.c e->N1, e->C1, e->B1, numWords1, e->ADDR1.cPos, e->ADDR1.bPos); e 8357 src/dps8/dps8_eis.c getBitOffsets((int) e->N2, (int) e->C2, (int) e->B2, &numWords2, &e->ADDR2.cPos, &e->ADDR2.bPos); e 8360 src/dps8/dps8_eis.c e->N2, e->C2, e->B2, numWords2, e->ADDR2.cPos, e->ADDR2.bPos); e 8367 src/dps8/dps8_eis.c e->ADDR2.address += (word18) numWords2; e 8379 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8385 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8388 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY += 1) e 8390 src/dps8/dps8_eis.c bool b1 = EISgetBitRWNR(cpup, &e->ADDR1, true); e 8392 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8393 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(cpup, &e->ADDR2, true); e 8401 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; // set bit contents to write e 8402 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; // we want to write the bit e 8405 src/dps8/dps8_eis.c EISgetBitRWNR(cpup, &e->ADDR2, e->ADDR1.last_bit_posn == 0); e 8408 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8410 src/dps8/dps8_eis.c for(; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8414 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8415 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(cpup, &e->ADDR2, true); e 8426 src/dps8/dps8_eis.c e->ADDR2.bit = bR ? 1 : 0; e 8427 src/dps8/dps8_eis.c e->ADDR2.mode = eRWwriteBit; e 8430 src/dps8/dps8_eis.c EISgetBitRWNR(cpup, &e->ADDR2, e->ADDR1.last_bit_posn == 0); e 8434 src/dps8/dps8_eis.c EISWriteCache (cpup, &e->ADDR2); e 8440 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8464 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8551 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8552 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8554 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8555 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8566 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8567 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8576 src/dps8/dps8_eis.c e -> N1, e -> N2, e 8577 src/dps8/dps8_eis.c e -> C1, e -> C2, e -> B1, e -> B2, F, T, e 8579 src/dps8/dps8_eis.c e -> addr [0].SNR, e -> addr [0].address, e 8580 src/dps8/dps8_eis.c e -> addr [0].cPos, e -> addr [0].bPos, e 8581 src/dps8/dps8_eis.c e -> addr [1].SNR, e -> addr [1].address, e 8582 src/dps8/dps8_eis.c e -> addr [1].cPos, e -> addr [1].bPos); e 8587 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8590 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min (e->N1, e->N2); cpu.du.CHTALLY += 1) e 8592 src/dps8/dps8_eis.c bool b1 = EISgetBitRWN (cpup, & e->ADDR1, true); e 8593 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN (cpup, & e->ADDR2, true); e 8605 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8607 src/dps8/dps8_eis.c for (; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8610 src/dps8/dps8_eis.c bool b2 = EISgetBitRWN (cpup, & e->ADDR2, true); e 8627 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8651 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8720 src/dps8/dps8_eis.c e->ADDR1.cPos = (int) e->C1; e 8721 src/dps8/dps8_eis.c e->ADDR2.cPos = (int) e->C2; e 8723 src/dps8/dps8_eis.c e->ADDR1.bPos = (int) e->B1; e 8724 src/dps8/dps8_eis.c e->ADDR2.bPos = (int) e->B2; e 8729 src/dps8/dps8_eis.c getBitOffsets((int) e->N1, (int) e->C1, (int) e->B1, &numWords1, &e->ADDR1.cPos, &e->ADDR1.bPos); e 8736 src/dps8/dps8_eis.c e->ADDR1.address += (word18) numWords1; e 8741 src/dps8/dps8_eis.c e->N1, e->C1, e->B1, numWords1, e->ADDR1.cPos, e->ADDR1.bPos); e 8742 src/dps8/dps8_eis.c getBitOffsets((int) e->N2, (int) e->C2, (int) e->B2, &numWords2, &e->ADDR2.cPos, &e->ADDR2.bPos); e 8745 src/dps8/dps8_eis.c e->N2, e->C2, e->B2, numWords2, e->ADDR2.cPos, e->ADDR2.bPos); e 8752 src/dps8/dps8_eis.c e->ADDR2.address += (word18) numWords2; e 8764 src/dps8/dps8_eis.c e->ADDR1.mode = eRWreadBit; e 8770 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8773 src/dps8/dps8_eis.c for( ; cpu.du.CHTALLY < min(e->N1, e->N2); cpu.du.CHTALLY += 1) e 8775 src/dps8/dps8_eis.c bool b1 = EISgetBitRWNR(cpup, &e->ADDR1, true); e 8777 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8778 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(cpup, &e->ADDR2, true); e 8790 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8792 src/dps8/dps8_eis.c for(; cpu.du.CHTALLY < e->N2; cpu.du.CHTALLY += 1) e 8796 src/dps8/dps8_eis.c e->ADDR2.mode = eRWreadBit; e 8797 src/dps8/dps8_eis.c bool b2 = EISgetBitRWNR(cpup, &e->ADDR2, true); e 8815 src/dps8/dps8_eis.c if (e->N1 > e->N2) e 8885 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 8932 src/dps8/dps8_eis.c int charPosn1 = (int) e->C1; e 8933 src/dps8/dps8_eis.c int charPosn2 = (int) e->C2; e 8935 src/dps8/dps8_eis.c int bitPosn1 = (int) e->B1; e 8936 src/dps8/dps8_eis.c int bitPosn2 = (int) e->B2; e 8943 src/dps8/dps8_eis.c sim_debug (DBG_TRACEEXT, & cpu_dev, "cmpb N1 %d N2 %d\n", e -> N1, e -> N2); e 8955 src/dps8/dps8_eis.c e 8961 src/dps8/dps8_eis.c PNL (L68_ (if (max (e->N1, e->N2) < 128) e 8965 src/dps8/dps8_eis.c for(i = 0 ; i < min(e->N1, e->N2) ; i += 1) e 8967 src/dps8/dps8_eis.c bool b1 = EISgetBit (cpup, &e->ADDR1, &charPosn1, &bitPosn1); e 8968 src/dps8/dps8_eis.c bool b2 = EISgetBit (cpup, &e->ADDR2, &charPosn2, &bitPosn2); e 8984 src/dps8/dps8_eis.c if (e->N1 < e->N2) e 8986 src/dps8/dps8_eis.c for(; i < e->N2 ; i += 1) e 8989 src/dps8/dps8_eis.c bool b2 = EISgetBit(cpup, &e->ADDR2, &charPosn2, &bitPosn2); e 9004 src/dps8/dps8_eis.c } else if (e->N1 > e->N2) e 9006 src/dps8/dps8_eis.c for(; i < e->N1 ; i += 1) e 9008 src/dps8/dps8_eis.c bool b1 = EISgetBit(cpup, &e->ADDR1, &charPosn1, &bitPosn1); e 9152 src/dps8/dps8_eis.c e 9166 src/dps8/dps8_eis.c e 9167 src/dps8/dps8_eis.c e 9168 src/dps8/dps8_eis.c e 9219 src/dps8/dps8_eis.c e 9220 src/dps8/dps8_eis.c e 9239 src/dps8/dps8_eis.c e 9242 src/dps8/dps8_eis.c e 9313 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 9356 src/dps8/dps8_eis.c e->x = signExt9(x, n); // form proper 2's-complement integer e 9366 src/dps8/dps8_eis.c e 9368 src/dps8/dps8_eis.c e 9374 src/dps8/dps8_eis.c e 9381 src/dps8/dps8_eis.c e 9391 src/dps8/dps8_eis.c e 9410 src/dps8/dps8_eis.c e 9413 src/dps8/dps8_eis.c e 9422 src/dps8/dps8_eis.c e 9425 src/dps8/dps8_eis.c e 9437 src/dps8/dps8_eis.c e 9453 src/dps8/dps8_eis.c e 9457 src/dps8/dps8_eis.c e 9469 src/dps8/dps8_eis.c e 9481 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 9564 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000077700) e 9568 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000007700) e 9571 src/dps8/dps8_eis.c if (e->S[1] == 0) e 9584 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 9586 src/dps8/dps8_eis.c if (e->N1 == 0 || e->N1 > 8) e 9589 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 9590 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 9594 src/dps8/dps8_eis.c switch(e->S2) e 9598 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 9602 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 9617 src/dps8/dps8_eis.c load9x(cpup, (int) e->N1, &e->ADDR1, (int) e->CN1); e 9620 src/dps8/dps8_eis.c e->sign = 1; e 9622 src/dps8/dps8_eis.c word72 x = cast_128 (e->x); e 9623 src/dps8/dps8_eis.c if (islt_s128 (e->x, construct_s128 (0, 0))) e 9625 src/dps8/dps8_eis.c e->sign = -1; e 9644 src/dps8/dps8_eis.c word72 x = (word72)e->x; e 9645 src/dps8/dps8_eis.c if (e->x < 0) { e 9646 src/dps8/dps8_eis.c e->sign = -1; e 9666 src/dps8/dps8_eis.c if (e->sign == -1) e 9672 src/dps8/dps8_eis.c char * res = formatDecimal (out, &set, op1, n2, (int) e->S2, e->SF2, 0, &Ovr, &Trunc); e 9680 src/dps8/dps8_eis.c switch(e->S2) e 9686 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 9689 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, e 9692 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, e 9696 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, e 9712 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, (word9) (res[i] - '0')); e 9715 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, (word9) res[i]); e 9720 src/dps8/dps8_eis.c switch(e->S2) e 9726 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 9729 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, e 9732 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, e 9737 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR2, &pos, (int) dstTN, e 9769 src/dps8/dps8_eis.c e 9778 src/dps8/dps8_eis.c e 9783 src/dps8/dps8_eis.c e 9784 src/dps8/dps8_eis.c e 9798 src/dps8/dps8_eis.c e 9816 src/dps8/dps8_eis.c e 9823 src/dps8/dps8_eis.c e 9838 src/dps8/dps8_eis.c e 9845 src/dps8/dps8_eis.c e 9859 src/dps8/dps8_eis.c e 9866 src/dps8/dps8_eis.c e 9880 src/dps8/dps8_eis.c e 9887 src/dps8/dps8_eis.c e 9908 src/dps8/dps8_eis.c e 9917 src/dps8/dps8_eis.c e 9924 src/dps8/dps8_eis.c e 9925 src/dps8/dps8_eis.c e 9950 src/dps8/dps8_eis.c e 9964 src/dps8/dps8_eis.c e 9970 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 10002 src/dps8/dps8_eis.c if (!(e->MF[0] & MFkID) && e -> op [0] & 0000000007700) e 10008 src/dps8/dps8_eis.c if (!(e->MF[1] & MFkID) && e -> op [1] & 0000000077700) e 10015 src/dps8/dps8_eis.c if (e->S1 == 0 || e->SF1 != 0) e 10031 src/dps8/dps8_eis.c if (e->N2 == 0 || e->N2 > 8) e 10048 src/dps8/dps8_eis.c switch(e->S1) e 10052 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 10056 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10070 src/dps8/dps8_eis.c word72 msk = subtract_128 (lshift_128 (construct_128 (0, 1), (9*e->N2-1)),construct_128 (0, 1)); e 10072 src/dps8/dps8_eis.c word72 msk = ((word72)1<<(9*e->N2-1))-1; // excluding sign e 10077 src/dps8/dps8_eis.c e 10078 src/dps8/dps8_eis.c e 10084 src/dps8/dps8_eis.c e 10096 src/dps8/dps8_eis.c x = add_128 (x, construct_128 (0, (uint) e->inBuffer[i])); e 10102 src/dps8/dps8_eis.c if (e->sign == -1) e 10110 src/dps8/dps8_eis.c x += e->inBuffer[i]; e 10115 src/dps8/dps8_eis.c if (e->sign == -1) e 10122 src/dps8/dps8_eis.c int pos = (int)e->CN2; e 10126 src/dps8/dps8_eis.c int shift = 9*((int)e->N2-1); e 10127 src/dps8/dps8_eis.c for(int i = 0; i < (int)e->N2; i++) { e 10129 src/dps8/dps8_eis.c EISwrite9(cpup, &e->ADDR2, &pos, (word9) rshift_128 (x, (uint) shift).l & 0777); e 10131 src/dps8/dps8_eis.c EISwrite9(cpup, &e->ADDR2, &pos, (word9) (x >> shift )& 0777); e 10136 src/dps8/dps8_eis.c SC_I_NEG (e->sign == -1); // set negative indicator e 10166 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 10203 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 10210 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 10212 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 10213 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 10215 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 10229 src/dps8/dps8_eis.c switch(e->S1) e 10232 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 10242 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 10243 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10247 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10248 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10255 src/dps8/dps8_eis.c switch(e->S2) e 10258 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 10259 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 10268 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 10269 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10273 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 10274 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10291 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 10292 src/dps8/dps8_eis.c if (e->sign == -1) e 10294 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 10295 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 10299 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 10300 src/dps8/dps8_eis.c if (e->sign == -1) e 10302 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 10303 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 10313 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 10345 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 10360 src/dps8/dps8_eis.c switch(e->S2) e 10367 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 10370 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10373 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10377 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10393 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[j] - '0')); e 10396 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[j]); e 10401 src/dps8/dps8_eis.c switch(e->S2) e 10407 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 10410 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10413 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10417 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10428 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 10429 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 10432 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 10443 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 10525 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 10564 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 10571 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 10573 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 10574 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 10588 src/dps8/dps8_eis.c switch(e->S1) e 10591 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 10601 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 10602 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10606 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10607 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10614 src/dps8/dps8_eis.c switch(e->S2) e 10617 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 10618 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 10627 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 10628 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10632 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 10633 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10640 src/dps8/dps8_eis.c switch(e->S3) e 10643 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 10652 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 10656 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 10672 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 10673 src/dps8/dps8_eis.c if (e->sign == -1) e 10675 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 10676 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 10680 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 10681 src/dps8/dps8_eis.c if (e->sign == -1) e 10683 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 10684 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 10704 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 10736 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 10751 src/dps8/dps8_eis.c switch(e->S3) e 10758 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 10761 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10764 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10768 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10784 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 10787 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 10792 src/dps8/dps8_eis.c switch(e->S3) e 10798 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 10801 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10804 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10808 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 10819 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 10820 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 10824 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 10835 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 10876 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 10916 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 10923 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 10925 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 10926 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 10928 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 10942 src/dps8/dps8_eis.c switch(e->S1) e 10945 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 10955 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 10956 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10960 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 10961 src/dps8/dps8_eis.c sc1 = -e->SF1; e 10968 src/dps8/dps8_eis.c switch(e->S2) e 10971 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 10972 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 10981 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 10982 src/dps8/dps8_eis.c sc2 = -e->SF2; e 10986 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 10987 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11003 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 11004 src/dps8/dps8_eis.c if (e->sign == -1) e 11006 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 11007 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 11011 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 11012 src/dps8/dps8_eis.c if (e->sign == -1) e 11014 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11015 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 11025 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 11057 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 11072 src/dps8/dps8_eis.c switch(e->S2) e 11079 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 11082 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11085 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11089 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11105 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 11108 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 11113 src/dps8/dps8_eis.c switch(e->S2) e 11119 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 11122 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11125 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11129 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11140 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 11141 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 11145 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 11156 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11197 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 11235 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 11242 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 11244 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 11245 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 11259 src/dps8/dps8_eis.c switch(e->S1) e 11262 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 11272 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 11273 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11277 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 11278 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11285 src/dps8/dps8_eis.c switch(e->S2) e 11288 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 11289 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 11298 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 11299 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11303 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 11304 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11311 src/dps8/dps8_eis.c switch(e->S3) e 11314 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 11323 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 11327 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 11344 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 11345 src/dps8/dps8_eis.c if (e->sign == -1) e 11347 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 11348 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 11352 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 11353 src/dps8/dps8_eis.c if (e->sign == -1) e 11355 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11356 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 11366 src/dps8/dps8_eis.c int sf = e->S3==CSFL?op3->exponent:e->SF3; e 11398 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 11411 src/dps8/dps8_eis.c switch(e->S3) e 11418 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 11421 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11424 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11428 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11444 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 11447 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 11452 src/dps8/dps8_eis.c switch(e->S3) e 11458 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 11461 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11464 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11468 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11479 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 11480 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 11484 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 11495 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 11536 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 11573 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 11580 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 11582 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 11583 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 11585 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 11599 src/dps8/dps8_eis.c switch(e->S1) e 11602 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 11612 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 11613 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11617 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 11618 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11625 src/dps8/dps8_eis.c switch(e->S2) e 11628 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 11629 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 11638 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 11639 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11643 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 11644 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11660 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 11661 src/dps8/dps8_eis.c if (e->sign == -1) e 11663 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 11664 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 11668 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 11669 src/dps8/dps8_eis.c if (e->sign == -1) e 11671 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11672 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 11679 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 11690 src/dps8/dps8_eis.c switch(e->S2) e 11697 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 11700 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11703 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11707 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11723 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 11726 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 11731 src/dps8/dps8_eis.c switch(e->S2) e 11737 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 11740 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11743 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11747 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 11758 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 11759 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 11763 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 11774 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11815 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 11853 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 11860 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 11862 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 11863 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 11877 src/dps8/dps8_eis.c switch(e->S1) e 11880 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 11890 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 11891 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11895 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 11896 src/dps8/dps8_eis.c sc1 = -e->SF1; e 11903 src/dps8/dps8_eis.c switch(e->S2) e 11906 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 11907 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 11916 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 11917 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11921 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 11922 src/dps8/dps8_eis.c sc2 = -e->SF2; e 11929 src/dps8/dps8_eis.c switch(e->S3) e 11932 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 11941 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 11945 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 11962 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 11963 src/dps8/dps8_eis.c if (e->sign == -1) e 11965 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 11966 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 11970 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 11971 src/dps8/dps8_eis.c if (e->sign == -1) e 11973 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 11974 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 11992 src/dps8/dps8_eis.c char *res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 12003 src/dps8/dps8_eis.c switch(e->S3) e 12010 src/dps8/dps8_eis.c if (e->P) // If TN2 and S2 specify a 4-bit signed number and P e 12014 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 12017 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 12021 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 12037 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 12040 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 12045 src/dps8/dps8_eis.c switch(e->S3) e 12051 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 12054 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 12057 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 12061 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 12072 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 12073 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 12076 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 12087 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 12877 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 12915 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 12922 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 12924 src/dps8/dps8_eis.c uint dstTN = e->TN2; // type of chars in dst e 12925 src/dps8/dps8_eis.c uint dstCN = e->CN2; // starting at char pos CN e 12927 src/dps8/dps8_eis.c e->ADDR3 = e->ADDR2; e 12941 src/dps8/dps8_eis.c switch(e->S1) e 12944 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 12954 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 12955 src/dps8/dps8_eis.c sc1 = -e->SF1; e 12959 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 12960 src/dps8/dps8_eis.c sc1 = -e->SF1; e 12967 src/dps8/dps8_eis.c switch(e->S2) e 12970 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 12971 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 12980 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 12981 src/dps8/dps8_eis.c sc2 = -e->SF2; e 12985 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 12986 src/dps8/dps8_eis.c sc2 = -e->SF2; e 13002 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); // divisor e 13003 src/dps8/dps8_eis.c if (e->sign == -1) e 13005 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 13006 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 13015 src/dps8/dps8_eis.c memcpy (inBufferop1,e->inBuffer,sizeof(inBufferop1)); // save for clz1 calculation later e 13019 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); // dividend e 13020 src/dps8/dps8_eis.c if (e->sign == -1) e 13022 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 13023 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 13026 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 13040 src/dps8/dps8_eis.c if (e->inBuffer[i]!=0) // this still holds op2 digits e 13047 src/dps8/dps8_eis.c NQ = (n2-clz2+1) - (n1-clz1) + (-(e->S1==CSFL?op1->exponent:(int)e->SF1)); e 13050 src/dps8/dps8_eis.c e->S1,e->S2,e->N1,e->N2,clz1,clz2,op1->exponent,op2->exponent,e->SF2,NQ); e 13074 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 13106 src/dps8/dps8_eis.c if (e->S2 == CSFL) { e 13131 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2 -1, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 13141 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 13145 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n2, (int) e->S2, e->SF2, R, &Ovr, &Trunc); e 13156 src/dps8/dps8_eis.c switch(e->S2) e 13163 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 13166 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13169 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13173 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13189 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 13192 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 13197 src/dps8/dps8_eis.c switch(e->S2) e 13203 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 13206 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13209 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13213 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13224 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 13225 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 13228 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 13239 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 13281 src/dps8/dps8_eis.c EISstruct * e = & cpu.currentEISinstruction; e 13320 src/dps8/dps8_eis.c e->P = getbits36_1 (cpu.cu.IWB, 0) != 0; // 4-bit data sign character control e 13327 src/dps8/dps8_eis.c uint srcTN = e->TN1; // type of chars in src e 13329 src/dps8/dps8_eis.c uint dstTN = e->TN3; // type of chars in dst e 13330 src/dps8/dps8_eis.c uint dstCN = e->CN3; // starting at char pos CN e 13344 src/dps8/dps8_eis.c switch(e->S1) e 13347 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // need to account for the - sign e 13357 src/dps8/dps8_eis.c n1 = (int) e->N1 - 1; // only 1 sign e 13358 src/dps8/dps8_eis.c sc1 = -e->SF1; e 13362 src/dps8/dps8_eis.c n1 = (int) e->N1; // no sign e 13363 src/dps8/dps8_eis.c sc1 = -e->SF1; e 13370 src/dps8/dps8_eis.c switch(e->S2) e 13373 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // need to account for the sign e 13374 src/dps8/dps8_eis.c if (e->TN2 == CTN4) e 13383 src/dps8/dps8_eis.c n2 = (int) e->N2 - 1; // 1 sign e 13384 src/dps8/dps8_eis.c sc2 = -e->SF2; e 13388 src/dps8/dps8_eis.c n2 = (int) e->N2; // no sign e 13389 src/dps8/dps8_eis.c sc2 = -e->SF2; e 13396 src/dps8/dps8_eis.c switch(e->S3) e 13399 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // need to account for the sign e 13408 src/dps8/dps8_eis.c n3 = (int) e->N3 - 1; // 1 sign e 13412 src/dps8/dps8_eis.c n3 = (int) e->N3; // no sign e 13427 src/dps8/dps8_eis.c decNumber *op1 = decBCD9ToNumber(e->inBuffer, n1, sc1, &_1); e 13429 src/dps8/dps8_eis.c if (e->sign == -1) e 13431 src/dps8/dps8_eis.c if (e->S1 == CSFL) e 13432 src/dps8/dps8_eis.c op1->exponent = e->exponent; e 13441 src/dps8/dps8_eis.c memcpy (inBufferop1,e->inBuffer,sizeof(inBufferop1)); // save for clz1 calculation later e 13445 src/dps8/dps8_eis.c decNumber *op2 = decBCD9ToNumber(e->inBuffer, n2, sc2, &_2); e 13446 src/dps8/dps8_eis.c if (e->sign == -1) e 13448 src/dps8/dps8_eis.c if (e->S2 == CSFL) e 13449 src/dps8/dps8_eis.c op2->exponent = e->exponent; e 13468 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 13482 src/dps8/dps8_eis.c if (e->inBuffer[i]!=0) // this still holds op2 digits e 13490 src/dps8/dps8_eis.c ((e->S2==CSFL?op2->exponent:(int)e->SF2)-(e->S1==CSFL?op1->exponent:(int)e->SF1)-(int)e->SF3); e 13493 src/dps8/dps8_eis.c e->S1,e->S2,e->N1,e->N2,clz1,clz2,op1->exponent,op2->exponent,e->SF3,NQ); e 13517 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 13549 src/dps8/dps8_eis.c if (e->S3 == CSFL) { e 13576 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3 -1, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 13586 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 13590 src/dps8/dps8_eis.c res = formatDecimal(out, &set, op3, n3, (int) e->S3, e->SF3, R, &Ovr, &Trunc); e 13603 src/dps8/dps8_eis.c switch(e->S3) e 13610 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 13613 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13616 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13620 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13636 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) (res[i] - '0')); e 13639 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (word9) res[i]); e 13644 src/dps8/dps8_eis.c switch(e->S3) e 13650 src/dps8/dps8_eis.c if (e->P) //If TN2 and S2 specify a 4-bit signed number and P = 1, e 13653 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13656 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13660 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, e 13671 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, (op3->exponent >> 4) & 0xf); // upper 4-bits e 13672 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xf); // lower 4-bits e 13675 src/dps8/dps8_eis.c EISwrite49(cpup, &e->ADDR3, &pos, (int) dstTN, op3->exponent & 0xff); // write 8-bit exponent e 13686 src/dps8/dps8_eis.c if (e->S3 == CSFL) e 6391 src/dps8/dps8_ins.c int e = SIGNEXT8_int (cpu.rE); e 6392 src/dps8/dps8_ins.c e = e + y; e 6394 src/dps8/dps8_ins.c cpu.rE = e & 0377; e 6398 src/dps8/dps8_ins.c if (e > 127) e 6405 src/dps8/dps8_ins.c if (e < -128) e 54 src/dps8/dps8_math.c long double exp2l (long double e) { e 55 src/dps8/dps8_math.c return __builtin_exp2l(e); e 93 src/dps8/dps8_math.c int e = SIGNEXT8_int (cpu . rE & MASK8); // make signed e 96 src/dps8/dps8_math.c return -exp2l(e); e 120 src/dps8/dps8_math.c return (S ? -1 : 1) * ldexpl(m, e); e 145 src/dps8/dps8_math.c int e = SIGNEXT8_int (cpu . rE & MASK8); // make signed e 148 src/dps8/dps8_math.c return -exp2(e); e 167 src/dps8/dps8_math.c return (S ? -1 : 1) * ldexp(m, e); e 224 src/dps8/dps8_math.c int e = (int)exp; e 226 src/dps8/dps8_math.c putbits72 (& result, 71-64, 8, e & 0377); e 364 src/dps8/dps8_math.c e 367 src/dps8/dps8_math.c e 379 src/dps8/dps8_math.c e 427 src/dps8/dps8_math.c e 429 src/dps8/dps8_math.c e 851 src/dps8/dps8_math.c int e = * e0; e 871 src/dps8/dps8_math.c e -= 1; e 878 src/dps8/dps8_math.c e -= 1; e 891 src/dps8/dps8_math.c e -= 1; e 901 src/dps8/dps8_math.c e -= 1; e 910 src/dps8/dps8_math.c e -= 1; e 920 src/dps8/dps8_math.c e -= 1; e 933 src/dps8/dps8_math.c e -= 1; e 943 src/dps8/dps8_math.c e -= 1; e 953 src/dps8/dps8_math.c if (e < -128) { e 959 src/dps8/dps8_math.c * E = (word8) e & MASK8; e 972 src/dps8/dps8_math.c * e0 = e; e 1028 src/dps8/dps8_math.c e 1039 src/dps8/dps8_math.c e 1042 src/dps8/dps8_math.c e 1051 src/dps8/dps8_math.c e 4102 src/dps8/dps8_sys.c # define SYMTAB_ENUM32(e) { #e, SYM_ENUM, SYM_UINT32, e } e 57 src/libsir/src/sirerrors.c uint32_t e; e 207 src/libsir/src/sirerrors.c if (sir_errors[_mid].e == _sir_te.lasterror) { e 210 src/libsir/src/sirerrors.c if (_SIR_E_PLATFORM == sir_errors[_mid].e) { e 225 src/libsir/src/sirerrors.c retval = sir_errors[_mid].e; e 229 src/libsir/src/sirerrors.c _SIR_ITERATE_BIN_SEARCH((sir_errors[_mid].e < _sir_te.lasterror ? 1 : -1)); e 257 src/libsir/src/sirerrors.c if (sir_errors[_mid].e == _sir_te.lasterror) { e 258 src/libsir/src/sirerrors.c err->code = _sir_geterrcode(sir_errors[_mid].e); e 259 src/libsir/src/sirerrors.c if (_SIR_E_PLATFORM == sir_errors[_mid].e) e 266 src/libsir/src/sirerrors.c _SIR_ITERATE_BIN_SEARCH((sir_errors[_mid].e < _sir_te.lasterror ? 1 : -1));