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

PHB: Difference between revisions

From SnesLab
Jump to: navigation, search
(one byte pushed)
(→‎External Links: hid archive URL on E&L)
 
(9 intermediate revisions by the same user not shown)
Line 7: Line 7:
|'''Speed'''
|'''Speed'''
|+
|+
|[[Stack Addressing|Stack]]
|[[Stack Addressing|Stack]] (Push)
|8B
|8B
|1 byte
|1 byte
Line 35: Line 35:
|}
|}


'''PHB''' (PusH data Bank register) is a [[65c816]] instruction that pushes the value of the [[data bank register]] to the [[stack]].  PHB always pushes one byte.
'''PHB''' (PusH data Bank register) is a [[65c816]] instruction that pushes the value of the [[data bank register]] to the [[stack]].  PHB always pushes one byte. The [[stack pointer]] is decremented by one and ends up pointing directly below the byte pushed.
 
No flags are affected.
 
==== Syntax ====
<pre>
PHB
</pre>
 
PHB works even in [[emulation mode]] even though all bank addresses are forced to zero.<sup>[4]</sup>


=== See Also ===
=== See Also ===
Line 43: Line 52:


=== External Links ===
=== External Links ===
* [[Eyes & Lichty]] page 477, on PHB: https://archive.org/details/0893037893ProgrammingThe65816/page/n503
# [[Eyes & Lichty]], [https://archive.org/details/0893037893ProgrammingThe65816/page/477 page 477] on PHB
* [[Labiak]] page 161 on PHB: https://archive.org/details/Programming_the_65816/page/n171
# [[Labiak]], [https://archive.org/details/Programming_the_65816/page/n171 page 161] on PHB
# Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#6.8.3
# section 7.8.2 of 65c816 datasheet


[[Category:ASM]]
[[Category:ASM]]
Line 50: Line 61:
[[Category:Push Instructions]]
[[Category:Push Instructions]]
[[Category:One-byte Instructions]]
[[Category:One-byte Instructions]]
[[Category:Three-cycle Instructions]]

Latest revision as of 19:27, 6 August 2024

Basic Info
Addressing Mode Opcode Length Speed
Stack (Push) 8B 1 byte 3 cycles
Flags Affected
N V M X D I Z C
. . . . . . . .

PHB (PusH data Bank register) is a 65c816 instruction that pushes the value of the data bank register to the stack. PHB always pushes one byte. The stack pointer is decremented by one and ends up pointing directly below the byte pushed.

No flags are affected.

Syntax

PHB

PHB works even in emulation mode even though all bank addresses are forced to zero.[4]

See Also

External Links

  1. Eyes & Lichty, page 477 on PHB
  2. Labiak, page 161 on PHB
  3. Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#6.8.3
  4. section 7.8.2 of 65c816 datasheet