lxi h,0A30;
    mvi c,FD;
    xra a
fill:   mov m,a
    inx h
    dcr c
    jnz fill
 
    lxi b,0A00
    lxi d,0A30
    lxi h,000c
label1: ldax b
    ani 01
    jnz label2
    ldax b
    stax d
    inx d
    inr h
label2: inx b
    dcr l
    jnz label1
    mov a,h
    sta 0aa0
    ana a
    jz ex
 
    lxi b,0a30
    lxi d,0a50
label11:    ldax b
    ana a
    jp label12
    cpi 80h
    jz label13
    cma;
    inr a
    jmp label12
label13:    mvi a,00
label12:    stax d
    inx b
    inx d
    dcr h
    jnz label11
 
    lda 0aa0
    cpi 2
    jc label21
    sta 0a70
label22:    lda 0aa0
    mov l,a
    lda 0a70
    dcr a
    sta 0a70
    jz label21
    lxi b, 0A50
    lxi d, 0A30
label23:    dcr l
    jz label22
    ldax b
    mov h, a
    inx b
    ldax b
    cmp h
    inx d
    jc label23
    dcx b
    stax b
    inx b
    mov a, h
    stax b
    dcx d
    ldax d
    mov h, a
    inx d
    ldax d
    dcx d
    stax d
    inx d
    mov a, h
    stax d
    jmp label23
 
label21:    lxi b,0a30
    lxi h,0
    lda 0aa0
    mov d,a
label31:    ldax b
    ana a
    jp label32
    add l
    mov l,a
    mov a,h
    aci 0ffh
    mov h,a
    jmp label33
label32:    add l
    mov l,a
    mov a,h
    aci 00
    mov h,a
label33:    inx b
    dcr d
    jnz label31
    shld 0AF0
 
skip:   lda 0af1
    ani 80h
    jz div1
    mvi a,0ffh
    sta 0af3
    lxi h,0af0
    call neg
div1:   mvi c, 00
    lda 0aa0
    mov d,a
    lda 0AF1
    mov e,a
    call div
    mov a, h
    sta 0AF9
    lda 0AF0
    mov e, a
    call div
    mov a, h
    sta 0AF8
    mov a,c
    sta 0AF7
    lda 0AF3
    cpi 0FFh
    jnz ex
    lxi h,0af8
    call neg
ex: rst1
 
neg:    mov a,m
    cma
    adi 01
    mov m,a
    inx h
    mov a,m
    cma
    aci 00
    mov m,a
    ret
 
div:    lxi h,0008
div3:   mov a, e
    ral
    mov e, a
    mov a, c
    ral
    sub d
    jnc div2
    add d
div2:   mov c, a
    cmc
    mov a, h
    ral
    mov h, a
    dcr l
    jnz div3
    ret

