Jump to content

AppleACPIPS2Nub for Leopard only


163 posts in this topic

Recommended Posts

I'm not sure yet, but looks like the scroll wheel is disabled for the "standard" definition of a mouse.

 

Before hacking the mouse source to always enable it, is there an easier way to check what mouse is being reported?

 

Or is there an easier way to enable a mouse scroll wheel?

Link to comment
Share on other sites

Nectar! Nice one Chun-Nan, you're the man! :worried_anim: Now I got what I always wanted, my trusty old PS2 mouse working in harmony with USB keyboard. :weight_lift:

 

~pcwiz - I reckon it's a good idea 4 U 2 look at putting Chun-Nan's AppleACPIPS2Nub.kext_mouse into your 10.5.4 PS2 Fix package; it'd've saved me a few hours work if you had... ;)

Link to comment
Share on other sites

I am SOOO close to having everything working on my Gateway M-6846 :)

 

I started with Jas 10.5.4. The base install came with a AppleACPIPlatform.kext but not a ApplePS2Controller.kext. Installing Chun-Nan's ApplePS2Controller.kext from the ANSI zip in post #67 gave me keyboard support, but no trackpad. Running the PS2Fix1054 installer from the other thread gives trackpad support but no keyboard. Arrh!

 

The PS2Fix1054 includes both a ApplePS2Controller.kext and AppleACPIPlatform.kext, so I tried extracting just the AppleACPIPlatform.kext and installing that along with Chun-Nan's ApplePS2Controller.kext. No nice, still keyboard but no trackpad. So is it just the difference with the ApplePS2Controller? If i have that installed, it doesn't seem to matter what AppleACPIPlatform I have installed, I get the same thing with keyboard working but no trackpad.

Link to comment
Share on other sites

Thanks so much Chun-Nan! I finally have my keyboard working on my Gateway M-6846, after installing your AppleACPIPS2Nub_b5.kext and a copy of ApplePS2Controller.kext.

 

Unfortunately, my trackpad doesn't work. Yet I've discovered something interesting. If i install the 2.0.0 version of ApplePS2Controller.kext along with your ACPIPS2Nub, the keyboard doesn't work, but the trackpad does! Re-installing the 1.1.0 version of ApplePS2Controller.kext reverts the situation back to before, where keyboard works but trackpad doesn't.

 

I am using the 1.2.1 copy of AppleACPIPlatform.kext that came with my Jas 10.5.4 install. Strangely it's 640 KB even though the base 10.5.4 copy you uploaded earlier is 624 KB. I don't know what that means. Both are marked version 1.2.1.

 

The first attachment is the log from your kext + the 1.1.0 ApplePS2Controller.kext. The second is your kext + the 2.0.0 version.

ioreg_sp.txt

ioreg_sp2.txt

Link to comment
Share on other sites

Thanks so much Chun-Nan! I finally have my keyboard working on my Gateway M-6846, after installing your AppleACPIPS2Nub_b5.kext and a copy of ApplePS2Controller.kext.

 

Unfortunately, my trackpad doesn't work. Yet I've discovered something interesting. If i install the 2.0.0 version of ApplePS2Controller.kext along with your ACPIPS2Nub, the keyboard doesn't work, but the trackpad does! Re-installing the 1.1.0 version of ApplePS2Controller.kext reverts the situation back to before, where keyboard works but trackpad doesn't.

 

I am using the 1.2.1 copy of AppleACPIPlatform.kext that came with my Jas 10.5.4 install. Strangely it's 640 KB even though the base 10.5.4 copy you uploaded earlier is 624 KB. I don't know what that means. Both are marked version 1.2.1.

 

The first attachment is the log from your kext + the 1.1.0 ApplePS2Controller.kext. The second is your kext + the 2.0.0 version.

 

Hi enjourni,

 

Sorry for the late reply. I have been busy this week.

 

