mirror of
https://github.com/hsoft/collapseos.git
synced 2024-11-24 10:18:05 +11:00
f4b6c7637d
scas, it's not needed any more.
100 lines
1.1 KiB
NASM
100 lines
1.1 KiB
NASM
jp test
|
|
|
|
.inc "core.asm"
|
|
|
|
testNum: .db 1
|
|
|
|
test:
|
|
ld hl, 0xffff
|
|
ld sp, hl
|
|
|
|
; *** Just little z80 flags memo.
|
|
and a ; clear carry
|
|
ld hl, 100
|
|
ld de, 101
|
|
sbc hl, de
|
|
jp nc, fail ; carry is set
|
|
call nexttest
|
|
|
|
and a ; clear carry
|
|
ld hl, 101
|
|
ld de, 100
|
|
sbc hl, de
|
|
jp c, fail ; carry is reset
|
|
call nexttest
|
|
|
|
ld a, 1
|
|
dec a
|
|
jp m, fail ; positive
|
|
dec a
|
|
jp p, fail ; negative
|
|
call nexttest
|
|
|
|
; *** subHL ***
|
|
ld hl, 0x123
|
|
ld a, 0x25
|
|
call subHL
|
|
ld a, h
|
|
cp 0
|
|
jp nz, fail
|
|
ld a, l
|
|
cp 0xfe
|
|
jp nz, fail
|
|
call nexttest
|
|
|
|
ld hl, 0x125
|
|
ld a, 0x23
|
|
call subHL
|
|
ld a, h
|
|
cp 1
|
|
jp nz, fail
|
|
ld a, l
|
|
cp 0x02
|
|
jp nz, fail
|
|
call nexttest
|
|
|
|
ld hl, 0x125
|
|
ld a, 0x25
|
|
call subHL
|
|
ld a, h
|
|
cp 1
|
|
jp nz, fail
|
|
ld a, l
|
|
cp 0
|
|
jp nz, fail
|
|
call nexttest
|
|
|
|
; *** cpHLDE ***
|
|
ld hl, 0x42
|
|
ld de, 0x42
|
|
call cpHLDE
|
|
jp nz, fail
|
|
jp c, fail
|
|
call nexttest
|
|
|
|
ld de, 0x4242
|
|
call cpHLDE
|
|
jp z, fail
|
|
jp nc, fail
|
|
call nexttest
|
|
|
|
ld hl, 0x4243
|
|
call cpHLDE
|
|
jp z, fail
|
|
jp c, fail
|
|
call nexttest
|
|
|
|
; success
|
|
xor a
|
|
halt
|
|
|
|
nexttest:
|
|
ld a, (testNum)
|
|
inc a
|
|
ld (testNum), a
|
|
ret
|
|
|
|
fail:
|
|
ld a, (testNum)
|
|
halt
|