We've just updated MediaWiki and its underlying software. If anything doesn't look or work quite right, please mention it to us. --RanAS
CLI: Difference between revisions
From SnesLab
(→External Links: Carr page) |
(which cycle does what) |
||
(14 intermediate revisions by the same user not shown) | |||
Line 35: | Line 35: | ||
|} | |} | ||
'''CLI''' is a 65x instruction that clears the [[interrupt disable flag]]. | '''CLI''' is a 65x instruction that clears the [[interrupt disable flag]], which enables maskable interrupts. To handle nested interrupts, a CLI is required. | ||
No other flags are affected. | |||
==== Syntax ==== | |||
<pre> | |||
CLI | |||
</pre> | |||
The first [[machine cycle]] is to load the opcode byte, and the second is the [[internal cycle]]. | |||
=== See Also === | === See Also === | ||
Line 43: | Line 52: | ||
* [[IRQ]] | * [[IRQ]] | ||
* [[RTI]] | * [[RTI]] | ||
* [[REP]] | |||
=== External Links === | === External Links === | ||
* [[Eyes & Lichty]] | * [[Eyes & Lichty]], [https://archive.org/details/0893037893ProgrammingThe65816/page/443 page 443] on CLI | ||
* [[Labiak]] | * [[Labiak]], [https://archive.org/details/Programming_the_65816/page/n142 page 132] on CLI | ||
* [[MCS6500 Manual]] | * 3.2.2 on [[MCS6500 Manual]], [https://archive.org/details/mos_microcomputers_programming_manual/page/n41 page 26] on CLI | ||
* [[Carr]] | * [[Carr]], [https://archive.org/details/6502UsersManual/page/n267 page 254] on CLI | ||
* [[Leventhal]] | * [[Leventhal]], [https://archive.org/details/6502-assembly-language-programming/page/n103 page 3-54] on CLI | ||
* snes9x implementation of CLI: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L1434 | * snes9x implementation of CLI: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L1434 | ||
Line 55: | Line 65: | ||
[[Category:Inherited from 6502]] | [[Category:Inherited from 6502]] | ||
[[Category:One-byte Instructions]] | [[Category:One-byte Instructions]] | ||
[[Category:Implied Instructions]] | |||
[[Category:Two-cycle Instructions]] |
Latest revision as of 16:58, 21 October 2024
Basic Info | |||||||
---|---|---|---|---|---|---|---|
Addressing Mode | Opcode | Length | Speed | ||||
Implied (type 2) | 58 | 1 byte | 2 cycles |
Flags Affected | ||||||||
---|---|---|---|---|---|---|---|---|
N | V | M | X | D | I | Z | C | |
. | . | . | . | . | 0 | . | . |
CLI is a 65x instruction that clears the interrupt disable flag, which enables maskable interrupts. To handle nested interrupts, a CLI is required.
No other flags are affected.
Syntax
CLI
The first machine cycle is to load the opcode byte, and the second is the internal cycle.
See Also
External Links
- Eyes & Lichty, page 443 on CLI
- Labiak, page 132 on CLI
- 3.2.2 on MCS6500 Manual, page 26 on CLI
- Carr, page 254 on CLI
- Leventhal, page 3-54 on CLI
- snes9x implementation of CLI: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L1434