There are another three kext files, ApplePS2Keyboard, ApplePS2Mouse, and ApplePS2Trackpad, inside the PlugIns folder of ApplePS2Controller.kext. You can replace ApplePS2Trackpad from 1.1.0 from the one from 2.0.0. It should make your keybpard and trackpad work. Don't forget to check the file permission after replacing the file.

 

I don't have JaS 10.5.4 right now so I am not sure if there are any extra kext files inside the PlugIns folder of AppleACPIPlatform.kext.

 

Chun-Nan

Link to comment
Share on other sites

Chun Nan you're a damn genius man! I have an LG XNote Z1-A700k laptop and finally, finally I can use my laptop's internal PS/2 keyboard and trackpad. I just had to use the ANSI driver you provided (and repair permissions etc) and it all worked fine.

 

Thank you so much for your help!

Link to comment
Share on other sites

Chun Nan's modified ApplePS2Controller is actually the changes made by Tom H here. I think credit should go to the original author. There are more changes to the kext to provide more compatibility too so it probably should be considered the first choice to try.

 

http://forum.insanelymac.com/index.php?showtopic=21952

 

I have no issues with Chun Nan (he does excellent work) I just wanted to make sure it was clear where his changes came from. I have a project where i'm trying to pull all the PS2 fixes together.

 

For those interested, I did some diffs and the only significant change for compatibility was the following section.

 

diff -Naur ApplePS2Controller-8.orig/ApplePS2Controller.cpp ApplePS2Controller-8/ApplePS2Controller.cpp
--- ApplePS2Controller-8.orig/ApplePS2Controller.cpp	2008-08-31 13:34:01.000000000 +1000
+++ ApplePS2Controller-8/ApplePS2Controller.cpp	2008-08-31 13:34:48.000000000 +1000
@@ -330,23 +330,34 @@
  // will query these nubs to determine the existence of the keyboard or mouse,
  // and should they exist, will attach themselves to the nub as clients.
  //
+  #define RELEASE(x) do { if(x) { (x)->release(); (x) = 0; } } while(0)

  _keyboardDevice = new ApplePS2KeyboardDevice;

  if ( !_keyboardDevice			   ||
	!_keyboardDevice->init()	   ||
-	   !_keyboardDevice->attach(this) )  goto fail;
+	   !_keyboardDevice->attach(this) )  // goto fail;
+  {
+	RELEASE(_keyboardDevice);
+	RELEASE(_interruptSourceKeyboard);
+  }
+  else
+	_keyboardDevice->registerService();

  _mouseDevice = new ApplePS2MouseDevice;

  if ( !_mouseDevice			   ||
	!_mouseDevice->init()	   ||
-	   !_mouseDevice->attach(this) )  goto fail;
+	   !_mouseDevice->attach(this) )  // goto fail;
+  {
+	RELEASE(_mouseDevice);
+	RELEASE(_interruptSourceMouse);
+  }
+  else
+	_mouseDevice->registerService();

  gApplePS2Controller = this;

-  _keyboardDevice->registerService();
-  _mouseDevice->registerService();
  return true; // success

fail:

Link to comment
Share on other sites

Chun Nan's modified ApplePS2Controller is actually the changes made by Tom H here. I think credit should go to the original author. There are more changes to the kext to provide more compatibility too so it probably should be considered the first choice to try.

 

http://forum.insanelymac.com/index.php?showtopic=21952

 

I have no issues with Chun Nan (he does excellent work) I just wanted to make sure it was clear where his changes came from. I have a project where i'm trying to pull all the PS2 fixes together.

 

For those interested, I did some diffs and the only significant change for compatibility was the following section.

 

