Xena again

AmigaOne X1000 platform specific issues.
Post Reply
User avatar
jaokim
Beta Tester
Beta Tester
Posts: 92
Joined: Sat Jun 18, 2011 1:41 am

Xena again

Post by jaokim »

I wanted to play with some Xena stuff again. Turns out Lyle's old examples from the wiki, and some other examples I had, now throws a DSI when writing to Xena. What's up with that?

I tried opening that xena.resource/XR_DATABUS, which worked, but still got the DSI. The DSI can be ignored, but it seems to no longer do what it's supposed to do.
Does this has something with what can be read in xena.h regarding "You are still obliged to follow the rules for shared access of the interrupt system"?

Is there anything that can be done about this, besides moving to some older kernel (suggested on this forum).
User avatar
jaokim
Beta Tester
Beta Tester
Posts: 92
Joined: Sat Jun 18, 2011 1:41 am

Re: Xena again

Post by jaokim »

Okay, found the issue.

When getting the memory attributes, you have to check for the MEMATTRF_NOT_MAPPED attribute, and not 0.

Code: Select all

	xmematt = IMMU->GetMemoryAttrs((APTR)0xF4000000, 0);

	// if(0 == xmematt)
	if(xmematt & MEMATTRF_NOT_MAPPED)
	{	// if Xena has no memory space..
		IDOS->Printf("Creating Xena memory space\n");
		IMMU->MapMemory(

Post Reply