games/colem: Updated for version 2.9.

Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
This commit is contained in:
B. Watson 2014-08-26 07:31:11 +07:00 committed by Willy Sudiarto Raharjo
parent 3f99f3cb07
commit 9d3f8a34b2
8 changed files with 770 additions and 60 deletions

View file

@ -1,33 +1,33 @@
colem (ColecoVision emulator)
ColEm is a portable emulator of the old ColecoVision videogame console.
It should run most ColecoVision games and supports Coleco's SuperAction
controllers with spin wheels.
In order to run ColecoVision games, you will need a copy of the system
ROM image, but for copyright reasons, no ROM image is included. The
file is generally called "coleco.rom" or "coleco.zip" (which contains
"coleco.rom"). If you own a ColecoVision console, depending on the laws
where you live, it may or may not be legal for you to use a copy of the
ROM. If it's legal, you can either crack open your console, remove the
ROM chip, and read the data from it... or use google-fu to find an
already-dumped image file. Legal issues aside, you have 2 ways to
provide the ROM image for the emulator to use:
ColEm uses OSS for audio, so you'll have to either load the OSS
emulation modules (via /etc/rc.d/rc.alsa-oss), run it as "aoss colem"
from the command line, or launch it from your desktop by opening a .cv
or .col file.
1. Place either "coleco.rom" or "coleco.zip" (containing "coleco.rom") in
the directory with the SlackBuild script. The resulting package will
include the ROM image in "usr/share/colem/coleco.rom". If you do this,
DO NOT give anyone a copy of the package! Using the ROM might possibly
be legal, but bundling it with ColEm is against the ColEm license.
In order to run ColecoVision games, you will need a copy of the system
ROM image, but for copyright reasons, no ROM image is included.
The file is generally called "coleco.rom" or "coleco.zip" (which
contains "coleco.rom"). If you own a ColecoVision console, depending
on the laws where you live, it may or may not be legal for you to use a
copy of the ROM. If it's legal, you can either crack open your console,
remove the ROM chip, and read the data from it... or use google-fu to
find an already-dumped image file. Legal issues aside, you have 2 ways
to provide the ROM image for the emulator to use:
2. Build the package without the ROM image. After installing the
package, manually place a copy of "coleco.rom" in "/usr/share/colem/"
or "~/.colem/".
1. Buld the package with the ROM image:
Note about the sources: It appears that every time upstream releases a
new version, the download link for the previous version is removed. If
you are unable to download the source, try visiting the home page and
look for a new version of ColEm. If this is the case, please contact
the maintainer of this script (see the .info file)
Place either "coleco.rom" or "coleco.zip" (containing "coleco.rom")
in the directory with the SlackBuild script. The resulting package will
include the ROM image in "usr/share/colem/coleco.rom". If you do this,
DO NOT give anyone a copy of the package! Using the ROM might possibly
be legal, but bundling it with ColEm is against the ColEm license.
By default, ColEm is built for 24- and 32-bit color depth X11 displays.
If you intend to run ColEm on an 8- or 16-bpp display, set either
DISPLAY_BPP=8 or DISPLAY_BPP=16 in the script's environment.
2. Build the package without the ROM image:
After installing the package, manually place a copy of "coleco.rom" in
"/usr/share/colem/" or "~/.colem/".

364
games/colem/colem.6 Normal file
View file

