Jump to content

PCSX2 on Mac ?


  • Please log in to reply
111 replies to this topic

#1
Adrien0203

Adrien0203

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
  • Gender:Male
  • Location:in front of my MacBook
Hi everyone ! :thumbsup_anim:

I've tried PCSX2 under Ubuntu Hardy_64 but as I had an issue with the 3D driver ... I thought I could get it for mac.
I've searched all around the internet but there's not a PCSX2 for MacOs.
So I've downloaded the sources files for Linux and I've tried (after a chmod) to launch the install script

[codebox]
[adrien@iGeek] /Pcsx2_0.9.4_Source $ ./build.sh all
---------------
Building Pcsx2
---------------
Linux/Makefile.am:1: shell pkg-config --cflags gtk+-2.0: non-POSIX variable name
Linux/Makefile.am:1: (probably a GNU make extension)
checking for a BSD-compatible install... /usr/bin/install -c
checking whether build environment is sane... yes
checking for a thread-safe mkdir -p... ./install-sh -c -d
checking for gawk... no
checking for mawk... no
checking for nawk... no
checking for awk... awk
checking whether make sets $(MAKE)... yes
checking for gcc... gcc
checking for C compiler default output file name... a.out
checking whether the C compiler works... yes
checking whether we are cross compiling... no
checking for suffix of executables...
checking for suffix of object files... o
checking whether we are using the GNU C compiler... yes
checking whether gcc accepts -g... yes
checking for gcc option to accept ISO C89... none needed
checking for style of include used by make... GNU
checking dependency style of gcc... gcc3
checking for gcc... gcc
checking whether we are using the GNU C++ compiler... yes
checking whether gcc accepts -g... yes
checking dependency style of gcc... gcc3
checking how to run the C preprocessor... gcc -E
checking for ranlib... ranlib
checking dependency style of gcc... gcc3
checking debug build... no
checking for _aligned_malloc... no
checking for _aligned_free... no
checking for development build... no
checking force sse3 instructions... sse3
checking for virtual memory build... no
checking for using platform dependent recompilers... yes
checking for a x86-64 CPU... no
checking gtk+... checking for pkg-config... pkg-config
Package gtk+-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gtk+-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gtk+-2.0' found
Package gthread-2.0 was not found in the pkg-config search path.
Perhaps you should add the directory containing `gthread-2.0.pc'
to the PKG_CONFIG_PATH environment variable
No package 'gthread-2.0' found
checking for main in -lstdc++... yes
checking for main in -lz... yes
checking for grep that handles long lines and -e... /usr/bin/grep
checking for egrep... /usr/bin/grep -E
checking for ANSI C header files... yes
checking for sys/types.h... yes
checking for sys/stat.h... yes
checking for stdlib.h... yes
checking for string.h... yes
checking for memory.h... yes
checking for strings.h... yes
checking for inttypes.h... yes
checking for stdint.h... yes
checking for unistd.h... yes
checking libintl.h usability... yes
checking libintl.h presence... yes
checking for libintl.h... yes
configure: creating ./config.status
config.status: creating Makefile
config.status: creating DebugTools/Makefile
config.status: creating Linux/Makefile
config.status: creating IPU/Makefile
config.status: creating IPU/mpeg2lib/Makefile
config.status: creating RDebug/Makefile
config.status: creating tinyxml/Makefile
config.status: creating x86/Makefile
config.status: creating x86/ix86/Makefile
config.status: creating zlib/Makefile
config.status: executing depfiles commands
Configuration:
Target system type:
x86-64 build? no
Debug build? no
Dev build? no
Force sse3? no
Recompilers enabled? yes
Virtual memory build? no
Making clean in Linux
test -z "pcsx2" || rm -f pcsx2
rm -f *.o
Making clean in tinyxml
test -z "libtinyxml.a" || rm -f libtinyxml.a
rm -f *.o
Making clean in RDebug
test -z "libRDebug.a" || rm -f libRDebug.a
rm -f *.o
Making clean in IPU
Making clean in mpeg2lib
test -z "libmpeg2IPU.a" || rm -f libmpeg2IPU.a
rm -f *.o
Making clean in .
test -z "libIPU.a" || rm -f libIPU.a
rm -f *.o
Making clean in DebugTools
test -z "libDebugTools.a" || rm -f libDebugTools.a
rm -f *.o
Making clean in x86
Making clean in ix86
test -z "libix86.a" || rm -f libix86.a
rm -f *.o
Making clean in .
test -z "libx86recomp.a" || rm -f libx86recomp.a
rm -f *.o
Making clean in .
test -z "libpcsx2.a" || rm -f libpcsx2.a
rm -f *.o
Making install in x86
Making install in ix86
gcc -DPACKAGE_NAME=\"pcsx2\" -DPACKAGE_TARNAME=\"pcsx2\" -DPACKAGE_VERSION=\"0.9.4\" -DPACKAGE_STRING=\"pcsx2\ 0.9.4\" -DPACKAGE_BUGREPORT=\"zerofrog@gmail.com\" -DPACKAGE=\"pcsx2\" -DVERSION=\"0.9.4\" -DNDEBUG=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_NLS=1 -I. -I./.. -I./../../ -O3 -fomit-frame-pointer -O3 -fomit-frame-pointer -MT ix86_3dnow.o -MD -MP -MF .deps/ix86_3dnow.Tpo -c -o ix86_3dnow.o ix86_3dnow.c
mv -f .deps/ix86_3dnow.Tpo .deps/ix86_3dnow.Po
gcc -DPACKAGE_NAME=\"pcsx2\" -DPACKAGE_TARNAME=\"pcsx2\" -DPACKAGE_VERSION=\"0.9.4\" -DPACKAGE_STRING=\"pcsx2\ 0.9.4\" -DPACKAGE_BUGREPORT=\"zerofrog@gmail.com\" -DPACKAGE=\"pcsx2\" -DVERSION=\"0.9.4\" -DNDEBUG=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_NLS=1 -I. -I./.. -I./../../ -O3 -fomit-frame-pointer -O3 -fomit-frame-pointer -MT ix86.o -MD -MP -MF .deps/ix86.Tpo -c -o ix86.o ix86.c
ix86.c: In function J8Rel:
ix86.c:156: warning: pointer targets in return differ in signedness
ix86.c: In function JMP8:
ix86.c:2467: warning: pointer targets in return differ in signedness
mv -f .deps/ix86.Tpo .deps/ix86.Po
gcc -DPACKAGE_NAME=\"pcsx2\" -DPACKAGE_TARNAME=\"pcsx2\" -DPACKAGE_VERSION=\"0.9.4\" -DPACKAGE_STRING=\"pcsx2\ 0.9.4\" -DPACKAGE_BUGREPORT=\"zerofrog@gmail.com\" -DPACKAGE=\"pcsx2\" -DVERSION=\"0.9.4\" -DNDEBUG=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_NLS=1 -I. -I./.. -I./../../ -O3 -fomit-frame-pointer -O3 -fomit-frame-pointer -MT ix86_cpudetect.o -MD -MP -MF .deps/ix86_cpudetect.Tpo -c -o ix86_cpudetect.o ix86_cpudetect.c
mv -f .deps/ix86_cpudetect.Tpo .deps/ix86_cpudetect.Po
gcc -DPACKAGE_NAME=\"pcsx2\" -DPACKAGE_TARNAME=\"pcsx2\" -DPACKAGE_VERSION=\"0.9.4\" -DPACKAGE_STRING=\"pcsx2\ 0.9.4\" -DPACKAGE_BUGREPORT=\"zerofrog@gmail.com\" -DPACKAGE=\"pcsx2\" -DVERSION=\"0.9.4\" -DNDEBUG=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_NLS=1 -I. -I./.. -I./../../ -O3 -fomit-frame-pointer -O3 -fomit-frame-pointer -MT ix86_fpu.o -MD -MP -MF .deps/ix86_fpu.Tpo -c -o ix86_fpu.o ix86_fpu.c
mv -f .deps/ix86_fpu.Tpo .deps/ix86_fpu.Po
gcc -DPACKAGE_NAME=\"pcsx2\" -DPACKAGE_TARNAME=\"pcsx2\" -DPACKAGE_VERSION=\"0.9.4\" -DPACKAGE_STRING=\"pcsx2\ 0.9.4\" -DPACKAGE_BUGREPORT=\"zerofrog@gmail.com\" -DPACKAGE=\"pcsx2\" -DVERSION=\"0.9.4\" -DNDEBUG=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_NLS=1 -I. -I./.. -I./../../ -O3 -fomit-frame-pointer -O3 -fomit-frame-pointer -MT ix86_sse.o -MD -MP -MF .deps/ix86_sse.Tpo -c -o ix86_sse.o ix86_sse.c
mv -f .deps/ix86_sse.Tpo .deps/ix86_sse.Po
gcc -DPACKAGE_NAME=\"pcsx2\" -DPACKAGE_TARNAME=\"pcsx2\" -DPACKAGE_VERSION=\"0.9.4\" -DPACKAGE_STRING=\"pcsx2\ 0.9.4\" -DPACKAGE_BUGREPORT=\"zerofrog@gmail.com\" -DPACKAGE=\"pcsx2\" -DVERSION=\"0.9.4\" -DNDEBUG=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_NLS=1 -I. -I./.. -I./../../ -O3 -fomit-frame-pointer -O3 -fomit-frame-pointer -MT ix86_mmx.o -MD -MP -MF .deps/ix86_mmx.Tpo -c -o ix86_mmx.o ix86_mmx.c
mv -f .deps/ix86_mmx.Tpo .deps/ix86_mmx.Po
rm -f libix86.a
ar cru libix86.a ix86_3dnow.o ix86.o ix86_cpudetect.o ix86_fpu.o ix86_sse.o ix86_mmx.o
ranlib libix86.a
make[3]: Nothing to be done for `install-exec-am'.
make[3]: Nothing to be done for `install-data-am'.
gcc -DPACKAGE_NAME=\"pcsx2\" -DPACKAGE_TARNAME=\"pcsx2\" -DPACKAGE_VERSION=\"0.9.4\" -DPACKAGE_STRING=\"pcsx2\ 0.9.4\" -DPACKAGE_BUGREPORT=\"zerofrog@gmail.com\" -DPACKAGE=\"pcsx2\" -DVERSION=\"0.9.4\" -DNDEBUG=1 -DSTDC_HEADERS=1 -DHAVE_SYS_TYPES_H=1 -DHAVE_SYS_STAT_H=1 -DHAVE_STDLIB_H=1 -DHAVE_STRING_H=1 -DHAVE_MEMORY_H=1 -DHAVE_STRINGS_H=1 -DHAVE_INTTYPES_H=1 -DHAVE_STDINT_H=1 -DHAVE_UNISTD_H=1 -DENABLE_NLS=1 -I. -I./../ -O3 -fomit-frame-pointer -O3 -fomit-frame-pointer -MT iCOP2.o -MD -MP -MF .deps/iCOP2.Tpo -c -o iCOP2.o iCOP2.c
In file included from ./../Plugins.h:24,
from ./../Common.h:197,
from iCOP2.c:24:
./../PS2Edefs.h:39:21: error: windows.h: No such file or directory
In file included from ./../Plugins.h:24,
from ./../Common.h:197,
from iCOP2.c:24:
./../PS2Edefs.h:105: error: syntax error before * token
./../PS2Edefs.h:486: error: syntax error before * token
./../PS2Edefs.h:487: error: syntax error before * token
[/codebox]

And the list of errors goes on ... and finally

[codebox]./../Misc.h:23:20: error: malloc.h: No such file or directory
make[2]: *** [iCOP2.o] Error 1
make[1]: *** [install-recursive] Error 1
make: *** [install-recursive] Error 1
[/codebox]

In case you have not guessed, I'm a total noob with Gcc.
I suppose that parameters are not the same or/and missing libraries.

Someone has an idea ?
Thanks.

#2
lord_muad_dib

lord_muad_dib

    InsanelyMacaholic

  • Retired
  • 3,398 posts
  • Gender:Male
  • Location:italy
it can't work without major modifications to work with quartz and core image

#3
Adrien0203

Adrien0203

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
  • Gender:Male
  • Location:in front of my MacBook
Too bad :(
Thanks for the answer anyway.

Maybe someone quite good can handle this :P

( Someone is interested here ? )

#4
~pcwiz

~pcwiz

    InsanelyMac V.I.P.

  • Retired
  • 5,900 posts
  • Gender:Male
Darwine or Cider?

#5
Zedr0n

Zedr0n

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts
Yeah, I tried to compile it under mac, will require quite a lot of modifications.

As for the error you encounter, it's actually a quite simple one, the first one which arises. On Mac the file malloc.h has been moved to sys/malloc.h. In reality malloc is part of stdlib under mac if I remember correctly. The easiest way to deal with this problem is actually to just hardlink sys/malloc.h to malloc.h

#6
lord_muad_dib

lord_muad_dib

    InsanelyMacaholic

  • Retired
  • 3,398 posts
  • Gender:Male
  • Location:italy
u might be able to compile it but ut's designed to work over Xorg ABIs, it wil not work on xquartz

#7
Zedr0n

Zedr0n

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts
hm, can you elaborate please? As far as I see, pcsx2 uses SDL which is quite cross-platform, is there such a problem in the X?

#8
Zedr0n

Zedr0n

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts
well, I've built it, but zerogs doesn't work :(
looks like this on xquartz

Posted Image

#9
Adrien0203

Adrien0203

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
  • Gender:Male
  • Location:in front of my MacBook
Great :( , Thanks Zedr0n

I love to see the pcsx2 logo on an x11 window under MacOs :D . (the .deb for ubuntu was not able to show the logo by the way)
Well zerogs doesn't work but maybe lord_muad_dib has an idea on this issue.

Can you tell me what you have done to build this? Which Gcc have you used? Have you downloaded additional libraries like GTK+2 from fink ?

Many thanks for all this :P

#10
Zedr0n

Zedr0n

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

Great ;) , Thanks Zedr0n

I love to see the pcsx2 logo on an x11 window under MacOs :D . (the .deb for ubuntu was not able to show the logo by the way)
Well zerogs doesn't work but maybe lord_muad_dib has an idea on this issue.

Can you tell me what you have done to build this? Which Gcc have you used? Have you downloaded additional libraries like GTK+2 from fink ?

Many thanks for all this :)


It's not as simple as downloading additional libraries unfortunately. I had to patch the source code quite a bit, hack some makefiles, and port the asm code to nasm. This is still work in progress and I'm not sure if the patches I've made haven't broken the build.

On a sidenote, no, I don't use Fink/MacPorts. They clutter the system too much and the dependencies are hard to fix so I prefer the standard linux way. I had to compile gtk+ from scratch for x11(xquartz) because the native port of gtk+ didn't work for me unfortunately(it compiled but had a runtime error in Cairo, EXC_ARITHMETIC)

Yes, I hope, that lord_muad_dib can help on this issue, though I'm hoping that I'll be able to run Gssoft plugin if it can be updated to recent plugin specs

#11
xandiztxu

xandiztxu

    The anti-cancer

  • Members
  • PipPipPipPip
  • 228 posts
This is a very intersting progress ^

#12
Zedr0n

Zedr0n

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts
so, some debugging later, here is some new progress on zeroGS
Posted Image

#13
Zedr0n

Zedr0n

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts
ok, historical moment, I managed to see bios on os x. Interpreter mode and debug/dev builds, mind you. Crashes right after Sony Computer Entertainment disappears,
but still.


Posted Image
Posted Image

Antialiasing too :angel:
Posted Image

#14
~pcwiz

~pcwiz

    InsanelyMac V.I.P.

  • Retired
  • 5,900 posts
  • Gender:Male

ok, historical moment, I managed to see bios on os x. Interpreter mode and debug/dev builds, mind you. Crashes right after Sony Computer Entertainment disappears,
but still.


Posted Image
Posted Image

Antialiasing too :P
Posted Image


That's sweet! If you get this working you should start your own "PSCX2 on OS X" project :D There are no good PS2 emulators for OS X so this really is historic :P

#15
Adrien0203

Adrien0203

    InsanelyMac Protégé

  • Members
  • Pip
  • 15 posts
  • Gender:Male
  • Location:in front of my MacBook
Frack !

It's an historical moment for Mac Geeks :)
That's right it's time to open a sourceforge project !

May I propose MacSX2 as name ? lol

Zedr0n you're definitely deadly fast :)

#16
xandiztxu

xandiztxu

    The anti-cancer

  • Members
  • PipPipPipPip
  • 228 posts
Congratulations man!!! Try talking on ngemu forums they might help you!

#17
lord_muad_dib

lord_muad_dib

    InsanelyMacaholic

  • Retired
  • 3,398 posts
  • Gender:Male
  • Location:italy
that's great man!
as long as pcsx2 uses sdl to render we're in good shape, we don't have to bother about rendering conversion
if you don't mind, i'd contact the main pcsx2 team to announce the great news!
now
for best results, don't build pcsx from svn, as it might have broken recompilers
i don't see why it won't work. btw for testing, always use the {censored} first bios, as it's the most compatible bios

about the crash after the "transition to the dark".. i'd say it's something about the dvd plugin, try to select a dummy and do some tries
pm me with your contact, we can cooperate!

still, amazing work!

#18
Zedr0n

Zedr0n

    InsanelyMac Protégé

  • Members
  • Pip
  • 44 posts

that's great man!
as long as pcsx2 uses sdl to render we're in good shape, we don't have to bother about rendering conversion


Actually, it's not. It's all pure glX, so it uses x11 server heavily and I have to constantly comment out some things.

if you don't mind, i'd contact the main pcsx2 team to announce the great news!


Feel free, though I'm constantly on #pcsx EFNET and I have a thread going on ngemu: http://forums.ngemu....-pcsx2-mac.html
So they know already, I think

now
for best results, don't build pcsx from svn, as it might have broken recompilers
i don't see why it won't work. btw for testing, always use the {censored} first bios, as it's the most compatible bios

about the crash after the "transition to the dark".. i'd say it's something about the dvd plugin, try to select a dummy and do some tries


I'm using the dummy CDVDnull. For CDVDiso with ffxii it loads but doesn't output anything at all, reports the error EXC_BAD_ACCESS again :)

pm me with your contact, we can cooperate!

still, amazing work!

PMing you now

#19
lord_muad_dib

lord_muad_dib

    InsanelyMacaholic

  • Retired
  • 3,398 posts
  • Gender:Male
  • Location:italy
ok then... the exec_bad {censored} often means that it's trying to access a resource that is unavailable, being a memory access range or a physical device, so, we need to closely watch the backtrace and see what fails, as it's kinda generic

#20
cyclonefr

cyclonefr

    InsanelyMacaholic

  • Members
  • PipPipPipPipPipPipPipPipPipPipPip
  • 2,751 posts
  • Gender:Male
  • Location:Paris, France
great work ! keep up the good work





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