summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDimitris Zlatanidis <d.zlatanidis@gmail.com>2014-11-14 07:53:09 +0700
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2014-11-14 07:53:09 +0700
commitee23eb60af470e06ba8c387ecc695b0f23bcbc73 (patch)
treec99ca5ec596348c97693dce7f419284d0b7d2df7
parent2057942373464512c839959ac4c9b336a2bb81cc (diff)
downloadslackbuilds-ee23eb60af470e06ba8c387ecc695b0f23bcbc73.tar.gz
system/caprice32: Added (CPC Emulator).
Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--system/caprice32/README10
-rw-r--r--system/caprice32/cap32.sh3
-rw-r--r--system/caprice32/caprice32.SlackBuild95
-rw-r--r--system/caprice32/caprice32.info10
-rw-r--r--system/caprice32/doinst.sh3
-rw-r--r--system/caprice32/slack-desc19
-rw-r--r--system/caprice32/usage.txt233
7 files changed, 373 insertions, 0 deletions
diff --git a/system/caprice32/README b/system/caprice32/README
new file mode 100644
index 0000000000..d106948bfb
--- /dev/null
+++ b/system/caprice32/README
@@ -0,0 +1,10 @@
+Caprice32 is a software emulator of the Amstrad CPC 8bit home computer
+series. The emulator faithfully imitates the CPC464, CPC664, and CPC6128
+models. By recreating the operations of all hardware components at a low
+level, the emulator achieves a high degree of compatibility with original
+CPC software. These programs or games can be run unmodified at real-time
+or higher speeds, depending on the emulator host environment.
+
+Usage:
+
+ $ cap32 /path/to/disk
diff --git a/system/caprice32/cap32.sh b/system/caprice32/cap32.sh
new file mode 100644
index 0000000000..33ce3cb41d
--- /dev/null
+++ b/system/caprice32/cap32.sh
@@ -0,0 +1,3 @@
+#!/bin/sh
+cd /usr/share/caprice32
+./cap32 $1
diff --git a/system/caprice32/caprice32.SlackBuild b/system/caprice32/caprice32.SlackBuild
new file mode 100644
index 0000000000..f0f407755d
--- /dev/null
+++ b/system/caprice32/caprice32.SlackBuild
@@ -0,0 +1,95 @@
+#!/bin/sh
+
+# Slackware build script for caprice32
+
+# Copyright 2014 Dimitris Zlatanidis Greece-Orestiada
+# All rights reserved.
+#
+# Redistribution and use of this script, with or without modification, is
+# permitted provided that the following conditions are met:
+#
+# 1. Redistributions of this script must retain the above copyright
+# notice, this list of conditions and the following disclaimer.
+#
+# THIS SOFTWARE IS PROVIDED BY THE AUTHOR "AS IS" AND ANY EXPRESS OR IMPLIED
+# WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
+# MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO
+# EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
+# SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+# PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
+# OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
+# WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
+# OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
+# ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+PRGNAM=caprice32
+VERSION=${VERSION:-4.2.0}
+BUILD=${BUILD:-1}
+TAG=${TAG:-_SBo}
+
+if [ -z "$ARCH" ]; then
+ case "$( uname -m )" in
+ i?86) ARCH=i486 ;;
+ arm*) ARCH=arm ;;
+ *) ARCH=$( uname -m ) ;;
+ esac
+fi
+
+CWD=$(pwd)
+TMP=${TMP:-/tmp/SBo}
+PKG=$TMP/package-$PRGNAM
+OUTPUT=${OUTPUT:-/tmp}
+
+if [ "$ARCH" = "i486" ]; then
+ SLKCFLAGS="-O2 -march=i486 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "i686" ]; then
+ SLKCFLAGS="-O2 -march=i686 -mtune=i686"
+ LIBDIRSUFFIX=""
+elif [ "$ARCH" = "x86_64" ]; then
+ SLKCFLAGS="-O2 -fPIC"
+ LIBDIRSUFFIX="64"
+else
+ SLKCFLAGS="-O2"
+ LIBDIRSUFFIX=""
+fi
+
+set -e
+
+rm -rf $PKG
+mkdir -p $TMP $PKG $OUTPUT
+cd $TMP
+rm -rf $PRGNAM-$VERSION
+mkdir $PRGNAM-$VERSION
+cd $PRGNAM-$VERSION
+unzip $CWD/$PRGNAM-${VERSION}-src.zip
+chown -R root:root .
+find -L . \
+ \( -perm 777 -o -perm 775 -o -perm 750 -o -perm 711 -o -perm 555 \
+ -o -perm 511 \) -exec chmod 755 {} \; -o \
+ \( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
+ -o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+make -f makefile.unix RELEASE=TRUE
+
+mkdir -p $PKG/usr/share/$PRGNAM $PKG/usr/bin
+
+cp -rf rom $PKG/usr/share/$PRGNAM
+install -D -m0755 cap32 $PKG/usr/share/$PRGNAM/cap32
+install -D -m0664 cap32.cfg $PKG/usr/share/$PRGNAM/cap32.cfg
+
+install -D -m0755 $CWD/cap32.sh $PKG/usr/bin/cap32
+
+find $PKG -print0 | xargs -0 file | grep -e "executable" -e "shared object" | grep ELF \
+ | cut -f 1 -d : | xargs strip --strip-unneeded 2> /dev/null || true
+
+mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
+cp -a $CWD/usage.txt *.txt $PKG/usr/doc/$PRGNAM-$VERSION
+cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
+
+mkdir -p $PKG/install
+cat $CWD/slack-desc > $PKG/install/slack-desc
+cat $CWD/doinst.sh > $PKG/install/doinst.sh
+
+cd $PKG
+/sbin/makepkg -l y -c n $OUTPUT/$PRGNAM-$VERSION-$ARCH-$BUILD$TAG.${PKGTYPE:-tgz}
diff --git a/system/caprice32/caprice32.info b/system/caprice32/caprice32.info
new file mode 100644
index 0000000000..2b3074d3fe
--- /dev/null
+++ b/system/caprice32/caprice32.info
@@ -0,0 +1,10 @@
+PRGNAM="caprice32"
+VERSION="4.2.0"
+HOMEPAGE="https://sourceforge.net/projects/caprice32/"
+DOWNLOAD="http://sourceforge.net/projects/caprice32/files/caprice32/v4.2.0/caprice32-4.2.0-src.zip"
+MD5SUM="f38c9f14ab892710a70b36cd73fa4b91"
+DOWNLOAD_x86_64=""
+MD5SUM_x86_64=""
+REQUIRES=""
+MAINTAINER="Dimitris Zlatanidis"
+EMAIL="d.zlatanidis@gmail.com"
diff --git a/system/caprice32/doinst.sh b/system/caprice32/doinst.sh
new file mode 100644
index 0000000000..5fb28930db
--- /dev/null
+++ b/system/caprice32/doinst.sh
@@ -0,0 +1,3 @@
+if [ -x /usr/bin/update-desktop-database ]; then
+ /usr/bin/update-desktop-database -q usr/share/applications >/dev/null 2>&1
+fi
diff --git a/system/caprice32/slack-desc b/system/caprice32/slack-desc
new file mode 100644
index 0000000000..04cb06569c
--- /dev/null
+++ b/system/caprice32/slack-desc
@@ -0,0 +1,19 @@
+# HOW TO EDIT THIS FILE:
+# The "handy ruler" below makes it easier to edit a package description.
+# Line up the first '|' above the ':' following the base package name, and
+# the '|' on the right side marks the last column you can put a character in.
+# You must make exactly 11 lines for the formatting to be correct. It's also
+# customary to leave one space after the ':' except on otherwise blank lines.
+
+ |-----handy-ruler------------------------------------------------------|
+caprice32: caprice32 (CPC Emulator)
+caprice32:
+caprice32: Caprice32 is a software emulator of the Amstrad CPC 8bit home
+caprice32: computer series. The emulator faithfully imitates the CPC464, CPC664,
+caprice32: and CPC6128 models. By recreating the operations of all hardware
+caprice32: components at a low level, the emulator achieves a high degree of
+caprice32: compatibility with original CPC software. These programs or games can
+caprice32: be run unmodified at real-time or higher speeds, depending on the
+caprice32: emulator host environment.
+caprice32:
+caprice32: Homepage: https://sourceforge.net/projects/caprice32/
diff --git a/system/caprice32/usage.txt b/system/caprice32/usage.txt
new file mode 100644
index 0000000000..a5235753a3
--- /dev/null
+++ b/system/caprice32/usage.txt
@@ -0,0 +1,233 @@
+Caprice32 - Amstrad CPC Emulator
+(c) Copyright 1997-2004 Ulrich Doewich
+
+http://sourceforge.net/projects/caprice32/
+
+..........................................................................
+
+WHAT IS IT?
+~~~~~~~~~~~
+
+Caprice32 is a software emulator of the Amstrad CPC 8bit home computer
+series. The emulator faithfully imitates the CPC464, CPC664, and CPC6128
+models. By recreating the operations of all hardware components at a low
+level, the emulator achieves a high degree of compatibility with original
+CPC software. These programs or games can be run unmodified at real-time
+or higher speeds, depending on the emulator host environment.
+
+
+..........................................................................
+
+USAGE
+~~~~~
+
+This is considered and alpha release, as the emulator in its current
+state lacks a lot of user friendliness (i.e. it lacks a graphical user
+interface).
+
+Open cap32.cfg in a text editor (Notepad for example) and edit values as
+necessary. Refer to the next section for an explanation of what it all
+means. Make especially sure the rom path reference is correct otherwise
+the emulator will fail to start!
+
+To load a disk, snapshot or tape image simply specify the complete path
+to the file on the command line. You can pass more than one type of file
+at the same time - simply separate them with spaces. Paths and filenames
+that contain spaces need to be enclosed by quotes.
+
+
+..........................................................................
+
+THE CONFIG FILE
+~~~~~~~~~~~~~~~
+
+[system]
+
+model
+ Defines the CPC model to emulate CPC464, 664 or 6128
+ Range: 0-2
+ Default: 2
+
+ram_size
+ RAM size in 64K increments
+ Range: 64-576
+ Default: 128
+
+speed
+ emulation speed in 25% increments
+ Range: 2-32
+ Default: 4
+
+keyboard
+ keyboard layout to use
+ Range: 0 = original CPC
+ 1 = French CPC
+ 2 = Spanish CPC
+ Default: 0
+
+[video]
+
+scr_width
+ width of video mode to use for fullscreen display
+ Range: 320-
+ Default: 800
+
+scr_height
+ height of video mode to use for fullscreen display
+ Range: 200-
+ Default: 600
+
+scr_bpp
+ bits per pixel of video mode to use
+ Range: 8,15,16,24,32
+ Default: 8
+
+scr_style
+ rendering style
+ Range: 0 = scanlines
+ 1 = normal size, no scanlines
+ 2 = double width
+ 3 = half size
+ 4 = half size with hardware flip
+ 5 = Super Eagle
+ 6 = Scale2x
+ 7 = Advanced Scale2x
+ 8 = TV 2x
+ 9 = bilinear filter (in software)
+ 10 = bicubic filter (in software)
+ 11 = dot matrix
+ 12 = OpenGL, no scanlines
+ 13 = OpenGL, 25% scanlines
+ 14 = OpenGL, 50% scanlines
+ 15 = OpenGL, 75% scanlines
+ 16 = OpenGL, 100% scanlines
+ Default: 0
+
+scr_oglfilter
+ controls whether or not to apply filtering in OpenGL modes
+ Range: 0-1
+ Default: 1
+
+scr_fps
+ controls FPS counter display
+ Range: 0 = hide
+ 1 = show
+ Default: 0
+
+scr_tube
+ colour or green (monochrome) monitor
+ Range: 0 = colour
+ 1 = green
+ Default: 0
+
+scr_intensity
+ colour intensity control
+ Range: 5-15
+ Default: 10
+
+scr_remanency
+ blends the last and current frame together to reduce screen
+ flicker in apps/demos that flip screens quickly to simulate more
+ colours
+ Range: 0-1
+ Default: 0
+
+scr_window
+ start in windowed or fullscreen mode
+ Range: 0 = fullscreen
+ 1 = window
+ Default: 1
+
+[sound]
+
+enabled
+ control sound emulation
+ Range: 0-1
+ Default: 1
+
+playback_rate
+ sound playback frequency in kHz
+ Range: 0 = 11025
+ 1 = 22050
+ 2 = 44100
+ 3 = 48000
+ 4 = 96000
+ Default: 2
+
+bits
+ bits per sample
+ Range: 0 = 8
+ 1 = 16
+ Default: 0
+
+stereo
+ mono or stereo output
+ Range: 0 = mono
+ 1 = stereo
+ Default: 1
+
+volume
+ sound volume in percent
+ Range: 0-100
+ Default: 80
+
+pp_device
+ controls emulation of the DigiBlaster on the CPC printer port
+ Range: 0-1
+ Default: 0
+
+[control]
+
+kbd_layout
+ the PC keyboard layout
+ Range: 0 = US
+ 1 = French
+ 2 = Spanish
+ Default: 0
+
+[file]
+
+drvA_path
+ path to a DSK file, or PATH+ZIP for a ZIPped up DSK
+
+drvA_file
+ name of the DSK file
+
+drvA_zip
+ indicates whether or not we're dealing with a compressed DSK
+ image
+ Range: 0-1
+
+
+..........................................................................
+
+KEYS
+~~~~
+
+F1 switch between windowed / fullscreen mode
+Ctrl+F3 PLAY button on virtual tape deck
+F5 reset
+Ctrl+F8 toggle joystick emulation on / off
+F10 quit
+F12 toggle regular / full speed
+Ctrl+F12 show / hide FPS (Frames Per Second) counter
+
+..........................................................................
+
+SOURCE CODE AVAILABILITY
+~~~~~~~~~~~~~~~~~~~~~~~~
+
+The most recent source code release is always available from the
+Caprice32 project page on SourceForge.net - see the URL at the top.
+
+
+..........................................................................
+
+COMMENTS OR READY TO CONTRIBUTE?
+~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+
+If you have suggestions, a bug report or even want to join the
+development team, please feel free to use one of the many contact methods
+presented on the Caprice32 project page on SourceForge.net - see the URL
+at the top.
+