<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
	<id>https://www.temlib.org/AtariForumWiki/index.php?action=history&amp;feed=atom&amp;title=CYCLES.TXT</id>
	<title>CYCLES.TXT - Revision history</title>
	<link rel="self" type="application/atom+xml" href="https://www.temlib.org/AtariForumWiki/index.php?action=history&amp;feed=atom&amp;title=CYCLES.TXT"/>
	<link rel="alternate" type="text/html" href="https://www.temlib.org/AtariForumWiki/index.php?title=CYCLES.TXT&amp;action=history"/>
	<updated>2026-05-13T17:47:22Z</updated>
	<subtitle>Revision history for this page on the wiki</subtitle>
	<generator>MediaWiki 1.39.2</generator>
	<entry>
		<id>https://www.temlib.org/AtariForumWiki/index.php?title=CYCLES.TXT&amp;diff=11659&amp;oldid=prev</id>
		<title>&gt;Zorro 2: Created page with &quot;&lt;pre&gt; SHIZUKA a le plaisir de vous pr‚senter cette table des cycles du 68000 r‚alis‚e en deux portions de soir‚es avec les aides appr‚ciables de:  craft2 ( stedi ) disq...&quot;</title>
		<link rel="alternate" type="text/html" href="https://www.temlib.org/AtariForumWiki/index.php?title=CYCLES.TXT&amp;diff=11659&amp;oldid=prev"/>
		<updated>2016-12-22T14:39:11Z</updated>

		<summary type="html">&lt;p&gt;Created page with &amp;quot;&amp;lt;pre&amp;gt; SHIZUKA a le plaisir de vous pr‚senter cette table des cycles du 68000 r‚alis‚e en deux portions de soir‚es avec les aides appr‚ciables de:  craft2 ( stedi ) disq...&amp;quot;&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;&lt;br /&gt;
SHIZUKA a le plaisir de vous pr‚senter cette table des cycles du 68000&lt;br /&gt;
r‚alis‚e en deux portions de soir‚es avec les aides appr‚ciables de:&lt;br /&gt;
&lt;br /&gt;
craft2 ( stedi )&lt;br /&gt;
disque dur ( ouaaaah la vitesse )&lt;br /&gt;
&amp;quot;guide des instructions du 68000 , vol 2 de NACHTMANN chez PUBLITRONIC &amp;quot;&lt;br /&gt;
&lt;br /&gt;
merci de diffuser cette table sans modifier l'en tˆte&lt;br /&gt;
&lt;br /&gt;
calcul de l'adresse effective&lt;br /&gt;
&lt;br /&gt;
                b/w     l&lt;br /&gt;
&lt;br /&gt;
dn              0       0&lt;br /&gt;
an              0       0&lt;br /&gt;
(an)            4       8&lt;br /&gt;
(an)+           4       8&lt;br /&gt;
-(an)           6       10&lt;br /&gt;
d16(an)         8       12&lt;br /&gt;
d8(an,xi)       10      14&lt;br /&gt;
abs.w           8       12&lt;br /&gt;
abs.l           12      16&lt;br /&gt;
d16(pc) 8       12&lt;br /&gt;
d8(pc,x1)       10      14&lt;br /&gt;
imm             4       8&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
move.b et move.w&lt;br /&gt;
&lt;br /&gt;
            dn   an   (an)   (an)+   -(an)   d16(an)  d8(an,xi)   abs.w   abs.l &lt;br /&gt;
dn           4    4    8      8        8       12       14         12      16&lt;br /&gt;
an           4    4    8      8        8       12       14         12      16&lt;br /&gt;
(an)         8    8    12     12       12      16       18         16      20&lt;br /&gt;
(an)+        8    8    12     12       12      16       18         16      20&lt;br /&gt;
-(an)        10   10   14     14       14      18       20         18      22&lt;br /&gt;
d16(an)      12   12   16     16       16      20       22         20      24&lt;br /&gt;
d8(an,xi)    14   14   18     18       18      22       24         22      26&lt;br /&gt;
abs.w        12   12   16     16       16      20       22         20      24&lt;br /&gt;
abs.l        16   16   20     20       20      24       26         24      28&lt;br /&gt;
d16(pc)      12   12   16     16       16      20       22         20      24&lt;br /&gt;
d8(pc,x1)    14   14   18     18       18      22       24         22      26&lt;br /&gt;
imm          8     8   12     12       12      16       18         16      20&lt;br /&gt;
&lt;br /&gt;
move.l&lt;br /&gt;
&lt;br /&gt;
            dn   an   (an)   (an)+   -(an)   d16(an)  d8(an,xi)   abs.w   abs.l &lt;br /&gt;
