<?xml version="1.0"?>
<?xml-stylesheet type="text/css" href="http://c64mags.untergrund.net/wiki/skins/common/feed.css?303"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>http://c64mags.untergrund.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Jamaica_10_ch11_Illegal_Op-codes</id>
		<title>Jamaica 10 ch11 Illegal Op-codes - Revision history</title>
		<link rel="self" type="application/atom+xml" href="http://c64mags.untergrund.net/wiki/index.php?action=history&amp;feed=atom&amp;title=Jamaica_10_ch11_Illegal_Op-codes"/>
		<link rel="alternate" type="text/html" href="http://c64mags.untergrund.net/wiki/index.php?title=Jamaica_10_ch11_Illegal_Op-codes&amp;action=history"/>
		<updated>2026-05-18T05:51:06Z</updated>
		<subtitle>Revision history for this page on the wiki</subtitle>
		<generator>MediaWiki 1.19.0</generator>

	<entry>
		<id>http://c64mags.untergrund.net/wiki/index.php?title=Jamaica_10_ch11_Illegal_Op-codes&amp;diff=2329&amp;oldid=prev</id>
		<title>Ymgve at 14:38, 21 June 2007</title>
		<link rel="alternate" type="text/html" href="http://c64mags.untergrund.net/wiki/index.php?title=Jamaica_10_ch11_Illegal_Op-codes&amp;diff=2329&amp;oldid=prev"/>
				<updated>2007-06-21T14:38:34Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&lt;b&gt;New page&lt;/b&gt;&lt;/p&gt;&lt;div&gt;&amp;lt;pre&amp;gt;illegal op-codes                   tjost&lt;br /&gt;
