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

PLD: Difference between revisions

From SnesLab
Jump to: navigation, search
(category pull instructions)
(where stack pointer now points)
 
(5 intermediate revisions by the same user not shown)
Line 16: Line 16:
!colspan="9"|Flags Affected
!colspan="9"|Flags Affected
|+
|+
|N
|[[Negative Flag|N]]
|V
|[[Overflow Flag|V]]
|M
|[[M Flag|M]]
|X
|[[X Flag|X]]
|D
|[[Decimal Flag|D]]
|I
|[[I Flag|I]]
|Z
|[[Zero Flag|Z]]
|C
|[[Carry Flag|C]]
|+
|+
|
|
Line 35: Line 35:
|}
|}


'''PLD''' (PulL Direct page) is a [[65c816]] instruction that pulls the 16-bit value at the top of the [[stack]] into the [[direct page register]].
'''PLD''' (PulL Direct page) is a [[65c816]] instruction that pulls the 16-bit value at the top of the [[stack]] into the [[direct page register]].  The low byte of this register is pulled first.  After PLD completes, the [[stack pointer]] is pointing to where the high byte was, which becomes the next available stack location.


=== See Also ===
=== See Also ===
Line 42: Line 42:
* [[PLX]]
* [[PLX]]
* [[PLY]]
* [[PLY]]
* [[TCD]]


=== External Links ===
=== External Links ===
* [[Eyes & Lichty]] page 485, on PLD: https://archive.org/details/0893037893ProgrammingThe65816/page/n511
* [[Eyes & Lichty]] page 485, on PLD: https://archive.org/details/0893037893ProgrammingThe65816/page/n511
* [[Labiak]] page on PLD: https://archive.org/details/Programming_the_65816/page/n179
* [[Labiak]] page 169 on PLD: https://archive.org/details/Programming_the_65816/page/n179
* snes9x implementation of PLD: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L2069
* snes9x implementation of PLD: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L2069


Line 51: Line 52:
[[Category:65c816 additions]]
[[Category:65c816 additions]]
[[Category:Pull Instructions]]
[[Category:Pull Instructions]]
[[Category:Five-cycle Instructions]]

Latest revision as of 03:43, 19 December 2023

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

PLD (PulL Direct page) is a 65c816 instruction that pulls the 16-bit value at the top of the stack into the direct page register. The low byte of this register is pulled first. After PLD completes, the stack pointer is pointing to where the high byte was, which becomes the next available stack location.

See Also

External Links