dn           4    4    12     12       12      16       18         16      20&lt;br /&gt;
an           4    4    12     12       12      16       18         16      20&lt;br /&gt;
(an)         12   12   20     20       20      24       26         24      28&lt;br /&gt;
(an)+        12   12   20     20       20      24       26         24      28&lt;br /&gt;
-(an)        14   14   22     22       22      26       28         26      30&lt;br /&gt;
d16(an)      16   16   24     24       24      28       30         28      32 &lt;br /&gt;
d8(an,xi)    18   18   26     26       26      30       32         30      34&lt;br /&gt;
abs.w        16   16   24     24       24      28       30         28      32&lt;br /&gt;
abs.l        20   20   28     28       28      32       34         32      36&lt;br /&gt;
d16(pc)      16   16   24     24       24      28       30         28      32&lt;br /&gt;
d8(pc,x1)    18   18   26     26       26      30       32         30      34&lt;br /&gt;
imm          12   12   20     20       20      24       26         24      28&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                op(ea),an       op(ea),dn       op dn,(m)&lt;br /&gt;
&lt;br /&gt;
add.b           -               4+              8+&lt;br /&gt;
add.w           8+              4+              8+&lt;br /&gt;
add.l           6+&amp;amp;             6+&amp;amp;             12+&lt;br /&gt;
and.b           -               4+              8+&lt;br /&gt;
and.w           -               4+              8+&lt;br /&gt;
and.l           -               6+&amp;amp;             12+&lt;br /&gt;
cmp.b           -               4+              -&lt;br /&gt;
cmp.w           6+              4+              -&lt;br /&gt;
cmp.l           6+              6+              -&lt;br /&gt;
divs            -               158+*           -&lt;br /&gt;
divu            -               140+*           -&lt;br /&gt;
eor.b           -               4+              8+&lt;br /&gt;
eor.w           -               4+              8+&lt;br /&gt;
eor.l           -               8+              12+&lt;br /&gt;
muls            -               70+*            -&lt;br /&gt;
mulu            -               70+*            -&lt;br /&gt;
or.b            -               4+              8+&lt;br /&gt;
or.w            -               4+              8+&lt;br /&gt;
or.l            -               6+&amp;amp;             12+&lt;br /&gt;
sub.b           -               4+              8+&lt;br /&gt;
sub.w           8+              4+              8+&lt;br /&gt;
sub.l           6+&amp;amp;             6+&amp;amp;             12+&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
+ = rajouter le temps de calcul de l'adresse effective&lt;br /&gt;
&amp;amp; = raouter 2 p‚riodes d horloge pour les modes an dn et imm‚diat&lt;br /&gt;
* = dur‚e max&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                op #,dn         op #,an         op #,m&lt;br /&gt;
&lt;br /&gt;
addi.b          8               -               12+&lt;br /&gt;
addi.w          8               -               12+&lt;br /&gt;
addi.l          16              -               20+&lt;br /&gt;
addq.b          4               -               8+&lt;br /&gt;
addq.w          4               8               8+&lt;br /&gt;
addq.l          8               8               12+&lt;br /&gt;
andi.b          8               -               12+&lt;br /&gt;
andi.w          8               -               12+&lt;br /&gt;
andi.l          16              -               20+&lt;br /&gt;
cmpi.b          8               -               8+&lt;br /&gt;
cmpi.w          8               -               8+&lt;br /&gt;
cmpi.l          14              -               12+&lt;br /&gt;
eori.b          8               -               12+&lt;br /&gt;
eori.w          8               -               12+&lt;br /&gt;
eori.l          16              -               20+&lt;br /&gt;
moveq           4               -               -&lt;br /&gt;
ori.b           8               -               12+&lt;br /&gt;
ori.w           8               -               12+&lt;br /&gt;
ori.l           16              -               20+&lt;br /&gt;
subi.b          8               -               12+&lt;br /&gt;
subi.w          8               -               12+&lt;br /&gt;
subi.l          16              -               20+&lt;br /&gt;
subq.b          4               -               8+&lt;br /&gt;
subq.w          4               8               8+&lt;br /&gt;
subq.l          8               8               12+&lt;br /&gt;
&lt;br /&gt;
+ = rajouter le temps de calcul de l'adresse effective&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                registre        m‚moire&lt;br /&gt;
&lt;br /&gt;
clr.b               4             8+&lt;br /&gt;
clr.w               4             8+&lt;br /&gt;
clr.l               6             12+&lt;br /&gt;
nbcd                6             8+&lt;br /&gt;
neg.b               4             8+&lt;br /&gt;
neg.w               4             8+&lt;br /&gt;
neg.l               6             12+&lt;br /&gt;
negx.b              4             8+&lt;br /&gt;
negx.w              4             8+&lt;br /&gt;
negx.l              6             12+&lt;br /&gt;
not.b               4             8+&lt;br /&gt;
not.w               4             8+&lt;br /&gt;
not.l               6             12+&lt;br /&gt;
scc ( cc=0 )        4             8+&lt;br /&gt;
scc ( cc=1 )        6             8+&lt;br /&gt;
tas                 4             10+&lt;br /&gt;
tst.b               4             4+&lt;br /&gt;
tst.w               4             4+&lt;br /&gt;
tst.l               4             4+&lt;br /&gt;
&lt;br /&gt;
+ = rajouter le temps de calcul de l'adresse effective&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                   registres      memoire&lt;br /&gt;
&lt;br /&gt;
asr.b  &amp;amp; asl.b        6+2n&lt;br /&gt;
asr.w  &amp;amp; asl.w        6+2n          8+&lt;br /&gt;
asr.l  &amp;amp; asl.l        8+2n&lt;br /&gt;
lsr.b  &amp;amp; lsl.b        6+2n&lt;br /&gt;
lsr.w  &amp;amp; lsl.w        6+2n          8+&lt;br /&gt;
lsr.l  &amp;amp; lsl.l        8+2n&lt;br /&gt;
ror.b  &amp;amp; rol.b        6+2n&lt;br /&gt;
ror.w  &amp;amp; rol.w        6+2n          8+&lt;br /&gt;
ror.l  &amp;amp; rol.l        8+2n&lt;br /&gt;
roxr.b &amp;amp; roxl.b       6+2n&lt;br /&gt;
roxr.w &amp;amp; roxl.w       6+2n          8+&lt;br /&gt;
roxr.l &amp;amp; roxl.l       8+2n&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
+ = rajouter le temps de calcul de l'adresse effective&lt;br /&gt;
n est le nombre de rotations ou de d‚calages successifs&lt;br /&gt;
&lt;br /&gt;
          dynamique     dynamique       statique        statique&lt;br /&gt;
          registre      mmemoire        registre        memoire&lt;br /&gt;