----------------------------------------&lt;br /&gt;
we are now going to reveal the deepest&lt;br /&gt;
secrets of 6510 coding. this is not a&lt;br /&gt;
chapter for beginners, but i hope that&lt;br /&gt;
someone can find a use for it.&lt;br /&gt;
&lt;br /&gt;
if you find this chapter interesting,&lt;br /&gt;
but not satisfying then you should&lt;br /&gt;
contact me (my addy should be in the&lt;br /&gt;
addy chapters) for more information&lt;br /&gt;
about illegal op-codes or just any&lt;br /&gt;
code-related talk.&lt;br /&gt;
&lt;br /&gt;
and now lets roll.....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
      code addressing   name b c&lt;br /&gt;
       --------------------------&lt;br /&gt;
        02 implied      hlt  1 -&lt;br /&gt;
        03 (zeropage,x) slo  2 8&lt;br /&gt;
        04 zeropage     nop  2 3&lt;br /&gt;
        07 zeropage     slo  2 5&lt;br /&gt;
        0b #immediate   ana  2 2&lt;br /&gt;
        0c absolute     nop  3 4&lt;br /&gt;
        0f absolute     slo  3 6&lt;br /&gt;
        12 implied      hlt  1 -&lt;br /&gt;
        13 (zeropage),y slo  2 8&lt;br /&gt;
        14 zeropage,x   nop  2 4&lt;br /&gt;
        17 zeropage,x   slo  2 6&lt;br /&gt;
        1a implied      nop  1 2&lt;br /&gt;
        1b absolute,y   slo  3 7&lt;br /&gt;
        1c absolute,x   nop  3 4*&lt;br /&gt;
        1f absolute,x   slo  3 7&lt;br /&gt;
        22 implied      hlt  1 -&lt;br /&gt;
        23 (zeropage,x) rla  2 8&lt;br /&gt;
        27 zeropage     rla  2 5&lt;br /&gt;
        2b #immediate   anb  2 2&lt;br /&gt;
        2f absolute     rla  3 6&lt;br /&gt;
        32 implied      hlt  1 -&lt;br /&gt;
        33 (zeropage),y rla  2 8&lt;br /&gt;
        34 zeropage,x   nop  2 4&lt;br /&gt;
        37 zeropage,x   rla  2 6&lt;br /&gt;
        3a implied      nop  1 2&lt;br /&gt;
        3b absolute,y   rla  3 7&lt;br /&gt;
        3c absolute,x   nop  3 4*&lt;br /&gt;
        3f absolute,x   rla  3 7&lt;br /&gt;
        42 implied      hlt  1 -&lt;br /&gt;
        43 (zeropage,x) sre  2 8&lt;br /&gt;
        44 zeropage     nop  2 3&lt;br /&gt;
        47 zeropage     sre  2 5&lt;br /&gt;
        4b #immediate   ram  2 2&lt;br /&gt;
        4f absolute     sre  3 6&lt;br /&gt;
        52 implied      hlt  1 -&lt;br /&gt;
        53 (zeropage),y sre  2 8&lt;br /&gt;
        54 zeropage,x   nop  2 4&lt;br /&gt;
        57 zeropage,x   sre  2 6&lt;br /&gt;
        5a implied      nop  1 2&lt;br /&gt;
        5b absolute,y   sre  3 6&lt;br /&gt;
        5c absolute,x   nop  3 4*&lt;br /&gt;
        5f absoulte,x   sre  3 7&lt;br /&gt;
        62 implied      hlt  1 -&lt;br /&gt;
        63 (zeropage,x) rra  2 8&lt;br /&gt;
        64 zeropage     nop  2 3&lt;br /&gt;
        67 zeropage     rra  2 5&lt;br /&gt;
        6b #immediate   rbm  2 2&lt;br /&gt;
        6f absoulte     rra  3 6&lt;br /&gt;
        72 implied      hlt  1 -&lt;br /&gt;
        73 (zeropage),y rra  2 8&lt;br /&gt;
        74 zeropage,x   nop  2 4&lt;br /&gt;
        77 zeropage,x   rra  2 6&lt;br /&gt;
        7a implied      nop  1 2&lt;br /&gt;
        7b absolute,y   rra  3 7&lt;br /&gt;
        7c absolute,x   nop  3 4*&lt;br /&gt;
        7f absolute,x   rra  3 7&lt;br /&gt;
        80 #immediate   nop  2 2&lt;br /&gt;
        82 #immediate   nop  2 2&lt;br /&gt;
        83 (zeropage,x) aax  2 6&lt;br /&gt;
        87 zeropage     aax  2 3&lt;br /&gt;
        89 #immediate   nop  2 2&lt;br /&gt;
        8b #immediate   axm  2 2&lt;br /&gt;
        8f absolute     aax  3 4&lt;br /&gt;
        92 implied      hlt  1 -&lt;br /&gt;
        93 (zeropage),y tea  2 6&lt;br /&gt;
        97 zeropage,y   aax  2 4&lt;br /&gt;
        9b absolute,y   axs  3 5&lt;br /&gt;
        9c absolute,x   tey  3 5&lt;br /&gt;
        9e absolute,y   tex  3 5&lt;br /&gt;
        9f absolute,y   tea  3 5&lt;br /&gt;
        a3 (zeropage,x) lax  2 6&lt;br /&gt;
        a7 zeropage     lax  2 3&lt;br /&gt;
        ab #immediate   lax  2 2&lt;br /&gt;
        af absolute     lax  3 4&lt;br /&gt;
        b2 implied      hlt  1 -&lt;br /&gt;
        b3 (zeropage),y lax  2 5*&lt;br /&gt;
        b7 zeropage,y   lax  2 4&lt;br /&gt;
        bb absolute,y   las  3 4*&lt;br /&gt;
        bf absolute,y   lax  3 4*&lt;br /&gt;
        c2 #immediate   nop  2 2&lt;br /&gt;
        c3 (zeropage,x) dcp  2 8&lt;br /&gt;
        c7 zeropage     dcp  2 5&lt;br /&gt;
        cb #immediate   xma  2 2&lt;br /&gt;
        cf absolute     dcp  3 6&lt;br /&gt;
        d2 implied      hlt  1 -&lt;br /&gt;
        d3 (zeropage),y dcp  2 8&lt;br /&gt;
        d4 zeropage,x   nop  2 4&lt;br /&gt;
        d7 zeropage,x   dcp  2 6&lt;br /&gt;
        da implied      nop  1 2&lt;br /&gt;
        db absolute,y   dcp  3 7&lt;br /&gt;
        dc absolute,x   nop  3 4*&lt;br /&gt;
        df absolute,x   dcp  3 7&lt;br /&gt;
        e2 #immediate   nop  2 2&lt;br /&gt;
        e3 (zeropage,x) isb  2 8&lt;br /&gt;
        e7 zeropage     isb  2 5&lt;br /&gt;
        eb #immediate   sbc  2 2&lt;br /&gt;
        ef absolute     isb  3 6&lt;br /&gt;
        f2 implied      hlt  1 -&lt;br /&gt;
        f3 (zeropage),y isb  2 8&lt;br /&gt;
        f4 zeropage,x   nop  2 4&lt;br /&gt;
        f7 zeropage,x   isb  2 6&lt;br /&gt;
        fa implied      nop  1 2&lt;br /&gt;
        fb absolute,y   isb  3 7&lt;br /&gt;
        fc absolute,x   nop  3 4*&lt;br /&gt;
        ff absolute,x   isb  3 7&lt;br /&gt;
