public void handler() {
            int t = IMMBYTE();
            if ((t & 0x01) != 0) {
                konami.cc = PULLBYTE();
                konami_ICount[0] -= 1;
            }
            if ((t & 0x02) != 0) {
                A(PULLBYTE());
                konami_ICount[0] -= 1;
            }
            if ((t & 0x04) != 0) {
                B(PULLBYTE());
                konami_ICount[0] -= 1;
            }
            if ((t & 0x08) != 0) {
                konami.dp = PULLBYTE();
                konami_ICount[0] -= 1;
            }
            if ((t & 0x10) != 0) {
                konami.x = PULLWORD();
                konami_ICount[0] -= 2;
            }
            if ((t & 0x20) != 0) {
                konami.y = PULLWORD();
                konami_ICount[0] -= 2;
            }
            if ((t & 0x40) != 0) {
                konami.u = PULLWORD();
                konami_ICount[0] -= 2;
            }
            if ((t & 0x80) != 0) {
                konami.pc = PULLWORD();
                change_pc(konami.pc);
                konami_ICount[0] -= 2;
            }

            /* check after all PULLs */
            if ((t & 0x01) != 0) {
                CHECK_IRQ_LINES();
            }
            if (konamilog != null) {
                fprintf(konamilog, "konami#%d puls :PC:%d,PPC:%d,A:%d,B:%d,D:%d,DP:%d,U:%d,S:%d,X:%d,Y:%d,CC:%d,EA:%d\n", cpu_getactivecpu(), konami.pc, konami.ppc, A(), B(), konami.d, konami.dp, konami.u, konami.s, konami.x, konami.y, konami.cc, ea);
            }

        }