Assorted flag-lifting inaccuracies
Open
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 12
- Forks
- 5
- PR merge metrics
- No merged PRs in 30d
Description
Smaller flag issues found while reviewing the lifter, grouped since each is a line or two:
CPLusesflags="*", but it only sets H and N.SCF/CCFdo not touch H or N.LD A,I/LD A,Rset no flags; they should set S and Z, clear H and N, and copy IFF2 into P/V.RETI/RETNdo not model IFF1 <- IFF2.CPI/CPDwrite only Z.pvis mapped toOverflowFlagRole, so parity after logic ops is modelled as signed overflow (there is already a TODO about this in the source).
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the Z80 lifter handlers for CPL, SCF, CCF, LD A,I, LD A,R, RETI, RETN, CPI and CPD, then read the existing TODO about the pv mapping. Compare each handler's flag effects with the issue, including IFF1/IFF2 behavior, and consider the work done when all listed inaccuracies are modeled correctly.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- reverse-engineering
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100