From: kub Date: Sun, 3 Sep 2023 20:47:36 +0000 (+0200) Subject: readme, some cleanup X-Git-Tag: v2.00~180 X-Git-Url: https://notaz.gp2x.de/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=324dbe04731d9fc950afd3c6b100e9cb985c82ec;p=picodrive.git readme, some cleanup --- diff --git a/README.md b/README.md index d43d1b21..537106cb 100644 --- a/README.md +++ b/README.md @@ -5,7 +5,7 @@ too, like SH2 recompilers for MIPS (mips32r2), ARM64 (armv8), RISC-V (RV64IM) and PowerPC (G4/2.03). PicoDrive was the first emulator ever to properly emulate Virtua Racing and -it's SVP chip. +its SVP chip. Currently the main development happens in the [irixxxx's fork](https://github.com/irixxxx/picodrive), @@ -13,6 +13,16 @@ Currently the main development happens in the ### compiling +For platforms for which release builds are supplied the most easy way is to +use the release script in tools/release.sh. The script requires toolchains +to be installed locally, depending on the platform to build. See the release +script for details. To make a platform release build use + +> tools/release.sh [version] [platforms...] + +This will deliver a zip files for each platform in a the release-[version] +directory. + A list of platforms for which this is possible can be obtained with > configure --help @@ -23,49 +33,44 @@ platform list, just use > configure --platform=generic If DRC is available for the platform, it should be enabled automatically. - -For other platforms using a cross-compiling toolchain I used this, -assuming $TC points to the appropriate cross compile toolchain directory: - -platform|toolchain|configure command ---------|---------|----------------- -gp2x,wiz,caanoo|open2x|CROSS_COMPILE=arm-open2x-linux- CFLAGS="-I$TC/gcc-4.1.1-glibc-2.3.6/arm-open2x-linux/include" LDFLAGS="--sysroot $TC/gcc-4.1.1-glibc-2.3.6/arm-open2x-linux -L$TC/gcc-4.1.1-glibc-2.3.6/arm-open2x-linux/lib" ./configure --platform=gp2x -gp2x,wiz,caanoo|open2x with ubuntu arm gcc 4.7|CROSS_COMPILE=arm-linux-gnueabi- CFLAGS="-I$TC/gcc-4.1.1-glibc-2.3.6/arm-open2x-linux/include" LDFLAGS="-B$TC/gcc-4.1.1-glibc-2.3.6/lib/gcc/arm-open2x-linux/4.1.1 -B$TC/gcc-4.1.1-glibc-2.3.6/arm-open2x-linux/lib -L$TC/gcc-4.1.1-glibc-2.3.6/arm-open2x-linux/lib" ./configure --platform=gp2x -dingux|dingux|CROSS_COMPILE=mipsel-linux- CFLAGS="-I$TC/usr/include -I$TC/usr/include/SDL" LDFLAGS="--sysroot $TC -L$TC/lib" ./configure --platform=dingux -dingux|dingux with ubuntu mips gcc 5.4|CROSS_COMPILE=mipsel-linux-gnu- CFLAGS="-I$TC/usr/include -I$TC/usr/include/SDL" LDFLAGS="-B$TC/usr/lib -B$TC/lib -Wl,-rpath-link=$TC/usr/lib -Wl,-rpath-link=$TC/lib" ./configure --platform=dingux -retrofw|retrofw|CROSS_COMPILE=mipsel-linux- CFLAGS="-I $TC/include -I $TC/include/SDL -Wno-unused-result" LDFLAGS="--sysroot $TC/mipsel-buildroot-linux-uclibc/sysroot" ./configure --platform=retrofw -gcw0|gcw0|CROSS_COMPILE=mipsel-gcw0-linux-uclibc- CFLAGS="-I$TC/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/include -I$TC/usr/mipsel-gcw0-linux-uclibc/sysroot/usr/include/SDL" LDFLAGS="--sysroot $TC/usr/mipsel-gcw0-linux-uclibc/sysroot" ./configure --platform=gcw0 -rg350|rg350|CROSS_COMPILE=mipsel-linux- CFLAGS="-I$TC/usr/include -I$TC/usr/include/SDL" LDFLAGS="--sysroot $TC -L$TC/lib" ./configure --platform=rg350 -miyoo|miyoo|CROSS_COMPILE=arm-miyoo-linux-uclibcgnueabi- CFLAGS="-I$TC/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/include -I$TC/arm-miyoo-linux-uclibcgnueabi/sysroot/usr/include/SDL" LDFLAGS="--sysroot $TC/arm-miyoo-linux-uclibcgnueabi/sysroot" ./configure --platform=miyoo - For gp2x, wiz, and caanoo you may need to compile libpng first. After configure, compile with > make + ### helix MP3 decoder for ARM -For 32 bit ARM platforms, there is the possibility to compile the helix MP3 -decoder into a shared library to be able to use MP3 audio files with CD games. -The helix source files aren't supplied because of licensing issues. However, if -you have obtained the sources, put them into the platform/common/helix -directory, set CROSS to your cross compiler prefix (e.g. arm-linux-gnueabi-) -and LIBGCC to your cross compiler's libgcc.a +For 32 bit ARM platforms, the optimized helix MP3 decoder can be used to play +MP3 audio files with CD games. The helix source files are however not supplied +due to licensing issues. If you have legally obtained the sources, put them in +the platform/common/helix directory. + +To compile the helix sources, set CROSS to your cross compiler prefix +(e.g. arm-linux-gnueabi-) and LIBGCC to your cross compiler's libgcc.a (e.g. /usr/lib/gcc-cross/arm-linux-gnueabi/4.7/libgcc.a), and compile with > make -C platform/common/helix CROSS=$CROSS LIBGCC=$LIBGCC -Copy the resulting ${CROSS}helix_mp3.so as libhelix.so to the directory where -the PicoDrive binary is. +This will result in a shared library named ${CROSS}helix_mp3.so. Copy this +as libhelix.so to where the PicoDrive binary is on the target device. + + +Also, the support for helix must be enabled in PicoDrive by compiling with + +> make PLATFORM_MP3=1 + +This switch is automatically enabled for Gamepark Holdings devices (gp2x, +caanoo and wiz). Without installing libhelix.so those devices will not play +MP3 audio. + ### installing -You need to install the resulting binary onto your device manually. -For opendingux, gcw0, and rg350, copy the opk to your SD card. -For gp2x, wiz, and caanoo, the easiest way is to unpack -[PicoDrive_191.zip](http://notaz.gp2x.de/releases/PicoDrive/PicoDrive_191.zip) -on your SD card and replace the PicoDrive binary. -For legacy dingux, unpack the dge zip and copy the files to your SD card. +The release scripts produces zip files which need to be installed on the +target device manually. Usually that means unpacking the file to some +directory on the device storage or on an SD card. See device specific +descriptions on the net. Send bug reports, fixes etc to diff --git a/pico/cd/libchdr b/pico/cd/libchdr index a20e04c1..4ad57f9e 160000 --- a/pico/cd/libchdr +++ b/pico/cd/libchdr @@ -1 +1 @@ -Subproject commit a20e04c12c0c20048bf771da6df7aa2e51f5e0cb +Subproject commit 4ad57f9e71ea35a8e62be20a059463bfe3abf043