RU/2: Форум. Общение пользователей и разработчиков OS/2 (eCS). : Ответить на сообщение
Имя:
e-mail:
FIDO:
Home page:
сохранить данные о вас
Тема:
> > > > В ваткоме я это делаю так: > > > > int gg; > > > > > > > > _asm { > > > > mov gg, ebx > > > > }; > > > > > > > > в gcc так: > > > > > > > > __asm__ ( > > > > "mov $gg, %ebx" > > > > ); > > > > > > > > а какой синтаксис у VAC4? > > > > > > > А никакой. Нет такой конструкции. Пишите ассемблерные прцедуры отдельно, ассемблируйте их ALP-ом и линкуйте с VAC4 объектами. > > > > > > > хм... > > Интересно, как я это сделал в VAC4, исходники не мои. > > Правда, долго парился с какой-то ошибкой, VAC не хотел воспринимать тип данных. Давно было, не помню. > > > > prog.icc > > -------------------------------------------> > > option link(pmtype, vio), file(genasm, "yes"), file(asmfilename, "prog"), > > file(genobject, "Yes") > > { > > target "prog.exe" > > { > > source "pcilib.c", "prog.cpp" > > } > > } > > <-------------------------------------------- > > > > pcilib.c > > --------------------------------------------> > > --------- skip -------- > > ULONG SetIOPL(ULONG CallGate, ULONG Value) { > > void *pfn=NULL; > > _asm{ > > push ebx > > mov ebx,CallGate > > mov word ptr 4[pfn],bx > > xor ebx,ebx > > mov ecx,Value > > call fword ptr[pfn] > > pop ebx > > } > > return 0; > > } > > <--------------------------------------------- > > Спасибо, попробуем. Хотя я вроде так тоже пробовал... >
__, _,_ _, __, ___,
|_) | | | |_ ` /
| \ | | | , | /
~ ~ `~' ~~~ ~~~ ~~~
Programmed by
Dmitri Maximovich
,
Dmitry I. Platonoff
,
Eugen Kuleshov
.
25.09.99 (c) 1999,
RU/2
. All rights reserved.
Rewritten by
Dmitry Ban
. All rights ignored.