Great Plug in!! I just started using it and have noticed a few things that you may already know.

I am using A7 v7.5 Commercial. I have gotten the version from the previous post to work great with my Toshiba Bluetooth stack, including separately connecting more than one remote. I have also started to implement this dll into my menu code. Although the wiimote_getdevices(); function does not seem to be returning the correct value. I have also created my own debug panel, so I do not use ackwii.c.

However, when I try to run the version in the latest post, I get no data. When I copy the dll into my project folder, it doesn't read any data from the wiimote. If I recopy the previous version, it works fine. I don't see any major changes to the lite-C files so I am unsure as to the cause. Since I can copy the two dll's into my project folder and one works and the other doesn't, then I don't think it is my code.

I'd love to help you test this out since I am hoping to use it within this new project as the major input device. I have built a USB IR 'Sensor Bar' to fit the front of my notebook. This is one of the best contributions I have seen to 3DGS, and I hope that you continue to develop it.

Here's how I'm using it...I do call wiimote_disconnect(WiiHandle[x]); when I close the program.

Code:
/******************************************

        AW Adventure Main File
                v 1.0

            Gregory Arndt
     (c) 2008 Artistry Entertainment

******************************************/

#define PRAGMA_PATH 		".";
#define PRAGMA_PATH 		"code";
#define PRAGMA_PATH 		"images";
#define PRAGMA_PATH		"maps";
#define PRAGMA_PATH		"models";
#define PRAGMA_PATH		"sounds";
#define PRAGMA_PATH		"textures";
#define PRAGMA_PLUGIN	"code\\lc_fmod_wrap.dll";
#define PRAGMA_PLUGIN	"code\\ackwii.dll";

// Acknex Includes
#include <litec.h>
#include <acknex.h>
#include <default.c>
// FMOD Wrapper Include
#include "LC_FMOD_WRAP.h";
// Wii DLL Include
//#define WII_DEBUG
#include "ackwii.h"
// AWAdventure Includes
#include "AWAdventure.h"
#include "MediaFunctions.c"
#include "PanelFunctions.c"
#include "SystemFunctions.c"


// Main Function
void main()
  { 
   var i;
   
   fps_max = 180;
   video_switch (6, 32, 2);
   video_window(NULL,NULL,112,strGameName);
	vec_set(screen_color, vector(0, 0, 0));
	mouse_pointer = 0;
	
	zero(WiiBuffer);
	
   on_close = on_esc = NextProgramState;
   on_f10 = ToggleInputCoords;
   // assign functions to Wiimote buttons
	WiiBuffer.event.on_1 = toggleIR;
	WiiBuffer.event.on_2 = toggleVibration;
	
   GetSystemInfo();
	wait(10);
	
	LoadSetup();
	wait(10);
	
	InitializeSounds();
	wait(10);
	
   WiiDevices = wiimote_getdevices();
   WiiIndex = 0;
   if (WiiDevices != NULL)
	  {
		/* connect first device */
		for (i = 0; i < 4; i++)
     	  { WiiHandle[WiiIndex+i] = wiimote_connect(WiiIndex+i); }
//		wiimote_ir(WiiHandle[WiiIndex], 1);
  	  }
	
	NextProgramState();
	
	while (1)
	  {		
		// Move Mouse
		if(WiiHandle[WiiIndex] != NULL) 
		  {
		  	wiimote_status(WiiHandle[WiiIndex], &WiiBuffer[WiiIndex]);
	  		mouse_pos.x = WiiBuffer[WiiIndex].ir[0].ir_x;
			mouse_pos.y = WiiBuffer[WiiIndex].ir[0].ir_y;
		  }
		  else {
		  		  mouse_pos.x = mouse_cursor.x;
				  mouse_pos.y = mouse_cursor.y;
				 }
		
		//Check Volume
		if (vBGMVolume != vBGMVolumeSet) UpdateBGMVolume();
		if (vSFXVolume != vSFXVolumeSet) UpdateSFXVolume();
		if (vMasterVolume != vMasterVolumeSet) UpdateMasterVolume();
		
		wait(1);
	  }	
  }


If I can continue to help thoroughly test this DLL, please let me know.

Gregory

Last edited by GregoryArndt; 10/17/08 11:56. Reason: Testing Update

Gregory Arndt
Artistry Entertainment
** A7 v7.5 Commercial **
Toshiba Satellite X205-SLi3
Vista Ultimate