Fixed cycle delay: Difference between revisions
From NESdev Wiki
Jump to navigationJump to search
(Another reformatting) |
(Gotta have more data) |
||
Line 17: | Line 17: | ||
!colspan="2"|1 bytes | !colspan="2"|1 bytes | ||
|- | |- | ||
|<pre>NOP</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 27: | Line 26: | ||
!colspan="2"|1 bytes | !colspan="2"|1 bytes | ||
|- | |- | ||
|<pre>PHA</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
!colspan="2"|2 bytes | !colspan="2"|2 bytes | ||
|- | |- | ||
|<pre>LDA $00</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>BIT $00</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V | ||
|Clobbers Z, | |||
|- | |- | ||
|<pre>STA @zptemp</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp</nowiki></pre> || style="padding:2px" | Requires @zptemp | ||
|Requires @zptemp | |||
|- | |- | ||
|<pre>NOP $00</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | ||
|Requires support for unofficial opcodes | |||
|- | |- | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>JMP *+3</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JMP *+3</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 56: | Line 49: | ||
!colspan="2"|1 bytes | !colspan="2"|1 bytes | ||
|- | |- | ||
|<pre>PLA</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|2 bytes | !colspan="2"|2 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP</pre> | NOP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 72: | Line 63: | ||
!colspan="2"|2 bytes | !colspan="2"|2 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA</pre> | PHA</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
LDA $00</pre> | LDA $00</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
BIT $00</pre> | BIT $00</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V | ||
|Clobbers Z, | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
STA @zptemp</pre> | STA @zptemp</nowiki></pre> || style="padding:2px" | Requires @zptemp | ||
|Requires @zptemp | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP $00</pre> | NOP $00</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | ||
|Requires support for unofficial opcodes | |||
|- | |- | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
JMP *+3</pre> | JMP *+3</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 107: | Line 92: | ||
!colspan="2"|2 bytes | !colspan="2"|2 bytes | ||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHA</pre> | PHA</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP</pre> | NOP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 125: | Line 108: | ||
!colspan="2"|2 bytes | !colspan="2"|2 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 136: | Line 118: | ||
!colspan="2"|2 bytes | !colspan="2"|2 bytes | ||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>TSX | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | ||
PLA | PLA | ||
TXS</pre> | TXS</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
PHA</pre> | PHA</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP | NOP | ||
NOP</pre> | NOP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 167: | Line 145: | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 179: | Line 156: | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
BIT $00 | BIT $00 | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 198: | Line 173: | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 218: | Line 191: | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>JSR @rts12</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | ||
|Requires @rts12 | |||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>ROL $00,X | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>ROL $00,X | ||
ROR $00,X</pre> | ROR $00,X</nowiki></pre> || style="padding:2px" | Clobbers Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHP | PHP | ||
BIT $00 | BIT $00 | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 253: | Line 221: | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHA | PHA | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP | NOP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 275: | Line 241: | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>JSR @rts14</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 293: | Line 257: | ||
!colspan="2"|3 bytes | !colspan="2"|3 bytes | ||
|- | |- | ||
|<pre>JSR @rts15</pre> | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | ||
|Requires @rts15 | |||
|- | |- | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | ||
|Clobbers S and requires @rts12 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>LDA $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00 | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts12 | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
TSX | TSX | ||
PLA | PLA | ||
TXS | TXS | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
TSX | TSX | ||
PLA | PLA | ||
TXS | TXS | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers A, and X | ||
|Clobbers A and X | |||
|- | |- | ||
|<pre>BIT $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts12 | ||
|Clobbers Z, | |||
|- | |- | ||
|<pre>STA @zptemp | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts12 | ||
|Requires @zptemp and @rts12 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
PHA | PHA | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
|<pre>NOP $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12, and support for unofficial opcodes | ||
|Requires | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP | NOP | ||
NOP | NOP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 372: | Line 317: | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHP | PHP | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 398: | Line 340: | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | ||
|Requires @rts15 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | ||
|Clobbers S and requires @rts14 | |||
|- | |- | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>LDA $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00 | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts14 | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>BIT $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts14 | ||
|Clobbers Z, | |||
|- | |- | ||
|<pre>STA @zptemp | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts14 | ||
|Requires @zptemp and @rts14 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHP | PHP | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
|<pre>NOP $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14, and support for unofficial opcodes | ||
|Requires support for unofficial opcodes | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP | PLP | ||
PHP | PHP | ||
BIT $00 | BIT $00 | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 447: | Line 381: | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | ||
|Clobbers S and requires @rts15 | |||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>LDA $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00 | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts15 | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>BIT $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts15 | ||
|Clobbers Z, | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
|<pre>STA @zptemp | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts15 | ||
|Requires @zptemp and @rts15 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHA | PHA | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | ||
|Clobbers S and requires @rts12 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>NOP $00 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | ||
JSR @rts15</ | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15, and support for unofficial opcodes | ||
| | |||
| | |||
| | |||
@ | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
PHP | PHP | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 523: | Line 431: | ||
!colspan="2"|4 bytes | !colspan="2"|4 bytes | ||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP | PLP | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | ||
|Requires @rts12 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | ||
|Requires @rts15 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
JSR @rts14</ | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | ||
| | |||
| | |||
|Clobbers | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
ROL $00,X | ROL $00,X | ||
ROR $00,X | ROR $00,X | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 582: | Line 468: | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | ||
|Clobbers S and requires @rts15 | |||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHA | PHA | ||
JSR @rts14</ | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | ||
| | |||
| | |||
|Clobbers | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
LDA $00 | LDA $00 | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts15 | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>TSX | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
TXS</pre> | TXS</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
BIT $00 | BIT $00 | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts15 | ||
|Clobbers Z, | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP | NOP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
STA @zptemp | STA @zptemp | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts15 | ||
|Requires @zptemp and @rts15 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHA | PHA | ||
PHP | PHP | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP $00 | NOP $00 | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15, and support for unofficial opcodes | ||
|Requires support for unofficial opcodes | |||
|- | |- | ||
!colspan="2"|7 bytes | !colspan="2"|7 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP | NOP | ||
Line 667: | Line 527: | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 677: | Line 536: | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>LDY #4 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | ||
@Y: | @Y: | ||
DEY | DEY | ||
BNE @Y</pre> | BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>LDX #4 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | ||
@X: | @X: | ||
DEX | DEX | ||
BNE @X</pre> | BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP | PLP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHA | PHA | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | ||
|Clobbers S and requires @rts15 | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP | PLP | ||
PHP | PHP | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 716: | Line 570: | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP | PLP | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | ||
|Requires @rts15 | |||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
PLA | PLA | ||
JSR @rts14</ | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | ||
| | |||
| | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>LDY #3 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | ||
@Y: | @Y: | ||
NOP | NOP | ||
DEY | DEY | ||
BNE @Y</pre> | BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>LDX #3 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | ||
@X: | @X: | ||
NOP | NOP | ||
DEX | DEX | ||
BNE @X</pre> | BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | ||
|Clobbers Z | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHP | PHP | ||
PLP | PLP | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | ||
|Clobbers S and requires @rts12 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
PHA | PHA | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | ||
|Clobbers S and requires @rts14 | |||
|- | |- | ||
!colspan="2"|7 bytes | !colspan="2"|7 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
BIT $00 | BIT $00 | ||
PLP | PLP | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | ||
|Requires @rts12 | |||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PHA | PHA | ||
TSX | TSX | ||
Line 792: | Line 622: | ||
TXS | TXS | ||
PLA | PLA | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers X | ||
|Clobbers X | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP | NOP | ||
NOP | NOP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
PHA | PHA | ||
Line 808: | Line 636: | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
|<pre | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | ||
; | |||
LDA #130 | LDA #130 | ||
@A = * - 1 | @A = * - 1 | ||
Line 827: | Line 644: | ||
NOP $EA44 ;hides 'NOP zp' | NOP $EA44 ;hides 'NOP zp' | ||
SBC #1 | SBC #1 | ||
BMI @A</pre> | BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|8 bytes | !colspan="2"|8 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
NOP | NOP | ||
NOP | NOP | ||
Line 839: | Line 655: | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 849: | Line 664: | ||
!colspan="2"|5 bytes | !colspan="2"|5 bytes | ||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
PLA | PLA | ||
JSR @rts15</ | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | ||
| | |||
| | |||
|Clobbers | |||
|- | |- | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>TSX | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | ||
PLA | PLA | ||
TXS | TXS | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Z&N; and requires @rts15 | ||
|Clobbers | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHP | PHP | ||
PLP | PLP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHA | PHA | ||
PHA | PHA | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | ||
|Clobbers S and requires @rts15 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</ | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
| | |||
| | |||
|Clobbers Z | |||
|- | |- | ||
!colspan="2"|7 bytes | !colspan="2"|7 bytes | ||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHP | PHP | ||
PLP | PLP | ||
Line 924: | Line 700: | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |||
|- | |- | ||
|} | |} | ||
Line 932: | Line 707: | ||
=== 24 cycles === | === 24 cycles === | ||
{| class="wikitable" | {| class="wikitable" | ||
!colspan="2"|6 bytes | !colspan="2"|6 bytes | ||
|- | |- | ||
|<pre>JSR @rts12 | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | ||
JSR @rts12</pre> | JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | ||
|Requires @rts12 | |||
|- | |- | ||
|<pre>NOP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | ||
PHP | PHP | ||
PLP | PLP | ||
JSR @rts15</pre> | JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | ||
|Requires @rts15 | |||
|- | |- | ||
|<pre>PLA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA | PLA | ||
PLA</pre> | PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHP | PHP | ||
PLP | PLP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | ||
|Clobbers S and requires @rts14 | |||
|- | |- | ||
!colspan="2"|7 bytes | !colspan="2"|7 bytes | ||
|- | |- | ||
|<pre>TSX | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | ||
PLA | PLA | ||
PLA | PLA | ||
Line 984: | Line 737: | ||
PLA | PLA | ||
PLA | PLA | ||
TXS</pre> | TXS</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Z&N | ||
|Clobbers | |||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
BIT $00 | BIT $00 | ||
PLP | PLP | ||
JSR @rts14</pre> | JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | ||
|Requires @rts14 | |||
|- | |- | ||
|<pre>PHA | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | ||
PHP | PHP | ||
PLP | PLP | ||
Line 999: | Line 750: | ||
PLP | PLP | ||
PHP | PHP | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers S | ||
|Clobbers S | |||
|- | |- | ||
|<pre>SEC | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | ||
LDA #130 | LDA #130 | ||
@A = * - 1 | @A = * - 1 | ||
; ^ Hides !NOP #imm | ; ^ Hides !NOP #imm | ||
.byte $0C,$E6,@ | .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | ||
SBC #1 | SBC #1 | ||
BMI @A</pre> | BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @zptemp, and support for unofficial opcodes | ||
|Clobbers | |||
|- | |- | ||
!colspan="2"|8 bytes | !colspan="2"|8 bytes | ||
|- | |- | ||
|<pre>PHP | | style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | ||
PLP | PLP | ||
PHP | PHP | ||
Line 1,019: | Line 768: | ||
PHP | PHP | ||
BIT $00 | BIT $00 | ||
PLP</pre> | PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | ||
|Clobbers nothing, requires nothing | |- | ||
|} | |||
=== 25 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHP | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
BIT $00 | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 26 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #5 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #5 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
PLA | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>ROL $00,X | |||
ROR $00,X | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
ROL $00,X | |||
ROR $00,X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 27 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts12, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
PLA | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>ROL $00,X | |||
ROR $00,X | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
BIT $00 | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TSX | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
TXS | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TSX | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
TXS | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A, and X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers S | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 28 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #5 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 29 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
PLA | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #3 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #3 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00 | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @zptemp, @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts12, @rts14, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
BIT $00 | |||
PLP | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHA | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers S | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 30 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 31 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
PLA | |||
PLA | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #4 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TSX | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
TXS | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A, and X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JMP *+3 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers S | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
.byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @zptemp, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
.byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @zptemp, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
BIT $00 | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 32 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | |||
LDY #3 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y | |||
TXS</nowiki></pre> || style="padding:2px" | Clobbers A, X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #2 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #2 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHA | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 33 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #5 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #5 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #6 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDA $00 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JMP *+3 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts14 | |||
PHP | |||
ROL $00,X | |||
ROR $00,X | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
ROL $00,X | |||
ROR $00,X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 34 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PHA | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PHA | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHP | |||
PLP | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA ;hides 'NOP' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
BIT $00 | |||
PLP | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TSX | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
TXS | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers S | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 35 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
JSR @rts12 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
PLA | |||
PLA | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
PLA | |||
PLA | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #4 | |||
@A: | |||
PHA | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #5 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
ROL $00,X | |||
ROR $00,X | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
ROL $00,X | |||
ROR $00,X | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #5 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
BIT $00 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
STA @zptemp | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP $00 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 36 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #7 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #7 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #3 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #2 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHA | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers S | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
|} | |||
=== 37 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #5 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 38 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #6 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #6 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #7 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
NOP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #4 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
BIT $00 | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
PHP | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers S | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
.byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @zptemp, and support for unofficial opcodes | |||
|- | |||
|} | |||
=== 39 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
JSR @rts14 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
JSR @rts14 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #3 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TSX | |||
LDY #3 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y | |||
TXS | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12, and support for unofficial opcodes | |||
|- | |||
|} | |||
=== 40 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PLA | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PLA | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
TSX | |||
PLA | |||
TXS | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
NOP | |||
PHA | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
NOP | |||
PHA | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #6 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #6 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
BIT $00 | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>ROL $00,X | |||
ROR $00,X | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
BIT $00 | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
|} | |||
=== 41 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | |||
JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts12, @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #3 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #3 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #2 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #2 | |||
@A: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA ;hides 'NOP' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA ;hides 'NOP' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
|} | |||
=== 42 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts12 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts12, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>ROL $00,X | |||
ROR $00,X | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #2 | |||
@X: | |||
JSR @rts12 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #2 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #5 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 43 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #7 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #7 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #8 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts12 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
PLA | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts12</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
PHA | |||
PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #3 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #3 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #2 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
|} | |||
=== 44 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #3 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #3 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts14 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #5 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #5 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
|} | |||
=== 45 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
PHA | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
PHA | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #7 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #7 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts12 | |||
JSR @rts12 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts12, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 46 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #9 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #9 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts14 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #2 | |||
@Y: | |||
JSR @rts14 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #2 | |||
@X: | |||
JSR @rts14 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
PLA | |||
PLA | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
JSR @rts12 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @rts12, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
PHA | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #3 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #2 | |||
@Y: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #2 | |||
@X: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #3 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 47 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #7 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
PHA | |||
JSR @rts15 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
PHA | |||
JSR @rts15 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N; and requires @rts15 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
LDY #3 | |||
@Y: | |||
TSX | |||
PLA | |||
TXS | |||
DEY | |||
BNE @Y | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #3 | |||
@Y: | |||
TSX | |||
PLA | |||
TXS | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #2 | |||
@Y: | |||
PHA | |||
PHA | |||
JSR @rts12 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #2 | |||
@X: | |||
PHA | |||
PHA | |||
JSR @rts12 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N; and requires @rts12 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #6 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 48 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #8 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #8 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #9 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #3 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>BIT $00 | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and V; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
JSR @rts14 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>STA @zptemp | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @zptemp, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP $00 | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #2 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #2 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #2 | |||
@A: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #2 | |||
@A: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA ;hides 'NOP' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
|} | |||
=== 49 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @rts14, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $4848 ;hides two 'PHA's | |||
JSR @rts12 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C; and requires @rts12, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
NOP | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts14</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
|} | |||
=== 50 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #7 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #7 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #6 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #6 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #8 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #8 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts14 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>NOP | |||
PHA | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #3 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 51 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #10 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #10 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #6 | |||
@A: | |||
PHA | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #4 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PLP | |||
JSR @rts14 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Requires @rts14, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
PHA | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers S; and requires @rts15 | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #5 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 52 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
JSR @rts12 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #7 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PLA | |||
PLA | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PLA | |||
PLA | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #8 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
ROL $00,X | |||
ROR $00,X | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
ROL $00,X | |||
ROR $00,X | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #7 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 53 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #9 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #9 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #10 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PLA | |||
PLA | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15</nowiki></pre> || style="padding:2px" | Clobbers A, S, and Z&N; and requires @rts15 | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
JSR @rts12 | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @rts12, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
JSR @rts12 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @rts12, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #3 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 54 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #7 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #7 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
LDY #3 | |||
@Y: | |||
TSX | |||
PLA | |||
TXS | |||
DEY | |||
BNE @Y | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X, and Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #2 | |||
@X: | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #2 | |||
@Y: | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y; and requires @rts14 | |||
|- | |||
|} | |||
=== 55 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
ADC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #9 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #9 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
BIT $00 | |||
JSR @rts15 | |||
JSR @rts15 | |||
JSR @rts15 | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #3 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #2 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|15 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #2 | |||
@A: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 56 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
JSR @rts15 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @rts15, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
.byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | |||
NOP | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @zptemp, @rts14, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
PHA | |||
JSR @rts12 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C; and requires @rts12, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $48,X ;hides 'PHA' | |||
PHA | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C; and requires @rts14, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @rts14, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @rts14, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 57 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #7 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #7 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #9 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #8 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 58 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #10 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #10 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #11 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #4 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
NOP | |||
PHP | |||
PLP | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|15 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #3 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
|} | |||
=== 59 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | |||
LDY #6 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y | |||
TXS</nowiki></pre> || style="padding:2px" | Clobbers A, X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #8 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #7 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #3 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #3 | |||
@X: | |||
JSR @rts12 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #7 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #8 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #3 | |||
@Y: | |||
ROL $00,X | |||
ROR $00,X | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #3 | |||
@X: | |||
ROL $00,X | |||
ROR $00,X | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 60 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #10 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #10 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
JSR @rts12 | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts12, and support for unofficial opcodes | |||
|- | |||
|} | |||
=== 61 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #12 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #12 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
PHA | |||
ADC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP $00 | |||
ADC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #7 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #7 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 62 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #10 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #6 | |||
@Y: | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
ADC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
ADC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #9 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 63 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #11 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #11 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #12 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #3 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
JSR @rts15 | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @rts15, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
JSR @rts15 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @rts15, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #3 | |||
@Y: | |||
ROL $00,X | |||
ROR $00,X | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
.byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | |||
NOP | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @zptemp, @rts14, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
.byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | |||
NOP | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @zptemp, @rts14, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts14, and support for unofficial opcodes | |||
|- | |||
|} | |||
=== 64 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #9 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #9 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #8 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #8 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #9 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
|} | |||
=== 65 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
LDA $00 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
LDA $00 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
BIT $00 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, Z&N, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
BIT $00 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, Z&N, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
STA @zptemp | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
STA @zptemp | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
NOP $00 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
NOP $00 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
JMP *+3 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
JMP *+3 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #11 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #11 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 66 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #13 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #13 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #8 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #8 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #7 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 67 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
PHA | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
PHA | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #8 | |||
@A: | |||
PHA | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #11 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #10 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 68 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #12 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #12 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #13 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #8 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP $00 | |||
ADC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP $00 | |||
ADC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #7 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TXA | |||
PHA | |||
LDX #7 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #6 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 69 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
JSR @rts12 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | |||
LDY #8 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y | |||
TXS</nowiki></pre> || style="padding:2px" | Clobbers X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
PLA | |||
PLA | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
PLA | |||
PLA | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
ROL $00,X | |||
ROR $00,X | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
ROL $00,X | |||
ROR $00,X | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #6 | |||
@A: | |||
PHA | |||
PHA | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #10 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #10 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
ADC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
|} | |||
=== 70 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #12 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #12 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PHA | |||
JSR @rts15 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PHA | |||
JSR @rts15 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N; and requires @rts15 | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
BIT $00 | |||
JSR @rts15 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, Z&N, and V; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
BIT $00 | |||
JSR @rts15 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, Z&N, and V; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
STA @zptemp | |||
JSR @rts15 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @zptemp, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
STA @zptemp | |||
JSR @rts15 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @zptemp, and @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
PHA | |||
PHA | |||
JSR @rts12 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
PHA | |||
PHA | |||
JSR @rts12 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
NOP $00 | |||
JSR @rts15 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts15, and support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
NOP $00 | |||
JSR @rts15 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts15, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #3 | |||
@X: | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #3 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 | |||
JSR @rts15 | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts15, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|15 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #3 | |||
@Y: | |||
ROL $00,X | |||
ROR $00,X | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #130 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
.byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' | |||
NOP | |||
JSR @rts14 | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @zptemp, @rts14, and support for unofficial opcodes | |||
|- | |||
!colspan="2"|16 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #4 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 71 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #14 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #14 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #9 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #9 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts12 | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @rts12 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 72 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #12 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #8 | |||
@Y: | |||
BIT $00 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #8 | |||
@X: | |||
BIT $00 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #11 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 73 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #9 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #9 | |||
@X: | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #13 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #13 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #14 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #8 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 74 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #6 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #11 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TXA | |||
PHA | |||
LDX #11 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
|} | |||
=== 75 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #9 | |||
@A: | |||
PHA | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #13 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #13 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #8 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP $00 | |||
ADC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TXA | |||
PHA | |||
LDX #7 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 76 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #15 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #15 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
JSR @rts12 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
JSR @rts12 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TSX | |||
LDY #8 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y | |||
TXS | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X, and Y | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #8 | |||
@X: | |||
LDA $00 | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
ROL $00,X | |||
ROR $00,X | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
ROL $00,X | |||
ROR $00,X | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #10 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 77 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TSX | |||
LDY #9 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y | |||
TXS</nowiki></pre> || style="padding:2px" | Clobbers X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
JSR @rts14 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
JSR @rts14 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #13 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #4 | |||
@X: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #4 | |||
@Y: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #12 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 78 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #14 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #14 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #15 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts12 | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts12 | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @rts12 | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
ROL $00,X | |||
ROR $00,X | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
|} | |||
=== 79 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
PLA | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
PLA | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
TSX | |||
PLA | |||
TXS | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
NOP | |||
PHA | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
NOP | |||
PHA | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #6 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
PHA | |||
PHA | |||
ADC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
NOP | |||
NOP | |||
ADC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #12 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #12 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
|} | |||
=== 80 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #11 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #14 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #14 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 81 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #16 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #16 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
PHA | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
BIT $00 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, C, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
STA @zptemp | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
NOP $00 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
JMP *+3 | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TXA | |||
PHA | |||
LDX #11 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 82 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #9 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #9 | |||
@X: | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #9 | |||
@Y: | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #9 | |||
@X: | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #14 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #13 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 83 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #15 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #15 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #16 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #8 | |||
@X: | |||
LDA $00 | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TXA | |||
PHA | |||
LDX #8 | |||
@X: | |||
LDA $00 | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #6 | |||
@A: | |||
NOP | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 84 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TSX | |||
LDY #9 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y | |||
TXS | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X, and Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
JSR @rts14 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
JSR @rts14 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y; and requires @rts14 | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #13 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TXA | |||
PHA | |||
LDX #13 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #4 | |||
@Y: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #4 | |||
@X: | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
|} | |||
=== 85 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #12 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #12 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #11 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #11 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #15 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #15 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts12 | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts12 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
!colspan="2"|15 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
ROL $00,X | |||
ROR $00,X | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 86 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #17 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #17 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #6 | |||
@Y: | |||
TSX | |||
PLA | |||
TXS | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Y | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #6 | |||
@Y: | |||
NOP | |||
NOP | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #6 | |||
@X: | |||
NOP | |||
NOP | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
NOP | |||
NOP | |||
ADC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
NOP | |||
NOP | |||
ADC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #12 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 87 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #12 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #15 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #11 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #11 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #14 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 88 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #16 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #16 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #17 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
BIT $00 | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
BIT $00 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, C, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
STA @zptemp | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
NOP $00 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
JMP *+3 | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|16 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #3 | |||
@X: | |||
LDA $00 | |||
JSR @rts15 | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N; and requires @rts15 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #3 | |||
@X: | |||
NOP | |||
NOP | |||
JSR @rts14 | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N; and requires @rts14 | |||
|- | |||
!colspan="2"|17 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #3 | |||
@Y: | |||
NOP | |||
NOP | |||
PHP | |||
PLP | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
|} | |||
=== 89 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
LDA $00 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
LDA $00 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
BIT $00 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, Z&N, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
BIT $00 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, Z&N, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
STA @zptemp | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
STA @zptemp | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
NOP $00 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
NOP $00 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
JMP *+3 | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
JMP *+3 | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #9 | |||
@Y: | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #9 | |||
@X: | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
NOP | |||
NOP | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #11 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #14 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #14 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
|} | |||
=== 90 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #16 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #16 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TSX | |||
LDY #6 | |||
@Y: | |||
PLA | |||
PLA | |||
DEY | |||
BNE @Y | |||
TXS | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers X, Y, and Z&N | |||
|- | |||
!colspan="2"|15 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TXA | |||
PHA | |||
LDX #8 | |||
@X: | |||
LDA $00 | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 91 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #18 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #18 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $48 ;hides 'PHA' | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #11 | |||
@A: | |||
PHA | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #11 | |||
@A: | |||
BIT $00 | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, C, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #11 | |||
@A: | |||
STA @zptemp | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #11 | |||
@A: | |||
JMP *+3 | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TXA | |||
PHA | |||
LDX #13 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 92 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #13 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #13 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #12 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #12 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #16 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #15 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 93 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #17 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #17 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #18 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #9 | |||
@Y: | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|14 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #4 | |||
@A: | |||
JSR @rts14 | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires @rts14 | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
CLC | |||
LDA #250 | |||
@A = * - 1 | |||
; ^ Hides !NOP | |||
NOP | |||
NOP | |||
NOP | |||
ADC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
|} | |||
=== 94 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #13 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #12 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #3 | |||
@Y: | |||
LDX #5 | |||
@X: | |||
DEX | |||
BNE @X | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers X, Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #12 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #15 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #11 | |||
@A: | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 95 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #17 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #17 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
BIT $00 | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 96 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|5 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #19 | |||
@Y: | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #19 | |||
@X: | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #11 | |||
@Y: | |||
BIT $00 | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #11 | |||
@X: | |||
BIT $00 | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
!colspan="2"|10 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TYA | |||
PHA | |||
LDY #12 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
NOP | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #136 | |||
@A = * - 1 | |||
; ^ Hides DEY | |||
NOP | |||
NOP | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TXA | |||
PHA | |||
LDX #11 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
TYA | |||
PHA | |||
LDY #14 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 97 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #12 | |||
@Y: | |||
PHA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #12 | |||
@X: | |||
PHA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #8 | |||
@Y: | |||
PHP | |||
PLP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #8 | |||
@X: | |||
PHP | |||
PLP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>TXA | |||
PHA | |||
LDX #17 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLA | |||
TAX</nowiki></pre> || style="padding:2px" | Clobbers A, and Z&N | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #16 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 98 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #18 | |||
@X: | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #18 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #19 | |||
@A: | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #11 | |||
@A: | |||
BIT $00 | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #11 | |||
@A: | |||
BIT $00 | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, C, and V | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #11 | |||
@A: | |||
STA @zptemp | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires @zptemp | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA,X ;hides 'NOP' | |||
SBC #1 | |||
BMI @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|12 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #11 | |||
@A: | |||
JMP *+3 | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
PHA | |||
SEC | |||
LDA #9 | |||
@A: | |||
NOP | |||
NOP | |||
SBC #1 | |||
BNE @A | |||
PLA | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers nothing, requires nothing | |||
|- | |||
|} | |||
=== 99 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #14 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #14 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
!colspan="2"|8 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDX #13 | |||
@X: | |||
NOP | |||
DEX | |||
BNE @X | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers X | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
LDY #13 | |||
@Y: | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers Y | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #12 | |||
@A: | |||
PHA | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, S, Z&N, and C | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #8 | |||
@A: | |||
PHP | |||
PLP | |||
SBC #1 | |||
BNE @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
SBC #1 | |||
BMI @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A; and requires support for unofficial opcodes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EA44 ;hides 'NOP zp' | |||
SBC #1 | |||
BMI @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|11 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #16 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
TYA | |||
PHA | |||
LDY #16 | |||
@Y: | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
|} | |||
=== 100 cycles === | |||
{| class="wikitable" | |||
!colspan="2"|6 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
PLA | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers A, Y, S, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
PLA | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers A, X, S, and Z&N | |||
|- | |||
!colspan="2"|7 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDY #11 | |||
@Y: | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y</nowiki></pre> || style="padding:2px" | Clobbers Y, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>LDX #11 | |||
@X: | |||
NOP | |||
NOP | |||
DEX | |||
BNE @X</nowiki></pre> || style="padding:2px" | Clobbers X, and Z&N | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>SEC | |||
LDA #137 | |||
@A = * - 1 | |||
; ^ Hides !NOP #imm | |||
NOP $EAEA ;hides two 'NOP's | |||
SBC #1 | |||
BMI @A</nowiki></pre> || style="padding:2px" | Clobbers A, Z&N, and C; and requires support for unofficial opcodes | |||
|- | |||
!colspan="2"|9 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHP | |||
SEC | |||
LDA #18 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLP</nowiki></pre> || style="padding:2px" | Clobbers A | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
SEC | |||
LDA #18 | |||
@A: | |||
SBC #1 | |||
BNE @A | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N, and C | |||
|- | |||
!colspan="2"|13 bytes | |||
|- | |||
| style="padding:2px" |<pre style="margin:2px;padding:3px"><nowiki>PHA | |||
TYA | |||
PHA | |||
LDY #9 | |||
@Y: | |||
NOP | |||
NOP | |||
DEY | |||
BNE @Y | |||
PLA | |||
TAY | |||
PLA</nowiki></pre> || style="padding:2px" | Clobbers Z&N | |||
|- | |- | ||
|} | |} |
Revision as of 01:15, 14 March 2016
Delay code
Shortest possible CPU code that creates N cycles of delay, depending on constraints.
All branch instructions assume that no page wrap occurs.
Explanations on the requirements:
- @zp_temp means you have a zeropage address that you can write random data into.
- @rts12 means you know a memory address that contains byte $60 (
RTS
). - @rts14 means you know a memory address that contains a harmless 2-cycle instruction that fits your constraints (such as
CLC
,LDA #0
, orNOP
), followed byRTS
. - @rts15 means you know a memory address that contains a
JMP
that jumps to another location that containsRTS
. - Alternatively, @rts15 means you know a memory address that contains a harmless 3-cycle instruction that fits your constraints (such as
LDA $00
), followed byRTS
. - @A, @X, @Y are local labels.
2 cycles
1 bytes | |
---|---|
NOP |
Clobbers nothing, requires nothing |
3 cycles
1 bytes | |
---|---|
PHA |
Clobbers S |
2 bytes | |
LDA $00 |
Clobbers A, and Z&N |
BIT $00 |
Clobbers Z&N, and V |
STA @zptemp |
Requires @zptemp |
NOP $00 |
Requires support for unofficial opcodes |
3 bytes | |
JMP *+3 |
Clobbers nothing, requires nothing |
4 cycles
1 bytes | |
---|---|
PLA |
Clobbers A, S, and Z&N |
2 bytes | |
NOP NOP |
Clobbers nothing, requires nothing |
5 cycles
2 bytes | |
---|---|
NOP PHA |
Clobbers S |
3 bytes | |
NOP LDA $00 |
Clobbers A, and Z&N |
NOP BIT $00 |
Clobbers Z&N, and V |
NOP STA @zptemp |
Requires @zptemp |
NOP NOP $00 |
Requires support for unofficial opcodes |
4 bytes | |
NOP JMP *+3 |
Clobbers nothing, requires nothing |
6 cycles
2 bytes | |
---|---|
PHA PHA |
Clobbers S |
3 bytes | |
NOP NOP NOP |
Clobbers nothing, requires nothing |
7 cycles
2 bytes | |
---|---|
PHP PLP |
Clobbers nothing, requires nothing |
8 cycles
2 bytes | |
---|---|
PLA PLA |
Clobbers A, S, and Z&N |
3 bytes | |
TSX PLA TXS |
Clobbers A, X, and Z&N |
NOP PHA PHA |
Clobbers S |
4 bytes | |
NOP NOP NOP NOP |
Clobbers nothing, requires nothing |
9 cycles
3 bytes | |
---|---|
NOP PHP PLP |
Clobbers nothing, requires nothing |
10 cycles
3 bytes | |
---|---|
PHA PHP PLP |
Clobbers S |
4 bytes | |
PHP BIT $00 PLP |
Clobbers nothing, requires nothing |
11 cycles
3 bytes | |
---|---|
PHA PLA PLA |
Clobbers A, S, and Z&N |
4 bytes | |
NOP NOP PHP PLP |
Clobbers nothing, requires nothing |
12 cycles
3 bytes | |
---|---|
JSR @rts12 |
Requires @rts12 |
PLA PLA PLA |
Clobbers A, S, and Z&N |
4 bytes | |
ROL $00,X ROR $00,X |
Clobbers Z&N |
NOP PHA PHP PLP |
Clobbers S |
5 bytes | |
NOP PHP BIT $00 PLP |
Clobbers nothing, requires nothing |
13 cycles
4 bytes | |
---|---|
PHA PHA PHP PLP |
Clobbers S |
5 bytes | |
NOP NOP NOP PHP PLP |
Clobbers nothing, requires nothing |
14 cycles
3 bytes | |
---|---|
JSR @rts14 |
Requires @rts14 |
4 bytes | |
PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
15 cycles
3 bytes | |
---|---|
JSR @rts15 |
Requires @rts15 |
4 bytes | |
PHA JSR @rts12 |
Clobbers S; and requires @rts12 |
PHA PLA PLA PLA |
Clobbers A, S, and Z&N |
5 bytes | |
LDA $00 JSR @rts12 |
Clobbers A, and Z&N; and requires @rts12 |
PHA TSX PLA TXS PLA |
Clobbers X, and Z&N |
PHP TSX PLA TXS PLP |
Clobbers A, and X |
BIT $00 JSR @rts12 |
Clobbers Z&N, and V; and requires @rts12 |
STA @zptemp JSR @rts12 |
Requires @zptemp, and @rts12 |
NOP PHA PHA PHP PLP |
Clobbers S |
NOP $00 JSR @rts12 |
Requires @rts12, and support for unofficial opcodes |
6 bytes | |
NOP NOP NOP NOP PHP PLP |
Clobbers nothing, requires nothing |
16 cycles
4 bytes | |
---|---|
NOP JSR @rts14 |
Requires @rts14 |
PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
5 bytes | |
NOP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
17 cycles
4 bytes | |
---|---|
NOP JSR @rts15 |
Requires @rts15 |
PHA JSR @rts14 |
Clobbers S; and requires @rts14 |
5 bytes | |
LDA $00 JSR @rts14 |
Clobbers A, and Z&N; and requires @rts14 |
BIT $00 JSR @rts14 |
Clobbers Z&N, and V; and requires @rts14 |
STA @zptemp JSR @rts14 |
Requires @zptemp, and @rts14 |
PHA PHP PLP PHP PLP |
Clobbers S |
NOP $00 JSR @rts14 |
Requires @rts14, and support for unofficial opcodes |
6 bytes | |
PHP PLP PHP BIT $00 PLP |
Clobbers nothing, requires nothing |
18 cycles
4 bytes | |
---|---|
PHA JSR @rts15 |
Clobbers S; and requires @rts15 |
PLA JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
5 bytes | |
LDA $00 JSR @rts15 |
Clobbers A, and Z&N; and requires @rts15 |
BIT $00 JSR @rts15 |
Clobbers Z&N, and V; and requires @rts15 |
NOP NOP JSR @rts14 |
Requires @rts14 |
STA @zptemp JSR @rts15 |
Requires @zptemp, and @rts15 |
PHA PHA JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP $00 JSR @rts15 |
Requires @rts15, and support for unofficial opcodes |
6 bytes | |
NOP NOP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
19 cycles
4 bytes | |
---|---|
PLA JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
5 bytes | |
PHP PLP JSR @rts12 |
Requires @rts12 |
NOP NOP JSR @rts15 |
Requires @rts15 |
PHA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP PHA JSR @rts14 |
Clobbers S; and requires @rts14 |
6 bytes | |
PHP ROL $00,X ROR $00,X PLP |
Clobbers nothing, requires nothing |
20 cycles
5 bytes | |
---|---|
NOP PHA JSR @rts15 |
Clobbers S; and requires @rts15 |
PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
PHA PHA JSR @rts14 |
Clobbers S; and requires @rts14 |
6 bytes | |
NOP LDA $00 JSR @rts15 |
Clobbers A, and Z&N; and requires @rts15 |
TSX PLA PLA PLA PLA TXS |
Clobbers A, X, and Z&N |
NOP BIT $00 JSR @rts15 |
Clobbers Z&N, and V; and requires @rts15 |
NOP NOP NOP JSR @rts14 |
Requires @rts14 |
NOP STA @zptemp JSR @rts15 |
Requires @zptemp, and @rts15 |
PHA PHA PHP PLP PHP PLP |
Clobbers S |
NOP NOP $00 JSR @rts15 |
Requires @rts15, and support for unofficial opcodes |
7 bytes | |
NOP NOP NOP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
21 cycles
5 bytes | |
---|---|
LDY #4 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #4 @X: DEX BNE @X |
Clobbers X, and Z&N |
PHP PLP JSR @rts14 |
Requires @rts14 |
PHA PHA JSR @rts15 |
Clobbers S; and requires @rts15 |
6 bytes | |
PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
22 cycles
5 bytes | |
---|---|
PHP PLP JSR @rts15 |
Requires @rts15 |
PLA PLA JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
6 bytes | |
LDY #3 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #3 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
PHA PHP PLP JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP PHA PHA JSR @rts14 |
Clobbers S; and requires @rts14 |
7 bytes | |
PHP BIT $00 PLP JSR @rts12 |
Requires @rts12 |
PHP PHA TSX PLA TXS PLA PLP |
Clobbers X |
NOP NOP NOP NOP JSR @rts14 |
Requires @rts14 |
NOP PHA PHA PHP PLP PHP PLP |
Clobbers S |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
8 bytes | |
NOP NOP NOP NOP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
23 cycles
5 bytes | |
---|---|
PLA PLA JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
6 bytes | |
TSX PLA TXS JSR @rts15 |
Clobbers A, X, and Z&N; and requires @rts15 |
NOP PHP PLP JSR @rts14 |
Requires @rts14 |
NOP PHA PHA JSR @rts15 |
Clobbers S; and requires @rts15 |
PHA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
7 bytes | |
NOP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
24 cycles
6 bytes | |
---|---|
JSR @rts12 JSR @rts12 |
Requires @rts12 |
NOP PHP PLP JSR @rts15 |
Requires @rts15 |
PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
PHA PHP PLP JSR @rts14 |
Clobbers S; and requires @rts14 |
7 bytes | |
TSX PLA PLA PLA PLA PLA TXS |
Clobbers A, X, and Z&N |
PHP BIT $00 PLP JSR @rts14 |
Requires @rts14 |
PHA PHP PLP PHP PLP PHP PLP |
Clobbers S |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires @zptemp, and support for unofficial opcodes |
8 bytes | |
PHP PLP PHP PLP PHP BIT $00 PLP |
Clobbers nothing, requires nothing |
25 cycles
6 bytes | |
---|---|
PHA PHP PLP JSR @rts15 |
Clobbers S; and requires @rts15 |
LDY #3 @Y: PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #3 @X: PHA DEX BNE @X |
Clobbers X, S, and Z&N |
PHA PLA PLA JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
7 bytes | |
PHP BIT $00 PLP JSR @rts15 |
Requires @rts15 |
LDY #2 @Y: PHP PLP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #2 @X: PHP PLP DEX BNE @X |
Clobbers X, and Z&N |
NOP NOP PHP PLP JSR @rts14 |
Requires @rts14 |
PHA PHA PHP PLP JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PHA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
8 bytes | |
NOP NOP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
26 cycles
5 bytes | |
---|---|
LDY #5 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #5 @X: DEX BNE @X |
Clobbers X, and Z&N |
6 bytes | |
JSR @rts12 JSR @rts14 |
Requires @rts12, and @rts14 |
PHA PLA PLA JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
PLA PLA PLA JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
7 bytes | |
NOP JSR @rts12 JSR @rts12 |
Requires @rts12 |
NOP NOP PHP PLP JSR @rts15 |
Requires @rts15 |
ROL $00,X ROR $00,X JSR @rts14 |
Clobbers Z&N; and requires @rts14 |
NOP PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP PHA PHP PLP JSR @rts14 |
Clobbers S; and requires @rts14 |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
8 bytes | |
PHP PLP PHP ROL $00,X ROR $00,X PLP |
Clobbers nothing, requires nothing |
27 cycles
6 bytes | |
---|---|
JSR @rts12 JSR @rts15 |
Requires @rts12, and @rts15 |
PLA PLA PLA JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
7 bytes | |
ROL $00,X ROR $00,X JSR @rts15 |
Clobbers Z&N; and requires @rts15 |
PHA JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PHA PHP PLP JSR @rts15 |
Clobbers S; and requires @rts15 |
PHA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
PHA PHA PHP PLP JSR @rts14 |
Clobbers S; and requires @rts14 |
8 bytes | |
NOP PHP BIT $00 PLP JSR @rts15 |
Requires @rts15 |
LDA $00 JSR @rts12 JSR @rts12 |
Clobbers A, and Z&N; and requires @rts12 |
PHA TSX PLA PLA PLA PLA TXS PLA |
Clobbers X, and Z&N |
PHP TSX PLA PLA PLA PLA TXS PLP |
Clobbers A, and X |
BIT $00 JSR @rts12 JSR @rts12 |
Clobbers Z&N, and V; and requires @rts12 |
NOP NOP NOP PHP PLP JSR @rts14 |
Requires @rts14 |
STA @zptemp JSR @rts12 JSR @rts12 |
Requires @zptemp, and @rts12 |
PHA PHA PHP PLP PHP PLP PHP PLP |
Clobbers S |
NOP $00 JSR @rts12 JSR @rts12 |
Requires @rts12, and support for unofficial opcodes |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
9 bytes | |
NOP NOP NOP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
28 cycles
6 bytes | |
---|---|
JSR @rts14 JSR @rts14 |
Requires @rts14 |
LDX #3 @X: PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
LDY #3 @Y: PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
7 bytes | |
PHP LDX #4 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #4 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #5 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
PHA PHA PHP PLP JSR @rts15 |
Clobbers S; and requires @rts15 |
PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
8 bytes | |
PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
29 cycles
6 bytes | |
---|---|
LDX #4 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #4 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
JSR @rts14 JSR @rts15 |
Requires @rts14, and @rts15 |
7 bytes | |
PHP PLP PHP PLP JSR @rts15 |
Requires @rts15 |
PHA JSR @rts12 JSR @rts14 |
Clobbers S; and requires @rts12, and @rts14 |
PHA PLA PLA PLA JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
8 bytes | |
PHP LDY #3 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #3 @X: NOP DEX BNE @X PLP |
Clobbers X |
LDA $00 JSR @rts12 JSR @rts14 |
Clobbers A, and Z&N; and requires @rts12, and @rts14 |
BIT $00 JSR @rts12 JSR @rts14 |
Clobbers Z&N, and V; and requires @rts12, and @rts14 |
STA @zptemp JSR @rts12 JSR @rts14 |
Requires @zptemp, @rts12, and @rts14 |
NOP PHA JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PHA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP PHA PHA PHP PLP JSR @rts14 |
Clobbers S; and requires @rts14 |
NOP $00 JSR @rts12 JSR @rts14 |
Requires @rts12, @rts14, and support for unofficial opcodes |
9 bytes | |
PHP PLP PHP BIT $00 PLP JSR @rts12 |
Requires @rts12 |
NOP NOP NOP NOP PHP PLP JSR @rts14 |
Requires @rts14 |
NOP PHA PHA PHP PLP PHP PLP PHP PLP |
Clobbers S |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
NOP NOP NOP NOP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
30 cycles
6 bytes | |
---|---|
JSR @rts15 JSR @rts15 |
Requires @rts15 |
7 bytes | |
NOP JSR @rts14 JSR @rts14 |
Requires @rts14 |
8 bytes | |
PHA PHA JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
9 bytes | |
NOP PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
31 cycles
5 bytes | |
---|---|
LDY #6 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #6 @X: DEX BNE @X |
Clobbers X, and Z&N |
7 bytes | |
NOP JSR @rts14 JSR @rts15 |
Requires @rts14, and @rts15 |
PLA PLA PLA PLA JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
PHA JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
8 bytes | |
PHP PLP JSR @rts12 JSR @rts12 |
Requires @rts12 |
NOP PHP PLP PHP PLP JSR @rts15 |
Requires @rts15 |
SEC LDA #4 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
LDA $00 JSR @rts14 JSR @rts14 |
Clobbers A, and Z&N; and requires @rts14 |
BIT $00 JSR @rts14 JSR @rts14 |
Clobbers Z&N, and V; and requires @rts14 |
STA @zptemp JSR @rts14 JSR @rts14 |
Requires @zptemp, and @rts14 |
PHA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP $00 JSR @rts14 JSR @rts14 |
Requires @rts14, and support for unofficial opcodes |
9 bytes | |
PHP TSX PLA PLA PLA PLA PLA TXS PLP |
Clobbers A, and X |
JMP *+3 JSR @rts14 JSR @rts14 |
Requires @rts14 |
PHA PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers S |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' SBC #1 BMI @A PLP |
Clobbers A; and requires @zptemp, and support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires @zptemp, and support for unofficial opcodes |
10 bytes | |
PHP PLP PHP PLP PHP PLP PHP BIT $00 PLP |
Clobbers nothing, requires nothing |
32 cycles
7 bytes | |
---|---|
NOP JSR @rts15 JSR @rts15 |
Requires @rts15 |
PLA JSR @rts14 JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
8 bytes | |
TSX LDY #3 @Y: PLA DEY BNE @Y TXS |
Clobbers A, X, Y, and Z&N |
NOP NOP JSR @rts14 JSR @rts14 |
Requires @rts14 |
PLA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
9 bytes | |
TYA PHA LDY #4 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
PHP LDX #2 @X: PHP PLP DEX BNE @X PLP |
Clobbers X |
PHP LDY #2 @Y: PHP PLP DEY BNE @Y PLP |
Clobbers Y |
NOP PHA PHA JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
10 bytes | |
NOP NOP PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
33 cycles
6 bytes | |
---|---|
LDY #4 @Y: PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #4 @X: PHA DEX BNE @X |
Clobbers X, S, and Z&N |
7 bytes | |
PHP LDX #5 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #5 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #6 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
PHA JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
8 bytes | |
LDA $00 JSR @rts15 JSR @rts15 |
Clobbers A, and Z&N; and requires @rts15 |
BIT $00 JSR @rts15 JSR @rts15 |
Clobbers Z&N, and V; and requires @rts15 |
PHP PLP JSR @rts12 JSR @rts14 |
Requires @rts12, and @rts14 |
NOP NOP JSR @rts14 JSR @rts15 |
Requires @rts14, and @rts15 |
STA @zptemp JSR @rts15 JSR @rts15 |
Requires @zptemp, and @rts15 |
NOP PHA JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
NOP $00 JSR @rts15 JSR @rts15 |
Requires @rts15, and support for unofficial opcodes |
9 bytes | |
NOP PHP PLP JSR @rts12 JSR @rts12 |
Requires @rts12 |
JMP *+3 JSR @rts15 JSR @rts15 |
Requires @rts15 |
JSR @rts14 PHP ROL $00,X ROR $00,X PLP |
Requires @rts14 |
NOP PHA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
PHP PLP PHP PLP PHP ROL $00,X ROR $00,X PLP |
Clobbers nothing, requires nothing |
34 cycles
7 bytes | |
---|---|
PLA JSR @rts15 JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
LDY #3 @Y: PHA PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #3 @X: PHA PHA DEX BNE @X |
Clobbers X, S, and Z&N |
8 bytes | |
NOP NOP JSR @rts15 JSR @rts15 |
Requires @rts15 |
LDX #3 @X: NOP NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #3 @Y: NOP NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
PHA PHA JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
9 bytes | |
NOP NOP NOP JSR @rts14 JSR @rts14 |
Requires @rts14 |
PHA PHP PLP JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PLA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA ;hides 'NOP' PHP PLP SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
PHP BIT $00 PLP JSR @rts12 JSR @rts12 |
Requires @rts12 |
PHP PHA TSX PLA PLA PLA PLA TXS PLA PLP |
Clobbers X |
PHA PHA PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers S |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
NOP NOP NOP PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
35 cycles
8 bytes | |
---|---|
LDY #2 @Y: JSR @rts12 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts12 |
LDX #2 @X: JSR @rts12 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts12 |
PHP PLP JSR @rts14 JSR @rts14 |
Requires @rts14 |
NOP PHA JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
LDX #2 @X: PLA PLA PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
LDY #2 @Y: PLA PLA PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
SEC LDA #4 @A: PHA SBC #1 BNE @A |
Clobbers A, S, Z&N, and C |
9 bytes | |
PHP SEC LDA #5 @A: SBC #1 BNE @A PLP |
Clobbers A |
LDX #2 @X: ROL $00,X ROR $00,X DEX BNE @X |
Clobbers X, and Z&N |
LDY #2 @Y: ROL $00,X ROR $00,X DEY BNE @Y |
Clobbers Y, and Z&N |
PHA SEC LDA #5 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
NOP BIT $00 JSR @rts15 JSR @rts15 |
Clobbers Z&N, and V; and requires @rts15 |
NOP STA @zptemp JSR @rts15 JSR @rts15 |
Requires @zptemp, and @rts15 |
NOP NOP $00 JSR @rts15 JSR @rts15 |
Requires @rts15, and support for unofficial opcodes |
10 bytes | |
PHP PLP PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
36 cycles
5 bytes | |
---|---|
LDY #7 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #7 @X: DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
PHP LDX #4 @X: NOP DEX BNE @X PLP |
Clobbers X |
PHP LDY #4 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
PHP PLP JSR @rts14 JSR @rts15 |
Requires @rts14, and @rts15 |
PHA PHA JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
PLA PLA JSR @rts14 JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
9 bytes | |
JSR @rts12 JSR @rts12 JSR @rts12 |
Requires @rts12 |
NOP NOP NOP JSR @rts15 JSR @rts15 |
Requires @rts15 |
PLA PLA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP PHA PHA JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' PHP PLP SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
SEC LDA #3 @A: NOP NOP NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
NOP NOP NOP NOP JSR @rts14 JSR @rts14 |
Requires @rts14 |
11 bytes | |
TYA PHA LDY #2 @Y: PHP PLP DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
NOP PHA PHA PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers S |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
37 cycles
6 bytes | |
---|---|
LDY #4 @Y: PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
LDX #4 @X: PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
7 bytes | |
LDX #3 @X: PHP PLP DEX BNE @X |
Clobbers X, and Z&N |
LDY #3 @Y: PHP PLP DEY BNE @Y |
Clobbers Y, and Z&N |
8 bytes | |
PHP PLP JSR @rts15 JSR @rts15 |
Requires @rts15 |
9 bytes | |
TYA PHA LDY #5 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
NOP PHP PLP JSR @rts14 JSR @rts14 |
Requires @rts14 |
10 bytes | |
PHA PHA PHP PLP JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
NOP PHP PLP PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers nothing, requires nothing |
38 cycles
7 bytes | |
---|---|
PHP LDY #6 @Y: DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #6 @X: DEX BNE @X PLP |
Clobbers X |
SEC LDA #7 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
8 bytes | |
PLA PLA JSR @rts15 JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
9 bytes | |
JSR @rts12 JSR @rts12 JSR @rts14 |
Requires @rts12, and @rts14 |
NOP PHP PLP JSR @rts14 JSR @rts15 |
Requires @rts14, and @rts15 |
NOP PHA PHA JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
PHA PHP PLP JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
10 bytes | |
NOP JSR @rts12 JSR @rts12 JSR @rts12 |
Requires @rts12 |
NOP NOP NOP NOP JSR @rts15 JSR @rts15 |
Requires @rts15 |
PHP SEC LDA #4 @A: NOP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #4 @A: NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
PHP BIT $00 PLP JSR @rts14 JSR @rts14 |
Requires @rts14 |
11 bytes | |
PHA PHP PLP PHP PLP PHP PLP PHP PLP PHP PLP |
Clobbers S |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' SBC #1 BMI @A PLA PLP |
Requires @zptemp, and support for unofficial opcodes |
39 cycles
8 bytes | |
---|---|
LDY #2 @Y: JSR @rts14 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts14 |
LDX #2 @X: JSR @rts14 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts14 |
9 bytes | |
NOP PHP PLP JSR @rts15 JSR @rts15 |
Requires @rts15 |
LDY #2 @Y: PHP PLP PHP PLP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #2 @X: PHP PLP PHP PLP DEX BNE @X |
Clobbers X, and Z&N |
SEC LDA #3 @A: PHP PLP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
PHA PLA PLA JSR @rts14 JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
10 bytes | |
PHP TSX LDY #3 @Y: PLA DEY BNE @Y TXS PLP |
Clobbers A, X, and Y |
NOP NOP PHP PLP JSR @rts14 JSR @rts14 |
Requires @rts14 |
PHA JSR @rts12 JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
PHA PLA PLA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
11 bytes | |
PHA TYA PHA LDY #4 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #4 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
STA @zptemp JSR @rts12 JSR @rts12 JSR @rts12 |
Requires @zptemp, and @rts12 |
NOP $00 JSR @rts12 JSR @rts12 JSR @rts12 |
Requires @rts12, and support for unofficial opcodes |
40 cycles
7 bytes | |
---|---|
LDY #3 @Y: PLA PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
LDX #3 @X: PLA PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
8 bytes | |
LDY #3 @Y: TSX PLA TXS DEY BNE @Y |
Clobbers A, X, Y, and Z&N |
LDY #3 @Y: NOP PHA PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #3 @X: NOP PHA PHA DEX BNE @X |
Clobbers X, S, and Z&N |
9 bytes | |
PHP SEC LDA #6 @A: SBC #1 BNE @A PLP |
Clobbers A |
LDY #3 @Y: NOP NOP NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #3 @X: NOP NOP NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
PHA SEC LDA #6 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
JSR @rts12 JSR @rts14 JSR @rts14 |
Requires @rts12, and @rts14 |
PHA PHP PLP JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
10 bytes | |
PHP BIT $00 PLP JSR @rts15 JSR @rts15 |
Requires @rts15 |
ROL $00,X ROR $00,X JSR @rts14 JSR @rts14 |
Clobbers Z&N; and requires @rts14 |
NOP PHA PHP PLP JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
11 bytes | |
NOP NOP JSR @rts12 JSR @rts12 JSR @rts12 |
Requires @rts12 |
NOP PHP BIT $00 PLP JSR @rts14 JSR @rts14 |
Requires @rts14 |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
41 cycles
5 bytes | |
---|---|
LDX #8 @X: DEX BNE @X |
Clobbers X, and Z&N |
LDY #8 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
9 bytes | |
JSR @rts12 JSR @rts14 JSR @rts15 |
Requires @rts12, @rts14, and @rts15 |
PHA PLA PLA JSR @rts15 JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
10 bytes | |
NOP NOP PHP PLP JSR @rts15 JSR @rts15 |
Requires @rts15 |
PHP LDY #3 @Y: NOP NOP NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #3 @X: NOP NOP NOP DEX BNE @X PLP |
Clobbers X |
SEC LDA #2 @A: JSR @rts14 SBC #1 BNE @A |
Clobbers A, Z&N, and C; and requires @rts14 |
PHA PHA PHP PLP JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP PHP PLP SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
SEC LDA #2 @A: PHP PLP PHP PLP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
NOP NOP NOP PHP PLP JSR @rts14 JSR @rts14 |
Requires @rts14 |
NOP PHA JSR @rts12 JSR @rts12 JSR @rts12 |
Clobbers S; and requires @rts12 |
NOP PHA PLA PLA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA ;hides 'NOP' PHP PLP SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA ;hides 'NOP' PHP PLP SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
12 bytes | |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
42 cycles
9 bytes | |
---|---|
JSR @rts12 JSR @rts15 JSR @rts15 |
Requires @rts12, and @rts15 |
TYA PHA LDY #6 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
JSR @rts14 JSR @rts14 JSR @rts14 |
Requires @rts14 |
10 bytes | |
ROL $00,X ROR $00,X JSR @rts15 JSR @rts15 |
Clobbers Z&N; and requires @rts15 |
PHP LDX #2 @X: JSR @rts12 DEX BNE @X PLP |
Clobbers X; and requires @rts12 |
PHP LDY #2 @Y: JSR @rts12 DEY BNE @Y PLP |
Clobbers Y; and requires @rts12 |
NOP PHA PHP PLP JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
11 bytes | |
PHP PHA SEC LDA #5 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
43 cycles
6 bytes | |
---|---|
LDY #6 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #6 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
7 bytes | |
PHP LDX #7 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #7 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #8 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
9 bytes | |
JSR @rts14 JSR @rts14 JSR @rts15 |
Requires @rts14, and @rts15 |
10 bytes | |
PHA PHA PHP PLP JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
PHA JSR @rts12 JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts12, and @rts14 |
PHA PLA PLA PLA JSR @rts14 JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
11 bytes | |
PHP PLP JSR @rts12 JSR @rts12 JSR @rts12 |
Requires @rts12 |
NOP NOP NOP PHP PLP JSR @rts15 JSR @rts15 |
Requires @rts15 |
PHA PLA PLA PLA PLA PLA PLA PLA PLA PLA PLA |
Clobbers A, S, and Z&N |
NOP PHA PHA PHP PLP JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' PHP PLP SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' PHP PLP SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
12 bytes | |
PHP SEC LDA #3 @A: NOP NOP NOP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #3 @A: NOP NOP NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHA TYA PHA LDY #2 @Y: PHP PLP DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
44 cycles
9 bytes | |
---|---|
PHP LDX #3 @X: PHP PLP DEX BNE @X PLP |
Clobbers X |
PHP LDY #3 @Y: PHP PLP DEY BNE @Y PLP |
Clobbers Y |
JSR @rts14 JSR @rts15 JSR @rts15 |
Requires @rts14, and @rts15 |
10 bytes | |
PHP PLP PHP PLP JSR @rts15 JSR @rts15 |
Requires @rts15 |
NOP JSR @rts14 JSR @rts14 JSR @rts14 |
Requires @rts14 |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP PHP PLP SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
PHA TYA PHA LDY #5 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #5 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
12 bytes | |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
45 cycles
7 bytes | |
---|---|
LDY #4 @Y: PHA PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #4 @X: PHA PHA DEX BNE @X |
Clobbers X, S, and Z&N |
8 bytes | |
LDY #4 @Y: NOP NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #4 @X: NOP NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
SEC LDA #6 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
9 bytes | |
JSR @rts15 JSR @rts15 JSR @rts15 |
Requires @rts15 |
PHP SEC LDA #7 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #7 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
10 bytes | |
PHA JSR @rts14 JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
11 bytes | |
PHP PLP JSR @rts12 JSR @rts12 JSR @rts14 |
Requires @rts12, and @rts14 |
BIT $00 JSR @rts14 JSR @rts14 JSR @rts14 |
Clobbers Z&N, and V; and requires @rts14 |
STA @zptemp JSR @rts14 JSR @rts14 JSR @rts14 |
Requires @zptemp, and @rts14 |
NOP $00 JSR @rts14 JSR @rts14 JSR @rts14 |
Requires @rts14, and support for unofficial opcodes |
12 bytes | |
PHP PHA SEC LDA #4 @A: NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
46 cycles
5 bytes | |
---|---|
LDY #9 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #9 @X: DEX BNE @X |
Clobbers X, and Z&N |
10 bytes | |
NOP JSR @rts14 JSR @rts15 JSR @rts15 |
Requires @rts14, and @rts15 |
PHP LDY #2 @Y: JSR @rts14 DEY BNE @Y PLP |
Clobbers Y; and requires @rts14 |
PHP LDX #2 @X: JSR @rts14 DEX BNE @X PLP |
Clobbers X; and requires @rts14 |
PLA PLA PLA PLA JSR @rts15 JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
PLA JSR @rts14 JSR @rts14 JSR @rts14 |
Clobbers A, S, and Z&N; and requires @rts14 |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' JSR @rts12 SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires @rts12, and support for unofficial opcodes |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 PHA PHP PLP SBC #1 BMI @A |
Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
NOP PHP PLP PHP PLP JSR @rts15 JSR @rts15 |
Requires @rts15 |
PHP SEC LDA #3 @A: PHP PLP SBC #1 BNE @A PLP |
Clobbers A |
PHP LDY #2 @Y: PHP PLP PHP PLP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #2 @X: PHP PLP PHP PLP DEX BNE @X PLP |
Clobbers X |
PHA SEC LDA #3 @A: PHP PLP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
NOP NOP JSR @rts14 JSR @rts14 JSR @rts14 |
Requires @rts14 |
13 bytes | |
PHP PHA TYA PHA LDY #4 @Y: DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
47 cycles
9 bytes | |
---|---|
TYA PHA LDY #7 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
LDY #2 @Y: PHA JSR @rts15 DEY BNE @Y |
Clobbers Y, S, and Z&N; and requires @rts15 |
LDX #2 @X: PHA JSR @rts15 DEX BNE @X |
Clobbers X, S, and Z&N; and requires @rts15 |
10 bytes | |
NOP JSR @rts15 JSR @rts15 JSR @rts15 |
Requires @rts15 |
PHA LDY #3 @Y: TSX PLA TXS DEY BNE @Y PLA |
Clobbers X, Y, and Z&N |
PHP LDY #3 @Y: TSX PLA TXS DEY BNE @Y PLP |
Clobbers A, X, and Y |
LDY #2 @Y: NOP NOP JSR @rts14 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts14 |
LDX #2 @X: NOP NOP JSR @rts14 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts14 |
LDY #2 @Y: PHA PHA JSR @rts12 DEY BNE @Y |
Clobbers Y, S, and Z&N; and requires @rts12 |
LDX #2 @X: PHA PHA JSR @rts12 DEX BNE @X |
Clobbers X, S, and Z&N; and requires @rts12 |
11 bytes | |
PHP PHA SEC LDA #6 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
48 cycles
7 bytes | |
---|---|
PHP LDY #8 @Y: DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #8 @X: DEX BNE @X PLP |
Clobbers X |
SEC LDA #9 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
10 bytes | |
PHA JSR @rts15 JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
11 bytes | |
TXA PHA LDX #3 @X: PHP PLP DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
BIT $00 JSR @rts15 JSR @rts15 JSR @rts15 |
Clobbers Z&N, and V; and requires @rts15 |
NOP NOP JSR @rts14 JSR @rts15 JSR @rts15 |
Requires @rts14, and @rts15 |
STA @zptemp JSR @rts15 JSR @rts15 JSR @rts15 |
Requires @zptemp, and @rts15 |
PHA PHA JSR @rts14 JSR @rts14 JSR @rts14 |
Clobbers S; and requires @rts14 |
NOP $00 JSR @rts15 JSR @rts15 JSR @rts15 |
Requires @rts15, and support for unofficial opcodes |
12 bytes | |
PHP SEC LDA #2 @A: JSR @rts14 SBC #1 BNE @A PLP |
Clobbers A; and requires @rts14 |
PHA SEC LDA #2 @A: JSR @rts14 SBC #1 BNE @A PLA |
Clobbers Z&N, and C; and requires @rts14 |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP PHP PLP SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP PHP PLP SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
13 bytes | |
PHP SEC LDA #2 @A: PHP PLP PHP PLP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #2 @A: PHP PLP PHP PLP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA ;hides 'NOP' PHP PLP SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
49 cycles
6 bytes | |
---|---|
LDY #6 @Y: PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #6 @X: PHA DEX BNE @X |
Clobbers X, S, and Z&N |
7 bytes | |
LDY #4 @Y: PHP PLP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #4 @X: PHP PLP DEX BNE @X |
Clobbers X, and Z&N |
10 bytes | |
PLA JSR @rts15 JSR @rts15 JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' JSR @rts14 SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires @rts14, and support for unofficial opcodes |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $4848 ;hides two 'PHA's JSR @rts12 SBC #1 BMI @A |
Clobbers A, S, Z&N, and C; and requires @rts12, and support for unofficial opcodes |
11 bytes | |
NOP NOP JSR @rts15 JSR @rts15 JSR @rts15 |
Requires @rts15 |
PHA TYA PHA LDY #6 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #6 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
PHP PLP JSR @rts14 JSR @rts14 JSR @rts14 |
Requires @rts14 |
50 cycles
6 bytes | |
---|---|
LDX #7 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #7 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
8 bytes | |
PHP LDY #6 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #6 @X: NOP DEX BNE @X PLP |
Clobbers X |
9 bytes | |
PHP SEC LDA #8 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #8 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHP PLP JSR @rts14 JSR @rts14 JSR @rts15 |
Requires @rts14, and @rts15 |
NOP PHA JSR @rts15 JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
13 bytes | |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' PHP PLP SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
14 bytes | |
PHP PHA SEC LDA #3 @A: NOP NOP NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
51 cycles
5 bytes | |
---|---|
LDY #10 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #10 @X: DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
SEC LDA #6 @A: PHA SBC #1 BNE @A |
Clobbers A, S, Z&N, and C |
9 bytes | |
SEC LDA #4 @A: PHP PLP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
PHP PLP JSR @rts14 JSR @rts15 JSR @rts15 |
Requires @rts14, and @rts15 |
PHA PHA JSR @rts15 JSR @rts15 JSR @rts15 |
Clobbers S; and requires @rts15 |
12 bytes | |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP PHP PLP SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP PHP PLP SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
13 bytes | |
PHP PHA TYA PHA LDY #5 @Y: DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
52 cycles
8 bytes | |
---|---|
LDX #3 @X: JSR @rts12 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts12 |
LDY #3 @Y: JSR @rts12 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts12 |
SEC LDA #7 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
LDX #3 @X: PLA PLA PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
LDY #3 @Y: PLA PLA PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
9 bytes | |
TYA PHA LDY #8 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
LDX #3 @X: ROL $00,X ROR $00,X DEX BNE @X |
Clobbers X, and Z&N |
LDY #3 @Y: ROL $00,X ROR $00,X DEY BNE @Y |
Clobbers Y, and Z&N |
10 bytes | |
PHP SEC LDA #6 @A: NOP SBC #1 BNE @A PLP |
Clobbers A |
PHP LDY #4 @Y: NOP NOP NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #4 @X: NOP NOP NOP DEX BNE @X PLP |
Clobbers X |
PHA SEC LDA #6 @A: NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHP PHA SEC LDA #7 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
53 cycles
7 bytes | |
---|---|
PHP LDX #9 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #9 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #10 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
PLA PLA JSR @rts15 JSR @rts15 JSR @rts15 |
Clobbers A, S, and Z&N; and requires @rts15 |
12 bytes | |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' JSR @rts12 SBC #1 BMI @A PLP |
Clobbers A; and requires @rts12, and support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' JSR @rts12 SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires @rts12, and support for unofficial opcodes |
13 bytes | |
PHP PHA SEC LDA #3 @A: PHP PLP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
54 cycles
10 bytes | |
---|---|
TYA PHA LDY #6 @Y: NOP DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
11 bytes | |
PHA TYA PHA LDY #7 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #7 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
12 bytes | |
PHP PHA LDY #3 @Y: TSX PLA TXS DEY BNE @Y PLA PLP |
Clobbers X, and Y |
PHP LDX #2 @X: NOP NOP JSR @rts14 DEX BNE @X PLP |
Clobbers X; and requires @rts14 |
PHP LDY #2 @Y: NOP NOP JSR @rts14 DEY BNE @Y PLP |
Clobbers Y; and requires @rts14 |
55 cycles
6 bytes | |
---|---|
LDY #6 @Y: PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
LDX #6 @X: PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
7 bytes | |
LDY #6 @Y: NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #6 @X: NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP ADC #1 BNE @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
9 bytes | |
PHP SEC LDA #9 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #9 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHP BIT $00 JSR @rts15 JSR @rts15 JSR @rts15 PLP |
Requires @rts15 |
PHA TXA PHA LDX #3 @X: PHP PLP DEX BNE @X PLA TAX PLA |
Clobbers Z&N |
14 bytes | |
PHP PHA SEC LDA #2 @A: JSR @rts14 SBC #1 BNE @A PLA PLP |
Requires @rts14 |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's NOP PHP PLP SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
15 bytes | |
PHP PHA SEC LDA #2 @A: PHP PLP PHP PLP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
56 cycles
5 bytes | |
---|---|
LDX #11 @X: DEX BNE @X |
Clobbers X, and Z&N |
LDY #11 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
9 bytes | |
PHP LDX #4 @X: PHP PLP DEX BNE @X PLP |
Clobbers X |
PHP LDY #4 @Y: PHP PLP DEY BNE @Y PLP |
Clobbers Y |
10 bytes | |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 JSR @rts15 SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires @rts15, and support for unofficial opcodes |
11 bytes | |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' NOP JSR @rts14 SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires @zptemp, @rts14, and support for unofficial opcodes |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 PHA JSR @rts12 SBC #1 BMI @A |
Clobbers A, S, Z&N, and C; and requires @rts12, and support for unofficial opcodes |
SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $48,X ;hides 'PHA' PHA JSR @rts14 SBC #1 BMI @A |
Clobbers A, S, Z&N, and C; and requires @rts14, and support for unofficial opcodes |
12 bytes | |
TYA PHA LDY #4 @Y: NOP NOP NOP DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' JSR @rts14 SBC #1 BMI @A PLP |
Clobbers A; and requires @rts14, and support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' JSR @rts14 SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires @rts14, and support for unofficial opcodes |
13 bytes | |
PHP PHA TYA PHA LDY #6 @Y: DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
57 cycles
6 bytes | |
---|---|
LDY #8 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #8 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
7 bytes | |
SEC LDA #136 @A = * - 1 ; ^ Hides DEY SBC #1 BMI @A |
Clobbers A, Z&N, and C |
8 bytes | |
PHP LDY #7 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #7 @X: NOP DEX BNE @X PLP |
Clobbers X |
9 bytes | |
TYA PHA LDY #9 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
11 bytes | |
PHP PHA SEC LDA #8 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
58 cycles
7 bytes | |
---|---|
PHP LDX #10 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #10 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #11 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
PHP SEC LDA #4 @A: PHP PLP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #4 @A: PHP PLP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
14 bytes | |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 NOP PHP PLP SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
15 bytes | |
PHA TYA PHA LDY #3 @Y: NOP NOP NOP NOP DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
59 cycles
8 bytes | |
---|---|
TSX LDY #6 @Y: PLA DEY BNE @Y TXS |
Clobbers A, X, Y, and Z&N |
SEC LDA #8 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
10 bytes | |
PHP SEC LDA #7 @A: NOP SBC #1 BNE @A PLP |
Clobbers A |
PHP LDY #3 @Y: JSR @rts12 DEY BNE @Y PLP |
Clobbers Y; and requires @rts12 |
PHP LDX #3 @X: JSR @rts12 DEX BNE @X PLP |
Clobbers X; and requires @rts12 |
PHA SEC LDA #7 @A: NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHA TYA PHA LDY #8 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP LDY #3 @Y: ROL $00,X ROR $00,X DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #3 @X: ROL $00,X ROR $00,X DEX BNE @X PLP |
Clobbers X |
12 bytes | |
PHP PHA SEC LDA #6 @A: NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
60 cycles
9 bytes | |
---|---|
PHP SEC LDA #10 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #10 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
14 bytes | |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' JSR @rts12 SBC #1 BMI @A PLA PLP |
Requires @rts12, and support for unofficial opcodes |
61 cycles
5 bytes | |
---|---|
LDY #12 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #12 @X: DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
CLC LDA #250 @A = * - 1 ; ^ Hides !NOP PHA ADC #1 BNE @A |
Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes |
9 bytes | |
CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP $00 ADC #1 BNE @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
TXA PHA LDX #7 @X: NOP DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
12 bytes | |
PHA TYA PHA LDY #6 @Y: NOP DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #6 @Y: NOP DEY BNE @Y PLA TAY PLP |
Clobbers A |
13 bytes | |
PHP PHA TYA PHA LDY #7 @Y: DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
62 cycles
9 bytes | |
---|---|
TYA PHA LDY #10 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
PHP LDX #6 @X: NOP NOP DEX BNE @X PLP |
Clobbers X |
PHP LDY #6 @Y: NOP NOP DEY BNE @Y PLP |
Clobbers Y |
10 bytes | |
PHP CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP ADC #1 BNE @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP ADC #1 BNE @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
PHP PHA SEC LDA #9 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
63 cycles
7 bytes | |
---|---|
PHP LDY #11 @Y: DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #11 @X: DEX BNE @X PLP |
Clobbers X |
SEC LDA #12 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
12 bytes | |
TYA PHA LDY #3 @Y: JSR @rts12 DEY BNE @Y PLA TAY |
Clobbers A, and Z&N; and requires @rts12 |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 JSR @rts15 SBC #1 BMI @A PLP |
Clobbers A; and requires @rts15, and support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 JSR @rts15 SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires @rts15, and support for unofficial opcodes |
13 bytes | |
TYA PHA LDY #3 @Y: ROL $00,X ROR $00,X DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
PHP SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' NOP JSR @rts14 SBC #1 BMI @A PLP |
Clobbers A; and requires @zptemp, @rts14, and support for unofficial opcodes |
PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' NOP JSR @rts14 SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires @zptemp, @rts14, and support for unofficial opcodes |
14 bytes | |
PHA TYA PHA LDY #4 @Y: NOP NOP NOP DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #4 @Y: NOP NOP NOP DEY BNE @Y PLA TAY PLP |
Clobbers A |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' JSR @rts14 SBC #1 BMI @A PLA PLP |
Requires @rts14, and support for unofficial opcodes |
64 cycles
6 bytes | |
---|---|
LDX #9 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #9 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
8 bytes | |
PHP LDX #8 @X: NOP DEX BNE @X PLP |
Clobbers X |
PHP LDY #8 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
9 bytes | |
PHP SEC LDA #136 @A = * - 1 ; ^ Hides DEY SBC #1 BMI @A PLP |
Clobbers A |
PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY SBC #1 BMI @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHA TYA PHA LDY #9 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
65 cycles
6 bytes | |
---|---|
LDX #8 @X: PHA DEX BNE @X |
Clobbers X, S, and Z&N |
LDY #8 @Y: PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
7 bytes | |
LDX #8 @X: LDA $00 DEX BNE @X |
Clobbers A, X, and Z&N |
LDY #8 @Y: LDA $00 DEY BNE @Y |
Clobbers A, Y, and Z&N |
LDX #8 @X: BIT $00 DEX BNE @X |
Clobbers X, Z&N, and V |
LDY #8 @Y: BIT $00 DEY BNE @Y |
Clobbers Y, Z&N, and V |
LDX #8 @X: STA @zptemp DEX BNE @X |
Clobbers X, and Z&N; and requires @zptemp |
LDY #8 @Y: STA @zptemp DEY BNE @Y |
Clobbers Y, and Z&N; and requires @zptemp |
LDX #8 @X: NOP $00 DEX BNE @X |
Clobbers X, and Z&N; and requires support for unofficial opcodes |
LDY #8 @Y: NOP $00 DEY BNE @Y |
Clobbers Y, and Z&N; and requires support for unofficial opcodes |
8 bytes | |
LDX #8 @X: JMP *+3 DEX BNE @X |
Clobbers X, and Z&N |
LDY #8 @Y: JMP *+3 DEY BNE @Y |
Clobbers Y, and Z&N |
9 bytes | |
PHP SEC LDA #11 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #11 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHP PHA SEC LDA #4 @A: PHP PLP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
66 cycles
5 bytes | |
---|---|
LDX #13 @X: DEX BNE @X |
Clobbers X, and Z&N |
LDY #13 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
7 bytes | |
SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
8 bytes | |
SEC LDA #9 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
10 bytes | |
PHP SEC LDA #8 @A: NOP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #8 @A: NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
12 bytes | |
PHP PHA SEC LDA #7 @A: NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
67 cycles
7 bytes | |
---|---|
LDY #6 @Y: PHA PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #6 @X: PHA PHA DEX BNE @X |
Clobbers X, S, and Z&N |
8 bytes | |
LDX #6 @X: NOP NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #6 @Y: NOP NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
SEC LDA #8 @A: PHA SBC #1 BNE @A |
Clobbers A, S, Z&N, and C |
9 bytes | |
TXA PHA LDX #11 @X: DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
11 bytes | |
PHP PHA SEC LDA #10 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
68 cycles
7 bytes | |
---|---|
PHP LDX #12 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #12 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #13 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
10 bytes | |
TYA PHA LDY #8 @Y: NOP DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
11 bytes | |
PHP CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP $00 ADC #1 BNE @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP $00 ADC #1 BNE @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
12 bytes | |
PHA TXA PHA LDX #7 @X: NOP DEX BNE @X PLA TAX PLA |
Clobbers Z&N |
PHP TXA PHA LDX #7 @X: NOP DEX BNE @X PLA TAX PLP |
Clobbers A |
14 bytes | |
PHP PHA TYA PHA LDY #6 @Y: NOP DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
69 cycles
8 bytes | |
---|---|
LDY #4 @Y: JSR @rts12 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts12 |
LDX #4 @X: JSR @rts12 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts12 |
TSX LDY #8 @Y: PHA DEY BNE @Y TXS |
Clobbers X, Y, and Z&N |
LDY #4 @Y: PLA PLA PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
LDX #4 @X: PLA PLA PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
9 bytes | |
LDY #4 @Y: ROL $00,X ROR $00,X DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #4 @X: ROL $00,X ROR $00,X DEX BNE @X |
Clobbers X, and Z&N |
SEC LDA #6 @A: PHA PHA SBC #1 BNE @A |
Clobbers A, S, Z&N, and C |
10 bytes | |
SEC LDA #6 @A: NOP NOP NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
PHA TYA PHA LDY #10 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #10 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
12 bytes | |
PHP PHA CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP ADC #1 BNE @A PLA PLP |
Requires support for unofficial opcodes |
70 cycles
9 bytes | |
---|---|
PHP SEC LDA #12 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #12 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
LDY #3 @Y: PHA JSR @rts15 DEY BNE @Y |
Clobbers Y, S, and Z&N; and requires @rts15 |
LDX #3 @X: PHA JSR @rts15 DEX BNE @X |
Clobbers X, S, and Z&N; and requires @rts15 |
10 bytes | |
LDY #3 @Y: BIT $00 JSR @rts15 DEY BNE @Y |
Clobbers Y, Z&N, and V; and requires @rts15 |
LDX #3 @X: BIT $00 JSR @rts15 DEX BNE @X |
Clobbers X, Z&N, and V; and requires @rts15 |
LDY #3 @Y: NOP NOP JSR @rts14 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts14 |
LDX #3 @X: NOP NOP JSR @rts14 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts14 |
LDX #3 @X: STA @zptemp JSR @rts15 DEX BNE @X |
Clobbers X, and Z&N; and requires @zptemp, and @rts15 |
LDY #3 @Y: STA @zptemp JSR @rts15 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @zptemp, and @rts15 |
LDY #3 @Y: PHA PHA JSR @rts12 DEY BNE @Y |
Clobbers Y, S, and Z&N; and requires @rts12 |
LDX #3 @X: PHA PHA JSR @rts12 DEX BNE @X |
Clobbers X, S, and Z&N; and requires @rts12 |
LDY #3 @Y: NOP $00 JSR @rts15 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts15, and support for unofficial opcodes |
LDX #3 @X: NOP $00 JSR @rts15 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts15, and support for unofficial opcodes |
11 bytes | |
LDY #3 @Y: NOP NOP PHP PLP PHP PLP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #3 @X: NOP NOP PHP PLP PHP PLP DEX BNE @X |
Clobbers X, and Z&N |
14 bytes | |
PHA TYA PHA LDY #3 @Y: JSR @rts12 DEY BNE @Y PLA TAY PLA |
Clobbers Z&N; and requires @rts12 |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm NOP $2808 ;hides 'PHP' and 'PLP'; reads from $2000 JSR @rts15 SBC #1 BMI @A PLA PLP |
Requires @rts15, and support for unofficial opcodes |
15 bytes | |
PHA TYA PHA LDY #3 @Y: ROL $00,X ROR $00,X DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP PHA SEC LDA #130 @A = * - 1 ; ^ Hides !NOP #imm .byte $0C,$E6,@zptemp ;NOP abs; hides 'INC @zptemp' NOP JSR @rts14 SBC #1 BMI @A PLA PLP |
Requires @zptemp, @rts14, and support for unofficial opcodes |
16 bytes | |
PHP PHA TYA PHA LDY #4 @Y: NOP NOP NOP DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
71 cycles
5 bytes | |
---|---|
LDY #14 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #14 @X: DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
PHP LDY #9 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #9 @X: NOP DEX BNE @X PLP |
Clobbers X |
10 bytes | |
SEC LDA #4 @A: JSR @rts12 SBC #1 BNE @A |
Clobbers A, Z&N, and C; and requires @rts12 |
11 bytes | |
PHP PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY SBC #1 BMI @A PLA PLP |
Clobbers nothing, requires nothing |
72 cycles
9 bytes | |
---|---|
TYA PHA LDY #12 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
PHP LDY #8 @Y: BIT $00 DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #8 @X: BIT $00 DEX BNE @X PLP |
Clobbers X |
11 bytes | |
PHP PHA SEC LDA #11 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
73 cycles
6 bytes | |
---|---|
LDY #9 @Y: PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #9 @X: PHA DEX BNE @X |
Clobbers X, S, and Z&N |
7 bytes | |
PHP LDX #13 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #13 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #14 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
9 bytes | |
PHP SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
PHP SEC LDA #9 @A: NOP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #9 @A: NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
12 bytes | |
PHP PHA SEC LDA #8 @A: NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
74 cycles
10 bytes | |
---|---|
PHP LDY #6 @Y: NOP NOP NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #6 @X: NOP NOP NOP DEX BNE @X PLP |
Clobbers X |
11 bytes | |
PHA TXA PHA LDX #11 @X: DEX BNE @X PLA TAX PLA |
Clobbers Z&N |
PHP TXA PHA LDX #11 @X: DEX BNE @X PLA TAX PLP |
Clobbers A |
75 cycles
8 bytes | |
---|---|
SEC LDA #9 @A: PHA SBC #1 BNE @A |
Clobbers A, S, Z&N, and C |
9 bytes | |
PHP SEC LDA #13 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #13 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
12 bytes | |
PHA TYA PHA LDY #8 @Y: NOP DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
13 bytes | |
PHP PHA CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP $00 ADC #1 BNE @A PLA PLP |
Requires support for unofficial opcodes |
14 bytes | |
PHP PHA TXA PHA LDX #7 @X: NOP DEX BNE @X PLA TAX PLA PLP |
Clobbers nothing, requires nothing |
76 cycles
5 bytes | |
---|---|
LDY #15 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #15 @X: DEX BNE @X |
Clobbers X, and Z&N |
10 bytes | |
PHP LDX #4 @X: JSR @rts12 DEX BNE @X PLP |
Clobbers X; and requires @rts12 |
PHP LDY #4 @Y: JSR @rts12 DEY BNE @Y PLP |
Clobbers Y; and requires @rts12 |
PHP TSX LDY #8 @Y: PHA DEY BNE @Y TXS PLP |
Clobbers X, and Y |
11 bytes | |
TXA PHA LDX #8 @X: LDA $00 DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
PHP LDY #4 @Y: ROL $00,X ROR $00,X DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #4 @X: ROL $00,X ROR $00,X DEX BNE @X PLP |
Clobbers X |
12 bytes | |
PHP SEC LDA #6 @A: NOP NOP NOP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #6 @A: NOP NOP NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHP PHA TYA PHA LDY #10 @Y: DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
77 cycles
8 bytes | |
---|---|
TSX LDY #9 @Y: PHA DEY BNE @Y TXS |
Clobbers X, Y, and Z&N |
LDX #4 @X: JSR @rts14 DEX BNE @X |
Clobbers X, and Z&N; and requires @rts14 |
LDY #4 @Y: JSR @rts14 DEY BNE @Y |
Clobbers Y, and Z&N; and requires @rts14 |
9 bytes | |
TXA PHA LDX #13 @X: DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
LDX #4 @X: PHP PLP PHP PLP DEX BNE @X |
Clobbers X, and Z&N |
LDY #4 @Y: PHP PLP PHP PLP DEY BNE @Y |
Clobbers Y, and Z&N |
11 bytes | |
PHP PHA SEC LDA #12 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
78 cycles
6 bytes | |
---|---|
LDX #11 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #11 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
7 bytes | |
PHP LDX #14 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #14 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #15 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
12 bytes | |
PHP SEC LDA #4 @A: JSR @rts12 SBC #1 BNE @A PLP |
Clobbers A; and requires @rts12 |
TXA PHA LDX #6 @X: NOP NOP NOP DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
PHA SEC LDA #4 @A: JSR @rts12 SBC #1 BNE @A PLA |
Clobbers Z&N, and C; and requires @rts12 |
13 bytes | |
PHA SEC LDA #4 @A: ROL $00,X ROR $00,X SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
79 cycles
7 bytes | |
---|---|
LDY #6 @Y: PLA PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
LDX #6 @X: PLA PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
8 bytes | |
LDY #6 @Y: TSX PLA TXS DEY BNE @Y |
Clobbers A, X, Y, and Z&N |
LDX #6 @X: NOP PHA PHA DEX BNE @X |
Clobbers X, S, and Z&N |
LDY #6 @Y: NOP PHA PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
9 bytes | |
LDX #6 @X: NOP NOP NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #6 @Y: NOP NOP NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
CLC LDA #250 @A = * - 1 ; ^ Hides !NOP PHA PHA ADC #1 BNE @A |
Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
SEC LDA #4 @A: JSR @rts14 SBC #1 BNE @A |
Clobbers A, Z&N, and C; and requires @rts14 |
CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP NOP NOP ADC #1 BNE @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
PHA TYA PHA LDY #12 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #12 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
80 cycles
8 bytes | |
---|---|
SEC LDA #11 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
9 bytes | |
PHP SEC LDA #14 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #14 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHP PHA SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
12 bytes | |
PHP PHA SEC LDA #9 @A: NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
81 cycles
5 bytes | |
---|---|
LDY #16 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #16 @X: DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
SEC LDA #136 @A = * - 1 ; ^ Hides DEY PHA SBC #1 BMI @A |
Clobbers A, S, Z&N, and C |
9 bytes | |
SEC LDA #136 @A = * - 1 ; ^ Hides DEY BIT $00 SBC #1 BMI @A |
Clobbers A, Z&N, C, and V |
SEC LDA #136 @A = * - 1 ; ^ Hides DEY STA @zptemp SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires @zptemp |
SEC LDA #136 @A = * - 1 ; ^ Hides DEY NOP $00 SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
SEC LDA #136 @A = * - 1 ; ^ Hides DEY JMP *+3 SBC #1 BMI @A |
Clobbers A, Z&N, and C |
13 bytes | |
PHP PHA TXA PHA LDX #11 @X: DEX BNE @X PLA TAX PLA PLP |
Clobbers nothing, requires nothing |
82 cycles
6 bytes | |
---|---|
LDY #9 @Y: PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
LDX #9 @X: PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
7 bytes | |
LDY #9 @Y: NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #9 @X: NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
9 bytes | |
TYA PHA LDY #14 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
11 bytes | |
PHP PHA SEC LDA #13 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
83 cycles
7 bytes | |
---|---|
PHP LDX #15 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #15 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #16 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
13 bytes | |
PHA TXA PHA LDX #8 @X: LDA $00 DEX BNE @X PLA TAX PLA |
Clobbers Z&N |
PHP TXA PHA LDX #8 @X: LDA $00 DEX BNE @X PLA TAX PLP |
Clobbers A |
14 bytes | |
PHP PHA SEC LDA #6 @A: NOP NOP NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
84 cycles
7 bytes | |
---|---|
SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
9 bytes | |
SEC LDA #9 @A: NOP NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
10 bytes | |
PHP TSX LDY #9 @Y: PHA DEY BNE @Y TXS PLP |
Clobbers X, and Y |
PHP LDX #4 @X: JSR @rts14 DEX BNE @X PLP |
Clobbers X; and requires @rts14 |
PHP LDY #4 @Y: JSR @rts14 DEY BNE @Y PLP |
Clobbers Y; and requires @rts14 |
11 bytes | |
PHA TXA PHA LDX #13 @X: DEX BNE @X PLA TAX PLA |
Clobbers Z&N |
PHP TXA PHA LDX #13 @X: DEX BNE @X PLA TAX PLP |
Clobbers A |
PHP LDY #4 @Y: PHP PLP PHP PLP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #4 @X: PHP PLP PHP PLP DEX BNE @X PLP |
Clobbers X |
85 cycles
6 bytes | |
---|---|
LDY #12 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #12 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
PHP LDX #11 @X: NOP DEX BNE @X PLP |
Clobbers X |
PHP LDY #11 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
9 bytes | |
PHP SEC LDA #15 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #15 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
14 bytes | |
PHP PHA SEC LDA #4 @A: JSR @rts12 SBC #1 BNE @A PLA PLP |
Requires @rts12 |
PHA TXA PHA LDX #6 @X: NOP NOP NOP DEX BNE @X PLA TAX PLA |
Clobbers Z&N |
15 bytes | |
PHP PHA SEC LDA #4 @A: ROL $00,X ROR $00,X SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
86 cycles
5 bytes | |
---|---|
LDX #17 @X: DEX BNE @X |
Clobbers X, and Z&N |
LDY #17 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
10 bytes | |
PHP LDY #6 @Y: TSX PLA TXS DEY BNE @Y PLP |
Clobbers A, X, and Y |
11 bytes | |
PHP LDY #6 @Y: NOP NOP NOP NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #6 @X: NOP NOP NOP NOP DEX BNE @X PLP |
Clobbers X |
12 bytes | |
PHP SEC LDA #4 @A: JSR @rts14 SBC #1 BNE @A PLP |
Clobbers A; and requires @rts14 |
PHA SEC LDA #4 @A: JSR @rts14 SBC #1 BNE @A PLA |
Clobbers Z&N, and C; and requires @rts14 |
PHP CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP NOP NOP ADC #1 BNE @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP NOP NOP ADC #1 BNE @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
13 bytes | |
PHP PHA TYA PHA LDY #12 @Y: DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
87 cycles
8 bytes | |
---|---|
SEC LDA #12 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
9 bytes | |
TYA PHA LDY #15 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
10 bytes | |
PHP SEC LDA #11 @A: NOP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #11 @A: NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHP PHA SEC LDA #14 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
88 cycles
7 bytes | |
---|---|
PHP LDY #16 @Y: DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #16 @X: DEX BNE @X PLP |
Clobbers X |
SEC LDA #17 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
PHP SEC LDA #136 @A = * - 1 ; ^ Hides DEY BIT $00 SBC #1 BMI @A PLP |
Clobbers A |
PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY BIT $00 SBC #1 BMI @A PLA |
Clobbers Z&N, C, and V |
PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY STA @zptemp SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires @zptemp |
PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY NOP $00 SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
12 bytes | |
PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY JMP *+3 SBC #1 BMI @A PLA |
Clobbers Z&N, and C |
16 bytes | |
PHA TXA PHA LDX #3 @X: LDA $00 JSR @rts15 DEX BNE @X PLA TAX PLA |
Clobbers Z&N; and requires @rts15 |
PHA TXA PHA LDX #3 @X: NOP NOP JSR @rts14 DEX BNE @X PLA TAX PLA |
Clobbers Z&N; and requires @rts14 |
17 bytes | |
PHA TYA PHA LDY #3 @Y: NOP NOP PHP PLP PHP PLP DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
89 cycles
6 bytes | |
---|---|
LDX #11 @X: PHA DEX BNE @X |
Clobbers X, S, and Z&N |
LDY #11 @Y: PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
7 bytes | |
LDX #11 @X: LDA $00 DEX BNE @X |
Clobbers A, X, and Z&N |
LDY #11 @Y: LDA $00 DEY BNE @Y |
Clobbers A, Y, and Z&N |
LDX #11 @X: BIT $00 DEX BNE @X |
Clobbers X, Z&N, and V |
LDY #11 @Y: BIT $00 DEY BNE @Y |
Clobbers Y, Z&N, and V |
LDY #11 @Y: STA @zptemp DEY BNE @Y |
Clobbers Y, and Z&N; and requires @zptemp |
LDX #11 @X: STA @zptemp DEX BNE @X |
Clobbers X, and Z&N; and requires @zptemp |
LDY #11 @Y: NOP $00 DEY BNE @Y |
Clobbers Y, and Z&N; and requires support for unofficial opcodes |
LDX #11 @X: NOP $00 DEX BNE @X |
Clobbers X, and Z&N; and requires support for unofficial opcodes |
8 bytes | |
LDX #11 @X: JMP *+3 DEX BNE @X |
Clobbers X, and Z&N |
LDY #11 @Y: JMP *+3 DEY BNE @Y |
Clobbers Y, and Z&N |
9 bytes | |
PHP LDY #9 @Y: NOP NOP DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #9 @X: NOP NOP DEX BNE @X PLP |
Clobbers X |
SEC LDA #136 @A = * - 1 ; ^ Hides DEY NOP NOP SBC #1 BMI @A |
Clobbers A, Z&N, and C |
10 bytes | |
TXA PHA LDX #11 @X: NOP DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
11 bytes | |
PHA TYA PHA LDY #14 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #14 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
90 cycles
9 bytes | |
---|---|
PHP SEC LDA #16 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #16 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHA TSX LDY #6 @Y: PLA PLA DEY BNE @Y TXS PLA |
Clobbers X, Y, and Z&N |
15 bytes | |
PHP PHA TXA PHA LDX #8 @X: LDA $00 DEX BNE @X PLA TAX PLA PLP |
Clobbers nothing, requires nothing |
91 cycles
5 bytes | |
---|---|
LDX #18 @X: DEX BNE @X |
Clobbers X, and Z&N |
LDY #18 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
7 bytes | |
SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $48 ;hides 'PHA' SBC #1 BMI @A |
Clobbers A, S, Z&N, and C; and requires support for unofficial opcodes |
8 bytes | |
SEC LDA #11 @A: PHA SBC #1 BNE @A |
Clobbers A, S, Z&N, and C |
9 bytes | |
SEC LDA #11 @A: BIT $00 SBC #1 BNE @A |
Clobbers A, Z&N, C, and V |
SEC LDA #11 @A: STA @zptemp SBC #1 BNE @A |
Clobbers A, Z&N, and C; and requires @zptemp |
PHP SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
10 bytes | |
SEC LDA #11 @A: JMP *+3 SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
PHP SEC LDA #9 @A: NOP NOP SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #9 @A: NOP NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHP PHA TXA PHA LDX #13 @X: DEX BNE @X PLA TAX PLA PLP |
Clobbers nothing, requires nothing |
92 cycles
6 bytes | |
---|---|
LDX #13 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
LDY #13 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
7 bytes | |
SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
8 bytes | |
PHP LDX #12 @X: NOP DEX BNE @X PLP |
Clobbers X |
PHP LDY #12 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
9 bytes | |
TYA PHA LDY #16 @Y: DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
11 bytes | |
PHP PHA SEC LDA #15 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
93 cycles
7 bytes | |
---|---|
PHP LDY #17 @Y: DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #17 @X: DEX BNE @X PLP |
Clobbers X |
SEC LDA #18 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
TYA PHA LDY #9 @Y: NOP NOP DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
14 bytes | |
PHP PHA SEC LDA #4 @A: JSR @rts14 SBC #1 BNE @A PLA PLP |
Requires @rts14 |
PHP PHA CLC LDA #250 @A = * - 1 ; ^ Hides !NOP NOP NOP NOP ADC #1 BNE @A PLA PLP |
Requires support for unofficial opcodes |
94 cycles
8 bytes | |
---|---|
SEC LDA #13 @A: NOP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
10 bytes | |
PHP SEC LDA #12 @A: NOP SBC #1 BNE @A PLP |
Clobbers A |
LDY #3 @Y: LDX #5 @X: DEX BNE @X DEY BNE @Y |
Clobbers X, Y, and Z&N |
PHA SEC LDA #12 @A: NOP SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
11 bytes | |
PHA TYA PHA LDY #15 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
12 bytes | |
PHP PHA SEC LDA #11 @A: NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
95 cycles
9 bytes | |
---|---|
PHP SEC LDA #17 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #17 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHP PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY BIT $00 SBC #1 BMI @A PLA PLP |
Clobbers nothing, requires nothing |
96 cycles
5 bytes | |
---|---|
LDY #19 @Y: DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #19 @X: DEX BNE @X |
Clobbers X, and Z&N |
9 bytes | |
PHP LDY #11 @Y: BIT $00 DEY BNE @Y PLP |
Clobbers Y |
PHP LDX #11 @X: BIT $00 DEX BNE @X PLP |
Clobbers X |
10 bytes | |
TYA PHA LDY #12 @Y: NOP DEY BNE @Y PLA TAY |
Clobbers A, and Z&N |
11 bytes | |
PHP SEC LDA #136 @A = * - 1 ; ^ Hides DEY NOP NOP SBC #1 BMI @A PLP |
Clobbers A |
PHA SEC LDA #136 @A = * - 1 ; ^ Hides DEY NOP NOP SBC #1 BMI @A PLA |
Clobbers Z&N, and C |
12 bytes | |
PHA TXA PHA LDX #11 @X: NOP DEX BNE @X PLA TAX PLA |
Clobbers Z&N |
13 bytes | |
PHP PHA TYA PHA LDY #14 @Y: DEY BNE @Y PLA TAY PLA PLP |
Clobbers nothing, requires nothing |
97 cycles
6 bytes | |
---|---|
LDY #12 @Y: PHA DEY BNE @Y |
Clobbers Y, S, and Z&N |
LDX #12 @X: PHA DEX BNE @X |
Clobbers X, S, and Z&N |
7 bytes | |
LDY #8 @Y: PHP PLP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #8 @X: PHP PLP DEX BNE @X |
Clobbers X, and Z&N |
9 bytes | |
TXA PHA LDX #17 @X: DEX BNE @X PLA TAX |
Clobbers A, and Z&N |
11 bytes | |
PHP PHA SEC LDA #16 @A: SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
98 cycles
7 bytes | |
---|---|
PHP LDX #18 @X: DEX BNE @X PLP |
Clobbers X |
PHP LDY #18 @Y: DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #19 @A: SBC #1 BNE @A |
Clobbers A, Z&N, and C |
11 bytes | |
PHP SEC LDA #11 @A: BIT $00 SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #11 @A: BIT $00 SBC #1 BNE @A PLA |
Clobbers Z&N, C, and V |
PHA SEC LDA #11 @A: STA @zptemp SBC #1 BNE @A PLA |
Clobbers Z&N, and C; and requires @zptemp |
PHP PHA SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA,X ;hides 'NOP' SBC #1 BMI @A PLA PLP |
Requires support for unofficial opcodes |
12 bytes | |
PHA SEC LDA #11 @A: JMP *+3 SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHP PHA SEC LDA #9 @A: NOP NOP SBC #1 BNE @A PLA PLP |
Clobbers nothing, requires nothing |
99 cycles
6 bytes | |
---|---|
LDY #14 @Y: NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #14 @X: NOP DEX BNE @X |
Clobbers X, and Z&N |
8 bytes | |
PHP LDX #13 @X: NOP DEX BNE @X PLP |
Clobbers X |
PHP LDY #13 @Y: NOP DEY BNE @Y PLP |
Clobbers Y |
SEC LDA #12 @A: PHA SBC #1 BNE @A |
Clobbers A, S, Z&N, and C |
9 bytes | |
SEC LDA #8 @A: PHP PLP SBC #1 BNE @A |
Clobbers A, Z&N, and C |
PHP SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' SBC #1 BMI @A PLP |
Clobbers A; and requires support for unofficial opcodes |
PHA SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EA44 ;hides 'NOP zp' SBC #1 BMI @A PLA |
Clobbers Z&N, and C; and requires support for unofficial opcodes |
11 bytes | |
PHA TYA PHA LDY #16 @Y: DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
PHP TYA PHA LDY #16 @Y: DEY BNE @Y PLA TAY PLP |
Clobbers A |
100 cycles
6 bytes | |
---|---|
LDY #11 @Y: PLA DEY BNE @Y |
Clobbers A, Y, S, and Z&N |
LDX #11 @X: PLA DEX BNE @X |
Clobbers A, X, S, and Z&N |
7 bytes | |
LDY #11 @Y: NOP NOP DEY BNE @Y |
Clobbers Y, and Z&N |
LDX #11 @X: NOP NOP DEX BNE @X |
Clobbers X, and Z&N |
SEC LDA #137 @A = * - 1 ; ^ Hides !NOP #imm NOP $EAEA ;hides two 'NOP's SBC #1 BMI @A |
Clobbers A, Z&N, and C; and requires support for unofficial opcodes |
9 bytes | |
PHP SEC LDA #18 @A: SBC #1 BNE @A PLP |
Clobbers A |
PHA SEC LDA #18 @A: SBC #1 BNE @A PLA |
Clobbers Z&N, and C |
13 bytes | |
PHA TYA PHA LDY #9 @Y: NOP NOP DEY BNE @Y PLA TAY PLA |
Clobbers Z&N |
More
Bisqwit's 6502 delay_n macro set for ca65: http://bisqwit.iki.fi/src/6502-inline_delay.7z