diff -Naur ApplePS2Controller-8.orig/ApplePS2Controller.cpp ApplePS2Controller-8/ApplePS2Controller.cpp
   --- ApplePS2Controller-8.orig/ApplePS2Controller.cpp	2008-08-31 13:34:01.000000000 +1000
   +++ ApplePS2Controller-8/ApplePS2Controller.cpp	2008-08-31 13:34:48.000000000 +1000
   @@ -330,23 +330,34 @@
	  // will query these nubs to determine the existence of the keyboard or mouse,
	  // and should they exist, will attach themselves to the nub as clients.
	  //
   +  #define RELEASE(x) do { if(x) { (x)->release(); (x) = 0; } } while(0)

	  _keyboardDevice = new ApplePS2KeyboardDevice;

	  if ( !_keyboardDevice			   ||
		   !_keyboardDevice->init()	   ||
   -	   !_keyboardDevice->attach(this) )  goto fail;
   +	   !_keyboardDevice->attach(this) )  // goto fail;
   +  {
   +	RELEASE(_keyboardDevice);
   +	RELEASE(_interruptSourceKeyboard);
   +  }
   +  else
   +	_keyboardDevice->registerService();

	  _mouseDevice = new ApplePS2MouseDevice;

	  if ( !_mouseDevice			   ||
		   !_mouseDevice->init()	   ||
   -	   !_mouseDevice->attach(this) )  goto fail;
   +	   !_mouseDevice->attach(this) )  // goto fail;
   +  {
   +	RELEASE(_mouseDevice);
   +	RELEASE(_interruptSourceMouse);
   +  }
   +  else
   +	_mouseDevice->registerService();

	  gApplePS2Controller = this;

   -  _keyboardDevice->registerService();
   -  _mouseDevice->registerService();
	  return true; // success

	fail:

 

Hi Dense,

 

I also made some change on ApplePS2Keyboard to try to fix Gatweay and LG keyboard issue. ;)

 

Honestly, compared to Apple source code, I think the main change I made on ApplePS2Controller is to make sure the ApplePS2Controller will also be loaded if there is only one PS2 device (either keyboard or mouse) on the system. (I did check the source code made by ToH but I was not quite sure about the change he/she made. Therefore, I didn't use his/her source code to make other change.)

 

Chun-Nan

Link to comment
Share on other sites

  • 2 weeks later...
We are trying to get our keyboards working on DV6000 and DV9000's over at this thread do you think this kext file will help us?

 

same no ps2 trackpad or keyboard error.

 

Also, should we use kexthelper to install? I saw reference above that said just delete the old nub file and replace it with this one.

 

Thanks

 

Hi Blarneystone ;) I came here with the same idea of asking Chun-nan for help with our usb keyb at boot issue. Did you try his kext file?

Link to comment
Share on other sites

We are trying to get our keyboards working on DV6000 and DV9000's over at this thread do you think this kext file will help us?

 

same no ps2 trackpad or keyboard error.

 

Also, should we use kexthelper to install? I saw reference above that said just delete the old nub file and replace it with this one.

 

Thanks

 

Hi Blarneystone :) I came here with the same idea of asking Chun-nan for help with our usb keyb at boot issue. Did you try his kext file?

 

 

Hi Blarneystone and boriss,

 

I have skimmed the link you posted. You can try the ApplePS2Controller on post #67 to see if it makes any difference.

 

It doesn't matter which tool you are using to install kext files as long as it can set the correct file permissions and clear the kextcache.

 

Chun-Nan

Link to comment
Share on other sites

Hi Blarneystone and boriss,

 

I have skimmed the link you posted. You can try the ApplePS2Controller on post #67 to see if it makes any difference.

 

It doesn't matter which tool you are using to install kext files as long as it can set the correct file permissions and clear the kextcache.

 

Chun-Nan

 

Hi Chun-nan,

 

I've tried your ApplePS2Controller from post #67 but that did not get my laptop ps2 keyboard recognised without connecting a usb keyboard on startup. As with my old ApplePS2Controller from leo4allv4.1 MacOSX will boot without the usb keyb but it takes about 8 mins longer. And then one cpu will remain running at 100% for some kernel task.

 

