We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS

BNE (Super FX): Difference between revisions

From SnesLab
Jump to: navigation, search
(→‎External Links: page 2-9-29)
(note about delay slot)
 
(11 intermediate revisions by the same user not shown)
Line 1: Line 1:
{| class="wikitable" style="float:right;clear:right;width:40%"
{| class="wikitable" style="float:right;clear:right;width:50%"
!colspan="8"|Basic Info
!colspan="8"|Basic Info
|+
|+
|'''Addressing Mode'''
|'''Opcode'''
|'''Opcode'''
|'''Length'''
|'''Length'''
Line 8: Line 9:
|'''Cache Speed'''
|'''Cache Speed'''
|+
|+
|[[Program Counter Relative]]
|08??
|08??
|2 bytes
|2 bytes
Line 18: Line 20:
!colspan="9"|Flags Affected
!colspan="9"|Flags Affected
|+
|+
|B
|[[B Flag|B]]
|[[ALT1]]
|[[ALT1]]
|[[ALT2]]
|[[ALT2]]
|[[O/V]]
|[[O/V]]
|S
|[[Sign Flag|S]]
|[[CY]]
|[[CY]]
|Z
|[[Zero Flag|Z]]
|+
|+
|.
|.
Line 35: Line 37:
|}
|}


'''BNE''' (Branch not equal) is a [[Super FX]] instruction that performs a conditional jump.
'''BNE''' (Branch not equal) is a [[Super FX]] instruction that performs a conditional jump. The instruction after BNE is already in the pipeline and will run even if the branch occurs.
 
No flags are affected.
 
==== Syntax ====
<pre>
BNE e
</pre>
 
==== Example ====
Let the zero flag be clear.  This instruction jumps the program backward 2 bytes:
<pre>
BNE $-2h
</pre>


=== See Also ===
=== See Also ===
Line 43: Line 58:


=== External Links ===
=== External Links ===
* Official Nintendo documentation on BNE: [https://archive.org/details/SNESDevManual/book2/page/n184 Page 2-9-28 of Book II]
* Official Nintendo documentation on BNE: paragraph 9.22 on [https://archive.org/details/SNESDevManual/book2/page/n184 page 2-9-28 of Book II]
* example: [https://archive.org/details/SNESDevManual/book2/page/n185 page 2-9-29], lbid.
* example: [https://archive.org/details/SNESDevManual/book2/page/n185 page 2-9-29], lbid.


Line 49: Line 64:
[[Category:ASM]]
[[Category:ASM]]
[[Category:Two-byte Instructions]]
[[Category:Two-byte Instructions]]
[[Category:Instructions with Delay Slots]]

Latest revision as of 08:15, 14 July 2024

Basic Info
Addressing Mode Opcode Length ROM Speed RAM Speed Cache Speed
Program Counter Relative 08?? 2 bytes 6 cycles 6 cycles 2 cycles
Flags Affected
B ALT1 ALT2 O/V S CY Z
. . . . . . .

BNE (Branch not equal) is a Super FX instruction that performs a conditional jump. The instruction after BNE is already in the pipeline and will run even if the branch occurs.

No flags are affected.

Syntax

BNE e

Example

Let the zero flag be clear. This instruction jumps the program backward 2 bytes:

 BNE $-2h

See Also

External Links