diff options
-rw-r--r-- | .SRCINFO | 4 | ||||
-rw-r--r-- | PKGBUILD | 9 | ||||
-rw-r--r-- | zero-div.patch | 20 |
3 files changed, 29 insertions, 4 deletions
@@ -1,7 +1,7 @@ pkgbase = mdxmini-git pkgdesc = Library and command line player for Sharp X68000 MDX music files pkgver = r19.eda5bca - pkgrel = 3 + pkgrel = 4 url = https://github.com/weimingtom/mdxplayer/tree/master/jni/mdxmini arch = i686 arch = x86_64 @@ -11,10 +11,12 @@ pkgbase = mdxmini-git source = buffer-size.patch source = makefiles.patch source = integer-overflow.patch + source = zero-div.patch sha256sums = SKIP sha256sums = 4f8ec91487736c9ad864f54c615b491c406464573469ed59b1d4f6be77cf2812 sha256sums = 8711dd394c9b99e351026a8e88583d61142cab29a344434338b9589022a64582 sha256sums = e6210879c1418b30ed6645675822a572edae1b223cbca9fdf30b3d398c787a4c + sha256sums = bcc4f85ace781ad6298b81f90dc691f5aca627611d387dfc6c350a3145c1807a pkgname = mdxmini-git depends = glibc @@ -1,7 +1,7 @@ pkgbase=mdxmini-git pkgname=(mdxmini-git mdxplay-git) pkgver=r19.eda5bca -pkgrel=3 +pkgrel=4 pkgdesc='Library and command line player for Sharp X68000 MDX music files' arch=(i686 x86_64) # BouKiCHi's original repo seems to be gone so use this random, most up to @@ -12,11 +12,13 @@ makedepends=(git) source=("$pkgbase"::'git+https://github.com/weimingtom/mdxplayer.git' buffer-size.patch makefiles.patch - integer-overflow.patch) + integer-overflow.patch + zero-div.patch) sha256sums=('SKIP' '4f8ec91487736c9ad864f54c615b491c406464573469ed59b1d4f6be77cf2812' '8711dd394c9b99e351026a8e88583d61142cab29a344434338b9589022a64582' - 'e6210879c1418b30ed6645675822a572edae1b223cbca9fdf30b3d398c787a4c') + 'e6210879c1418b30ed6645675822a572edae1b223cbca9fdf30b3d398c787a4c' + 'bcc4f85ace781ad6298b81f90dc691f5aca627611d387dfc6c350a3145c1807a') pkgver() { cd "$srcdir/$pkgbase" @@ -31,6 +33,7 @@ prepare() { patch -p1 -i "$srcdir"/makefiles.patch patch -p1 -i "$srcdir"/buffer-size.patch patch -p0 -i "$srcdir"/integer-overflow.patch + patch -p0 -i "$srcdir"/zero-div.patch } build() { diff --git a/zero-div.patch b/zero-div.patch new file mode 100644 index 000000000000..096966841441 --- /dev/null +++ b/zero-div.patch @@ -0,0 +1,20 @@ +diff --git jni/mdxmini/src/mdxmml_ym2151.c jni/mdxmini/src/mdxmml_ym2151.c +index 4594762..cc9ca7c 100755 +--- jni/mdxmini/src/mdxmml_ym2151.c ++++ jni/mdxmini/src/mdxmml_ym2151.c +@@ -1041,6 +1041,7 @@ set_plfo( int track, int v1, int v2, int v3, int v4, int v5, songdata *data ) + if ( v1 > 4 ) d*=256; + /*fprintf(stderr,"%d %d %d %d\n", track, v1, t, d);fflush(stderr);*/ + mdx->track[track].p_lfo_form = v1; ++ if (t < 2) t = 2; /* HACK to prevent zero division, no idea what's correct */ + mdx->track[track].p_lfo_clock = t; + mdx->track[track].p_lfo_depth = d; + mdx->track[track].p_lfo_flag = FLAG_TRUE; +@@ -1092,6 +1093,7 @@ set_alfo( int track, int v1, int v2, int v3, int v4, int v5, songdata *data ) + d = d-0x10000; + } + mdx->track[track].a_lfo_form = v1; ++ if (t < 2) t = 2; /* HACK to prevent zero division, no idea what's correct */ + mdx->track[track].a_lfo_clock = t; + mdx->track[track].a_lfo_depth = d; + mdx->track[track].a_lfo_flag = FLAG_TRUE; |