навскидку, как-то так бы накарябал :)
- - - Добавлено - - -Код:ld hl,buff
call space1
;...
;
space1:
ld a,h ;a>#20 anyway, not space )))
ld d,h
ld e,l
lp_spc1:
ld c,a ;prev char
ld a,(hl)
ld (de),a
inc hl
cp #0a
ret z
; jr z,clearline
cp #20
jr nz,go_spc1 ;current char not space
cp c
jr z,lp_spc1 ;prev and current char = space, skip one
go_spc1:
inc de ;moved ok
jr lp_spc1
вместо ld a,h, наверное, лучше просто xor a, да и все )))

