<!DOCTYPE html PUBLIC '-//W3C//DTD XHTML 1.0 Transitional//EN' 'http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd'>
<html xmlns='http://www.w3.org/1999/xhtml'>
<head>
<title>sys</title>
<meta name='robots' content='noindex,nofollow' />
<meta name='generator' content='GLOBAL-6.6.14' />
<meta http-equiv='Content-Style-Type' content='text/css' />
<link rel='stylesheet' type='text/css' href='../style.css' />
</head>
<body>
<pre>
<span class='curline'><a href='../S/20637.html#L58'>sys</a> 58 include/struct.h extern SYSTEM *sys;</span>
<span class='curline'><a href='../S/21076.html#L352'>sys</a> 352 src/assemble.c if(adr >= sys->memsize) {</span>
<span class='curline'><a href='../S/21076.html#L357'>sys</a> 357 src/assemble.c (sys->memory)[adr] = word;</span>
<span class='curline'><a href='../S/21076.html#L789'>sys</a> 789 src/assemble.c fwrite(sys->memory, sizeof(WORD), execptr->end, fp);</span>
<span class='curline'><a href='../S/21056.html#L236'>sys</a> 236 src/disassemble.c cmd = sys->memory[i] & 0xFF00;</span>
<span class='curline'><a href='../S/21056.html#L239'>sys</a> 239 src/disassemble.c if(sys->memory[i] == 0) {</span>
<span class='curline'><a href='../S/21056.html#L246'>sys</a> 246 src/disassemble.c disassemble_dc(sys->memory[i], i);</span>
<span class='curline'><a href='../S/21056.html#L249'>sys</a> 249 src/disassemble.c disassemble_cmd_adr_x(cmdtype, cmdname, sys->memory[i], sys->memory[i+1], i);</span>
<span class='curline'><a href='../S/21056.html#L252'>sys</a> 252 src/disassemble.c disassemble_cmd_r(cmdtype, cmdname, sys->memory[i], i);</span>
<span class='curline'><a href='../S/21079.html#L9'>sys</a> 9 src/dump.c fprintf(stdout, "#%04X: adr :", sys->cpu->pr);</span>
<span class='curline'><a href='../S/21079.html#L10'>sys</a> 10 src/dump.c if(end > sys->memsize) {</span>
<span class='curline'><a href='../S/21079.html#L11'>sys</a> 11 src/dump.c end = sys->memsize;</span>
<span class='curline'><a href='../S/21079.html#L13'>sys</a> 13 src/dump.c for(int i = 0; i < sys->memsize && i < col; i++) {</span>
<span class='curline'><a href='../S/21079.html#L22'>sys</a> 22 src/dump.c fprintf(stdout, "#%04X: %04X: ", sys->cpu->pr, i);</span>
<span class='curline'><a href='../S/21079.html#L29'>sys</a> 29 src/dump.c fprintf(stdout, "%04X", sys->memory[i]);</span>
<span class='curline'><a href='../S/21079.html#L40'>sys</a> 40 src/dump.c char *sp = word2bit(sys->cpu->sp);</span>
<span class='curline'><a href='../S/21079.html#L41'>sys</a> 41 src/dump.c char *pr = word2bit(sys->cpu->pr);</span>
<span class='curline'><a href='../S/21079.html#L42'>sys</a> 42 src/dump.c char *fr = word2bit(sys->cpu->fr);</span>
<span class='curline'><a href='../S/21079.html#L47'>sys</a> 47 src/dump.c fprintf(stdout, "#%04X: GR%d: ", sys->cpu->pr, i);</span>
<span class='curline'><a href='../S/21079.html#L48'>sys</a> 48 src/dump.c print_dumpword(sys->cpu->gr[i], execmode.logical);</span>
<span class='curline'><a href='../S/21079.html#L51'>sys</a> 51 src/dump.c fprintf(stdout, "#%04X: SP: %6d = #%04X = %s\n", sys->cpu->pr, sys->cpu->sp, sys->cpu->sp, sp);</span>
<span class='curline'><a href='../S/21079.html#L52'>sys</a> 52 src/dump.c fprintf(stdout, "#%04X: PR: %6d = #%04X = %s\n", sys->cpu->pr, sys->cpu->pr, sys->cpu->pr, pr);</span>
<span class='curline'><a href='../S/21079.html#L53'>sys</a> 53 src/dump.c fprintf(stdout, "#%04X: FR (OF SF ZF): %s\n", sys->cpu->pr, fr + L3BIT); /* FRは下位3けたを表示 */</span>
<span class='curline'><a href='../S/21058.html#L115'>sys</a> 115 src/exec.c sys->memory[sys->cpu->gr[1]] = sys->memory[sys->cpu->gr[2]] = 0x0;</span>
<span class='curline'><a href='../S/21058.html#L123'>sys</a> 123 src/exec.c if(sys->cpu->gr[1] + i > execptr->end) {</span>
<span class='curline'><a href='../S/21058.html#L128'>sys</a> 128 src/exec.c sys->memory[sys->cpu->gr[1] + i] = buf[i];</span>
<span class='curline'><a href='../S/21058.html#L130'>sys</a> 130 src/exec.c sys->memory[sys->cpu->gr[2]] = i + 1;</span>
<span class='curline'><a href='../S/21058.html#L139'>sys</a> 139 src/exec.c for(i = 0; i < sys->memory[sys->cpu->gr[2]]; i++) {</span>
<span class='curline'><a href='../S/21058.html#L140'>sys</a> 140 src/exec.c if(sys->cpu->gr[1] + i > execptr->end) {</span>
<span class='curline'><a href='../S/21058.html#L147'>sys</a> 147 src/exec.c if(((w = sys->memory[sys->cpu->gr[1]+i]) >= 0x20 && w <= 0x7E) || /* JIS X 0201ラテン文字 */</span>
<span class='curline'><a href='../S/21058.html#L160'>sys</a> 160 src/exec.c sys->cpu->fr = 0x0;</span>
<span class='curline'><a href='../S/21058.html#L163'>sys</a> 163 src/exec.c sys->cpu->fr += SF;</span>
<span class='curline'><a href='../S/21058.html#L167'>sys</a> 167 src/exec.c sys->cpu->fr += ZF;</span>
<span class='curline'><a href='../S/21058.html#L177'>sys</a> 177 src/exec.c setcerr(205, s = pr2str(sys->cpu->pr)); /* r/r1 in word #1 - not GR */</span>
<span class='curline'><a href='../S/21058.html#L190'>sys</a> 190 src/exec.c setcerr(206, s = pr2str(sys->cpu->pr)); /* r/r1 in word #1 - not GR */</span>
<span class='curline'><a href='../S/21058.html#L203'>sys</a> 203 src/exec.c a += sys->cpu->gr[x];</span>
<span class='curline'><a href='../S/21058.html#L213'>sys</a> 213 src/exec.c if((a = get_adr_x(adr, oprx)) >= sys->memsize) {</span>
<span class='curline'><a href='../S/21058.html#L214'>sys</a> 214 src/exec.c setcerr(207, s = pr2str(sys->cpu->pr + 1)); /* address in word #2 - out of memory */</span>
<span class='curline'><a href='../S/21058.html#L218'>sys</a> 218 src/exec.c return sys->memory[a];</span>
<span class='curline'><a href='../S/21058.html#L229'>sys</a> 229 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L234'>sys</a> 234 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L235'>sys</a> 235 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] = get_val_adr_x(w[1], w[0]));</span>
<span class='curline'><a href='../S/21058.html#L236'>sys</a> 236 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L241'>sys</a> 241 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L242'>sys</a> 242 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] = sys->cpu->gr[get_x_r2(w[0])]);</span>
<span class='curline'><a href='../S/21058.html#L243'>sys</a> 243 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L248'>sys</a> 248 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L249'>sys</a> 249 src/exec.c sys->memory[get_adr_x(w[1], w[0])] = sys->cpu->gr[get_r_r1(w[0])];</span>
<span class='curline'><a href='../S/21058.html#L250'>sys</a> 250 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L255'>sys</a> 255 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L256'>sys</a> 256 src/exec.c sys->cpu->gr[get_r_r1(w[0])] = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L257'>sys</a> 257 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L264'>sys</a> 264 src/exec.c sys->cpu->fr = 0x0;</span>
<span class='curline'><a href='../S/21058.html#L267'>sys</a> 267 src/exec.c if((tmp = (short)(sys->cpu->gr[r]) + (short)val) > 32767 || tmp < -32768) {</span>
<span class='curline'><a href='../S/21058.html#L268'>sys</a> 268 src/exec.c sys->cpu->fr += OF;</span>
<span class='curline'><a href='../S/21058.html#L271'>sys</a> 271 src/exec.c sys->cpu->gr[r] = (WORD)(tmp & 0xFFFF);</span>
<span class='curline'><a href='../S/21058.html#L272'>sys</a> 272 src/exec.c if((sys->cpu->gr[r] & 0x8000) == 0x8000) {</span>
<span class='curline'><a href='../S/21058.html#L273'>sys</a> 273 src/exec.c sys->cpu->fr += SF;</span>
<span class='curline'><a href='../S/21058.html#L274'>sys</a> 274 src/exec.c } else if(sys->cpu->gr[r] == 0x0) {</span>
<span class='curline'><a href='../S/21058.html#L275'>sys</a> 275 src/exec.c sys->cpu->fr += ZF;</span>
<span class='curline'><a href='../S/21058.html#L281'>sys</a> 281 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L283'>sys</a> 283 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L288'>sys</a> 288 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L289'>sys</a> 289 src/exec.c adda(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])]);</span>
<span class='curline'><a href='../S/21058.html#L290'>sys</a> 290 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L295'>sys</a> 295 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L297'>sys</a> 297 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L302'>sys</a> 302 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L303'>sys</a> 303 src/exec.c adda(get_r_r1(w[0]), ~(sys->cpu->gr[get_x_r2(w[0])]) + 1);</span>
<span class='curline'><a href='../S/21058.html#L304'>sys</a> 304 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L312'>sys</a> 312 src/exec.c o = sys->cpu->gr[r];</span>
<span class='curline'><a href='../S/21058.html#L313'>sys</a> 313 src/exec.c sys->cpu->fr = 0; /* flag initialize */</span>
<span class='curline'><a href='../S/21058.html#L318'>sys</a> 318 src/exec.c sys->cpu->fr += OF;</span>
<span class='curline'><a href='../S/21058.html#L322'>sys</a> 322 src/exec.c sys->cpu->fr += OF;</span>
<span class='curline'><a href='../S/21058.html#L329'>sys</a> 329 src/exec.c sys->cpu->gr[r] = (WORD)s;</span>
<span class='curline'><a href='../S/21058.html#L332'>sys</a> 332 src/exec.c sys->cpu->fr += SF;</span>
<span class='curline'><a href='../S/21058.html#L335'>sys</a> 335 src/exec.c sys->cpu->fr += ZF;</span>
<span class='curline'><a href='../S/21058.html#L341'>sys</a> 341 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L343'>sys</a> 343 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L348'>sys</a> 348 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L349'>sys</a> 349 src/exec.c addl_gr(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])], true);</span>
<span class='curline'><a href='../S/21058.html#L350'>sys</a> 350 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L355'>sys</a> 355 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L357'>sys</a> 357 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L362'>sys</a> 362 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L363'>sys</a> 363 src/exec.c addl_gr(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])], false);</span>
<span class='curline'><a href='../S/21058.html#L364'>sys</a> 364 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L369'>sys</a> 369 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L370'>sys</a> 370 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] &= get_val_adr_x(w[1], w[0]));</span>
<span class='curline'><a href='../S/21058.html#L371'>sys</a> 371 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L376'>sys</a> 376 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L377'>sys</a> 377 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] &= sys->cpu->gr[get_x_r2(w[0])]);</span>
<span class='curline'><a href='../S/21058.html#L378'>sys</a> 378 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L383'>sys</a> 383 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L384'>sys</a> 384 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] |= get_val_adr_x(w[1], w[0]));</span>
<span class='curline'><a href='../S/21058.html#L385'>sys</a> 385 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L390'>sys</a> 390 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L391'>sys</a> 391 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] |= sys->cpu->gr[get_x_r2(w[0])]);</span>
<span class='curline'><a href='../S/21058.html#L392'>sys</a> 392 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L397'>sys</a> 397 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L398'>sys</a> 398 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] ^= get_val_adr_x(w[1], w[0]));</span>
<span class='curline'><a href='../S/21058.html#L399'>sys</a> 399 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L404'>sys</a> 404 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L405'>sys</a> 405 src/exec.c setfr(sys->cpu->gr[get_r_r1(w[0])] ^= sys->cpu->gr[get_x_r2(w[0])]);</span>
<span class='curline'><a href='../S/21058.html#L406'>sys</a> 406 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L411'>sys</a> 411 src/exec.c sys->cpu->fr = 0;</span>
<span class='curline'><a href='../S/21058.html#L412'>sys</a> 412 src/exec.c if((short)sys->cpu->gr[r] < (short)val) {</span>
<span class='curline'><a href='../S/21058.html#L413'>sys</a> 413 src/exec.c sys->cpu->fr = SF;</span>
<span class='curline'><a href='../S/21058.html#L414'>sys</a> 414 src/exec.c } else if(sys->cpu->gr[r] == val) {</span>
<span class='curline'><a href='../S/21058.html#L415'>sys</a> 415 src/exec.c sys->cpu->fr = ZF;</span>
<span class='curline'><a href='../S/21058.html#L421'>sys</a> 421 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L423'>sys</a> 423 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L428'>sys</a> 428 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L429'>sys</a> 429 src/exec.c cpa(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])]);</span>
<span class='curline'><a href='../S/21058.html#L430'>sys</a> 430 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L435'>sys</a> 435 src/exec.c sys->cpu->fr = 0x0;</span>
<span class='curline'><a href='../S/21058.html#L436'>sys</a> 436 src/exec.c if(sys->cpu->gr[r] < val) {</span>
<span class='curline'><a href='../S/21058.html#L437'>sys</a> 437 src/exec.c sys->cpu->fr = SF;</span>
<span class='curline'><a href='../S/21058.html#L438'>sys</a> 438 src/exec.c } else if(sys->cpu->gr[r] == val) {</span>
<span class='curline'><a href='../S/21058.html#L439'>sys</a> 439 src/exec.c sys->cpu->fr = ZF;</span>
<span class='curline'><a href='../S/21058.html#L445'>sys</a> 445 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L447'>sys</a> 447 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L452'>sys</a> 452 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L453'>sys</a> 453 src/exec.c cpl(get_r_r1(w[0]), sys->cpu->gr[get_x_r2(w[0])]);</span>
<span class='curline'><a href='../S/21058.html#L454'>sys</a> 454 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L459'>sys</a> 459 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L461'>sys</a> 461 src/exec.c WORD sign = sys->cpu->gr[r] & 0x8000;</span>
<span class='curline'><a href='../S/21058.html#L464'>sys</a> 464 src/exec.c sys->cpu->fr = 0;</span>
<span class='curline'><a href='../S/21058.html#L465'>sys</a> 465 src/exec.c sys->cpu->gr[r] &= 0x7FFF;</span>
<span class='curline'><a href='../S/21058.html#L467'>sys</a> 467 src/exec.c last = sys->cpu->gr[r] & 0x4000;</span>
<span class='curline'><a href='../S/21058.html#L468'>sys</a> 468 src/exec.c sys->cpu->gr[r] <<= 1;</span>
<span class='curline'><a href='../S/21058.html#L470'>sys</a> 470 src/exec.c sys->cpu->gr[r] = sign | (sys->cpu->gr[r] & 0x7FFF);</span>
<span class='curline'><a href='../S/21058.html#L473'>sys</a> 473 src/exec.c sys->cpu->fr += OF;</span>
<span class='curline'><a href='../S/21058.html#L477'>sys</a> 477 src/exec.c sys->cpu->fr += SF;</span>
<span class='curline'><a href='../S/21058.html#L480'>sys</a> 480 src/exec.c if(sys->cpu->gr[r] == 0x0) {</span>
<span class='curline'><a href='../S/21058.html#L481'>sys</a> 481 src/exec.c sys->cpu->fr += ZF;</span>
<span class='curline'><a href='../S/21058.html#L483'>sys</a> 483 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L488'>sys</a> 488 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L490'>sys</a> 490 src/exec.c WORD sign = sys->cpu->gr[r] & 0x8000;</span>
<span class='curline'><a href='../S/21058.html#L493'>sys</a> 493 src/exec.c sys->cpu->fr = 0;</span>
<span class='curline'><a href='../S/21058.html#L494'>sys</a> 494 src/exec.c sys->cpu->gr[r] &= 0x7FFF;</span>
<span class='curline'><a href='../S/21058.html#L496'>sys</a> 496 src/exec.c last = sys->cpu->gr[r] & 0x1;</span>
<span class='curline'><a href='../S/21058.html#L497'>sys</a> 497 src/exec.c sys->cpu->gr[r] >>= 1;</span>
<span class='curline'><a href='../S/21058.html#L499'>sys</a> 499 src/exec.c sys->cpu->gr[r] |= 0x4000;</span>
<span class='curline'><a href='../S/21058.html#L502'>sys</a> 502 src/exec.c sys->cpu->gr[r] = sign | sys->cpu->gr[r];</span>
<span class='curline'><a href='../S/21058.html#L505'>sys</a> 505 src/exec.c sys->cpu->fr += OF;</span>
<span class='curline'><a href='../S/21058.html#L509'>sys</a> 509 src/exec.c sys->cpu->fr += SF;</span>
<span class='curline'><a href='../S/21058.html#L512'>sys</a> 512 src/exec.c if(sys->cpu->gr[r] == 0x0) {</span>
<span class='curline'><a href='../S/21058.html#L513'>sys</a> 513 src/exec.c sys->cpu->fr += ZF;</span>
<span class='curline'><a href='../S/21058.html#L515'>sys</a> 515 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L520'>sys</a> 520 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L524'>sys</a> 524 src/exec.c sys->cpu->fr = 0x0;</span>
<span class='curline'><a href='../S/21058.html#L526'>sys</a> 526 src/exec.c last = sys->cpu->gr[r] & 0x8000;</span>
<span class='curline'><a href='../S/21058.html#L527'>sys</a> 527 src/exec.c sys->cpu->gr[r] <<= 1;</span>
<span class='curline'><a href='../S/21058.html#L531'>sys</a> 531 src/exec.c sys->cpu->fr += OF;</span>
<span class='curline'><a href='../S/21058.html#L534'>sys</a> 534 src/exec.c if((sys->cpu->gr[r] & 0x8000) > 0x0) {</span>
<span class='curline'><a href='../S/21058.html#L535'>sys</a> 535 src/exec.c sys->cpu->fr += SF;</span>
<span class='curline'><a href='../S/21058.html#L538'>sys</a> 538 src/exec.c if(sys->cpu->gr[r] == 0x0) {</span>
<span class='curline'><a href='../S/21058.html#L539'>sys</a> 539 src/exec.c sys->cpu->fr += ZF;</span>
<span class='curline'><a href='../S/21058.html#L541'>sys</a> 541 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L546'>sys</a> 546 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L550'>sys</a> 550 src/exec.c sys->cpu->fr = 0x0;</span>
<span class='curline'><a href='../S/21058.html#L552'>sys</a> 552 src/exec.c last = sys->cpu->gr[r] & 0x0001;</span>
<span class='curline'><a href='../S/21058.html#L553'>sys</a> 553 src/exec.c sys->cpu->gr[r] >>= 1;</span>
<span class='curline'><a href='../S/21058.html#L557'>sys</a> 557 src/exec.c sys->cpu->fr += OF;</span>
<span class='curline'><a href='../S/21058.html#L560'>sys</a> 560 src/exec.c if((sys->cpu->gr[r] & 0x8000) > 0x0) {</span>
<span class='curline'><a href='../S/21058.html#L561'>sys</a> 561 src/exec.c sys->cpu->fr += SF;</span>
<span class='curline'><a href='../S/21058.html#L564'>sys</a> 564 src/exec.c if(sys->cpu->gr[r] == 0x0) {</span>
<span class='curline'><a href='../S/21058.html#L565'>sys</a> 565 src/exec.c sys->cpu->fr += ZF;</span>
<span class='curline'><a href='../S/21058.html#L567'>sys</a> 567 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L572'>sys</a> 572 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L573'>sys</a> 573 src/exec.c if((sys->cpu->fr & (SF | ZF)) == 0) {</span>
<span class='curline'><a href='../S/21058.html#L574'>sys</a> 574 src/exec.c sys->cpu->pr = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L576'>sys</a> 576 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L582'>sys</a> 582 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L583'>sys</a> 583 src/exec.c if((sys->cpu->fr & SF) > 0) {</span>
<span class='curline'><a href='../S/21058.html#L584'>sys</a> 584 src/exec.c sys->cpu->pr = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L586'>sys</a> 586 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L592'>sys</a> 592 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L593'>sys</a> 593 src/exec.c if((sys->cpu->fr & ZF) == 0) {</span>
<span class='curline'><a href='../S/21058.html#L594'>sys</a> 594 src/exec.c sys->cpu->pr = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L596'>sys</a> 596 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L602'>sys</a> 602 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L603'>sys</a> 603 src/exec.c if((sys->cpu->fr & ZF) > 0) {</span>
<span class='curline'><a href='../S/21058.html#L604'>sys</a> 604 src/exec.c sys->cpu->pr = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L606'>sys</a> 606 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L612'>sys</a> 612 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L613'>sys</a> 613 src/exec.c if((sys->cpu->fr & OF) > 0) {</span>
<span class='curline'><a href='../S/21058.html#L614'>sys</a> 614 src/exec.c sys->cpu->pr = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L616'>sys</a> 616 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L622'>sys</a> 622 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L623'>sys</a> 623 src/exec.c sys->cpu->pr = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L628'>sys</a> 628 src/exec.c assert(sys->cpu->sp > execptr->end && sys->cpu->sp <= sys->memsize);</span>
<span class='curline'><a href='../S/21058.html#L629'>sys</a> 629 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L630'>sys</a> 630 src/exec.c sys->memory[--(sys->cpu->sp)] = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L631'>sys</a> 631 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L636'>sys</a> 636 src/exec.c assert(sys->cpu->sp > execptr->end);</span>
<span class='curline'><a href='../S/21058.html#L637'>sys</a> 637 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr]};</span>
<span class='curline'><a href='../S/21058.html#L640'>sys</a> 640 src/exec.c if(sys->cpu->sp >= sys->memsize) {</span>
<span class='curline'><a href='../S/21058.html#L641'>sys</a> 641 src/exec.c setcerr(203, s = pr2str(sys->cpu->pr)); /* Stack Pointer (SP) - stack underflow */</span>
<span class='curline'><a href='../S/21058.html#L644'>sys</a> 644 src/exec.c sys->cpu->gr[get_r_r1(w[0])] = sys->memory[(sys->cpu->sp)++];</span>
<span class='curline'><a href='../S/21058.html#L645'>sys</a> 645 src/exec.c sys->cpu->pr += 1;</span>
<span class='curline'><a href='../S/21058.html#L651'>sys</a> 651 src/exec.c assert(sys->cpu->sp > execptr->end && sys->cpu->sp <= sys->memsize);</span>
<span class='curline'><a href='../S/21058.html#L652'>sys</a> 652 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L653'>sys</a> 653 src/exec.c sys->memory[--(sys->cpu->sp)] = sys->cpu->pr + 1;</span>
<span class='curline'><a href='../S/21058.html#L654'>sys</a> 654 src/exec.c sys->cpu->pr = get_adr_x(w[1], w[0]);</span>
<span class='curline'><a href='../S/21058.html#L659'>sys</a> 659 src/exec.c assert(sys->cpu->sp <= sys->memsize);</span>
<span class='curline'><a href='../S/21058.html#L660'>sys</a> 660 src/exec.c if(sys->cpu->sp == sys->memsize) {</span>
<span class='curline'><a href='../S/21058.html#L662'>sys</a> 662 src/exec.c } else if(sys->cpu->sp < sys->memsize) {</span>
<span class='curline'><a href='../S/21058.html#L663'>sys</a> 663 src/exec.c sys->cpu->pr = sys->memory[(sys->cpu->sp)++] + 1;</span>
<span class='curline'><a href='../S/21058.html#L669'>sys</a> 669 src/exec.c WORD w[] = {sys->memory[sys->cpu->pr], sys->memory[sys->cpu->pr + 1]};</span>
<span class='curline'><a href='../S/21058.html#L682'>sys</a> 682 src/exec.c sys->cpu->pr += 2;</span>
<span class='curline'><a href='../S/21058.html#L699'>sys</a> 699 src/exec.c for (sys->cpu->pr = execptr->start; ; ) {</span>
<span class='curline'><a href='../S/21058.html#L703'>sys</a> 703 src/exec.c fprintf(stdout, "#%04X: Register::::\n", sys->cpu->pr);</span>
<span class='curline'><a href='../S/21058.html#L707'>sys</a> 707 src/exec.c fprintf(stdout, "#%04X: Memory::::\n", sys->cpu->pr);</span>
<span class='curline'><a href='../S/21058.html#L714'>sys</a> 714 src/exec.c (execmode.monitor == true && sys->cpu->pr == execptr->start) ||</span>
<span class='curline'><a href='../S/21058.html#L715'>sys</a> 715 src/exec.c execmode.step == true || getbps(sys->cpu->pr) == true)</span>
<span class='curline'><a href='../S/21058.html#L717'>sys</a> 717 src/exec.c if(sys->cpu->pr == execptr->start) {</span>
<span class='curline'><a href='../S/21058.html#L723'>sys</a> 723 src/exec.c if(sys->cpu->pr >= sys->memsize) {</span>
<span class='curline'><a href='../S/21058.html#L724'>sys</a> 724 src/exec.c setcerr(201, s = pr2str(sys->cpu->pr)); /* Program Register (PR) - memory overflow */</span>
<span class='curline'><a href='../S/21058.html#L728'>sys</a> 728 src/exec.c if(sys->cpu->sp <= execptr->end) {</span>
<span class='curline'><a href='../S/21058.html#L729'>sys</a> 729 src/exec.c setcerr(202, s = pr2str(sys->cpu->pr)); /* Stack Pointer (SP) - stack overflow */</span>
<span class='curline'><a href='../S/21058.html#L734'>sys</a> 734 src/exec.c if((cmdptr = getcmdptr(sys->memory[sys->cpu->pr] & 0xFF00)) == NULL) {</span>
<span class='curline'><a href='../S/21058.html#L735'>sys</a> 735 src/exec.c setcerr(204, s = pr2str(sys->cpu->pr)); /* OP in word #1 - not command code */</span>
<span class='curline'><a href='../S/21058.html#L756'>sys</a> 756 src/exec.c } while(clock_end - clock_begin < CLOCKS_PER_SEC / sys->clocks);</span>
<span class='curline'><a href='../S/21087.html#L30'>sys</a> 30 src/load.c end = start + fread(sys->memory + start, sizeof(WORD), sys->memsize - start, fp);</span>
<span class='curline'><a href='../S/21087.html#L31'>sys</a> 31 src/load.c if(end == sys->memsize) {</span>
<span class='curline'><a href='../S/21053.html#L333'>sys</a> 333 src/monitor.c fprintf(stdout, "#%04X: Register::::\n", sys->cpu->pr);</span>
<span class='curline'><a href='../S/21053.html#L343'>sys</a> 343 src/monitor.c fprintf(stdout, "#%04X: Register::::\n", sys->cpu->pr);</span>
<span class='curline'><a href='../S/21089.html#L8'>sys</a> 8 src/struct.c SYSTEM *sys = NULL;</span>
<span class='curline'><a href='../S/21089.html#L270'>sys</a> 270 src/struct.c sys = malloc_chk(sizeof(SYSTEM), "sys");</span>
<span class='curline'><a href='../S/21089.html#L273'>sys</a> 273 src/struct.c sys->memsize = memsize;</span>
<span class='curline'><a href='../S/21089.html#L276'>sys</a> 276 src/struct.c sys->clocks = clocks;</span>
<span class='curline'><a href='../S/21089.html#L278'>sys</a> 278 src/struct.c sys->cpu = malloc_chk(sizeof(CPU), "comet2_init.cpu");</span>
<span class='curline'><a href='../S/21089.html#L282'>sys</a> 282 src/struct.c sys->memory = calloc_chk(sys->memsize, sizeof(WORD), "comet2_init.memory");</span>
<span class='curline'><a href='../S/21089.html#L294'>sys</a> 294 src/struct.c sys->cpu->gr[i] = 0x0;</span>
<span class='curline'><a href='../S/21089.html#L296'>sys</a> 296 src/struct.c sys->cpu->sp = sys->memsize; /* スタックポインタ */</span>
<span class='curline'><a href='../S/21089.html#L297'>sys</a> 297 src/struct.c sys->cpu->pr = 0x0; /* プログラムレジスタ */</span>
<span class='curline'><a href='../S/21089.html#L298'>sys</a> 298 src/struct.c sys->cpu->fr = 0x0; /* フラグレジスタ */</span>
<span class='curline'><a href='../S/21089.html#L305'>sys</a> 305 src/struct.c memset(sys->memory, 0, sys->memsize * sizeof(WORD));</span>
<span class='curline'><a href='../S/21089.html#L334'>sys</a> 334 src/struct.c FREE(sys->memory);</span>
<span class='curline'><a href='../S/21089.html#L335'>sys</a> 335 src/struct.c FREE(sys->cpu);</span>
<span class='curline'><a href='../S/21089.html#L336'>sys</a> 336 src/struct.c FREE(sys);</span>
</pre>
</body>
</html>