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

PLP: Difference between revisions

From SnesLab
Jump to: navigation, search
(→‎External Links: Clark link)
(→‎External Links: hid archive URL for MCS)
 
(6 intermediate revisions by the same user not shown)
Line 27: Line 27:
|+
|+
|[[65c816 native mode]]
|[[65c816 native mode]]
|
|N
|
|V
|
|M
|
|X
|
|D
|
|I
|
|Z
|
|C
|+
|+
|[[6502 emulation mode]]
|[[6502 emulation mode]]
|
|N
|
|V
|.
|.
|
|B
|
|D
|
|I
|
|Z
|
|C
|}
|}


'''PLP''' (PulL status flags) is a 65x instruction that pulls the 8-bit value at the top of the [[stack]] into the [[status register]].  The [[stack pointer]] is incremented before the byte is pulled.
'''PLP''' (PulL status flags) is a 65x instruction that pulls the 8-bit value at the top of the [[stack]] into the [[status register]].  The [[stack pointer]] is incremented before the byte is pulled.
The [[emulation mode]] bit is not on the stack so it does not get pulled.


==== Syntax ====
==== Syntax ====
Line 64: Line 66:


=== External Links ===
=== External Links ===
* [[Eyes & Lichty]] page 486, on PLP: https://archive.org/details/0893037893ProgrammingThe65816/page/486
* [[Eyes & Lichty]], [https://archive.org/details/0893037893ProgrammingThe65816/page/486 page 486] on PLP
* [[Labiak]] page 170 on PLP: https://archive.org/details/Programming_the_65816/page/n180
* [[Labiak]], [https://archive.org/details/Programming_the_65816/page/n180 page 170] on PLP
* [[MCS6500 Manual]] page 123 on PLP: https://archive.org/details/mos_microcomputers_programming_manual/page/n142
* 8.12 on [[MCS6500 Manual]], [https://archive.org/details/mos_microcomputers_programming_manual/page/n142 page 123] on PLP
* [[Carr]] page 268 on PLP: https://archive.org/details/6502UsersManual/page/n281
* [[Carr]], [https://archive.org/details/6502UsersManual/page/n281 page 268] on PLP
* [[Leventhal]] page 3-84 on PLP: https://archive.org/details/6502-assembly-language-programming/page/n133
* [[Leventhal]], [https://archive.org/details/6502-assembly-language-programming/page/n133 page 3-84] on PLP
* snes9x implementation of PLP: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L2099
* snes9x implementation of PLP: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L2099
* Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#6.8.3
* Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#6.8.3

Latest revision as of 03:56, 8 August 2024

Basic Info
Addressing Mode Opcode Length Speed
Stack (Pull) 28 1 byte 4 cycles
Flags Affected
N V M X / B D I Z C
65c816 native mode N V M X D I Z C
6502 emulation mode N V . B D I Z C

PLP (PulL status flags) is a 65x instruction that pulls the 8-bit value at the top of the stack into the status register. The stack pointer is incremented before the byte is pulled.

The emulation mode bit is not on the stack so it does not get pulled.

Syntax

PLP

See Also

External Links