diff --git a/games/colem/README b/games/colem/README index 47668260fc..93f7a56527 100644 --- a/games/colem/README +++ b/games/colem/README @@ -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/". diff --git a/games/colem/colem.6 b/games/colem/colem.6 new file mode 100644 index 0000000000..f3d8f8dd6d --- /dev/null +++ b/games/colem/colem.6 @@ -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 " 4 +.IX Item "-verbose " +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 " 4 +.IX Item "-skip " +Percentage of frames to skip [default: 25] +.IP "\-help" 4 +.IX Item "-help" +Print this help page +.IP "\-home " 4 +.IX Item "-home " +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 " 4 +.IX Item "-logsnd " +Write soundtrack to a \s-1MIDI\s0 file [default: \s-1LOG.MID\s0] +.IP "\-palette " 4 +.IX Item "-palette " +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 []" 4 +.IX Item "-sound []" +Sound emulation quality [default: 22050] +.IP "\-nosound" 4 +.IX Item "-nosound" +Don't emulate sound [default: emulate sound] +.IP "\-trap
" 4 +.IX Item "-trap
" +Trap execution when \s-1PC\s0 reaches address [default: FFFFh] +.IP "\-sync " 4 +.IX Item "-sync " +Sync screen updates to [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 " 4 +.IX Item "-scale " +Scale window by [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). diff --git a/games/colem/colem.SlackBuild b/games/colem/colem.SlackBuild index 68ae37a8e1..b5cf0e3548 100644 --- a/games/colem/colem.SlackBuild +++ b/games/colem/colem.SlackBuild @@ -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 diff --git a/games/colem/colem.desktop b/games/colem/colem.desktop index 33754341ed..8c80b46dbc 100644 --- a/games/colem/colem.desktop +++ b/games/colem/colem.desktop @@ -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 diff --git a/games/colem/colem.info b/games/colem/colem.info index 3d71671070..19b803b630 100644 --- a/games/colem/colem.info +++ b/games/colem/colem.info @@ -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="" diff --git a/games/colem/colem.png b/games/colem/colem.png new file mode 100644 index 0000000000..bf7503cfeb Binary files /dev/null and b/games/colem/colem.png differ diff --git a/games/colem/colem.pod b/games/colem/colem.pod new file mode 100644 index 0000000000..02e3b8167c --- /dev/null +++ b/games/colem/colem.pod @@ -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 + +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 + +Percentage of frames to skip [default: 25] + +=item -help + +Print this help page + +=item -home + +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 + +Write soundtrack to a MIDI file [default: LOG.MID] + +=item -palette + +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 [] + +Sound emulation quality [default: 22050] + +=item -nosound + +Don't emulate sound [default: emulate sound] + +=item -trap
+ +Trap execution when PC reaches address [default: FFFFh] + +=item -sync + +Sync screen updates to [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 + +Scale window by [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). diff --git a/games/colem/colem.xml b/games/colem/colem.xml index 816a514c54..45e2143a73 100644 --- a/games/colem/colem.xml +++ b/games/colem/colem.xml @@ -6,5 +6,6 @@ +