&lt;br /&gt;
and here's the description of what the&lt;br /&gt;
instruction does.&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
name flags description&lt;br /&gt;
------------------------&lt;br /&gt;
aax        m = a and x&lt;br /&gt;
ana  nzc   asl #(a and m), and m&lt;br /&gt;
anb  nzc   rol #(a and m), and m&lt;br /&gt;
axm  nz    a = (x and m) and (a or #$ee)&lt;br /&gt;
axs        m = a and x and #&amp;amp;gt;m+$100&lt;br /&gt;
dcp  nzc   dec m, cmp m&lt;br /&gt;
hlt  -     total halt&lt;br /&gt;
isb  nvzc  inc m, sbc m&lt;br /&gt;
las  nz    lda (sp and m), tax, txs&lt;br /&gt;
lax  nz    lda m, tax&lt;br /&gt;
ram  nzc   and m, lsr a&lt;br /&gt;
rbm  nzc   and n, ror a&lt;br /&gt;
rla  nzc   rol m, and m&lt;br /&gt;
rra  nvzc  ror m, adc m&lt;br /&gt;
slo  nzc   asl m, ora m&lt;br /&gt;
sre  nzc   lsr m, eor m&lt;br /&gt;
tea        m = a and x and #&amp;amp;gt;m+$100&lt;br /&gt;
tex        m = x and #&amp;amp;gt;m+$100&lt;br /&gt;
tey        m = y and #&amp;amp;gt;m+$100&lt;br /&gt;
xma  nzc   x = (a and x) - m&lt;br /&gt;
&lt;br /&gt;
notes:&lt;br /&gt;
a = accumulator     x  = x-register&lt;br /&gt;
y = y-register      sp = stackpointer&lt;br /&gt;
m = byte in memory&lt;br /&gt;
&lt;br /&gt;
addressing is the addressing mode for&lt;br /&gt;
that op-code.&lt;br /&gt;
&lt;br /&gt;
name is the instructions mnemonic name.&lt;br /&gt;
&lt;br /&gt;
b is the amount of bytes that the&lt;br /&gt;
instruction occupies in memory.&lt;br /&gt;
&lt;br /&gt;
c is the amount of cycles the&lt;br /&gt;
instruction will take to execute where&lt;br /&gt;
* means add one cycle if page boundary&lt;br /&gt;
crossed.&lt;br /&gt;
&lt;br /&gt;
flags is what flags the instruction&lt;br /&gt;
will affect while executing.&lt;br /&gt;
&lt;br /&gt;
description briefly shows what each&lt;br /&gt;
instruction does.&lt;br /&gt;
&lt;br /&gt;
well, that's it for this short&lt;br /&gt;
introduction into the hidden worlds of&lt;br /&gt;
the 6510....&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
          signed : TJOST / JAM&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;/div&gt;</summary>
		<author><name>Ymgve</name></author>	</entry>

	</feed>