Jump to content

Intel GMA945 (0x27AE8086+0x27A28086) resolution + CI/QE/OpenGL solution


  • Please log in to reply
188 replies to this topic

#101
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,614 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

That's great news, I've been having real trouble trying to get my GMA950 to work with anything higher than 10.6.0.

What's the install procedure exactly though? The original post isn't very clear to me.

1. Install boot_rel3
2. In /Extra/com.apple.Boot.plist set under the kernel boot arguments
GraphicsEnabler=Yes
3. Replace the original kexts with the patched ones
4. Reboot
It should work now

Andyvandick mirror doesn't work with last kext for 10.6.4, with previous work. Can you fix ? Can you hand out the patch for mirror? not only a227 to ae27. so to applied it to ourselves to have mirror work also for future version?

Is it for the 27A2 card or for the 27AE one?
Basically modding 86 80 72 27 to 86 80 AE 27 should be sufficient for 27AE.
For 27A2 one can swap the current 86 80 A2 27 to 86 80 72 27 and vice versa (with one intermediate step ofcourse so the card won't be in twice...)

#102
aceruser123

aceruser123

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 2 posts
Hi Andy, i changed all 86 80 72 27 to 86 80 AE 27 for ae27 but mirror doesn't still. Solutions? Thank you

EDIT: i've try to change all id, 86 80 72 27 to 86 80 AE 27, then 86 80 82 25 to 86 80 AE 27, then 86 80 92 25 to 86 80 AE 27 , but mirror never work. You sure that the patch is only this here?

#103
GunForHire

GunForHire

    InsanelyMac Protégé

  • Members
  • Pip
  • 32 posts

1. Install boot_rel3
2. In /Extra/com.apple.Boot.plist set under the kernel boot arguments
GraphicsEnabler=Yes
3. Replace the original kexts with the patched ones
4. Reboot
It should work now


Is it for the 27A2 card or for the 27AE one?
Basically modding 86 80 72 27 to 86 80 AE 27 should be sufficient for 27AE.
For 27A2 one can swap the current 86 80 A2 27 to 86 80 72 27 and vice versa (with one intermediate step ofcourse so the card won't be in twice...)


Hi again. I followed those steps (replaced my Boot file on / with Boot rel3, in my Boot.plist it now reads "<key>GraphicsEnabler=Yes</key>, I replaced the kexts in /Extra/Extensions with the new ones and ran Kext Utility), however now when I try to boot I just get a white screen. Am I missing a step somewhere?

#104
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,614 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

Hi again. I followed those steps (replaced my Boot file on / with Boot rel3, in my Boot.plist it now reads "<key>GraphicsEnabler=Yes</key>, I replaced the kexts in /Extra/Extensions with the new ones and ran Kext Utility), however now when I try to boot I just get a white screen. Am I missing a step somewhere?

It should be put in like this:

<key>Kernel Flags</key>
<string>GraphicsEnabler=Yes</string>

#105
GunForHire

GunForHire

    InsanelyMac Protégé

  • Members
  • Pip
  • 32 posts

It should be put in like this:

<key>Kernel Flags</key>
<string>GraphicsEnabler=Yes</string>


Hi again. Tried that but there seems to have been no change. Here's my Boot.plist from /Extra:

<plist version="1.0">
<dict>
<key>Kernel Flags</key>
<string>arch=i386</string>
<string>GraphicsEnabler=Yes</string>
<key>Legacy Logo</key>
<string>yes</string>
<key>Timeout</key>
<string>1</string>
</dict>
</plist>

Do I need to copy the new kexts to /System/Library/Extensions as well as /Extra? Also, I noticed while booting in verbose mode that the system seems to boot in 64 bit mode, and I recall seeing somewhere that the GMA kexts only work correctly in 32 bit mode. Not sure if any of this is relevant but it can't hurt to include the info I guess.

#106
BugsB

BugsB

    InsanelyMac Deity

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 1,513 posts
  • Gender:Male
  • Location:Kauai, Hawai'i
<key>Kernel Flags</key>
<string>-v arch=i386 GraphicsEnabler=Yes</string>
:blink:
one line key, next line string, next line key, next line string etc.

No key line followed by two string lines.

and please, while experimenting, ALWAYS boot with -v to see what's happening during boot. ONLY once EVERYTHING is working as you want it get rid of the -v (or not - I am a verbose mode addict, makes me totally nervous NOT to see fly by all these beautiful achievements .. ;) )

#107
abidal99

abidal99

    InsanelyMac Protégé

  • Just Joined
  • Pip
  • 3 posts
Same problem here mirror mode about : 27AE

#108
GunForHire

GunForHire

    InsanelyMac Protégé

  • Members
  • Pip
  • 32 posts

<key>Kernel Flags</key>
 <string>-v arch=i386 GraphicsEnabler=Yes</string>
:P
one line key, next line string, next line key, next line string etc.

no key line followed by two string lines.

and please, while experimenting, ALWAYS boot with -v to see what's happening during boot. ONLY once EVERYTHING is working as you want it get rid of the -v (or not - I am a verbose mode addict, makes me totally nervous NOT to see fly by all these beautiful achievements .. ;) )


Thanks for that, I'm fairly new to the scene so I'm not up on the formatting of the plists and stuff like that just yet. Am now though!

Sadly though, fixing that didn't seem to make much difference. I noticed that as the machine is booting in verbose mode it displays an error when trying to load IntelGMA950.kext - it fails to load the kext and complains about "Couldn't alloc class Intel915". Where Intel 915 is coming from, I have no idea.

#109
timbojill

timbojill

    InsanelyMac Geek

  • Members
  • PipPipPip
  • 104 posts
Here is my problem When I boot my Dell Latitude D620 Hacintosh it boots normally. The second it auto logs in the monitor turns off. Can this help me for my Intel GM945 ? Can someone e-mail timbojill@gmail.com ?

#110
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,614 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

Thanks for that, I'm fairly new to the scene so I'm not up on the formatting of the plists and stuff like that just yet. Am now though!

Sadly though, fixing that didn't seem to make much difference. I noticed that as the machine is booting in verbose mode it displays an error when trying to load IntelGMA950.kext - it fails to load the kext and complains about "Couldn't alloc class Intel915". Where Intel 915 is coming from, I have no idea.

Intel915 = AppleIntelGMA950.kext

Hi again. Tried that but there seems to have been no change. Here's my Boot.plist from /Extra:

<plist version="1.0">
<dict>
<key>Kernel Flags</key>
<string>arch=i386</string>
<string>GraphicsEnabler=Yes</string>
<key>Legacy Logo</key>
<string>yes</string>
<key>Timeout</key>
<string>1</string>
</dict>
</plist>

Do I need to copy the new kexts to /System/Library/Extensions as well as /Extra? Also, I noticed while booting in verbose mode that the system seems to boot in 64 bit mode, and I recall seeing somewhere that the GMA kexts only work correctly in 32 bit mode. Not sure if any of this is relevant but it can't hurt to include the info I guess.

Should be like this:


<plist version="1.0">
<dict>
<key>Kernel Flags</key>
<string>arch=i386 GraphicsEnabler=Yes</string>
<key>Legacy Logo</key>
<string>yes</string>
<key>Timeout</key>
<string>1</string>
<key>GraphicsEnabler</key>
<string>yes</string>
</dict>
</plist>

#111
GunForHire

GunForHire

    InsanelyMac Protégé

  • Members
  • Pip
  • 32 posts

Intel915 = AppleIntelGMA950.kext


Should be like this:


<plist version="1.0">
<dict>
<key>Kernel Flags</key>
<string>arch=i386 GraphicsEnabler=Yes</string>
<key>Legacy Logo</key>
<string>yes</string>
<key>Timeout</key>
<string>1</string>
<key>GraphicsEnabler</key>
<string>yes</string>
</dict>
</plist>


Thanks for the help again - I've now got my boot.plist matching the one above exactly, but still just get a white screen. Could this be something to do with my bootloader? I'm currently using a bootloader disk for a Dell Latitude which is quite old (the bootloader disk that is).

#112
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,614 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

Thanks for the help again - I've now got my boot.plist matching the one above exactly, but still just get a white screen. Could this be something to do with my bootloader? I'm currently using a bootloader disk for a Dell Latitude which is quite old (the bootloader disk that is).

Yes, install boot_rel3 after installing chameleon boot0 and boot1h by copying it into /
Or use the latest chameleon installer and then replace boot with the one from the zip package
You can get it from the chameleon site and boot_rel3.zip from this forum entry

#113
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,614 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...
New release for the Snow Leopard Graphics Update 1.0 (10.6.4)
Kexts are thus now available for 27AE

#114
GunForHire

GunForHire

    InsanelyMac Protégé

  • Members
  • Pip
  • 32 posts

Yes, install boot_rel3 after installing chameleon boot0 and boot1h by copying it into /
Or use the latest chameleon installer and then replace boot with the one from the zip package
You can get it from the chameleon site and boot_rel3.zip from this forum entry


Hello again. Thanks for the continued help. I've installed Chameleon RC3 (as there's no installer for RC4 and I've had problems with it in the past), and replaced boot with boot_rel3, but I'm still getting a white screen after the Apple logo. Very frustrating ;)

#115
MadSkillzMan

MadSkillzMan

    InsanelyMac Protégé

  • Members
  • Pip
  • 23 posts
Any idea how to get this working for 2772? Ive tried DSDT patch with vanilla kexts, and no luck (maybe im placing it wrong?) I tried modding the .plists in your posted ones and no luck.also tried use of Natit. Everything worked great 10.6-.10.6.3. i just had to get ballsy....

Actually..with stock 10.6.4 kexts i have QE/CI. After adding your boot file it boots in some insaine res 1600x1200ish. Ok. How can i tell it 1440x900? doesnt really give me much time to add kernel flags. hey its progress

#116
inimicus

inimicus

    Drunk and Angry Slurs in 31 Flavors

  • Members
  • PipPipPipPipPipPip
  • 473 posts
  • Gender:Male
  • Location:Sacramento, CA
I've just discovered that having Superhai's ClamshellDisplay.kext installed causes this method to not work. By removing this, everything works as intended.

#117
inimicus

inimicus

    Drunk and Angry Slurs in 31 Flavors

  • Members
  • PipPipPipPipPipPip
  • 473 posts
  • Gender:Male
  • Location:Sacramento, CA
To clarify:

I'm not sure what version this was or if there is a newer, post-10.6.3 version of ClamshellDisplay.kext, but the version that I removed (and thus successfully allowing hardware acceleration) was from a 10.6.2-era version of NetbookInstaller.

Newer ClamshellDisplay.kext versions (if they exist) may not conflict with hardware accelerated video in 10.6.4, but it certainly was the case with my particular installed versions.

Lid sleep provided by patching LID within DSDT, so there is currently no need for this kext on my system.

Hope this helps anyone still having trouble after follow directions "by the book."

Details (Asus Eee PC 1005HAB):

1. Combo updated to 10.6.4

2. Installed SLGU 1.0

3. Downloaded/installed patched SLGU for Intel 27AE

4. Added GraphicsEnabler=Yes to c.a.B.p in /E/E

5. Removed ClamshellDisplay.kext from /S/L/E

6. Rebooted et voilà.

Note: Also using latest version of Chameleon.  Didn't use the modified boot file from this post.

#118
robi62

robi62

    InsanelyMac Sage

  • Members
  • PipPipPipPipPip
  • 264 posts
  • Gender:Male
  • Location:Javea Spain
Hi Andy I have 2 laptops a Dell640m and aao d250 both use the kexts you posted.
With the acer I have full resolution no problems what so ever , with dell I have to use old integrated kext to get it working
but i get mouse artifacts do you kexts get rid of these symptoms???'

Both Of my systems are running 10.6.4

Regards

#119
Andy Vandijck

Andy Vandijck

    InsanelyMac Deity

  • Coders
  • 1,614 posts
  • Gender:Male
  • Location:Tienen
  • Interests:Programming stuff for Mac OS X...
    Hacking...
    Hard rock (also really big Metallica...

Any idea how to get this working for 2772? Ive tried DSDT patch with vanilla kexts, and no luck (maybe im placing it wrong?) I tried modding the .plists in your posted ones and no luck.also tried use of Natit. Everything worked great 10.6-.10.6.3. i just had to get ballsy....

Actually..with stock 10.6.4 kexts i have QE/CI. After adding your boot file it boots in some insaine res 1600x1200ish. Ok. How can i tell it 1440x900? doesnt really give me much time to add kernel flags. hey its progress

For 0x2772 you need stock kexts and you must use this boot_rel3 file with GraphicsEnabler=Yes enabled.
Then it should work just fine.
For selecting the resolution use the Displays preference pane.
Furthermore you can set the boot resolution in com.apple.Boot.plist by adding this:

<key>Graphics Mode</key>
<string>1024x768x32</string>

Height x width x bitdepth is in effect here...

#120
Mohamed Khairy

Mohamed Khairy

    InsanelyMac Deity

  • Members
  • PipPipPipPipPipPipPipPipPipPip
  • 2,169 posts
  • Gender:Male
hi Andy
there are problem on asus netbook asus 1215n
it contain two GFX cards
GMA3150 ------> ID 0XA0018086
Nvidia ION 2 --> ID 0X0A7610DE

i downloaded meklort bootloader source

i added ion id to nvidia.c and corrected id of gma3150 on gma.c

{ 0x8086A001, "Mobile GMA3150" },
	{ 0x8086A002, "Mobile GMA3150" },

{ 0x10DE0A76, "ION 2" },

and after applying it and adding gfxenbaler to bootplist

only gma3150 identified good
but ion2 not

i dumped chameleon log
and isee on it that gma identified no problem
put on nvidia ion2 it says cant patch rom
so it isnt identified on system profiler well so name it gpu

problem is on gma3150 that bootloader loaded it
but when trying adding id of gma to two kext of orginal gma950 and after pfix
it isnt loaded
i made that with other kexts x3100 and intel HD

and also added
Device (PNLF)
		{
			Name (_HID, EisaId ("APP0002"))
			Name (_CID, "backlight")
			Name (_UID, 0x0A)
			Name (_STA, 0x0B)
		}
to dsdt but no kext loaded :)
is it need to edit binary ?

thanks andy hope you help me fixing it







update

this is chamleon dump

msr(216): ia32_perf_stat 0x0800091b
max: 9 current: 9
CPU: Vendor/Model/ExtModel: 0x756e6547/0x1c/0x1
CPU: Family/ExtFamily:	  0x6/0x0
CPU: MaxCoef/CurrCoef:	  0x9/0x9
CPU: MaxDiv/CurrDiv:		0x0/0x0
CPU: TSCFreq:			   1800MHz
CPU: FSBFreq:			   200MHz
CPU: CPUFreq:			   1800MHz
CPU: NoCores/NoThreads:	 2/4
CPU: Features:			  0x36800021
Attempting to read GPT
Read GPT
Reading GPT partition 1, type C12A7328-F81F-11D2-BA4B-00A0C93EC93B
Reading GPT partition 2, type 48465300-0000-11AA-AA11-00306543ECAC
Reading GPT partition 3, type EBD0A0A2-B9E5-4433-87C0-68B6B72699C7
Read HFS+ file: [hd(0,2)/Extra/com.apple.Boot.plist] 474 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/Symbols.dylib] 16596 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/ACPIPatcher.dylib] 24056 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/GraphicsEnabler.dylib] 34648 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/GUI.dylib] 65596 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/Resolution.dylib] 13700 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/theme.plist] 2798 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/background.png] 966 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/logo.png] 10718 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_generic.png] 22700 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_generic_o.png] 22748 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_hfsplus.png] 25968 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_hfsplus_o.png] 25971 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_hfsraid.png] 26603 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_hfsraid_o.png] 26565 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_ext3.png] 25554 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_ext3_o.png] 25561 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_fat.png] 24399 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_fat_o.png] 24429 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_ntfs.png] 27227 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_ntfs_o.png] 27197 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_cdrom.png] 23564 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_cdrom_o.png] 22930 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_selection.png] 454 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_scroll_prev.png] 4566 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/device_scroll_next.png] 4381 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_boot.png] 182 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_verbose.png] 182 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_ignore_caches.png] 182 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_single_user.png] 182 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_memory_info.png] 180 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_video_info.png] 180 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_help.png] 180 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_verbose_disabled.png] 187 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_ignore_caches_disabled.png] 187 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_single_user_disabled.png] 187 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/menu_selection.png] 236 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/progress_bar.png] 349 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/progress_bar_background.png] 179 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/text_scroll_prev.png] 632 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/text_scroll_next.png] 650 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/font_console.png] 3499 bytes.
Read HFS+ file: [hd(0,2)/Extra/Themes/Default/font_small.png] 5525 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/HPET.dylib] 8900 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/Memory.dylib] 35364 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/NetbookInstaller.dylib] 10464 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/Networking.dylib] 9616 bytes.
Read HFS+ file: [hd(0,2)/Extra/modules/USBFix.dylib] 9336 bytes.
Read HFS+ file: [hd(0,2)/Extra/com.apple.Boot.plist] 474 bytes.
Setting boot-uuid to: D6463C6B-ABE8-33C5-8DBA-7776FB5D7809
Read HFS+ file: [hd(0,2)/System/Library/CoreServices/SystemVersion.plist] 479 bytes.
Read HFS+ file: [hd(0,2)/System/Library/CoreServices/SystemVersion.plist] 479 bytes.
Hibernate image is too old by 1144157 seconds. Use ForceWake=y to override
Loading Darwin 10.6
Loading kernel mach_kernel_atom
Read HFS+ file: [hd(0,2)/mach_kernel_atom] 4096 bytes.
Read HFS+ file: [hd(0,2)/mach_kernel_atom] 5576574 bytes.
LoadDrivers: Loading from [/System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext]
Read HFS+ file: [hd(0,2)/System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext] 4096 bytes.
Read HFS+ file: [hd(0,2)/System/Library/Caches/com.apple.kext.caches/Startup/Extensions.mkext] 17029694 bytes.
Read HFS+ file: [hd(0,2)/Extra/DSDT.aml] 39469 bytes.
Using PCI-Root-UID value: 0
Intel Mobile GMA3150 [8086:a001] :: PciRoot(0x0)/Pci(0x2,0x0)
nVidia ION 2 1MB NV1ff [10de:0a76] :: PciRoot(0x0)/Pci(0x1c,0x0)/Pci(0x0,0x0)
bad display config block signature (0x141500ff)
ERROR: nVidia ROM Patching Failed!
Wifi Controller [14e4:4727] :: PciRoot(0x0)/Pci(0x1c,0x1)/Pci(0x0,0x0)
Read HFS+ file: [hd(0,2)/Extra/SMBIOS.plist] 304 bytes.
Slot: 0 Type 24 1024MB (DDR3 SDRAM) 1333MHz Vendor=Hynix Semiconductor
	  PartNo=HMT112S6TFR8C-H9N0 SerialNo=53832C54
Slot: 1 Type 24 1024MB (DDR3 SDRAM) 1333MHz Vendor=Hynix Semiconductor
	  PartNo=HMT112S6TFR8C-H9N0 SerialNo=53332C17
CPU is Intel(R) Atom(TM) CPU D525   @ 1.80GHz, family 0x6, model 0x1c
Patched DMI Table
Found SMBIOS System Information Table 1
Customizing SystemID with : 80f62cae-f704-4781-2787-20cf3023ab0c
Actual model name is '1215N'
Read HFS+ file: [hd(0,2)/Extra/DSDT.aml] 39469 bytes.
ACPI table not found: SSDT.aml
FADT: Restart Fix applied!
FADT: Using custom DSDT!
FADT: Restart Fix applied!
FADT: Using custom DSDT!
Starting Darwin x86_64






0 user(s) are reading this topic

0 members, 0 guests, 0 anonymous users

© 2014 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy