![]() |
|
|
Регистрация | << Правила форума >> | FAQ | Пользователи | Календарь | Поиск | Сообщения за сегодня | Все разделы прочитаны |
|
Опции темы | Поиск в этой теме | Опции просмотра |
#1
|
|||
|
|||
![]() Доброго времени) С Делфями работаю уже довольно давно, а в ассемблере нуб полнейший, знаю, что можно включать асм код в делфи с помошью 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 Код:
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; что делать как быть? кода там намного больше, если до чего дойду, ещё спрошу, тут помогите) |