We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS
Half-Carry Flag: Difference between revisions
From SnesLab
(flowed DAA/DAS into body) |
(→See Also: BCD) |
||
(3 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
The '''Half-carry flag''' (H) | The '''Half-carry flag''' (H) is bit 3 of the [[S-SMP]]'s [[program status word]]. It applies to the bottom 4 bits of the [[accumulator]], meaning it is set whenever bit 3 of an [[ALU]] operation carries over into bit 4. It is also set when there has not been any borrow. | ||
It is cleared by [[CLRV]], but there is no [[SETV]] command to set it. | It is cleared by [[CLRV]], but there is no [[SETV]] command to set it. | ||
Line 14: | Line 14: | ||
* [[Decimal Mode]] | * [[Decimal Mode]] | ||
* [[Carry Flag]] | * [[Carry Flag]] | ||
* [[BCD]] | |||
=== References === | === References === | ||
* https://problemkaputt.de/fullsnes.htm#snesapuspc700cpuoverview | * https://problemkaputt.de/fullsnes.htm#snesapuspc700cpuoverview | ||
* [https://archive.org/details/SNESDevManual/book1/page/n184 Page 3-8-6 of Book I] of the official Super Nintendo development manual | * [https://archive.org/details/SNESDevManual/book1/page/n184 Page 3-8-6 of Book I] of the official Super Nintendo development manual |
Latest revision as of 19:00, 15 August 2024
The Half-carry flag (H) is bit 3 of the S-SMP's program status word. It applies to the bottom 4 bits of the accumulator, meaning it is set whenever bit 3 of an ALU operation carries over into bit 4. It is also set when there has not been any borrow.
It is cleared by CLRV, but there is no SETV command to set it.
Whenever H is set, the overflow flag is set as well.
Both DAA and DAS examine the half-carry flag.
See Also
References
- https://problemkaputt.de/fullsnes.htm#snesapuspc700cpuoverview
- Page 3-8-6 of Book I of the official Super Nintendo development manual