Легенда:
новое сообщение
закрытая нитка
новое сообщение
в закрытой нитке
старое сообщение
|
- Напоминаю, что масса вопросов по функционированию форума снимается после прочтения его описания.
- Новичкам также крайне полезно ознакомиться с данным документом.
 |
[pascal] cpuid - есть ли в паскале возможность её использовать 29.04.02 15:27 Число просмотров: 1075
Автор: Chingachguk <Chingachguk> Статус: Member Отредактировано 29.04.02 15:28 Количество правок: 1
|
> BP 7 её не понимает, да к тому-же там расширенные регистры > нужны. Я пробовал inline-ом, но или лыжи кривые, или > второе. Поможите, плиз.
По-моему, он проверяет инструкции и, если не 286, то ругается. По крайней мере, у меня так в tp7 было - инструкций 386 он даже в obj брать не хотел ;)
Думаю, надо так сделать:
mov bx,offset @@CPUID
mov word ptr cs:[bx],0A20Fh
jmp @@CPUID {На всякий пожарный - конвеер все-же ;)))}
@@CPUID:
nop
nop
|
|
<programming>
|
[pascal] cpuid - есть ли в паскале возможность её использовать 29.04.02 13:20
Автор: juic Статус: Незарегистрированный пользователь
|
|
BP 7 её не понимает, да к тому-же там расширенные регистры нужны. Я пробовал inline-ом, но или лыжи кривые, или второе. Поможите, плиз.
|
 |
[pascal] cpuid - есть ли в паскале возможность её использовать 29.04.02 15:27
Автор: Chingachguk <Chingachguk> Статус: Member Отредактировано 29.04.02 15:28 Количество правок: 1
|
> BP 7 её не понимает, да к тому-же там расширенные регистры > нужны. Я пробовал inline-ом, но или лыжи кривые, или > второе. Поможите, плиз.
По-моему, он проверяет инструкции и, если не 286, то ругается. По крайней мере, у меня так в tp7 было - инструкций 386 он даже в obj брать не хотел ;)
Думаю, надо так сделать:
mov bx,offset @@CPUID
mov word ptr cs:[bx],0A20Fh
jmp @@CPUID {На всякий пожарный - конвеер все-же ;)))}
@@CPUID:
nop
nop
|
 |  |
[pascal] cpuid - есть ли в паскале возможность её использовать 29.04.02 20:21
Автор: :-) <:-)> Статус: Elderman
|
Я бы сделал так:
PROCEDURE CPUid(n: LongInt; var EAX, EBX, ECX, EDX: LongInt); Assembler;
ASM
push ds
db $66; mov ax, word ptr n
db $F, $A2
lds si, eax; db $66; mov [si], ax
lds si, ebx; db $66; mov [si], bx
lds si, ecx; db $66; mov [si], cx
lds si, edx; db $66; mov [si], dx
pop ds
END;
---
|
 |  |  |
[pascal] cpuid - а разве есть в bp7... 30.04.02 02:47
Автор: Chingachguk <Chingachguk> Статус: Member
|
|
А разве тама есть возможность писать db ? Вот в tp7 - нет. Если есть, то, конечно, здорово ... ;)
|
 |  |  |  |
[pascal] cpuid - все есть 30.04.02 17:02
Автор: :-) <:-)> Статус: Elderman
|
> А разве тама есть возможность писать db ? Вот в tp7 - нет. > Если есть, то, конечно, здорово ... ;)
Почему ты так решил?
db/dw/dd есть в TP/BP 7.0, и даже в TP 6.0
|
 |  |  |  |  |
[pascal] cpuid - есть ! здорово ! 30.04.02 21:00
Автор: Chingachguk <Chingachguk> Статус: Member
|
> > А разве тама есть возможность писать db ? Вот в tp7 - нет. > > Если есть, то, конечно, здорово ... ;) > Почему ты так решил? > db/dw/dd есть в TP/BP 7.0, и даже в TP 6.0
О, точно, есть ! Я как-то давно, когда кодировать начинал, пробовал - не вышло. Так и засело с тех пор, что нельзя ;)
Спасибо !
|
|
|