&lt;br /&gt;
bchg.b        -            8+              -              12+&lt;br /&gt;
bchg.l        8*           -               12*            -&lt;br /&gt;
bclr.b        -            8+              -              12+&lt;br /&gt;
bclr.l        10*          -               14*            -&lt;br /&gt;
bset.b        -            8+              -              12+&lt;br /&gt;
bset.l        8*           -               12*            -&lt;br /&gt;
btst.b        -            4+              -              8+&lt;br /&gt;
btst.l        6            -               10             -&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
+ = rajouter le temps de calcul de l'adresse effective&lt;br /&gt;
* = dur‚e max&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
              branchement       pas de&lt;br /&gt;
              effectu‚          branchement&lt;br /&gt;
&lt;br /&gt;
bcc.s              10             8&lt;br /&gt;
bcc.l              10             12&lt;br /&gt;
bra.s              10             -&lt;br /&gt;
bra.l              10             -&lt;br /&gt;
bsr.s              18             -&lt;br /&gt;
bsr.l              18             -&lt;br /&gt;
dbcc cc=1          -              12&lt;br /&gt;
dbcc cc=0          10             14&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
         (an)  (an)+  -(an)   16(an) d8(an,xi)  abs.w  abs.l d16(pc) d8(pc,xi)&lt;br /&gt;
