On Thu, Feb 01, 2001 at 07:15:13AM +0100, Guido Brugnara wrote: > Quello che vuoi fare non =E8 utilizzare la parallela attraverso il driver= > del kernel, ma leggere e scrivere in memoria I/O; =E8 una cosa diversa. > Se non sbaglio, scusa di kernel non sono esperto, ci dovrebbe essere un m= > odulo che permette di mappare spazi I/O all'utente in modo che si possa f= > are operazioni di lettura scrittura, altrimenti protetti. > Cos=EC fa ad esempio dosemu, ma solo se lo spazio IO non =E8 occupato da = > un driver; se hai parport installato quest'ultimo di alloca come riservat= > o il segmento I/O della parallela; vedi se con un'istruzione iocontrol pu= > oi leggere e scrivere ... Questo e` appunto quello che sto facento io adesso: #define BASE_ADDRESS 0x378 ioperm(BASE_ADDRESS, 3, 1) outb(data, BASE_ADDRESS) outb(4, BASE_ADDRESS + 2); low_nibble = inb(BASE_ADDRESS + 2); hight_nibble = inb(BASE_ADDRESS + 1); low_nibble = low_nibble & 0x0F; /* 00001111 */ hight_nibble = hight_nibble & 0xF0; /* 11110000 */ data_byte = low_nibble | hight_nibble; data_byte = data_byte ^ 0x8B; /* 10001011 */ ioperm(BASE_ADDRRESS, 3, 0) Io vorrei usare i piedini corrispondenti a BASE_ADDRESS (dal 2 al 9) sia come ingressi che come uscite. Questo e` possibile configurando la parallela come bidirezionale o EPP e ECP. Il mio problema e` che non so come utilizzare la parallela in modo EPP: l'ho settata nel bios ma provando a utilizzarla normalmente come sopra ovviamente non funziona. Ho fatto svariate ricerche ma non ho ancora trovato nulla. Ciao -- Daniele --- http://www.grinta.net --- -- Per iscriversi (o disiscriversi), basta spedire un messaggio con SOGGETTO "subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxxxxxx