Mednafen Members Members   Search Search   Help Help   Register Register   Login Login   Home Home
Home » Site » News » Mednafen 0.9.29-WIP
Show: Today's Messages  :: Show Polls :: Message Navigator
Switch to threaded view of this topic Create a new topic Submit Reply
Mednafen 0.9.29-WIP [message #3141] Sat, 27 July 2013 21:19 Go to next message
Administrator  [PM]
This is mostly another bug fix release, along with some minor improvements.

Especially notable changes include:
  • Fixed a couple of netplay user interface crashing bugs.
  • Changed SNES (pseudo) hi-res blending to be less blurry.
  • Changed SNES audio resampler to a higher-quality(but slightly more CPU-intensive) resampler.
  • Implemented a PS1 CDC feature in emulation so that music resumption after pause works in "Mortal Kombat Trilogy"; it's unlikely to otherwise affect PS1 game compatibility, though.
  • New, experimental, optional(it's not used by default) "WASAPI" exclusive-mode sound driver/output method for Windows Vista and newer; allows for lower audio latency(in conjunction with reducing the sound.buffer_time setting), and less timing jitter(compared to modern implementation of DirectSound), which will improve things like rumble emulation and netplay.



ChangeLog


mednafen-0.9.29-wip.tar.bz2
SHA1: 30acb665d129a84a25fcbfa63b3271cd1f9e2427

mednafen-0.9.29-wip-win32.zip
SHA1: a5d62499f662018560faadadbdb292636f05859f

[Updated on: Fri, 14 November 2014 21:59]

Re: Mednafen 0.9.29-WIP [message #3142 is a reply to message #3141 ] Sun, 28 July 2013 07:12 Go to previous messageGo to next message
Speedvicio  [PM]
As always a great job.
The only problem that still persists by the transition from libcdio-12 to libcdio-13 is the inability of mednafen to access the physical cd.
Re: Mednafen 0.9.29-WIP [message #3146 is a reply to message #3141 ] Sun, 04 August 2013 20:13 Go to previous messageGo to next message
Speedvicio  [PM]
A bug on win 8 64 bit.

Setting "nes.ntsc.matrix.5" is set too large("2.000"); the maximum acceptable value is "2".

The emulator continues to set this parameter incorrectly.

EDIT: The same parameter is set to win xp, but the emulator does not indicate any problem.
Apparently the error appears on win 8 64 bit.

[Updated on: Mon, 05 August 2013 12:07]

Re: Mednafen 0.9.29-WIP [message #3149 is a reply to message #3141 ] Thu, 15 August 2013 14:15 Go to previous messageGo to next message
idyll  [PM]
Thanks for all your hard work. The PSX emulation is progressing very well.

I think I've found a bug. I'm using version 0.9.29-WIP on Mac OS X 10.6.8. My screen resolution is 1680x1050. When playing a PAL PSX game in fullscreen, the viewing area doesn't appear to stretch. This happens with the default setting of "psx.stretch aspect_mult2." NTSC PSX games don't have this problem.

When I change "psx.stretch aspect_mult2" to "psx.stretch aspect_int" the PAL games double the viewing area, but it's still not as big as the NTSC viewing area with the same setting. The NTSC games seem unaffected by the change.

Changing the setting to "psx.stretch aspect" causes the PAL games to display even bigger, but not to the outermost edges of the top and bottom of the screen. This setting appears to work as it should with NTSC games.

This may be unrelated, but, when starting two of the PAL games I tried, "VIDEO STANDARD MISMATCH" appears on screen before anything else. It only shows up for a half a second or so.

The PAL games I used were: Ghoul Panic, Rapid Reload and Wipeout 3: Special Edition.

Here are two snippets from the log file with the setting "psx.stretch aspect_mult2."

NTSC:
 Initializing video...
  Video Driver: OpenGL
  Video Mode: 1680 x 1050 x 32 bpp
   Pixel shader: none
  Fullscreen: Yes
  Special Scaler: None
  Scanlines: Off
  Destination Rectangle: X=200, Y=44, W=1280, H=960


PAL:
 Initializing video...
  Video Driver: OpenGL
  Video Mode: 1680 x 1050 x 32 bpp
   Pixel shader: none
  Fullscreen: Yes
  Special Scaler: None
  Scanlines: Off
  Destination Rectangle: X=462, Y=236, W=754, H=576


I hope this helps you track down the bug if that's what it is. Maybe it's intentional?
Re: Mednafen 0.9.29-WIP [message #3150 is a reply to message #3149 ] Fri, 16 August 2013 08:11 Go to previous messageGo to next message
*Alice  [PM]
Actually, that is the intended behaviour.
Aspect_mult2 scales everything to the largest multiple of 2 that still fits in your screen.
NTSC has a resolution of 640x480. 1680/640 = 2.625 and 1050/480 = 2.1875, so 2 is chosen as the multiplier, the total screen size used is thusly 1280x960.
PAL has a resolution of 768x576. 1680/768 = 2.1875 and 1050/576 = 1.823, so 1 is chosen as the multiplier, the total screen size used is thusly 768x576.

If you want to use more of your screen, you need either a screen with a vertical resolution > 1050 or change the stretch type to aspect or choose a custom stretching value smaller than 1.823.
Re: Mednafen 0.9.29-WIP [message #3151 is a reply to message #3141 ] Fri, 16 August 2013 12:24 Go to previous messageGo to next message
Administrator  [PM]
Mostly correct, but the PS1 video scaling in Mednafen is done relative to:

320x240 for NTSC

377x288 for PAL

The default stretch of "aspect_mult2"(specifically the mult2 bit) is intended to allow for interlaced video and/or scanline effects to be displayed properly.


The main issue is that I don't have a PAL PS1 nor a selection of PAL TVs, so I made a conservative decision to show (almost?) all of the PAL overscan, since I can't see how much is displayed on a typical PAL TV.

[Updated on: Fri, 16 August 2013 12:25]

Re: Mednafen 0.9.29-WIP [message #3152 is a reply to message #3141 ] Tue, 20 August 2013 11:44 Go to previous messageGo to next message
idyll  [PM]
Thanks for the clarification. I just found it strange that the aspect ratio would be so different depending on the video format.

I'm also experiencing the same issue as Speedvicio on Mac OS X 10.6.8. Physical CDs aren't loading. I've tried authentic PlayStation and Sega CD games:

Starting Mednafen 0.9.29-WIP
 Build information:
   Compiled with gcc 4.2.1 (Apple Inc. build 5666) (dot 3)
   Compiled against zlib 1.2.3, running with zlib 1.2.3
   Compiled against SDL 1.2.15, running with SDL 1.2.15
   Running with libsndfile-1.0.25
   Compiled against libcdio 0.90 x86_64-apple-darwin10.8.0, running with libcdio 0.90 x86_64-apple-darwin10.8.0
 Base directory: /Users/idyll/.mednafen
 Internal emulation modules: nes snes gb gba pce pce_fast lynx md pcfx ngp psx vb wswan sms gg cdplay
 External emulation modules: 
 Loading settings from "/Users/idyll/.mednafen/mednafen-09x.cfg"…
 Initializing joysticks...
 Loading PHYSICAL CD...

 Connected physical devices:
  /dev/rdisk5
  /dev/rdisk5s0
Error reading disc TOC.
Error opening CD.


My second issue is compiling a 32-bit version of Mednafen on Mac OS X 10.6.8. My kernel is 64-bit and so is my CPU. I compiled the libraries that Mednafen uses as 32-bit. However, when I run:

./configure --enable-static --disable-shared --disable-jack --target=i386-apple-darwin10.8.0; make


Here's a snippet of the output:

	gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I../include -I../include/blip -I../intl -I..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT resampler/resample.o -MD -MP -MF $depbase.Tpo -c -o resampler/resample.o resampler/resample.c &&\
	mv -f $depbase.Tpo $depbase.Po
resampler/resample.c: In function ‘resampler_basic_direct_single’:
resampler/resample.c:371: warning: declaration of ‘sinc’ shadows a global declaration
resampler/resample.c:313: warning: shadowed declaration is here
resampler/resample.c: In function ‘resampler_basic_direct_double’:
resampler/resample.c:422: warning: declaration of ‘sinc’ shadows a global declaration
resampler/resample.c:313: warning: shadowed declaration is here
depbase=`echo cputest/cputest.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I../include -I../include/blip -I../intl -I..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT cputest/cputest.o -MD -MP -MF $depbase.Tpo -c -o cputest/cputest.o cputest/cputest.c &&\
	mv -f $depbase.Tpo $depbase.Po
depbase=`echo cputest/x86_cpu.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	gcc -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H -I../include -I../include/blip -I../intl -I..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT cputest/x86_cpu.o -MD -MP -MF $depbase.Tpo -c -o cputest/x86_cpu.o cputest/x86_cpu.c &&\
	mv -f $depbase.Tpo $depbase.Po
/var/folders/cz/cz-66dYfFmOQhyvryIrNqE+++TI/-Tmp-//cclUhz36.s:65:suffix or operands invalid for `pushf'
/var/folders/cz/cz-66dYfFmOQhyvryIrNqE+++TI/-Tmp-//cclUhz36.s:66:suffix or operands invalid for `pop'
/var/folders/cz/cz-66dYfFmOQhyvryIrNqE+++TI/-Tmp-//cclUhz36.s:69:suffix or operands invalid for `push'
/var/folders/cz/cz-66dYfFmOQhyvryIrNqE+++TI/-Tmp-//cclUhz36.s:70:suffix or operands invalid for `popf'
/var/folders/cz/cz-66dYfFmOQhyvryIrNqE+++TI/-Tmp-//cclUhz36.s:71:suffix or operands invalid for `pushf'
/var/folders/cz/cz-66dYfFmOQhyvryIrNqE+++TI/-Tmp-//cclUhz36.s:72:suffix or operands invalid for `pop'
make[2]: *** [cputest/x86_cpu.o] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1


Attached is the config.log.

I've tried different options with configure, most of which stop the compile sooner than the cputest. I've tried "-O1 -O0," disabling -mmmx, using --build=i386-apple-darwin10.8.0 and adding "-arch i386" to CFLAGS, CPPFLAGS, CXXFLAGS and LDFLAGS. I've also tried various combinations of these options. I've run out of ideas at this point.

Please let me know what to try next.

  • Attachment: config.log
    (Size: 253.79KB, Downloaded 251 time(s))

Re: Mednafen 0.9.29-WIP [message #3153 is a reply to message #3141 ] Thu, 22 August 2013 18:13 Go to previous messageGo to next message
idyll  [PM]
I've changed the configure options, but still can't get Mednafen to compile as 32-bit.

I compiled libogg-1.3.1, libvorbis-1.3.3, flac-1.2.1, libsndfile-1.0.25, libcdio-0.90 and SDL-1.2.15 with the following commands:

./configure --build=i386-apple-darwin10.8.0 CC="gcc -arch i386" CXX="g++ -arch i386" LDFLAGS="-arch i386"
make
sudo make install


The only exception is flac which has this extra option:

 --disable-asm-optimizations


They all compile without errors and install like they should. When I tried to compile Mednafen with something similar:

./configure --enable-static --disable-shared --disable-jack --build=i386-apple-darwin10.8.0 CC="gcc -arch i386" CXX="g++ -arch i386" LDFLAGS="-arch i386"
make


it spit this out:

Making all in hw_cpu
depbase=`echo c68k/c68kexec.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	gcc -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT c68k/c68kexec.o -MD -MP -MF $depbase.Tpo -c -o c68k/c68kexec.o c68k/c68kexec.c &&\
	mv -f $depbase.Tpo $depbase.Po
In file included from c68k/c68kexec.c:144:
c68k/c68k_op5.inc: In function ‘C68k_Exec’:
c68k/c68k_op5.inc:3492: warning: unused variable ‘res’
depbase=`echo c68k/c68k.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	gcc -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT c68k/c68k.o -MD -MP -MF $depbase.Tpo -c -o c68k/c68k.o c68k/c68k.c &&\
	mv -f $depbase.Tpo $depbase.Po
c68k/c68k.c: In function ‘C68k_Save_State’:
c68k/c68k.c:266: warning: declaration of ‘index’ shadows a global declaration
/usr/include/string.h:125: warning: shadowed declaration is here
c68k/c68k.c:267: warning: unused variable ‘length’
c68k/c68k.c: In function ‘C68k_Load_State’:
c68k/c68k.c:296: warning: declaration of ‘index’ shadows a global declaration
/usr/include/string.h:125: warning: shadowed declaration is here
depbase=`echo z80-fuse/z80.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	g++ -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT z80-fuse/z80.o -MD -MP -MF $depbase.Tpo -c -o z80-fuse/z80.o z80-fuse/z80.cpp &&\
	mv -f $depbase.Tpo $depbase.Po
z80-fuse/z80.cpp: In function ‘int z80_interrupt()’:
z80-fuse/z80.cpp:109: warning: comparison between signed and unsigned integer expressions
depbase=`echo z80-fuse/z80_ops.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	g++ -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT z80-fuse/z80_ops.o -MD -MP -MF $depbase.Tpo -c -o z80-fuse/z80_ops.o z80-fuse/z80_ops.cpp &&\
	mv -f $depbase.Tpo $depbase.Po
depbase=`echo v810/v810_cpu.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	g++ -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT v810/v810_cpu.o -MD -MP -MF $depbase.Tpo -c -o v810/v810_cpu.o v810/v810_cpu.cpp &&\
	mv -f $depbase.Tpo $depbase.Po
depbase=`echo v810/v810_cpuD.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	g++ -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT v810/v810_cpuD.o -MD -MP -MF $depbase.Tpo -c -o v810/v810_cpuD.o v810/v810_cpuD.cpp &&\
	mv -f $depbase.Tpo $depbase.Po
depbase=`echo v810/fpu-new/softfloat.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	gcc -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT v810/fpu-new/softfloat.o -MD -MP -MF $depbase.Tpo -c -o v810/fpu-new/softfloat.o v810/fpu-new/softfloat.c &&\
	mv -f $depbase.Tpo $depbase.Po
v810/fpu-new/softfloat.c: In function ‘float32_rem’:
v810/fpu-new/softfloat.c:1045: warning: unused variable ‘allZero’
v810/fpu-new/softfloat.c: In function ‘float32_le_quiet’:
v810/fpu-new/softfloat.c:1274: warning: unused variable ‘bExp’
v810/fpu-new/softfloat.c:1274: warning: unused variable ‘aExp’
v810/fpu-new/softfloat.c: In function ‘float64_rem’:
v810/fpu-new/softfloat.c:2012: warning: pointer targets in passing argument 5 of ‘add64’ differ in signedness
depbase=`echo huc6280/huc6280.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	g++ -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT huc6280/huc6280.o -MD -MP -MF $depbase.Tpo -c -o huc6280/huc6280.o huc6280/huc6280.cpp &&\
	mv -f $depbase.Tpo $depbase.Po
depbase=`echo huc6280/dis6280.o | sed 's|[^/]*$|.deps/&|;s|\.o$||'`;\
	g++ -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -fsigned-char  -Wall -Winline -Wshadow -Wempty-body  -fno-fast-math -fno-unsafe-math-optimizations -fomit-frame-pointer -finline-limit=6000 --param large-function-growth=800 --param inline-unit-growth=175 --param max-inline-insns-single=10000 -fwrapv -g -O2 -MT huc6280/dis6280.o -MD -MP -MF $depbase.Tpo -c -o huc6280/dis6280.o huc6280/dis6280.cpp &&\
	mv -f $depbase.Tpo $depbase.Po
rm -f libmdfnhwcpu.a
ar cru libmdfnhwcpu.a c68k/c68kexec.o c68k/c68k.o z80-fuse/z80.o z80-fuse/z80_ops.o v810/v810_cpu.o v810/v810_cpuD.o v810/fpu-new/softfloat.o huc6280/huc6280.o huc6280/dis6280.o 
ranlib libmdfnhwcpu.a
gcc -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -DC68K_GEN -g -O2 -MT c68k/gen68k-c68kexec.o -MD -MP -MF c68k/.deps/gen68k-c68kexec.Tpo -c -o c68k/gen68k-c68kexec.o `test -f 'c68k/c68kexec.c' || echo './'`c68k/c68kexec.c
mv -f c68k/.deps/gen68k-c68kexec.Tpo c68k/.deps/gen68k-c68kexec.Po
gcc -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -DC68K_GEN -g -O2 -MT c68k/gen68k-c68k.o -MD -MP -MF c68k/.deps/gen68k-c68k.Tpo -c -o c68k/gen68k-c68k.o `test -f 'c68k/c68k.c' || echo './'`c68k/c68k.c
mv -f c68k/.deps/gen68k-c68k.Tpo c68k/.deps/gen68k-c68k.Po
gcc -arch i386 -DLOCALEDIR=\"/usr/local/share/locale\" -DHAVE_CONFIG_H   -I../../include -I../../intl -I../../include/blip -I../..   -I/usr/local/include   -I/usr/local/include   -fno-pic -fno-pie  -DC68K_GEN -g -O2 -MT c68k/gen68k-gen68k.o -MD -MP -MF c68k/.deps/gen68k-gen68k.Tpo -c -o c68k/gen68k-gen68k.o `test -f 'c68k/gen68k.c' || echo './'`c68k/gen68k.c
mv -f c68k/.deps/gen68k-gen68k.Tpo c68k/.deps/gen68k-gen68k.Po
/bin/sh ../../libtool  --tag=CC   --mode=link gcc -arch i386 -DC68K_GEN -g -O2 -DC68K_GEN -arch i386 -o gen68k c68k/gen68k-c68kexec.o c68k/gen68k-c68k.o c68k/gen68k-gen68k.o  -L/usr/local/lib -lsndfile   -Wl,-framework,CoreFoundation -Wl,-framework,IOKit -Wl,-framework,DiskArbitration -L/usr/local/lib -lcdio -lm -liconv   -lz  -lz
libtool: link: gcc -arch i386 -DC68K_GEN -g -O2 -DC68K_GEN -arch i386 -o gen68k c68k/gen68k-c68kexec.o c68k/gen68k-c68k.o c68k/gen68k-gen68k.o -Wl,-framework -Wl,CoreFoundation -Wl,-framework -Wl,IOKit -Wl,-framework -Wl,DiskArbitration  -L/usr/local/lib /usr/local/lib/libsndfile.dylib /usr/local/lib/libFLAC.dylib /usr/local/lib/libvorbisenc.dylib /usr/local/lib/libvorbis.dylib /usr/local/lib/libogg.dylib /usr/local/lib/libcdio.dylib -lm -liconv -lz
ld: absolute addressing (perhaps -mdynamic-no-pic) used in __ea_write_sarsie from c68k/gen68k-gen68k.o not allowed in slidable image. Use '-read_only_relocs suppress' to enable text relocs
collect2: ld returned 1 exit status
make[2]: *** [gen68k] Error 1
make[1]: *** [all-recursive] Error 1
make: *** [all-recursive] Error 1


So I added " -read_only_relocs suppress" to LDFLAGS and it finished compiling.

When I run the executable it outputs this:

Bus error


and crashes back to the bash prompt.

It doesn't look like I can get past the cputest or gen68k errors without modifying the source code, but I have no idea what to change. Unless someone else has a suggestion, I've gone as far as I can with this.

[Updated on: Thu, 22 August 2013 18:15]

Re: Mednafen 0.9.29-WIP [message #3154 is a reply to message #3141 ] Thu, 22 August 2013 19:26 Go to previous messageGo to next message
Administrator  [PM]
I have no idea how to fix that, but out of curiosity, why do you want to compile a 32-bit build?
Re: Mednafen 0.9.29-WIP [message #3155 is a reply to message #3154 ] Thu, 22 August 2013 19:45 Go to previous messageGo to next message
idyll  [PM]
I'd like to make a universal binary so that everyone with Snow Leopard can use Mednafen. At the moment, people with 32-bit Macs are left out unless they can compile it themselves. Thanks for trying to help.
Re: Mednafen 0.9.29-WIP [message #3156 is a reply to message #3141 ] Thu, 22 August 2013 19:52 Go to previous messageGo to next message
Administrator  [PM]
Ah right, for some reason I had thought there weren't any 32-bit-only Intel Macs.
Re: Mednafen 0.9.29-WIP [message #3157 is a reply to message #3152 ] Fri, 23 August 2013 00:02 Go to previous messageGo to next message
Hatsuyuki  [PM]
idyll wrote on Tue, 20 August 2013 20:44

I'm also experiencing the same issue as Speedvicio on Mac OS X 10.6.8. Physical CDs aren't loading.

I'm still convinced that you're doing it wrong.
Starting Mednafen 0.9.29-WIP
 Build information:
   Compiled with gcc 4.7.2
   Compiled against zlib 1.2.6, running with zlib 1.2.6
   Compiled against SDL 1.2.15, running with SDL 1.2.15
   Running with libsndfile-1.0.25
   Compiled against libcdio 0.83 x86_64-unknown-linux-gnu, running with libcdio 0.83 x86_64-unknown-linux-gnu
 Base directory: D:\Downloads\mednafen-0.9.29-wip-win32
 Internal emulation modules: nes snes gb gba pce pce_fast lynx md pcfx ngp psx vb wswan sms gg cdplay
 External emulation modules: 
 Loading settings from "D:\Downloads\mednafen-0.9.29-wip-win32\mednafen-09x.cfg"...
 Initializing joysticks...
  Joystick 0 - Saitek P880 Pad - Unique ID: 080e4a1ee1ed960b
 Loading PHYSICAL CD...

 Connected physical devices:
  \\.\E:
  \\.\F:
  CD 1 Layout:
   Track  1, LBA:      0  AUDIO
   Track  2, LBA:   1971  DATA
   Track  3, LBA: 323127  AUDIO
   Leadout: 330256

 Using module: pcfx(PC-FX)

 CD Layout MD5:   0x6060e3819ceff660f3b872bf6d97f64b
 V810 Emulation Mode: Fast
 Emulated CD-ROM drive speed: 2x
Re: Mednafen 0.9.29-WIP [message #3158 is a reply to message #3157 ] Fri, 23 August 2013 01:04 Go to previous messageGo to next message
idyll  [PM]
That's possible, but I don't see where I could have gone wrong. I put in the CD, Mac mounts it and I tell Mednafen to load the CD. There were problems with libcdio 0.83 and Mac, but version 0.90 is supposed to have fixed the issue. It's also telling that Speedvicio has the same issue and the same version of libcdio that I'm using.

It looks like you're using libcdio 0.83. Have you tried using libcdio 0.90 with Mednafen? What are the steps you go through to load the CD?
Re: Mednafen 0.9.29-WIP [message #3159 is a reply to message #3141 ] Mon, 26 August 2013 10:28 Go to previous messageGo to next message
Speedvicio  [PM]
Hatsuyuki the problem does not occur to you because the parameter that you put at the emulator read the first physical drive is scanned by mednafen.
In previous versions, mednafen allowed the assignment of a physical drive or virtual drive letter based on set by the user.
Now this is no longer possible and the only reason that comes to mind is the updated version of libcdio used by the emulator.
Re: Mednafen 0.9.29-WIP [message #3160 is a reply to message #3141 ] Thu, 29 August 2013 14:06 Go to previous messageGo to next message
Hatsuyuki  [PM]
idyll, as Speedvicio said, I load the CD via the first physical drive.

Now I understand what you're talking about, Speedvicio Smile

It seems to me that the problem has nothing to do with libcdio, because older versions of Mednafen work well with libcdio-13. Just rename libcdio-13 to libcdio-12.

I think the problem is in Mednafen itself. It doesn't take arguments properly. If I give \\.\E: to older versions of Mednafen, they launch the CD, but new versions of Mednafen throw errors connected with disc images.

0.9.12 -loadcd pcfx

Starting Mednafen 0.9.12
Internal emulation modules: nes snes gb gba pce pce_fast lynx md pcfx ngp vb wswan sms gg cdplay mmplay
External emulation modules:
Loading settings from "D:\Downloads\mednafen-0.9.12-wip-win32\mednafen-09x.cfg"...
Compiled against SDL 1.2.13, running with SDL 1.2.13

Initializing joysticks...
Joystick 0 - Saitek P880 Pad - Unique ID: 080e4a1ee1ed960b
Loading PHYSICAL CDROM DISC...

Connected physical devices:
\\.\E:
\\.\F:
Using MMC commands directly: No
Performing subchannel R-W Reading: Yes
Track 1, LBA: 0 AUDIO
Track 2, LBA: 1971 DATA
Track 3, LBA: 323127 AUDIO
Leadout: 330256
Using module: pcfx(PC-FX)

0.9.12 -loadcd pcfx \\.\E:

Starting Mednafen 0.9.12
Internal emulation modules: nes snes gb gba pce pce_fast lynx md pcfx ngp vb wswan sms gg cdplay mmplay
External emulation modules:
Loading settings from "D:\Downloads\mednafen-0.9.12-wip-win32\mednafen-09x.cfg"...
Compiled against SDL 1.2.13, running with SDL 1.2.13

Initializing joysticks...
Joystick 0 - Saitek P880 Pad - Unique ID: 080e4a1ee1ed960b
Loading \\.\E:...

Connected physical devices:
\\.\E:
\\.\F:
Using MMC commands directly: No
Performing subchannel R-W Reading: Yes
Track 1, LBA: 0 AUDIO
Track 2, LBA: 1971 DATA
Track 3, LBA: 323127 AUDIO
Leadout: 330256
Using module: pcfx(PC-FX)

0.9.28 -loadcd pcfx \\.\E:

Starting Mednafen 0.9.28-WIP
Build information:
Compiled with gcc 4.5.4 20111030 (prerelease) [svn/rev.180676 - mingw-w64/oz]
Compiled against zlib 1.2.6, running with zlib 1.2.6
Compiled against SDL 1.2.15, running with SDL 1.2.15
Running with libsndfile-1.0.25
Compiled against libcdio 0.83 x86_64-unknown-linux-gnu, running with libcdio 0.83 x86_64-unknown-linux-gnu
Base directory: D:\Downloads\mednafen-0.9.28-wip-win32
Internal emulation modules: nes snes gb gba pce pce_fast lynx md pcfx ngp psx vb wswan sms gg cdplay
External emulation modules:
Loading settings from "D:\Downloads\mednafen-0.9.28-wip-win32\mednafen-09x.cfg"...
Initializing joysticks...
Joystick 0 - Saitek P880 Pad - Unique ID: 080e4a1ee1ed960b
Loading \\.\E:...

No tracks found!

Error opening CD.

0.9.28 -loadcd psx \\.\E:

Starting Mednafen 0.9.28-WIP
Build information:
Compiled with gcc 4.5.4 20111030 (prerelease) [svn/rev.180676 - mingw-w64/oz]
Compiled against zlib 1.2.6, running with zlib 1.2.6
Compiled against SDL 1.2.15, running with SDL 1.2.15
Running with libsndfile-1.0.25
Compiled against libcdio 0.83 x86_64-unknown-linux-gnu, running with libcdio 0.83 x86_64-unknown-linux-gnu
Base directory: D:\Downloads\mednafen-0.9.28-wip-win32
Internal emulation modules: nes snes gb gba pce pce_fast lynx md pcfx ngp psx vb wswan sms gg cdplay
External emulation modules:
Loading settings from "D:\Downloads\mednafen-0.9.28-wip-win32\mednafen-09x.cfg"...
Initializing joysticks...
Joystick 0 - Saitek P880 Pad - Unique ID: 080e4a1ee1ed960b
Loading \\.\E:...

Unknown CUE sheet directive "000000000000000000000000000000000000000000000000000000000000000".

Error opening CD.


"Unknown CUE sheet directive" and "No tracks found!" can be found in CDAccess_Image.cpp (CDAccess_Image::ImageOpen).

Weeeeeeeird shit.

[Updated on: Thu, 29 August 2013 14:17]

Re: Mednafen 0.9.29-WIP [message #3161 is a reply to message #3141 ] Thu, 29 August 2013 18:34 Go to previous messageGo to next message
Administrator  [PM]
I'm working on a fix for this problem for 0.9.31-WIP; as a heads-up, -loadcd will be deprecated(but should still function as it has in recent versions), and there will be a new argument-less -physcd option. Like so:

    mednafen -physcd
    mednafen -physcd /dev/sr0
    mednafen -physcd \\.\E:
    mednafen -force_module pce_fast -physcd 
Re: Mednafen 0.9.29-WIP [message #3163 is a reply to message #3161 ] Fri, 30 August 2013 01:08 Go to previous messageGo to next message
idyll  [PM]
After trying once more to compile a 32-bit binary on Mac, I got it to build and run without error. Very Happy When running the following command:

./configure --enable-static --disable-shared --disable-jack CC="gcc -arch i386" CXX="g++ -arch i386" LDFLAGS="-arch i386"

configure adds "-fno-pic -fno-pie" to the CPPFLAGS.

Removing the switches from config.status fixes the problem and Mednafen compiles without issue.

I just pass the following command after "./configure" and before "make":

sed -i '' 's/'"-fno-pic -fno-pie "'//g' ~/mednafen/config.status

I don't know why configure adds those switches when compiling 32-bit, but not 64-bit. There's probably a better way to disable those switches, but I don't know how. Passing "CPPFLAGS=" to configure doesn't work as the switches are just appended.

Anyways, thanks for trying to help. Also, thanks for working on the physical CD issue.
Re: Mednafen 0.9.29-WIP [message #3168 is a reply to message #3161 ] Sat, 31 August 2013 03:49 Go to previous message
Hatsuyuki  [PM]
Thank you for the response.
  Switch to threaded view of this topic Create a new topic Submit Reply
Previous Topic:Mednafen 0.9.28-WIP
Next Topic:Mednafen 0.9.31-WIP
Goto Forum:
  

-=] Back to Top [=-
[ Syndicate this forum (XML) ] [ ]

Current Time: Fri Apr 26 02:21:44 CDT 2024
.:: Contact :: Home ::.

Powered by FUDforum.
Copyright © FUDforum Bulletin Board Software