Доброго времени) С Делфями работаю уже довольно давно, а в ассемблере нуб полнейший, знаю, что можно включать асм код в делфи с помошью asm..end; но у меня возникли сложности с переводом кода из ассемблера, не могу или не знаю как правильно объяснить делфи такую конструкцию:
Код:
kit_start:
section .restart vstart=0
cli
xor bx, bx
mov ss, bx
mov [ss:0x7afe], sp
mov sp, 0x7afe
push ds
pushad
mov ds,bx
mov ax, [0x413]
sub ax, 2
mov [0x413], ax
shl ax, 0x6
mov ax, CODEBASEIN1MB
mov es, ax
mov bx, 0x8000
mov [bx + codereloc], ax
mov [bx + codeloc2], ax
xor bx, bx
cld
......
mov [0x4e], es
sti
push es
push word dertig
retf
начало
kit_start:
section .restart vstart=0
как записать?
ив от ещё:
Код:
sleep:.
mov cx, 0x1ff
l1:
push cx
mov cx,0xffff
l2:
loop l2
pop cx
loop l1
ret
на l2 ругается если записывать так:
Код:
procedure sleep();
asm
mov cx, 0x1ff
end;
procedure l1();
asm
push cx
mov cx,0xffff
end;
procedure l2();
asm
loop l2//тут ворчит
pop cx
loop l1
retend;
что делать как быть?
кода там намного больше, если до чего дойду, ещё спрошу, тут помогите)