direct I/O access

Mike Meyer mwm-keyword-freebsdhackers2.e313df at mired.org
Wed May 30 06:43:51 UTC 2007


In <20070529181027.65AD5700009C at mwinf2454.orange.fr>, rmgls at wanadoo.fr typed:
> Sorry for cross posting, but perhaps hackers is a better list than multimedia
> for this topic.

Probably.

> i am trying to port my old assembler soft for Dos to FreeBSD.

You have my sympathy.

> i need to write and read directly to the midi and scsi device.
> when i try something like this i receive a sigbus error
> 
> SORRY, i am NOT nor a C nor a FreeBSD expert!!!
> all i know is Assembly language!

You may have to learn some. Or at least be able to read it.

And I have to ask. The hardware has changed a lot since the days of
DoS, and things that worked then may cause strange results on modern
hardware. Do you know modern hardware, or are you still using dos-era
hardware?

> i made some search in the devel handbook and did not found the solution.
> What is wrong here?
> Can you enlight me please?
> 
> 
> Many thanks in advance and bests regards
> 
> Raoul
> rmgls at wanadeoo.fr
> 
> ---cut---
> 
> 	.data
> 	.align 4
> params:	.word 0x330,2,1 # midi port => enabling IO ???
> 
> 	.text
> 	.align 4
> 	.global _start
> _start:
> 	nop
> 	pushl	params
> 	pushl	$0x3

I believe this should be $0x4, as you want to *set* the values, not
get them.

You also need to open the file "/dev/io".  I believe that leaving this
file open for anything more than a handful of instructions would be a
bad thing, but I'm not going to verify it.

	Best of luck,
	<mike

> 	movl	$0Xa5,%eax
> 	int	$0x80
> 	addl	$0x08,%esp
> 	movw	$0x331,%dx   #  status register
> 	inb	%dx,%al
> # ...
> 	pushl	$0 # exit
> 	movl	$0x1,%eax
> 	int	$0x80
> 
> _______________________________________________
> freebsd-hackers at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-hackers
> To unsubscribe, send any mail to "freebsd-hackers-unsubscribe at freebsd.org"
> 

-- 
Mike Meyer <mwm at mired.org>		http://www.mired.org/consulting.html
Independent Network/Unix/Perforce consultant, email for more information.


More information about the freebsd-hackers mailing list