Fixed CII (?) did not handle stack pointer right
authorceriel <none@none>
Wed, 10 Nov 1993 12:51:03 +0000 (12:51 +0000)
committerceriel <none@none>
Wed, 10 Nov 1993 12:51:03 +0000 (12:51 +0000)
mach/z80/libem/cii.s

index d042d65..c392135 100644 (file)
        ex de,hl        ! de := difference (> 0)
        ld hl,0
        add hl,sp       ! hl := sp
+       dec de          ! if difference = 1, don't adjust stack pointer
+       jr nz, 4f
+       inc de
+       jr 5f
+4:
+       inc de
        push hl
        or a
        sbc hl,de
        dec hl          ! now hl points to
                        ! most significant byte
                        ! of the source
+5:
        or a            ! see if we're doing
                        ! a 'cii' or a 'cuu'
        jr nz,3f        ! cuu, expand with zeroes