.model tiny
.code
org 0100h


start: push cs
       pop es

       lea dx,nazwa
       mov ax,3d00h
       int 21h
       jnc oki

       lea dx,error
       mov ah,9
       int 21h
       ret

oki:   mov bx,ax
       mov ax,4200h
       xor cx,cx
       mov dx,16
       int 21h

       mov bp,1

ml1:   lea dx,buf
       mov ax,3f00h
       mov cx,128
       int 21h

       mov cx,256
       lea si,buf
       lea di,sect
       mov ah,7
plop:  lodsb
       stosw
       loop plop

       push bx
;zapis
       lea bx,sect
       mov cx,bp
       mov dh,cl
       shr dh,4
       and cl,15
       inc cl
       mov dl,81h
       mov ax,301h
       int 13h
       pop bx

       inc bp
       cmp bp,4097
       jnz ml1

       lea dx,done
       mov ah,9
       int 21h
       mov ax,4c00h
       int 21h

done    db 'done$'
nazwa db 'mydos45d.atr',0
error db 'brak pliku mydos45d.atr!$'
sect  db 512 dup (7)
buf   db 256 dup (?)

      end start