URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID9
Нить номер: 1027
[ Назад ]

Исходное сообщение
"Jelezo"

Отправлено Hadash , 09-Окт-02 22:24 
Zdrasti vsem!
Est' nebol'shaia problema.

#incude<iostream>
#incude<sys/io.h>
#incude<sys/perm.h>
main()
{
unsigned char x;
if(ioperm(0x378,3,1))
{
printf("Error lpt");//#1
exit(1);
}

if(ioperm(0xd800,3,1))
{
printf("Error snd crd");//#2
exit(1);
}

x=inp(0xd800);
outb(x,0x378);//#3

if(ioperm(0x378,3,0))
{
printf("Error lpt");//#4
exit(1);
}
if(ioperm(0xd800,3,0))
{
printf("Error snd crd");//#5
exit(1);
}
}//end of main

dak vot problema v tom, chto menia vikidivaet v stroke #2 postoianno (privilegii root). Esli ia ubiraiu stroki #2,#3,#5, to vsio idiot OK. Mojet bit' prosto nel'zia rabotat' srazu s dvumia adresami, ili problema v tom chto adres chetiriohznachnii?
Hlp, PLZ!!!
THNX.


Содержание

Сообщения в этом обсуждении
"RE: Jelezo"
Отправлено qq , 10-Окт-02 01:18 

однако маны пока еще читать никому не вредно было
man ioperm:
       Only  the  first  0x3ff I/O ports can be specified in this
       manner.  For more ports, the iopl function must  be  used.
так что man iopl ;)

"RE: Jelezo"
Отправлено Владимир , 24-Ноя-02 20:58 
>
>однако маны пока еще читать никому не вредно было
>man ioperm:
>       Only  the  first
> 0x3ff I/O ports can be specified in this
>       manner.  For more ports,
>the iopl function must  be  used.
>так что man iopl ;)


тогда почему у меня такого мана нет(man outb, man ioperm, ...)?
система FreeBSD 4.4-Release
а в /usr/include/sys/.....
    /usr/include/asm/.....
   и вообще таких библиотек нету, может надо какойто дополнительный пакет инсталироавть?


"RE: Jelezo"
Отправлено qq , 25-Ноя-02 01:36 
просто это платформенно-зависимые функции.
для фри надо смотреть
man io
также i386_get_ioperm, i386_set_ioperm

и инклюды другие
глянь сюда
http://forum.ixbt.com/0026/004148.html
тут для фри запись в порт