&lt;br /&gt;
jmp        8      -     -       10      14        10      12     10     14      &lt;br /&gt;
jsr        16     -     -       18      22        18      20     18     22&lt;br /&gt;
lea        4      -     -       8       12        8       12     8      12&lt;br /&gt;
pea        12     -     -       16      20        16      20     16     20&lt;br /&gt;
movem.w    12+4n  12+4n -       16+4n   18+4n     16+4n   20+4n  16+4n  18+4n&lt;br /&gt;
(m-&amp;gt;r)       &lt;br /&gt;
movem.l    12+8n  12+8n -       16+8n   18+8n     16+8n   20+8n  16+8n  18+8n&lt;br /&gt;
(m-&amp;gt;r)&lt;br /&gt;
movem.w    8+4n   -     8+4n    12+4n   14+4n     12+4n   16+4n  -      -&lt;br /&gt;
(r-&amp;gt;m)&lt;br /&gt;
movem.l    8+8n   -     8+8n     12+8n  14+8n     12+8n   16+8n  -      -&lt;br /&gt;
(r-&amp;gt;m)&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
n est le nombre de transferts de registra … effectuer&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
             op dn,dn      op m,m&lt;br /&gt;
&lt;br /&gt;
addx.b          4            18&lt;br /&gt;
addx.w          4            18&lt;br /&gt;
addx.l          8            30&lt;br /&gt;
cmpm.b          -            12&lt;br /&gt;
cmpm.w          -            12&lt;br /&gt;
cmpm.l          -            20&lt;br /&gt;
subx.b          4            18&lt;br /&gt;
subx.w          4            18&lt;br /&gt;
subx.l          8            30&lt;br /&gt;
abcd            6            18&lt;br /&gt;
sbcd            6            18&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                68000           68000&lt;br /&gt;
                r-&amp;gt;m            m-&amp;gt;r&lt;br /&gt;
&lt;br /&gt;
movep.w          16               16&lt;br /&gt;
movep.l          24               24&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                        68000           68000&lt;br /&gt;
                        registre        m‚moire&lt;br /&gt;
&lt;br /&gt;
andi to ccr                20              -&lt;br /&gt;
andi to sr                 20              -&lt;br /&gt;
chk ( sans trap )          10              -&lt;br /&gt;
eori to ccr                20              -&lt;br /&gt;
eori to sr                 20              -&lt;br /&gt;
exg                        6               -&lt;br /&gt;
ext                        4               -&lt;br /&gt;
link                       16              -&lt;br /&gt;
move to ccr                12              12&amp;amp;&lt;br /&gt;
move to sr                 12              12&amp;amp;&lt;br /&gt;
move from sr               6               8&amp;amp;&lt;br /&gt;
move usp                   4               -&lt;br /&gt;
nop                        4               -&lt;br /&gt;
ori to ccr                 20              -&lt;br /&gt;
ori to sr                  20              -&lt;br /&gt;
reset                      132             -&lt;br /&gt;
rte                        20              -&lt;br /&gt;
rtr                        20              -&lt;br /&gt;
rts                        16              -&lt;br /&gt;
stop                       4               -&lt;br /&gt;
swap                       4               -&lt;br /&gt;
trapv ( sans trap )        4               -&lt;br /&gt;
unlk                       12              -&lt;br /&gt;
&lt;br /&gt;
&amp;amp; = rajouter le temps de calcul de l'adresse effective&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
                           68000&lt;br /&gt;
&lt;br /&gt;
erreur adresse             50&lt;br /&gt;
erreur de bus              50&lt;br /&gt;
instruction chk            44+*&lt;br /&gt;
instruction illegal        34&lt;br /&gt;
interruption               44#&lt;br /&gt;
violation de privilŠge     34&lt;br /&gt;
trace                      34&lt;br /&gt;
trap                       38&lt;br /&gt;
trapvs                     34&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
+ rajouter l temps de calcul de l'adresse effective&lt;br /&gt;
* dur‚e max&lt;br /&gt;
# 4 p‚riodes d'horloge incluses pour le cycle d'interruption&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
Back to [[ASM_Tutorial]]&lt;br /&gt;
[[Category: ASSEMBLEUR 68000 sur ATARI ST Part 1 ]]&lt;/div&gt;</summary>
		<author><name>&gt;Zorro 2</name></author>
	</entry>
</feed>