We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS
BCC (SPC700): Difference between revisions
From SnesLab
(moved tables up) |
(control falls through) |
||
(11 intermediate revisions by the same user not shown) | |||
Line 1: | Line 1: | ||
{| class="wikitable" style="float:right;clear:right;width: | {| class="wikitable" style="float:right;clear:right;width:50%" | ||
!colspan="8"|Basic Info | !colspan="8"|Basic Info | ||
|+ | |+ | ||
Line 7: | Line 7: | ||
|'''Speed''' | |'''Speed''' | ||
|+ | |+ | ||
| | |[[Program Counter Relative]] | ||
|90 | |90 | ||
|2 bytes | |2 bytes | ||
Line 15: | Line 15: | ||
{| class="wikitable" style="float:right;clear:right;width:30%" | {| class="wikitable" style="float:right;clear:right;width:30%" | ||
!colspan="8"|Flags | !colspan="8"|Flags Affected | ||
|+ | |+ | ||
|N | |[[Negative Flag|N]] | ||
|V | |[[Overflow Flag|V]] | ||
|P | |[[Direct Page Flag|P]] | ||
|B | |[[Break Flag|B]] | ||
|H | |[[Half-Carry Flag|H]] | ||
|I | |[[Interrupt Enable Flag|I]] | ||
|Z | |[[Zero Flag|Z]] | ||
|C | |[[Carry Flag|C]] | ||
|+ | |+ | ||
|. | |. | ||
Line 36: | Line 36: | ||
|} | |} | ||
'''BCC''' is an [[SPC700]] instruction that performs a branch when the carry flag is clear. | '''BCC''' is an [[SPC700]] instruction that performs a branch when the [[carry flag]] is clear. If the carry flag is set, control simply falls through BCC to the next instruction. | ||
No flags are affected. | |||
==== Syntax ==== | |||
<pre> | |||
BCC rel | |||
</pre> | |||
Where rel is a two's complement offset. | |||
=== See Also === | === See Also === | ||
* [[BCC]] | * [[BCC]] | ||
* [[BCS (SPC700)]] | |||
=== External Links === | === External Links === | ||
* [https://archive.org/details/SNESDevManual/book1/page/n233 Appendix C-8 of Book I] of the official Super Nintendo development manual | * Table C-15, [https://archive.org/details/SNESDevManual/book1/page/n233 Appendix C-8 of Book I] of the official Super Nintendo development manual | ||
* anomie: https://github.com/yupferris/TasmShiz/blob/master/spc700.txt#L358 | |||
[[Category:ASM]] | [[Category:ASM]] | ||
[[Category:SPC700]] | [[Category:SPC700]] | ||
[[Category:Branching Commands]] | [[Category:Branching Commands]] | ||
[[Category:Two-byte Instructions]] |
Latest revision as of 15:24, 14 August 2024
Basic Info | |||||||
---|---|---|---|---|---|---|---|
Addressing Mode | Opcode | Length | Speed | ||||
Program Counter Relative | 90 | 2 bytes | when condition false: 2 cycles
when condition true: 4 cycles |
Flags Affected | |||||||
---|---|---|---|---|---|---|---|
N | V | P | B | H | I | Z | C |
. | . | . | . | . | . | . | . |
BCC is an SPC700 instruction that performs a branch when the carry flag is clear. If the carry flag is set, control simply falls through BCC to the next instruction.
No flags are affected.
Syntax
BCC rel
Where rel is a two's complement offset.
See Also
External Links
- Table C-15, Appendix C-8 of Book I of the official Super Nintendo development manual
- anomie: https://github.com/yupferris/TasmShiz/blob/master/spc700.txt#L358