@ -0,0 +1,364 @@
.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
.\"
.\" Standard preamble:
.\" ========================================================================
.de Sp \" Vertical space (when we can't use .PP)
.if t .sp .5v
.if n .sp
..
.de Vb \" Begin verbatim text
.ft CW
.nf
.ne \\$1
..
.de Ve \" End verbatim text
.ft R
.fi
..
.\" Set up some character translations and predefined strings. \*(-- will
.\" give an unbreakable dash, \*(PI will give pi, \*(L" will give a left
.\" double quote, and \*(R" will give a right double quote. \*(C+ will
.\" give a nicer C++. Capital omega is used to do unbreakable dashes and
.\" therefore won't be available. \*(C` and \*(C' expand to `' in nroff,
.\" nothing in troff, for use with C<>.
.tr \(*W-
.ds C+ C\v'-.1v'\h'-1p'\s-2+\h'-1p'+\s0\v'.1v'\h'-1p'
.ie n \{\
. ds -- \(*W-
. ds PI pi
. if (\n(.H=4u)&(1m=24u) .ds -- \(*W\h'-12u'\(*W\h'-12u'-\" diablo 10 pitch
. if (\n(.H=4u)&(1m=20u) .ds -- \(*W\h'-12u'\(*W\h'-8u'-\" diablo 12 pitch
. ds L" ""
. ds R" ""
. ds C` ""
. ds C' ""
'br\}
.el\{\
. ds -- \|\(em\|
. ds PI \(*p
. ds L" ``
. ds R" ''
. ds C`
. ds C'
'br\}
.\"
.\" Escape single quotes in literal strings from groff's Unicode transform.
.ie \n(.g .ds Aq \(aq
.el .ds Aq '
.\"
.\" If the F register is turned on, we'll generate index entries on stderr for
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
.\" entries marked with X<> in POD. Of course, you'll have to process the
.\" output yourself in some meaningful fashion.
.\"
.\" Avoid warning from groff about undefined register 'F'.
.de IX
..
.nr rF 0
.if \n(.g .if rF .nr rF 1
.if (\n(rF:(\n(.g==0)) \{
. if \nF \{
. de IX
. tm Index:\\$1\t\\n%\t"\\$2"
..
. if !\nF==2 \{
. nr % 0
. nr F 2
. \}
. \}
.\}
.rr rF
.\"
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
.\" Fear. Run. Save yourself. No user-serviceable parts.
. \" fudge factors for nroff and troff
.if n \{\
. ds #H 0
. ds #V .8m
. ds #F .3m
. ds #[ \f1
. ds #] \fP
.\}
.if t \{\
. ds #H ((1u-(\\\\n(.fu%2u))*.13m)
. ds #V .6m
. ds #F 0
. ds #[ \&
. ds #] \&
.\}
. \" simple accents for nroff and troff
.if n \{\
. ds ' \&
. ds ` \&
. ds ^ \&
. ds , \&
. ds ~ ~
. ds /
.\}
.if t \{\
. ds ' \\k:\h'-(\\n(.wu*8/10-\*(#H)'\'\h"|\\n:u"
. ds ` \\k:\h'-(\\n(.wu*8/10-\*(#H)'\`\h'|\\n:u'
. ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'^\h'|\\n:u'
. ds , \\k:\h'-(\\n(.wu*8/10)',\h'|\\n:u'
. ds ~ \\k:\h'-(\\n(.wu-\*(#H-.1m)'~\h'|\\n:u'
. ds / \\k:\h'-(\\n(.wu*8/10-\*(#H)'\z\(sl\h'|\\n:u'
.\}
. \" troff and (daisy-wheel) nroff accents
.ds : \\k:\h'-(\\n(.wu*8/10-\*(#H+.1m+\*(#F)'\v'-\*(#V'\z.\h'.2m+\*(#F'.\h'|\\n:u'\v'\*(#V'
.ds 8 \h'\*(#H'\(*b\h'-\*(#H'
.ds o \\k:\h'-(\\n(.wu+\w'\(de'u-\*(#H)/2u'\v'-.3n'\*(#[\z\(de\v'.3n'\h'|\\n:u'\*(#]
.ds d- \h'\*(#H'\(pd\h'-\w'~'u'\v'-.25m'\f2\(hy\fP\v'.25m'\h'-\*(#H'
.ds D- D\\k:\h'-\w'D'u'\v'-.11m'\z\(hy\v'.11m'\h'|\\n:u'
.ds th \*(#[\v'.3m'\s+1I\s-1\v'-.3m'\h'-(\w'I'u*2/3)'\s-1o\s+1\*(#]
.ds Th \*(#[\s+2I\s-2\h'-\w'I'u*3/5'\v'-.3m'o\v'.3m'\*(#]
.ds ae a\h'-(\w'a'u*4/10)'e
.ds Ae A\h'-(\w'A'u*4/10)'E
. \" corrections for vroff
.if v .ds ~ \\k:\h'-(\\n(.wu*9/10-\*(#H)'\s-2\u~\d\s+2\h'|\\n:u'
.if v .ds ^ \\k:\h'-(\\n(.wu*10/11-\*(#H)'\v'-.4m'^\v'.4m'\h'|\\n:u'
. \" for low resolution devices (crt and lpr)
.if \n(.H>23 .if \n(.V>19 \
\{\
. ds : e
. ds 8 ss
. ds o a
. ds d- d\h'-1'\(ga
. ds D- D\h'-1'\(hy
. ds th \o'bp'
. ds Th \o'LP'
. ds ae ae
. ds Ae AE
.\}
.rm #[ #] #H #V #F C
.\" ========================================================================
.\"
.IX Title "COLEM 6"
.TH COLEM 6 "2014-08-25" "2.9" "SlackBuilds.org"
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
.\" way too many mistakes in technical documents.
.if n .ad l
.nh
.SH "NAME"
colem \- Emulator for ColecoVision and Coleco Adam consoles
.SH "SYNOPSIS"
.IX Header "SYNOPSIS"
colem [\-option1 [\-option2...]] [filename]
.SH "DESCRIPTION"
.IX Header "DESCRIPTION"
ColEm is a portable emulator of the old ColecoVision videogame console. It should run most ColecoVision games and supports Coleco's SuperAction controllers with spin wheels.
.PP
You can always get the latest ColEm binaries, source code, and support files from
http://fms.komkon.org/ColEm/
.SH "OPTIONS"
.IX Header "OPTIONS"
[filename]
Name of the file to load as a cartridge [default: \s-1CART.ROM\s0]
.PP
This program will transparently uncompress singular GZIPped files.
.IP "\-verbose <level>" 4
.IX Item "-verbose <level>"
Select debugging messages [bitmask, default: 5]
.RS 4
.IP "0" 4
Silent
.IP "1" 4
.IX Item "1"
Startup messages
.IP "2" 4
.IX Item "2"
\&\s-1VDP\s0
.IP "4" 4
.IX Item "4"
Illegal Z80 ops
.IP "16" 4
.IX Item "16"
Sound
.RE
.RS 4
.RE
.IP "\-pal, \-ntsc" 4
.IX Item "-pal, -ntsc"
Video system to use [default: \-ntsc]
.IP "\-skip <percent>" 4
.IX Item "-skip <percent>"
Percentage of frames to skip [default: 25]
.IP "\-help" 4
.IX Item "-help"
Print this help page
.IP "\-home <dirname>" 4
.IX Item "-home <dirname>"
Set directory with system \s-1ROM\s0 files [default: see \s-1FILES,\s0 below]
.IP "\-adam, \-cv" 4
.IX Item "-adam, -cv"
Run in Adam/ColecoVision mode [default: \-cv]
.IP "\-allspr" 4
.IX Item "-allspr"
Show all sprites [off]
.IP "\-autoa, \-noautoa" 4
.IX Item "-autoa, -noautoa"
Autofire/No autofire for FIRE-R button [default: \-noautoa]
.IP "\-autob, \-noautob" 4
.IX Item "-autob, -noautob"
Autofire/No autofire for FIRE-L button [default: \-noautob]
.IP "\-spin1x, \-spin1y" 4
.IX Item "-spin1x, -spin1y"
Mouse X/Y position as SuperAction spinner 1 [default: off]
.IP "\-spin2x, \-spin2y" 4
.IX Item "-spin2x, -spin2y"
Mouse X/Y position as SuperAction spinner 2 [default: off]
.IP "\-drums, \-nodrums" 4
.IX Item "-drums, -nodrums"
Hit/Don't hit \s-1MIDI\s0 drums on noise [default: \-nodrums]
.IP "\-logsnd <filename>" 4
.IX Item "-logsnd <filename>"
Write soundtrack to a \s-1MIDI\s0 file [default: \s-1LOG.MID\s0]
.IP "\-palette <number>" 4
.IX Item "-palette <number>"
Use given color palette [default: 0]
.RS 4
.IP "0" 4
Scaled \s-1VDP\s0 colors
.IP "1" 4
.IX Item "1"
Original \s-1VDP\s0 colors
.IP "2" 4
.IX Item "2"
Faded \s-1NTSC\s0 colors
.RE
.RS 4
.RE
.IP "\-sound [<quality>]" 4
.IX Item "-sound [<quality>]"
Sound emulation quality [default: 22050]
.IP "\-nosound" 4
.IX Item "-nosound"
Don't emulate sound [default: emulate sound]
.IP "\-trap <address>" 4
.IX Item "-trap <address>"
Trap execution when \s-1PC\s0 reaches address [default: FFFFh]
.IP "\-sync <frequency>" 4
.IX Item "-sync <frequency>"
Sync screen updates to <frequency> [default: 60]
.IP "\-nosync" 4
.IX Item "-nosync"
Do not sync screen updates [default: \-nosync]
.IP "\-tv, \-notv" 4
.IX Item "-tv, -notv"
Simulate/Don't simulate scanlines [default: \-notv]
.IP "\-soft, \-nosoft" 4
.IX Item "-soft, -nosoft"
Scale screen up with softening [default: \-nosoft]
.IP "\-saver, \-nosaver" 4
.IX Item "-saver, -nosaver"
Save/don't save \s-1CPU\s0 when inactive [default: \-saver]
.IP "\-shm, \-noshm" 4
.IX Item "-shm, -noshm"
Use/don't use \s-1MIT SHM\s0 extensions for X [default: \-shm]
.IP "\-scale <factor>" 4
.IX Item "-scale <factor>"
Scale window by <factor> [default: 2]
.SH "KEYBOARD BINDINGS"
.IX Header "KEYBOARD BINDINGS"
[\s-1ALT\s0] Hold to switch to the second controller
.IP "[\s-1SPACE\s0]" 4
.IX Item "[SPACE]"
FIRE-R button (also: [\s-1SHIFT\s0],A,S,D,F,G,H,J,K,L)
.IP "[\s-1CONTROL\s0]" 4
.IX Item "[CONTROL]"
FIRE-L button (also: Z,X,C,V,B,N,M)
.IP "[Q]" 4
.IX Item "[Q]"
SuperAction \s-1PURPLE\s0 button (also: E,T,U,O)
.IP "[W]" 4
.IX Item "[W]"
SuperAction \s-1BLUE\s0 button (also: R,Y,I,P)
.IP "[0]\-[9]" 4
.IX Item "[0]-[9]"
Digit buttons
.IP "[\-]" 4
[*] button
.IP "[=]" 4
[#] button
.IP "[\s-1PGUP\s0]" 4
.IX Item "[PGUP]"
Fast-forward emulation (also: [F9])
.IP "[\s-1ESC\s0]" 4
.IX Item "[ESC]"
Quit emulation (also: [F12])
.IP "[F1]" 4
.IX Item "[F1]"
Go into the built-in debugger
.IP "[F2]" 4
.IX Item "[F2]"
Turn soundtrack log on/off
.IP "[F3]" 4
.IX Item "[F3]"
Toggle FIRE-R autofire on/off
.IP "[F4]" 4
.IX Item "[F4]"
Toggle FIRE-L autofire on/off
.IP "[F5]" 4
.IX Item "[F5]"
Invoke configuration menu
.IP "[F6]" 4
.IX Item "[F6]"
Load emulation state
.IP "[F7]" 4
.IX Item "[F7]"
Save emulation state
.IP "[F8]" 4
.IX Item "[F8]"
Turn scanline simulation on/off
.IP "[\s-1ALT\s0]+[F8]" 4
.IX Item "[ALT]+[F8]"
Toggle screen softening on/off
.IP "[F9]" 4
.IX Item "[F9]"
Fast-forward emulation (also: [\s-1PGUP\s0])
.IP "[F11]" 4
.IX Item "[F11]"
Reset hardware
.IP "[F12]" 4
.IX Item "[F12]"
Quit emulation (also: [\s-1ESC\s0])
.IP "[\s-1ALT\s0]+[\s-1PGUP\s0]" 4
.IX Item "[ALT]+[PGUP]"
Increase audio volume
.IP "[\s-1ALT\s0]+[\s-1PGDOWN\s0]" 4
.IX Item "[ALT]+[PGDOWN]"
Decrease audio volume
.SH "FILES"
.IX Header "FILES"
.IP "coleco.rom" 4
.IX Item "coleco.rom"
ColecoVision \s-1BIOS ROM\s0 image (8192 bytes). This is the only \s-1ROM\s0 required for playing ColecoVision games.
.IP "writer.rom" 4
.IX Item "writer.rom"
SmartWriter \s-1ROM \s0(32768 bytes), only required for emulating the Coleco \s-1ADAM\s0 system.
.IP "eos.rom" 4
.IX Item "eos.rom"
Extended \s-1OS ROM \s0(8192 bytes), only required for emulating the Coleco \s-1ADAM\s0 system.
.PP
The above \s-1ROM\s0 images may be named in all-lowercase or all-uppercase, and are searched for in:
.PP
1. The directory specified by \-home, or the current directory if \-home not given.
.PP
2. /usr/share/colem/
.PP
3. ~/.colem/
.PP
The coleco.rom file will occasionally be found on websites with the names \*(L"os7.rom\*(R" or \*(L"ColecoVision \s-1BIOS \s0(1982).col\*(R". Its md5sum is one of:
.PP
.Vb 3
\& 2c66f5911e5b42b8ebe113403548eee7 (original version)
\& 00fd13b66d39c69706aa48eb84a78411 (hacked version, different font)
\& 47f7180592a00b9631c97a12ff0fdd3c (hacked version, no title screen delay)
.Ve
.PP
ColEm works with any of the above \s-1ROM\s0 images.
.SH "AUTHOR"
.IX Header "AUTHOR"
ColEm is by Marat Fayzullin, (C)FMS 1994\-2010
.PP
This man page is by B. Watson, for the SlackBuilds.org project (but may be used by anyone for any
purpose).

View file

@ -6,8 +6,28 @@
# Licensed under the WTFPL. See http://www.wtfpl.net/txt/copying/ for details.
# 20140825 bkw:
# - updated for 2.9
# - include icon in slackbuild dir (upstream removed it from src tarball)
# - use ColEm.html from the source (upstream includes it now)
# - get rid of DISPLAY_BPP stuff, bpp is now detected at runtime,
# tested same binary on 16bpp and 32bpp, doubt anyone still uses 8bpp
# - host source myself, since upstream doesn't keep old releases
# - convert man page to .pod, for easier editing
# - install binary in /usr/games, man page in section 6
# - don't unzip the system ROM to $CWD (it might be read-only)
# - support ROM images with alternate name os7.rom
# - clean up README formatting, get rid of bpp stuff, mention OSS audio
# - add a generic-icon to colem.xml, at least in XFCE this makes .col
# files show up with the colem icon.
# - improve the .desktop file:
# + don't display in the start menu (since a ROM argument is required)
# + auto-associate with colecovision ROMs (as defined in colem.xml)
# + run "aoss colem" to get audio working on a stock Slack 14.1 system
# with OSS modules disabled by default.
PRGNAM=colem
VERSION=${VERSION:-2.6}
VERSION=${VERSION:-2.9}
BUILD=${BUILD:-1}
TAG=${TAG:-_SBo}
@ -50,7 +70,7 @@ fi
set -e
ZIPNAME="ColEm"
ZIPVER=$( echo $VERSION | sed 's/\.//g' )
ZIPVER=${VERSION//./}
rm -rf $PKG
mkdir -p $TMP $PKG $OUTPUT
@ -66,44 +86,43 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
sed -i 's/-O3/$(SLKCFLAGS)/' EMULib/Rules.gcc
sed -i "s/-O2/$SLKCFLAGS/" EMULib/Rules.gcc
# Make the emulator look in /usr/share/colem and ~/.colem for the
# system ROMs, as well as the current directory. Without this, it's
# quite annoying to use colem from either the command line or KDE.
patch -p1 < $CWD/rom_path.diff
# Don't lie and say we support .zip files. There's no code to implement it,
# at least not in the *nix port.
sed -i 's,and PKZIPped ,,' ColEm/Help.h ColEm/ColEm.html
cd $ZIPNAME/Unix
# Allow building for 8bpp or 16bpp X11 displays (the default is 32,
# which works on either 24bpp or 32bpp, which 99% of everyone is
# using now).
if [ "${DISPLAY_BPP:-32}" != "32" ]; then
sed -i "/^DEFINES/s/-DBPP32/-DBPP$DISPLAY_BPP/" Makefile
fi
# ColEm.html claims that -DGIFLIB makes the F10 key save a GIF snapshot,
# but it's not actually implemented in ColEm-2.9. In 2.6 it was implemented
# only for MS-DOS.
#sed -i "/^DEFINES/s/$/ -DGIFLIB/" Makefile
# Allow building on big-endian platforms (such as s390)
if [ "${BIGENDIAN:-no}" != "no" ]; then
sed -i "/^DEFINES/s/-DLSB_FIRST/-DMSB_FIRST/" Makefile
fi
make SLKCFLAGS="$SLKCFLAGS"
mkdir -p $PKG/usr/bin
install -s -m0755 -oroot -groot $PRGNAM $PKG/usr/bin
make
# no 'make install', do it manually.
mkdir -p $PKG/usr/games
install -s -m0755 -oroot -groot $PRGNAM $PKG/usr/games
# Man page written by script author.
mkdir -p $PKG/usr/man/man1
gzip -9c < $CWD/$PRGNAM.1 > $PKG/usr/man/man1/$PRGNAM.1.gz
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
# HTML doc downloaded from http://fms.komkon.org/ColEm/ColEm.html
cat $CWD/$ZIPNAME.html > $PKG/usr/doc/$PRGNAM-$VERSION/$ZIPNAME.html
mkdir -p $PKG/usr/man/man6
gzip -9c < $CWD/$PRGNAM.6 > $PKG/usr/man/man6/$PRGNAM.6.gz
# Icon used to be distributed with the colem 2.6 source, as
# Maemo/Package/colem-64x64.png
mkdir -p $PKG/usr/share/pixmaps
cat ../Maemo/Package/colem-64x64.png > $PKG/usr/share/pixmaps/$PRGNAM.png
cat $CWD/$PRGNAM.png > $PKG/usr/share/pixmaps/$PRGNAM.png
# .desktop file and mime .xml file originally taken from ColEm-Maemo
# sources and modified to get rid of the Maemo-specific stuff.
@ -113,21 +132,32 @@ cat $CWD/$PRGNAM.desktop > $PKG/usr/share/applications/$PRGNAM.desktop
mkdir -p $PKG/usr/share/mime/packages
cat $CWD/$PRGNAM.xml > $PKG/usr/share/mime/packages/$PRGNAM.xml
# The ROM directory
# The ROM directory. Included even if there's no ROM in the package.
mkdir -p $PKG/usr/share/$PRGNAM
# If there's a ROM image in $CWD, include it in the package
# Look for zipped ROM images and unzip them.
if [ -e $CWD/coleco.zip ]; then
( cd $CWD ; unzip -o coleco.zip )
unzip -o $CWD/coleco.zip
elif [ -e $CWD/COLECO.ZIP ]; then
( cd $CWD ; unzip -o COLECO.ZIP )
fi
if [ -e $CWD/coleco.rom ]; then
cat $CWD/coleco.rom > $PKG/usr/share/$PRGNAM/coleco.rom
elif [ -e $CWD/COLECO.ROM ]; then
cat $CWD/COLECO.ROM > $PKG/usr/share/$PRGNAM/coleco.rom
unzip -o $CWD/COLECO.ZIP
fi
# Look for non-zipped ROM images, either unzipped above or in $CWD.
for i in coleco.rom COLECO.ROM os7.rom OS7.ROM; do
[ -e $i ] && ROM=$i
[ -e $CWD/$i ] && ROM=$CWD/$i
done
# If we found a ROM image, include it in the package.
[ -n "$ROM" ] && cat $ROM > $PKG/usr/share/$PRGNAM/coleco.rom
mkdir -p $PKG/usr/doc/$PRGNAM-$VERSION
cat $CWD/$PRGNAM.SlackBuild > $PKG/usr/doc/$PRGNAM-$VERSION/$PRGNAM.SlackBuild
cat $CWD/README > $PKG/usr/doc/$PRGNAM-$VERSION/README
# HTML doc now included in the source tarball (didn't used to be).
cat ../$ZIPNAME.html > $PKG/usr/doc/$PRGNAM-$VERSION/$ZIPNAME.html
mkdir -p $PKG/install
cat $CWD/slack-desc > $PKG/install/slack-desc
cat $CWD/doinst.sh > $PKG/install/doinst.sh

View file

@ -2,7 +2,14 @@
Type=Application
Name=ColEm
GenericName=ColecoVision Emulator
Exec=colem
Exec=aoss colem %f
Icon=colem
Terminal=false
Categories=Game;Emulator;
NoDisplay=true
Actions=Play;
MimeType=application/x-cvrom;
[Desktop Action Play]
Name=Play
Exec=aoss colem %f

View file

@ -1,8 +1,8 @@
PRGNAM="colem"
VERSION="2.6"
VERSION="2.9"
HOMEPAGE="http://fms.komkon.org/ColEm/"
DOWNLOAD="http://fms.komkon.org/ColEm/ColEm26-Source.zip"
MD5SUM="dbafc021fc71ae5baae3602369f5a6f5"
DOWNLOAD="http://urchlay.naptime.net/~urchlay/src/ColEm29-Source.zip"
MD5SUM="a619dd9f5ddde76326b9278b13e6fac5"
DOWNLOAD_x86_64=""
MD5SUM_x86_64=""
REQUIRES=""

BIN
games/colem/colem.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.5 KiB

308
games/colem/colem.pod Normal file
View file

@ -0,0 +1,308 @@
# pod source for colem man page. convert with:
# pod2man --stderr -s6 -r2.9 -cSlackBuilds.org colem.pod > colem.6
# ignore the 'Expected text after =item, not a number' warnings.
=pod
=head1 NAME
colem - Emulator for ColecoVision and Coleco Adam consoles
=head1 SYNOPSIS
colem [-option1 [-option2...]] [filename]
=head1 DESCRIPTION
ColEm is a portable emulator of the old ColecoVision videogame console. It should run most ColecoVision games and supports Coleco's SuperAction controllers with spin wheels.
You can always get the latest ColEm binaries, source code, and support files from
http://fms.komkon.org/ColEm/
=head1 OPTIONS
[filename]
Name of the file to load as a cartridge [default: CART.ROM]
This program will transparently uncompress singular GZIPped files.
=over 4
=item -verbose <level>
Select debugging messages [bitmask, default: 5]
=over 4
=item 0
Silent
=item 1
Startup messages
=item 2
VDP
=item 4
Illegal Z80 ops
=item 16
Sound
=back
=item -pal, -ntsc
Video system to use [default: -ntsc]
=item -skip <percent>
Percentage of frames to skip [default: 25]
=item -help
Print this help page
=item -home <dirname>
Set directory with system ROM files [default: see FILES, below]
=item -adam, -cv
Run in Adam/ColecoVision mode [default: -cv]
=item -allspr
Show all sprites [off]
=item -autoa, -noautoa
Autofire/No autofire for FIRE-R button [default: -noautoa]
=item -autob, -noautob
Autofire/No autofire for FIRE-L button [default: -noautob]
=item -spin1x, -spin1y
Mouse X/Y position as SuperAction spinner 1 [default: off]
=item -spin2x, -spin2y
Mouse X/Y position as SuperAction spinner 2 [default: off]
=item -drums, -nodrums
Hit/Don't hit MIDI drums on noise [default: -nodrums]
=item -logsnd <filename>
Write soundtrack to a MIDI file [default: LOG.MID]
=item -palette <number>
Use given color palette [default: 0]
=over 4
=item 0
Scaled VDP colors
=item 1
Original VDP colors
=item 2
Faded NTSC colors
=back
=item -sound [<quality>]
Sound emulation quality [default: 22050]
=item -nosound
Don't emulate sound [default: emulate sound]
=item -trap <address>
Trap execution when PC reaches address [default: FFFFh]
=item -sync <frequency>
Sync screen updates to <frequency> [default: 60]
=item -nosync
Do not sync screen updates [default: -nosync]
=item -tv, -notv
Simulate/Don't simulate scanlines [default: -notv]
=item -soft, -nosoft
Scale screen up with softening [default: -nosoft]
=item -saver, -nosaver
Save/don't save CPU when inactive [default: -saver]
=item -shm, -noshm
Use/don't use MIT SHM extensions for X [default: -shm]
=item -scale <factor>
Scale window by <factor> [default: 2]
=back
=head1 KEYBOARD BINDINGS
[ALT] Hold to switch to the second controller
=over 4
=item [SPACE]
FIRE-R button (also: [SHIFT],A,S,D,F,G,H,J,K,L)
=item [CONTROL]
FIRE-L button (also: Z,X,C,V,B,N,M)
=item [Q]
SuperAction PURPLE button (also: E,T,U,O)
=item [W]
SuperAction BLUE button (also: R,Y,I,P)
=item [0]-[9]
Digit buttons
=item [-]
[*] button
=item [=]
[#] button
=item [PGUP]
Fast-forward emulation (also: [F9])
=item [ESC]
Quit emulation (also: [F12])
=item [F1]
Go into the built-in debugger
=item [F2]
Turn soundtrack log on/off
=item [F3]
Toggle FIRE-R autofire on/off
=item [F4]
Toggle FIRE-L autofire on/off
=item [F5]
Invoke configuration menu
=item [F6]
Load emulation state
=item [F7]
Save emulation state
=item [F8]
Turn scanline simulation on/off
=item [ALT]+[F8]
Toggle screen softening on/off
=item [F9]
Fast-forward emulation (also: [PGUP])
=item [F11]
Reset hardware
=item [F12]
Quit emulation (also: [ESC])
=item [ALT]+[PGUP]
Increase audio volume
=item [ALT]+[PGDOWN]
Decrease audio volume
=back
=head1 FILES
=over 4
=item coleco.rom
ColecoVision BIOS ROM image (8192 bytes). This is the only ROM required for playing ColecoVision games.
=item writer.rom
SmartWriter ROM (32768 bytes), only required for emulating the Coleco ADAM system.
=item eos.rom
Extended OS ROM (8192 bytes), only required for emulating the Coleco ADAM system.
=back
The above ROM images may be named in all-lowercase or all-uppercase, and are searched for in:
1. The directory specified by -home, or the current directory if -home not given.
2. /usr/share/colem/
3. ~/.colem/
The coleco.rom file will occasionally be found on websites with the names "os7.rom" or "ColecoVision BIOS (1982).col". Its md5sum is one of:
2c66f5911e5b42b8ebe113403548eee7 (original version)
00fd13b66d39c69706aa48eb84a78411 (hacked version, different font)
47f7180592a00b9631c97a12ff0fdd3c (hacked version, no title screen delay)
ColEm works with any of the above ROM images.
=head1 AUTHOR
ColEm is by Marat Fayzullin, (C)FMS 1994-2010
This man page is by B. Watson, for the SlackBuilds.org project (but may be used by anyone for any
purpose).

View file

@ -6,5 +6,6 @@
<glob pattern="*.cv"/>
<glob pattern="*.col.gz"/>
<glob pattern="*.col"/>
<generic-icon name="colem" />
</mime-type>
</mime-info>