cpu                49 include/struct.h     CPU *cpu;        /**<CPU */
cpu                11 src/dump.c         fprintf(stdout, "#%04X: adr :", sys->cpu->pr);
cpu                24 src/dump.c                 fprintf(stdout, "#%04X: %04X: ", sys->cpu->pr, i);
cpu                42 src/dump.c         char *sp = word2bit(sys->cpu->sp);
cpu                43 src/dump.c         char *pr = word2bit(sys->cpu->pr);
cpu                44 src/dump.c         char *fr = word2bit(sys->cpu->fr);
cpu                49 src/dump.c             fprintf(stdout, "#%04X: GR%d: ", sys->cpu->pr, i);
cpu                50 src/dump.c             print_dumpword(sys->cpu->gr[i], execmode.logical);
cpu                53 src/dump.c         fprintf(stdout, "#%04X: SP:  %6d = #%04X = %s\n", sys->cpu->pr, sys->cpu->sp, sys->cpu->sp, sp);
cpu                54 src/dump.c         fprintf(stdout, "#%04X: PR:  %6d = #%04X = %s\n", sys->cpu->pr, sys->cpu->pr, sys->cpu->pr, pr);
cpu                55 src/dump.c         fprintf(stdout, "#%04X: FR (OF SF ZF): %s\n", sys->cpu->pr, fr + L3BIT); /* FRは下位3けたを表示 */
cpu                64 src/dump.c             if(sys->cpu->pr == execptr->start && execmode.reverse == true) { /* reverseオプション指定時、スタート時にプログラム全体を逆アセンブル */
cpu                68 src/dump.c                 fprintf(stdout, "#%04X: Register::::\n", sys->cpu->pr);
cpu                72 src/dump.c                 fprintf(stdout, "#%04X: Memory::::\n", sys->cpu->pr);
cpu                76 src/dump.c                 fprintf(stdout, "#%04X: Disassemble::::", sys->cpu->pr);
cpu                77 src/dump.c                 disassemble_memory(sys->memory, sys->cpu->pr, sys->cpu->pr + code2cmdwordlen(sys->memory[sys->cpu->pr] & 0xFF00) - 1);
cpu               114 src/exec.c             sys->memory[sys->cpu->gr[1]] = 0x0;
cpu               115 src/exec.c             sys->memory[sys->cpu->gr[2]] = 0xFFFF;
cpu               123 src/exec.c             if(sys->cpu->gr[1] + i >= execptr->end) {
cpu               127 src/exec.c             sys->memory[sys->cpu->gr[1] + i] = buf[i];
cpu               128 src/exec.c             sys->memory[sys->cpu->gr[2]] = i + 1;
cpu               138 src/exec.c         for(i = 0; i < sys->memory[sys->cpu->gr[2]]; i++) {
cpu               139 src/exec.c             if(sys->cpu->gr[1] + i >= execptr->end) {
cpu               146 src/exec.c             if(((w = sys->memory[sys->cpu->gr[1]+i]) >= 0x20 && w <= 0x7E) ||    /* JIS X 0201ラテン文字 */
cpu               159 src/exec.c         sys->cpu->fr = 0x0;
cpu               162 src/exec.c             sys->cpu->fr += SF;
cpu               166 src/exec.c             sys->cpu->fr += ZF;
cpu               176 src/exec.c             setcerr(205, s = pr2str(sys->cpu->pr));    /* r/r1 in word #1 - not GR */
cpu               189 src/exec.c             setcerr(206, s = pr2str(sys->cpu->pr));    /* r/r1 in word #1 - not GR */
cpu               202 src/exec.c             a += sys->cpu->gr[x];
cpu               213 src/exec.c             setcerr(207, s = pr2str(sys->cpu->pr + 1));    /* address in word #2 - out of memory */
cpu               228 src/exec.c         sys->cpu->pr += getcmdwordlen("NOP", NONE);
cpu               233 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               234 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] = get_val_adr_x(w[1], w[0]));
cpu               235 src/exec.c         sys->cpu->pr += getcmdwordlen("LD", R_ADR_X);
cpu               240 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               241 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] = sys->cpu->gr[get_x_r2(w[0])]);
cpu               242 src/exec.c         sys->cpu->pr += getcmdwordlen("LD", R1_R2);
cpu               247 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               248 src/exec.c         sys->memory[get_adr_x(w[1], w[0])] = sys->cpu->gr[get_r_r1(w[0])];
cpu               249 src/exec.c         sys->cpu->pr += getcmdwordlen("ST", R_ADR_X);
cpu               254 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               255 src/exec.c         sys->cpu->gr[get_r_r1(w[0])] = get_adr_x(w[1], w[0]);
cpu               256 src/exec.c         sys->cpu->pr += getcmdwordlen("LAD", R_ADR_X);
cpu               263 src/exec.c         sys->cpu->fr = 0x0;
cpu               266 src/exec.c         if((tmp = (short)(sys->cpu->gr[r]) + (short)val) > 32767 || tmp < -32768) {
cpu               267 src/exec.c             sys->cpu->fr += OF;
cpu               270 src/exec.c         sys->cpu->gr[r] = (WORD)(tmp & 0xFFFF);
cpu               271 src/exec.c         if((sys->cpu->gr[r] & 0x8000) == 0x8000) {
cpu               272 src/exec.c             sys->cpu->fr += SF;
cpu               273 src/exec.c         } else if(sys->cpu->gr[r] == 0x0) {
cpu               274 src/exec.c             sys->cpu->fr += ZF;
cpu               280 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               282 src/exec.c         sys->cpu->pr += getcmdwordlen("ADDA", R_ADR_X);
cpu               287 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               288 src/exec.c         adda(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])]);
cpu               289 src/exec.c         sys->cpu->pr += getcmdwordlen("ADDA", R1_R2);
cpu               294 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               296 src/exec.c         sys->cpu->pr += getcmdwordlen("SUBA", R_ADR_X);
cpu               301 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               302 src/exec.c         adda(get_r_r1(w[0]), ~(sys->cpu->gr[get_x_r2(w[0])]) + 1);
cpu               303 src/exec.c         sys->cpu->pr += getcmdwordlen("SUBA", R1_R2);
cpu               311 src/exec.c         o = sys->cpu->gr[r];
cpu               312 src/exec.c         sys->cpu->fr = 0;    /* flag initialize */
cpu               317 src/exec.c                 sys->cpu->fr += OF;
cpu               321 src/exec.c                 sys->cpu->fr += OF;
cpu               328 src/exec.c         sys->cpu->gr[r] = (WORD)s;
cpu               331 src/exec.c             sys->cpu->fr += SF;
cpu               334 src/exec.c             sys->cpu->fr += ZF;
cpu               340 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               342 src/exec.c         sys->cpu->pr += getcmdwordlen("ADDL", R_ADR_X);
cpu               347 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               348 src/exec.c         addl_gr(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])], true);
cpu               349 src/exec.c         sys->cpu->pr += getcmdwordlen("ADDL", R1_R2);
cpu               354 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               356 src/exec.c         sys->cpu->pr += getcmdwordlen("SUBL", R_ADR_X);
cpu               361 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               362 src/exec.c         addl_gr(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])], false);
cpu               363 src/exec.c         sys->cpu->pr += getcmdwordlen("SUBL", R1_R2);
cpu               368 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               369 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] &= get_val_adr_x(w[1], w[0]));
cpu               370 src/exec.c         sys->cpu->pr += getcmdwordlen("AND", R_ADR_X);
cpu               375 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               376 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] &= sys->cpu->gr[get_x_r2(w[0])]);
cpu               377 src/exec.c         sys->cpu->pr += getcmdwordlen("AND", R1_R2);
cpu               382 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               383 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] |= get_val_adr_x(w[1], w[0]));
cpu               384 src/exec.c         sys->cpu->pr += getcmdwordlen("OR", R_ADR_X);
cpu               389 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               390 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] |= sys->cpu->gr[get_x_r2(w[0])]);
cpu               391 src/exec.c         sys->cpu->pr += getcmdwordlen("OR", R1_R2);
cpu               396 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               397 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] ^= get_val_adr_x(w[1], w[0]));
cpu               398 src/exec.c         sys->cpu->pr += getcmdwordlen("XOR", R_ADR_X);
cpu               403 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               404 src/exec.c         setfr(sys->cpu->gr[get_r_r1(w[0])] ^= sys->cpu->gr[get_x_r2(w[0])]);
cpu               405 src/exec.c         sys->cpu->pr += getcmdwordlen("XOR", R1_R2);
cpu               410 src/exec.c         sys->cpu->fr = 0;
cpu               411 src/exec.c         if((short)sys->cpu->gr[r] < (short)val) {
cpu               412 src/exec.c             sys->cpu->fr = SF;
cpu               413 src/exec.c         } else if(sys->cpu->gr[r] == val) {
cpu               414 src/exec.c             sys->cpu->fr = ZF;
cpu               420 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               422 src/exec.c         sys->cpu->pr += getcmdwordlen("CPA", R_ADR_X);
cpu               427 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               428 src/exec.c         cpa(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])]);
cpu               429 src/exec.c         sys->cpu->pr += getcmdwordlen("CPA", R1_R2);
cpu               434 src/exec.c         sys->cpu->fr = 0x0;
cpu               435 src/exec.c         if(sys->cpu->gr[r] < val) {
cpu               436 src/exec.c             sys->cpu->fr = SF;
cpu               437 src/exec.c         } else if(sys->cpu->gr[r] == val) {
cpu               438 src/exec.c             sys->cpu->fr = ZF;
cpu               444 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               446 src/exec.c         sys->cpu->pr += getcmdwordlen("CPL", R_ADR_X);
cpu               451 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               452 src/exec.c         cpl(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])]);
cpu               453 src/exec.c         sys->cpu->pr += getcmdwordlen("CPL", R1_R2);
cpu               458 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               460 src/exec.c         WORD sign = sys->cpu->gr[r] & 0x8000;
cpu               463 src/exec.c         sys->cpu->fr = 0;
cpu               464 src/exec.c         sys->cpu->gr[r] &= 0x7FFF;
cpu               466 src/exec.c             last = sys->cpu->gr[r] & 0x4000;
cpu               467 src/exec.c             sys->cpu->gr[r] <<= 1;
cpu               469 src/exec.c         sys->cpu->gr[r] = sign | (sys->cpu->gr[r] & 0x7FFF);
cpu               472 src/exec.c             sys->cpu->fr += OF;
cpu               476 src/exec.c             sys->cpu->fr += SF;
cpu               479 src/exec.c         if(sys->cpu->gr[r] == 0x0) {
cpu               480 src/exec.c             sys->cpu->fr += ZF;
cpu               482 src/exec.c         sys->cpu->pr += getcmdwordlen("SLA", R_ADR_X);
cpu               487 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               489 src/exec.c         WORD sign = sys->cpu->gr[r] & 0x8000;
cpu               492 src/exec.c         sys->cpu->fr = 0;
cpu               493 src/exec.c         sys->cpu->gr[r] &= 0x7FFF;
cpu               495 src/exec.c             last = sys->cpu->gr[r] & 0x1;
cpu               496 src/exec.c             sys->cpu->gr[r] >>= 1;
cpu               498 src/exec.c                 sys->cpu->gr[r] |= 0x4000;
cpu               501 src/exec.c         sys->cpu->gr[r] = sign | sys->cpu->gr[r];
cpu               504 src/exec.c             sys->cpu->fr += OF;
cpu               508 src/exec.c             sys->cpu->fr += SF;
cpu               511 src/exec.c         if(sys->cpu->gr[r] == 0x0) {
cpu               512 src/exec.c             sys->cpu->fr += ZF;
cpu               514 src/exec.c         sys->cpu->pr += getcmdwordlen("SRA", R_ADR_X);
cpu               519 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               523 src/exec.c         sys->cpu->fr = 0x0;
cpu               525 src/exec.c             last = sys->cpu->gr[r] & 0x8000;
cpu               526 src/exec.c             sys->cpu->gr[r] <<= 1;
cpu               530 src/exec.c             sys->cpu->fr += OF;
cpu               533 src/exec.c         if((sys->cpu->gr[r] & 0x8000) > 0x0) {
cpu               534 src/exec.c             sys->cpu->fr += SF;
cpu               537 src/exec.c         if(sys->cpu->gr[r] == 0x0) {
cpu               538 src/exec.c             sys->cpu->fr += ZF;
cpu               540 src/exec.c         sys->cpu->pr += getcmdwordlen("SLL", R_ADR_X);
cpu               545 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               549 src/exec.c         sys->cpu->fr = 0x0;
cpu               551 src/exec.c             last = sys->cpu->gr[r] & 0x0001;
cpu               552 src/exec.c             sys->cpu->gr[r] >>= 1;
cpu               556 src/exec.c             sys->cpu->fr += OF;
cpu               559 src/exec.c         if((sys->cpu->gr[r] & 0x8000) > 0x0) {
cpu               560 src/exec.c             sys->cpu->fr += SF;
cpu               563 src/exec.c         if(sys->cpu->gr[r] == 0x0) {
cpu               564 src/exec.c             sys->cpu->fr += ZF;
cpu               566 src/exec.c         sys->cpu->pr += getcmdwordlen("SRL", R_ADR_X);
cpu               571 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               572 src/exec.c         if((sys->cpu->fr & SF) > 0) {
cpu               573 src/exec.c             sys->cpu->pr = get_adr_x(w[1], w[0]);
cpu               575 src/exec.c             sys->cpu->pr += getcmdwordlen("JMI", ADR_X);
cpu               581 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               582 src/exec.c         if((sys->cpu->fr & ZF) == 0) {
cpu               583 src/exec.c             sys->cpu->pr = get_adr_x(w[1], w[0]);
cpu               585 src/exec.c             sys->cpu->pr += getcmdwordlen("JNZ", ADR_X);
cpu               591 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               592 src/exec.c         if((sys->cpu->fr & ZF) > 0) {
cpu               593 src/exec.c             sys->cpu->pr = get_adr_x(w[1], w[0]);
cpu               595 src/exec.c             sys->cpu->pr += getcmdwordlen("JZE", ADR_X);
cpu               601 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               602 src/exec.c         sys->cpu->pr = get_adr_x(w[1], w[0]);
cpu               607 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               608 src/exec.c         if((sys->cpu->fr & (SF | ZF)) == 0) {
cpu               609 src/exec.c             sys->cpu->pr = get_adr_x(w[1], w[0]);
cpu               611 src/exec.c             sys->cpu->pr += getcmdwordlen("JPL", ADR_X);
cpu               617 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               618 src/exec.c         if((sys->cpu->fr & OF) > 0) {
cpu               619 src/exec.c             sys->cpu->pr = get_adr_x(w[1], w[0]);
cpu               621 src/exec.c             sys->cpu->pr += getcmdwordlen("JOV", ADR_X);
cpu               627 src/exec.c         assert(sys->cpu->sp > execptr->end && sys->cpu->sp <= sys->memsize);
cpu               628 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               629 src/exec.c         sys->memory[--(sys->cpu->sp)] = get_adr_x(w[1], w[0]);
cpu               630 src/exec.c         sys->cpu->pr += getcmdwordlen("PUSH", ADR_X);
cpu               635 src/exec.c         assert(sys->cpu->sp > execptr->end);
cpu               636 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr]};
cpu               639 src/exec.c         if(sys->cpu->sp >= sys->memsize) {
cpu               640 src/exec.c             setcerr(203, s = pr2str(sys->cpu->pr));        /* Stack Pointer (SP) - stack underflow */
cpu               643 src/exec.c             sys->cpu->gr[get_r_r1(w[0])] = sys->memory[(sys->cpu->sp)++];
cpu               644 src/exec.c             sys->cpu->pr += getcmdwordlen("POP", R_);
cpu               650 src/exec.c         assert(sys->cpu->sp > execptr->end && sys->cpu->sp <= sys->memsize);
cpu               651 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               652 src/exec.c         sys->memory[--(sys->cpu->sp)] = sys->cpu->pr + 1;
cpu               653 src/exec.c         sys->cpu->pr = get_adr_x(w[1], w[0]);
cpu               658 src/exec.c         assert(sys->cpu->sp <= sys->memsize);
cpu               659 src/exec.c         if(sys->cpu->sp == sys->memsize) {
cpu               661 src/exec.c         } else if(sys->cpu->sp < sys->memsize) {
cpu               662 src/exec.c             sys->cpu->pr = sys->memory[(sys->cpu->sp)++] + 1;
cpu               668 src/exec.c         WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};
cpu               681 src/exec.c         sys->cpu->pr += getcmdwordlen("SVC", ADR_X);
cpu               695 src/exec.c         sys->cpu->pr = execptr->start;
cpu               700 src/exec.c             if((execmode.monitor == true && execptr->started == false) || execptr->stop == true || execmode.step == true || getbps(sys->cpu->pr) == true)
cpu               713 src/exec.c             if(sys->cpu->pr >= sys->memsize) {
cpu               714 src/exec.c                 setcerr(201, s = pr2str(sys->cpu->pr));        /* Program Register (PR) - memory overflow */
cpu               718 src/exec.c             if(sys->cpu->sp <= execptr->end) {
cpu               719 src/exec.c                 setcerr(202, s = pr2str(sys->cpu->pr));        /* Stack Pointer (SP) - stack overflow */
cpu               724 src/exec.c             if((cmdptr = getcmdptr(sys->memory[sys->cpu->pr] & 0xFF00)) == NULL) {
cpu               725 src/exec.c                 setcerr(204, s = pr2str(sys->cpu->pr));            /* OP in word #1 - not command code */
cpu               330 src/monitor.c              fprintf(stdout, "#%04X: Register::::\n", sys->cpu->pr);
cpu               338 src/struct.c       sys->cpu = malloc_chk(sizeof(CPU), "comet2_init.cpu");
cpu               354 src/struct.c           sys->cpu->gr[i] = 0x0;
cpu               356 src/struct.c       sys->cpu->sp = sys->memsize;   /* スタックポインタ */
cpu               357 src/struct.c       sys->cpu->pr = 0x0;            /* プログラムレジスタ */
cpu               358 src/struct.c       sys->cpu->fr = 0x0;            /* フラグレジスタ */
cpu               403 src/struct.c       FREE(sys->cpu);