Shaos wrote:Да нету у меня диска с полным досом ещё - ни формата, ни дисккопи - ничего...
Так а что есть?
Shaos wrote:Я пока просто думаю как подручными средствами скопировать дискету с бутом
Непонятно, как решать задачку, не имея исходных данных.
Shaos wrote:P.S. У биоса 13h вроде есть функция 5 - форматирование дорожки, можно попробовать свой недоформат нагородить
Если можно нагородить свой формат, можно и родной запустить. Или я чего-то не понимаю? Есть же картридж, опять-таки...
Копировщик целой дискеты (приемник, понятное дело, должен быть форматирован).
360k памяти найдется?
Code: Select all
org 100h
use16
;360k
TRKS = 40
SPT = 9
HDS = 2
mov sp,0FFFEh
mov ah,48h
mov bx,(TRKS*SPT*HDS*512) shr 4
int 21h
jnc .3
jmp fail
.3: mov ES,ax
mov di,ax
mov dx,msg1
mov ah,09h
int 21h
xor ax,ax
int 16h
.1: mov ax,(2 shl 8)+SPT
mov cl,1
mov ch,[cyl]
mov dh,[hd]
xor [hd],1
jnz .4
inc [cyl]
.4: mov dl,0
xor bx,bx
int 13h
mov ax,ES
add ax,(SPT*512) shr 4
mov ES,ax
cmp [cyl],TRKS
jb .1
mov dx,msg2
mov ah,09h
int 21h
xor ax,ax
int 16h
mov ES,di
mov word [hd],0
.2: mov ax,(3 shl 8)+SPT
mov cl,1
mov ch,[cyl]
mov dh,[hd]
xor [hd],1
jnz .5
inc [cyl]
.5: mov dl,0
xor bx,bx
int 13h
mov ax,ES
add ax,(SPT*512) shr 4
mov ES,ax
cmp [cyl],TRKS
jb .1
mov ES,di
mov ah,49h
int 21h
fail:
mov ax,4C00h
int 21h
msg1 db 'Insert READ disk A: and press any key',13,10,'$'
msg2 db 'Insert WRITE disk A: and press any key',13,10,'$'
hd db 0
cyl db 0