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

CLC: Difference between revisions

From SnesLab
Jump to: navigation, search
(flowed REP into body)
 
(15 intermediate revisions by the same user not shown)
Line 38: Line 38:


The 6502 lacks an add-without-carry instruction, so it is important to make sure the carry flag is clear before doing an [[ADC]] or else the sum will be one too great.
The 6502 lacks an add-without-carry instruction, so it is important to make sure the carry flag is clear before doing an [[ADC]] or else the sum will be one too great.
No other flags are affected.
==== Syntax ====
<pre>
CLC
</pre>
One of the first instructions a SNES game runs after coming out of reset is often a CLC so that [[XCE]] can switch to native mode.
To clear more than one flag at the same time, use [[REP]].


=== See Also ===
=== See Also ===
* [[SEC]]
* [[SEC]]
* [[CLV]]
* [[CLV]]
* [[CLD]]
* [[CLI]]
* [[CLRC]]
* [[CLRC]]
* [[XCE]]


=== External Links ===
=== External Links ===
* [[Eyes & Lichty]] page 441, on CLC: https://archive.org/details/0893037893ProgrammingThe65816/page/n467
* [[Eyes & Lichty]], [https://archive.org/details/0893037893ProgrammingThe65816/page/441 page 441] on CLC
* [[Labiak]] page 130 on CLC: https://archive.org/details/Programming_the_65816/page/n140
* [[Labiak]], [https://archive.org/details/Programming_the_65816/page/n140 page 130] on CLC
* [[MCS6500 Manual]] page 25 on CLC: https://archive.org/details/mos_microcomputers_programming_manual/page/n40
* 3.0.2 on [[MCS6500 Manual]], [https://archive.org/details/mos_microcomputers_programming_manual/page/n40 page 25] on CLC
* [[Carr]] page 253 on CLC: https://archive.org/details/6502UsersManual/page/n266
* [[Carr]], [https://archive.org/details/6502UsersManual/page/n266 page 253] on CLC
* [[Leventhal]] page 3-52 on CLC: https://archive.org/details/6502-assembly-language-programming/page/n101
* [[Leventhal]], [https://archive.org/details/6502-assembly-language-programming/page/n101 page 3-52] on CLC
* snes9x implementation of CLC: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L1420
* snes9x implementation of CLC: https://github.com/snes9xgit/snes9x/blob/master/cpuops.cpp#L1420
* Clark, Bruce. http://www.6502.org/tutorials/65c816opcodes.html#6.4.1


[[Category:ASM]]
[[Category:ASM]]
[[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 01:53, 10 August 2024

Basic Info
Addressing Mode Opcode Length Speed
Implied (type 2) 18 1 byte 2 cycles
Flags Affected
N V M X D I Z C
. . . . . . . 0

CLC is a 65x instruction that clears the carry flag.

The 6502 lacks an add-without-carry instruction, so it is important to make sure the carry flag is clear before doing an ADC or else the sum will be one too great.

No other flags are affected.

Syntax

CLC

One of the first instructions a SNES game runs after coming out of reset is often a CLC so that XCE can switch to native mode.

To clear more than one flag at the same time, use REP.

See Also

External Links