system/caprice32: Added (CPC Emulator).

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
Dimitris Zlatanidis 2014-11-14 07:53:09 +07:00 committed by Willy Sudiarto Raharjo
parent 2057942373
commit ee23eb60af
7 changed files with 373 additions and 0 deletions

10
system/caprice32/README Normal file
View file

@ -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

View file

@ -0,0 +1,3 @@
#!/bin/sh
cd /usr/share/caprice32
./cap32 $1

View file

@ -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}

View file

@ -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"

View file

@ -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

View file

@ -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/

233
system/caprice32/usage.txt Normal file
View file

@ -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.