-
Notifications
You must be signed in to change notification settings - Fork 0
Memory contention
Manuel Sainz de Baranda y Goñi edited this page Oct 12, 2022
·
19 revisions
Assembly | T-states | Prefix M1 | M1 | M2 | M3 | M4 | M5 |
---|---|---|---|---|---|---|---|
ld J,K |
4 | f(pc) | |||||
ld O,P |
44 | f(pc) | f(pc+1) | ||||
ld J,BYTE |
43 | f(pc) | a(pc+1) | ||||
ld O,BYTE |
443 | f(pc) | f(pc+1) | a(pc+2) | |||
ld J,(hl) |
43 | f(pc) | r(hl) | ||||
ld J,(XY+OFFSET) |
44353 | f(pc) | f(pc+1) | a(pc+2) | %:5 | r(EA) | |
ld (hl),K |
43 | f(pc) | w(hl) | ||||
ld (XY+OFFSET),K |
44353 | f(pc) | f(pc+1) | a(pc+2) | %:5 | w(EA) | |
ld (hl),BYTE |
433 | f(pc) | r(pc+1) | w(hl) | |||
ld (XY+OFFSET),BYTE |
44353 | f(pc) | f(pc+1) | a(pc+2) | a(pc+3):2 | w(EA) | |
ld a,(bc) |
3 | f(pc) | r(bc) | ||||
ld a,(de) |
3 | f(pc) | r(de) | ||||
ld a,(WORD) |
4333 | f(pc) | a(pc+1) | a(pc+2) | r(WORD) | ||
ld (bc),a |
43 | f(pc) | w(bc) | ||||
ld (de),a |
43 | f(pc) | w(de) | ||||
ld (WORD),a |
4333 | f(pc) | a(pc+1) | a(pc+2) | w(WORD) | ||
ld a,i |
45 | f(pc) | f(pc):1 | ||||
ld a,r |
45 | f(pc) | f(pc):1 | ||||
ld i,a |
45 | f(pc) | f(pc):1 | ||||
ld r,a |
45 | f(pc) | f(pc):1 | ||||
ld SS,WORD |
433 | f(pc) | a(pc+1) | a(pc+2) | |||
ld XY,WORD |
4433 | f(pc) | f(pc+1) | a(pc+2) | a(pc+3) | ||
ld hl,(WORD) |
43333 | f(pc) | a(pc+1) | a(pc+2) | r(WORD) | r(WORD+1) | |
ld SS,(WORD) |
443333 | f(pc) | f(pc+1) | a(pc+2) | a(pc+3) | r(WORD) | r(WORD+1) |
ld XY,(WORD) |
443333 | f(pc) | f(pc+1) | a(pc+2) | a(pc+3) | r(WORD) | r(WORD+1) |
ld (WORD),hl |
43333 | f(pc) | a(pc+1) | a(pc+2) | w(WORD) | w(WORD+1) | |
ld (WORD),SS |
443333 | f(pc) | f(pc+1) | a(pc+2) | a(pc+3) | w(WORD) | w(WORD+1) |
ld (WORD),XY |
443333 | f(pc) | f(pc+1) | a(pc+2) | a(pc+3) | w(WORD) | w(WORD+1) |
ld sp,hl |
6 | f(pc):2 | |||||
ld sp,XY |
46 | f(pc) | f(pc+1):2 | ||||
push TT |
533 | f(pc):1 | w(sp-1) | w(sp-2) | |||
push XY |
4533 | f(pc) | f(pc+1):1 | w(sp-1) | w(sp-2) | ||
pop TT |
433 | f(pc) | r(sp) | r(sp+1) | |||
pop XY |
4433 | f(pc) | f(pc+1) | r(sp) | r(sp+1) | ||
ex de,hl |
4 | f(pc) | |||||
ex af,af' |
4 | f(pc) | |||||
exx |
4 | f(pc) | |||||
ex (sp),hl |
43435 | f(pc) | r(sp) | r(sp+1):1 | w(sp+1) | w(sp):2 | |
ex (sp),XY |
443435 | f(pc) | f(pc+1) | r(sp) | r(sp+1):1 | w(sp+1) | w(sp):2 |
ldX |
4435 | f(pc) | f(pc+1) | r(hl) | w(de):2 | ||
ldXr |
4435[5] | f(pc) | f(pc+1) | r(hl) | w(de):2 | [%:5] | |
cpX |
4435 | f(pc) | f(pc+1) | r(hl) | %:5 | ||
cpXr |
4435[5] | f(pc) | f(pc+1) | r(hl) | %:5 | [%:5] | |
U [a,]K |
4 | f(pc) | |||||
U [a,]P |
44 | f(pc) | f(pc+1) | ||||
U [a,]BYTE |
43 | f(pc) | a(pc+1) | ||||
U [a,](hl) |
43 | f(pc) | r(hl) | ||||
U [a,](XY+OFFSET) |
44353 | f(pc) | f(pc+1) | a(pc+2) | %:5 | r(EA) | |
V J |
4 | f(pc) | |||||
V O |
44 | f(pc) | f(pc+1) | ||||
V (hl) |
443 | f(pc) | r(hl):1 | write(hl) | |||
V (XY+OFFSET) |
443543 | f(pc) | f(pc+1) | a(pc+2) | %:5 | r(EA):1 | w(EA) |
daa |
4 | f(pc) | |||||
cpl |
4 | f(pc) | |||||
neg |
44 | f(pc) | f(pc+1) | ||||
ccf |
4 | f(pc) | |||||
scf |
4 | f(pc) | |||||
nop |
4 | f(pc) | |||||
halt |
4 | f(pc) | |||||
di |
4 | f(pc) | |||||
ei |
4 | f(pc) | |||||
im 0 |
44 | f(pc) | f(pc+1) | ||||
im 1 |
44 | f(pc) | f(pc+1) | ||||
im 2 |
44 | f(pc) | f(pc+1) | ||||
add hl,SS |
443 | f(pc) | %:4 | %:3 | |||
adc hl,SS |
4443 | f(pc) | f(pc+1) | %:4 | %:3 | ||
sbc hl,SS |
4443 | f(pc) | f(pc+1) | %:4 | %:3 | ||
add XY,WW |
4443 | f(pc) | f(pc+1) | %:4 | %:3 | ||
inc SS |
6 | f(pc):2 | |||||
inc XY |
46 | f(pc) | f(pc+1):2 | ||||
dec SS |
6 | f(pc):2 | |||||
dec XY |
46 | f(pc) | f(pc+1):2 | ||||
rlca |
4 | f(pc) | |||||
rla |
4 | f(pc) | |||||
rrca |
4 | f(pc) | |||||
rra |
4 | f(pc) | |||||
G K |
44 | f(pc) | f(pc+1) | ||||
G (hl) |
4443 | f(pc) | f(pc+1) | r(hl):1 | w(hl) | ||
rld |
44343 | f(pc) | f(pc+1) | r(hl) | %:4 | w(hl) | |
rrd |
44343 | f(pc) | f(pc+1) | r(hl) | %:4 | w(hl) | |
bit N,K |
44 | f(pc) | f(pc+1) | ||||
bit N,(hl) |
444 | f(pc) | f(pc+1) | r(hl):1 | |||
M N,K |
44 | f(pc) | f(pc+1) | ||||
M N,(hl) |
4443 | f(pc) | f(pc+1) | r(hl):1 | w(hl) | ||
jp WORD |
433 | f(pc) | a(pc+1) | a(pc+2) | |||
jp Z,WORD |
433 | f(pc) | a(pc+1) | a(pc+2) | |||
jr OFFSET |
435 | f(pc) | a(pc+1) | %:5 | |||
jr Z,OFFSET |
43[5] | f(pc) | a(pc+1) | [%:5] | |||
jp (hl) |
4 | f(pc) | |||||
jp (XY) |
44 | f(pc) | |||||
djnz OFFSET |
53[5] | f(pc):1 | a(pc+1) | [%:5] | |||
call WORD |
43433 | f(pc) | a(pc+1) | a(pc+2):1 | w(sp-1) | w(sp-2) | |
call Z,WORD |
433/43433 | f(pc) | a(pc+1) | a(pc+2)[:1] | [w(sp-1)] | [w(sp-2)] | |
ret |
433 | f(pc) | r(sp) | r(sp+1) | |||
ret Z |
5[33] | f(pc):1 | [read(sp)] | [r(sp+1)] | |||
reti/retn |
4433 | f(pc) | f(pc+1) | r(sp) | r(sp+1) | ||
rst N |
533 | f(pc):1 | w(sp-1) | w(sp-2) | |||
in a,(BYTE) |
434 | f(pc) | a(pc+1) | i((a<<8)|BYTE) | |||
in J,(c) |
444 | f(pc) | f(pc+1) | i(bc) | |||
in (c) |
444 | f(pc) | f(pc+1) | i(bc) | |||
inX |
4543 | f(pc) | f(pc+1):1 | i(bc) | w(hl) | ||
inXr |
4543[5] | f(pc) | f(pc+1):1 | i(bc) | w(hl) | [%:5] | |
out (BYTE),a |
434 | f(pc) | a(pc+1) | o((a<<8)|BYTE) | |||
out (c),J |
444 | f(pc) | f(pc+1) | o(bc) | |||
out (c),0 |
444 | f(pc) | f(pc+1) | o(bc) | |||
outX |
4534 | f(pc) | f(pc+1):1 | r(hl) | o(bc) | ||
otXr |
4534[5] | f(pc) | f(pc+1):1 | r(hl) | o(bc) | [%:5] |
Copyright © Manuel Sainz de Baranda y Goñi, Peter Helcmanovsky, holub, Weiv and Zoran Vučenović
Published under the terms of the GNU Free Documentation License