Mercurial > repos > blastem
comparison cpu_dsl.py @ 1745:a8f04b0ab744
Fixes to DAA, SCF and CCF to pass ZEXALL in new Z80 core
author | Michael Pavone <pavone@retrodev.com> |
---|---|
date | Wed, 06 Feb 2019 08:54:09 -0800 |
parents | 91aa789e57bd |
children | 89ddf41a50bb |
comparison
equal
deleted
inserted
replaced
1744:91aa789e57bd | 1745:a8f04b0ab744 |
---|---|
466 needsCarry = True | 466 needsCarry = True |
467 break | 467 break |
468 if needsCarry: | 468 if needsCarry: |
469 size *= 2 | 469 size *= 2 |
470 tmpvar = 'cmp_tmp{sz}__'.format(sz=size) | 470 tmpvar = 'cmp_tmp{sz}__'.format(sz=size) |
471 prog.carryFlowDst = tmpvar | 471 if flagUpdates: |
472 prog.lastA = params[1] | 472 prog.carryFlowDst = tmpvar |
473 prog.lastB = params[0] | 473 prog.lastA = params[1] |
474 prog.lastBFlow = params[0] | 474 prog.lastB = params[0] |
475 prog.lastBFlow = params[0] | |
475 scope = prog.getRootScope() | 476 scope = prog.getRootScope() |
476 if not scope.resolveLocal(tmpvar): | 477 if not scope.resolveLocal(tmpvar): |
477 scope.addLocal(tmpvar, size) | 478 scope.addLocal(tmpvar, size) |
478 prog.lastDst = rawParams[1] | 479 prog.lastDst = rawParams[1] |
479 return '\n\t{var} = {b} - {a};'.format(var = tmpvar, a = params[0], b = params[1]) | 480 return '\n\t{var} = {b} - {a};'.format(var = tmpvar, a = params[0], b = params[1]) |