I did save the ioregsp on this boot with your ApplePS2Controller though. Later I went back to my old ApplePS2Controller and booted with usb keyboard so my laptop ps2 keyboard got recognised again. I also saved ioregsp from this boot.

 

Could you have a look at these 2 ioregsp's and maybe recognise something we could use to get our HP lappies to boot without the need of a usb keyboard connected at boot?

 

ioreg_sp.txt.withusbkeyb.ps2kextleo4allv4.1.rtf

ioreg_sp.txt.nousbkeyb.ps2kextchunnan.rtf

ioreg.docs.compared.rtf

Link to comment
Share on other sites

Hi Chun-Nan,

 

I've built a new OSx86 release called iPC OSx86, I'm done all the packages and all, just building the ISO right now. Anyways, I wanted to use your AppleACPIPS2Nub on the DVD boot so people could use ps2 keyboard and mouse on DVD boot. Would this work, and would it have a negative effect on those who are not using PS2 devices?

 

Thanks

 

P.S. Tried to PM you this but your inbox was full

Link to comment
Share on other sites

Hi Chun-Nan,

 

I've built a new OSx86 release called iPC OSx86, I'm done all the packages and all, just building the ISO right now. Anyways, I wanted to use your AppleACPIPS2Nub on the DVD boot so people could use ps2 keyboard and mouse on DVD boot. Would this work, and would it have a negative effect on those who are not using PS2 devices?

 

Thanks

 

P.S. Tried to PM you this but your inbox was full

 

It workes i used his on my Boot-132 and it works on Dell vostro 1510 ,HP nc8000 and 6 LG laptops i tried on my friends In school

Link to comment
Share on other sites

It won't matter if it doesn't work in 10.5.5 because the DVD is 10.5.4 retail based. I know that the kext works, I am using it right now, but I'm just wondering what kind of effect it will have on users that are NOT using PS/2 devices and are using USB instead. Will the kext just load and not do anything or will it cripple input for USB...I'm pretty sure it will be just fine but I wanted to double check.

Link to comment
Share on other sites

Do we also need AppleACPIPS2Nub if we use your ApplePS2Controller from post #67?

 

Hi boriss,

 

I will check the files later to see if I can figure out anything.

 

No, you don't have to use the AppleACPIPS2Nub if the one you are using now works.

 

Chun-Nan

 

EDIT:

I couldn't download oreg_sp.txt.withusbkeyb.ps2kextleo4allv4.1.rtf. It shoed the file is missing

 

Hi Chun-Nan,

 

I've built a new OSx86 release called iPC OSx86, I'm done all the packages and all, just building the ISO right now. Anyways, I wanted to use your AppleACPIPS2Nub on the DVD boot so people could use ps2 keyboard and mouse on DVD boot. Would this work, and would it have a negative effect on those who are not using PS2 devices?

 

Thanks

 

P.S. Tried to PM you this but your inbox was full

 

Hi ~pcwiz,

 

Sorry that the inbox is full.....

 

I don't think it will have a negative effect since AppleACPIPS2Nub just offers a nub for ApplePS2Controller to attach to. (I think there are more issues with ApplePS2Conttoller than AppleACPIPS2Nub.) However, it may not work if you are using AppleACPIPlatform from Tiger because it contains PS/2 Nub already and most of time it will be loaded beforoe AppleACPIPS2Nub. (I remember that it will cause the duplicated class problem with AppleACPIPS2Nub_b5 and causes PS/2 devices not to work with AppleACPIPS2_mouse)

 

In addition, you can only use one AppleACPIPS2Nub each time (either AppleACPIPS2Nub_b5 or AppleACPIPS2_mouse as the mian nub) or it may cause the problem, too. (I managed to combine those two into one so that it will decide which nub to attach first. However, it is still not compatible with AppleACPIPlatform from Tiger unless I delete the PS/2 Nub entry inside Info.plist of AppleACPIPlatform)

 

Chun-Nan

Link to comment
Share on other sites

 Share

×
×
  • Create New...