blob: 8e9085e9608a0579bcbaf331f72d4acbdcc36e02 [file] [log] [blame]
.text
.org 0
;; Game Boy Z80 opcode test
nop
ld bc,0xbeaf
ld (bc),a
inc bc
inc b
dec b
ld b,0xfd
rlca
ld (0xbeaf),sp
add hl,bc
ld a,(bc)
dec bc
inc c
dec c
ld c,0xfd
rrca
stop
ld de,0xbeaf
ld (de),a
inc de
inc d
dec d
ld d,0xfd
rla
jr .+12
add hl,de
ld a,(de)
dec de
inc e
dec e
ld e,0xfd
rra
jr nz,.+12
ld hl,0xbeaf
ldi (hl),a
ld (hl+),a
inc hl
inc h
dec h
ld h,0xfd
daa
jr z,.+12
add hl,hl
ldi a,(hl)
ld a,(hl+)
dec hl
inc l
dec l
ld l,0xfd
cpl
jr nc,.+12
ld sp,0xbeaf
ldd (hl),a
ld (hl-),a
inc sp
inc (hl)
dec (hl)
ld (hl),0xfd
scf
jr c,.+12
add hl,sp
ldd a,(hl)
ld a,(hl-)
dec sp
inc a
dec a
ld a,0xfd
ccf
ld b,b
ld b,c
ld b,d
ld b,e
ld b,h
ld b,l
ld b,(hl)
ld b,a
ld c,b
ld c,c
ld c,d
ld c,e
ld c,h
ld c,l
ld c,(hl)
ld c,a
ld d,b
ld d,c
ld d,d
ld d,e
ld d,h
ld d,l
ld d,(hl)
ld d,a
ld e,b
ld e,c
ld e,d
ld e,e
ld e,h
ld e,l
ld e,(hl)
ld e,a
ld h,b
ld h,c
ld h,d
ld h,e
ld h,h
ld h,l
ld h,(hl)
ld h,a
ld l,b
ld l,c
ld l,d
ld l,e
ld l,h
ld l,l
ld l,(hl)
ld l,a
ld (hl),b
ld (hl),c
ld (hl),d
ld (hl),e
ld (hl),h
ld (hl),l
halt
ld (hl),a
ld a,b
ld a,c
ld a,d
ld a,e
ld a,h
ld a,l
ld a,(hl)
ld a,a
add a,b
add a,c
add a,d
add a,e
add a,h
add a,l
add a,(hl)
add a,a
adc a,b
adc a,c
adc a,d
adc a,e
adc a,h
adc a,l
adc a,(hl)
adc a,a
sub a,b
sub a,c
sub a,d
sub a,e
sub a,h
sub a,l
sub a,(hl)
sub a,a
sbc a,b
sbc a,c
sbc a,d
sbc a,e
sbc a,h
sbc a,l
sbc a,(hl)
sbc a,a
and b
and c
and d
and e
and h
and l
and (hl)
and a
xor b
xor c
xor d
xor e
xor h
xor l
xor (hl)
xor a
or b
or c
or d
or e
or h
or l
or (hl)
or a
cp b
cp c
cp d
cp e
cp h
cp l
cp (hl)
cp a
ret nz
pop bc
jp nz,0xbeaf
jp 0xbeaf
call nz,0xbeaf
push bc
add a,0xfd
rst 0
ret z
ret
jp z,0xbeaf
nop ;CB prefix
call z,0xbeaf
call 0xbeaf
adc a,0xfd
rst 0x08
ret nc
pop de
jp nc,0xbeaf
;xx
call nc,0xbeaf
push de
sub a,0xfd
rst 0x10
ret c
reti
jp c,0xbeaf
;xx
call c,0xbeaf
;xx
sbc a,0xfd
rst 0x18
ldh (0xfd),a
pop hl
ldh (c),a
;xx
;xx
push hl
and 0xfd
rst 0x20
add sp,-12
jp (hl)
ld (0xbeaf),a
;xx
;xx
;xx
xor 0xfd
rst 0x28
ldh a,(0xfd)
pop af
ldh a,(c)
di
;xx
push af
or 0xfd
rst 0x30
ldhl sp,-12
ld sp,hl
ld a,(0xbeaf)
ei
;xx
;xx
cp 0xfd
rst 0x38
rlc b
rlc c
rlc d
rlc e
rlc h
rlc l
rlc (hl)
rlc a
rrc b
rrc c
rrc d
rrc e
rrc h
rrc l
rrc (hl)
rrc a
rl b
rl c
rl d
rl e
rl h
rl l
rl (hl)
rl a
rr b
rr c
rr d
rr e
rr h
rr l
rr (hl)
rr a
sla b
sla c
sla d
sla e
sla h
sla l
sla (hl)
sla a
sra b
sra c
sra d
sra e
sra h
sra l
sra (hl)
sra a
swap b
swap c
swap d
swap e
swap h
swap l
swap (hl)
swap a
srl b
srl c
srl d
srl e
srl h
srl l
srl (hl)
srl a
bit 0,b
bit 0,c
bit 0,d
bit 0,e
bit 0,h
bit 0,l
bit 0,(hl)
bit 0,a
bit 1,b
bit 1,c
bit 1,d
bit 1,e
bit 1,h
bit 1,l
bit 1,(hl)
bit 1,a
bit 2,b
bit 2,c
bit 2,d
bit 2,e
bit 2,h
bit 2,l
bit 2,(hl)
bit 2,a
bit 3,b
bit 3,c
bit 3,d
bit 3,e
bit 3,h
bit 3,l
bit 3,(hl)
bit 3,a
bit 4,b
bit 4,c
bit 4,d
bit 4,e
bit 4,h
bit 4,l
bit 4,(hl)
bit 4,a
bit 5,b
bit 5,c
bit 5,d
bit 5,e
bit 5,h
bit 5,l
bit 5,(hl)
bit 5,a
bit 6,b
bit 6,c
bit 6,d
bit 6,e
bit 6,h
bit 6,l
bit 6,(hl)
bit 6,a
bit 7,b
bit 7,c
bit 7,d
bit 7,e
bit 7,h
bit 7,l
bit 7,(hl)
bit 7,a
res 0,b
res 0,c
res 0,d
res 0,e
res 0,h
res 0,l
res 0,(hl)
res 0,a
res 1,b
res 1,c
res 1,d
res 1,e
res 1,h
res 1,l
res 1,(hl)
res 1,a
res 2,b
res 2,c
res 2,d
res 2,e
res 2,h
res 2,l
res 2,(hl)
res 2,a
res 3,b
res 3,c
res 3,d
res 3,e
res 3,h
res 3,l
res 3,(hl)
res 3,a
res 4,b
res 4,c
res 4,d
res 4,e
res 4,h
res 4,l
res 4,(hl)
res 4,a
res 5,b
res 5,c
res 5,d
res 5,e
res 5,h
res 5,l
res 5,(hl)
res 5,a
res 6,b
res 6,c
res 6,d
res 6,e
res 6,h
res 6,l
res 6,(hl)
res 6,a
res 7,b
res 7,c
res 7,d
res 7,e
res 7,h
res 7,l
res 7,(hl)
res 7,a
set 0,b
set 0,c
set 0,d
set 0,e
set 0,h
set 0,l
set 0,(hl)
set 0,a
set 1,b
set 1,c
set 1,d
set 1,e
set 1,h
set 1,l
set 1,(hl)
set 1,a
set 2,b
set 2,c
set 2,d
set 2,e
set 2,h
set 2,l
set 2,(hl)
set 2,a
set 3,b
set 3,c
set 3,d
set 3,e
set 3,h
set 3,l
set 3,(hl)
set 3,a
set 4,b
set 4,c
set 4,d
set 4,e
set 4,h
set 4,l
set 4,(hl)
set 4,a
set 5,b
set 5,c
set 5,d
set 5,e
set 5,h
set 5,l
set 5,(hl)
set 5,a
set 6,b
set 6,c
set 6,d
set 6,e
set 6,h
set 6,l
set 6,(hl)
set 6,a
set 7,b
set 7,c
set 7,d
set 7,e
set 7,h
set 7,l
set 7,(hl)
set 7,a