Fallout 1 has arrived
This commit is contained in:
parent
68da7f9f5b
commit
3c1bcc8b9e
3
games-rpg/fallout1/Manifest
Normal file
3
games-rpg/fallout1/Manifest
Normal file
@ -0,0 +1,3 @@
|
|||||||
|
DIST HMIDET.386 81990 BLAKE2B e3dde0b948f11ec8e61417fd9d5c9d93d20626e003fa5daf5c2d94f8e14cb7982729cc8220ef68fb3a7661086c82e43173bd311808732ba37b0407fd53e681bf SHA512 f6a1d01edda1934258cce7172beac3d8257a6e8d29f235c59e5bba9f39832622d28a9222c4d629f7145930417e39338f6b08a7281053c565dc6831bae97d6a34
|
||||||
|
DIST HMIDRV.386 261425 BLAKE2B 1b3229f2af8bc9b618ce4bee4434472bd2728d5cb3921dce3079c687e9ac6fb55fc1202a17721aac23baacff445238ac2233bd7414260511935b7aa37d1452c6 SHA512 3c47694269ce72b9aac3a30241aca002aaee39d47a1d10d4d196ec4f16d0f64d7e01ef3f3cc0a637c69fcb4e9a42629ba2e8b1c02af08e95d82c52af2faa4b18
|
||||||
|
DIST fallup1d.zip 659033 BLAKE2B 68d3731e763c7f614d8ab2a63fc8677c975fbdc131a0fb9e7c10dcf1ad3f723749199a72917e320d66b4a729411e10c2a323f7910fc7032f0ae53eb95e663c8e SHA512 44b328c72226de562ae69fdf0dd4893dc4c17af801060e70c2e1ab9142018af8edf645b1a21c72b22dbc636885f43ce82bd76613fadb73412dc0ba4fafdcb35c
|
75
games-rpg/fallout1/fallout1-1.1.ebuild
Normal file
75
games-rpg/fallout1/fallout1-1.1.ebuild
Normal file
@ -0,0 +1,75 @@
|
|||||||
|
# Copyright 1999-2020 Gentoo Authors
|
||||||
|
# Distributed under the terms of the GNU General Public License v2
|
||||||
|
|
||||||
|
EAPI=7
|
||||||
|
|
||||||
|
inherit gog
|
||||||
|
|
||||||
|
DESCRIPTION="Post-apocalyptic role-playing game."
|
||||||
|
HOMEPAGE=""
|
||||||
|
|
||||||
|
LICENSE+=" FALLOUT1_EULA"
|
||||||
|
SLOT="0"
|
||||||
|
KEYWORDS="~amd64 ~x86 ~ppc64 ~arm"
|
||||||
|
|
||||||
|
SRC_URI="
|
||||||
|
dos? ( https://archive.org/download/fallout1_dos/fallup1d.zip
|
||||||
|
https://archive.org/download/fallout1_dos/HMIDET.386
|
||||||
|
https://archive.org/download/fallout1_dos/HMIDRV.386 )
|
||||||
|
"
|
||||||
|
|
||||||
|
IUSE="-dos -wine"
|
||||||
|
|
||||||
|
GOG_GAME_NAME="fallout_classic"
|
||||||
|
GOG_GAME_L10N="en"
|
||||||
|
GOG_GAME_PLATFORM="w"
|
||||||
|
GOG_GAME_INSTALLER="setup_fallout_2.1.0.18.exe"
|
||||||
|
|
||||||
|
BDEPEND="${BDEPEND}
|
||||||
|
media-gfx/icoutils
|
||||||
|
media-gfx/imagemagick
|
||||||
|
dos? ( app-arch/unzip )
|
||||||
|
"
|
||||||
|
|
||||||
|
RDEPEND="
|
||||||
|
dos? ( games-emulation/dosbox
|
||||||
|
app-emulation/dos32a )
|
||||||
|
wine? ( app-emulation/wine-vanilla[abi_x86_32] )
|
||||||
|
"
|
||||||
|
|
||||||
|
DEPEND="${RDEPEND}"
|
||||||
|
|
||||||
|
S=${WORKDIR}
|
||||||
|
|
||||||
|
src_unpack() {
|
||||||
|
gog_initialize
|
||||||
|
FALLOUT_EXE="fallout1_wine"
|
||||||
|
gog_download_installer
|
||||||
|
innoextract -I app -e ${GOG_GAME_NAME}/${GOG_GAME_INSTALLER}
|
||||||
|
wrestool -x -t14 -o . app/falloutw.exe
|
||||||
|
convert falloutw.exe_14_99_0.ico fallout1.png
|
||||||
|
mv fallout1-4.png fallout1.png
|
||||||
|
if use dos; then
|
||||||
|
cp ${DISTDIR}/HMID*.386 app
|
||||||
|
unzip ${DISTDIR}/fallup1d.zip FALL11.ZIP
|
||||||
|
unzip FALL11.ZIP FALLOUT.EXE
|
||||||
|
mv FALLOUT.EXE app
|
||||||
|
ln -s /usr/share/dos32a/dos32a.exe app/dos4gw.exe
|
||||||
|
cp ${FILESDIR}/dosbox.conf app
|
||||||
|
FALLOUT_EXE="fallout1_dos"
|
||||||
|
fi
|
||||||
|
mv app fallout1
|
||||||
|
cp ${FILESDIR}/${FALLOUT_EXE} fallout1_exe
|
||||||
|
}
|
||||||
|
|
||||||
|
src_install() {
|
||||||
|
insinto /usr/share/games
|
||||||
|
doins -r fallout1
|
||||||
|
rm -rf fallout1
|
||||||
|
mv fallout1_exe fallout1
|
||||||
|
insinto /usr/share/pixmaps
|
||||||
|
doins fallout1.png
|
||||||
|
insinto /usr/share/applications
|
||||||
|
doins "${FILESDIR}/fallout1.desktop"
|
||||||
|
dobin fallout1
|
||||||
|
}
|
95
games-rpg/fallout1/files/dosbox.conf
Normal file
95
games-rpg/fallout1/files/dosbox.conf
Normal file
@ -0,0 +1,95 @@
|
|||||||
|
[sdl]
|
||||||
|
fullscreen=true
|
||||||
|
fulldouble=false
|
||||||
|
fullresolution=original
|
||||||
|
windowresolution=original
|
||||||
|
output=surface
|
||||||
|
autolock=true
|
||||||
|
sensitivity=100
|
||||||
|
waitonerror=true
|
||||||
|
priority=higher,normal
|
||||||
|
mapperfile=mapper-0.74-3.map
|
||||||
|
usescancodes=true
|
||||||
|
|
||||||
|
[dosbox]
|
||||||
|
language=
|
||||||
|
machine=svga_s3
|
||||||
|
captures=capture
|
||||||
|
memsize=16
|
||||||
|
|
||||||
|
[render]
|
||||||
|
frameskip=0
|
||||||
|
aspect=false
|
||||||
|
scaler=normal2x
|
||||||
|
|
||||||
|
[cpu]
|
||||||
|
core=auto
|
||||||
|
cputype=auto
|
||||||
|
cycles=max
|
||||||
|
cycleup=10
|
||||||
|
cycledown=20
|
||||||
|
|
||||||
|
[mixer]
|
||||||
|
nosound=false
|
||||||
|
rate=22050
|
||||||
|
blocksize=8192
|
||||||
|
prebuffer=10
|
||||||
|
|
||||||
|
[midi]
|
||||||
|
mpu401=none
|
||||||
|
mididevice=none
|
||||||
|
midiconfig=
|
||||||
|
|
||||||
|
[sblaster]
|
||||||
|
sbtype=sb1
|
||||||
|
sbbase=220
|
||||||
|
irq=7
|
||||||
|
dma=1
|
||||||
|
hdma=5
|
||||||
|
sbmixer=false
|
||||||
|
oplmode=none
|
||||||
|
oplemu=fast
|
||||||
|
oplrate=22050
|
||||||
|
|
||||||
|
[gus]
|
||||||
|
gus=false
|
||||||
|
gusrate=22050
|
||||||
|
gusbase=240
|
||||||
|
gusirq=5
|
||||||
|
gusdma=3
|
||||||
|
ultradir=C:\ULTRASND
|
||||||
|
|
||||||
|
[speaker]
|
||||||
|
pcspeaker=none
|
||||||
|
pcrate=22050
|
||||||
|
tandy=off
|
||||||
|
tandyrate=22050
|
||||||
|
disney=false
|
||||||
|
|
||||||
|
[joystick]
|
||||||
|
joysticktype=none
|
||||||
|
timed=true
|
||||||
|
autofire=false
|
||||||
|
swap34=false
|
||||||
|
buttonwrap=false
|
||||||
|
|
||||||
|
[serial]
|
||||||
|
serial1=disabled
|
||||||
|
serial2=disabled
|
||||||
|
serial3=disabled
|
||||||
|
serial4=disabled
|
||||||
|
|
||||||
|
[dos]
|
||||||
|
xms=true
|
||||||
|
ems=true
|
||||||
|
umb=true
|
||||||
|
keyboardlayout=auto
|
||||||
|
|
||||||
|
[ipx]
|
||||||
|
ipx=false
|
||||||
|
|
||||||
|
[autoexec]
|
||||||
|
mount D ~/.local/share/Fallout1
|
||||||
|
D:
|
||||||
|
FALLOUT.EXE
|
||||||
|
EXIT
|
8
games-rpg/fallout1/files/fallout1.desktop
Normal file
8
games-rpg/fallout1/files/fallout1.desktop
Normal file
@ -0,0 +1,8 @@
|
|||||||
|
[Desktop Entry]
|
||||||
|
Version=1.0
|
||||||
|
Type=Application
|
||||||
|
Name=Fallout
|
||||||
|
Comment=Post-apocalyptic role-playing game.
|
||||||
|
Exec=fallout1
|
||||||
|
Icon=fallout1
|
||||||
|
Categories=Game;RolePlaying;
|
28
games-rpg/fallout1/files/fallout1_dos
Normal file
28
games-rpg/fallout1/files/fallout1_dos
Normal file
@ -0,0 +1,28 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -xeuo pipefail
|
||||||
|
|
||||||
|
if [ ! -d ~/.local/share/Fallout1 ]; then
|
||||||
|
mkdir -p ~/.local/share/Fallout1
|
||||||
|
pushd ~/.local/share/Fallout1
|
||||||
|
for i in $(ls /usr/share/games/fallout1 | grep -vE '^fallout\.cfg$|^DATA$|^dosbox\.conf$'); do
|
||||||
|
ln -s /usr/share/games/fallout1/$i $i
|
||||||
|
done
|
||||||
|
cp /usr/share/games/fallout1/dosbox.conf .
|
||||||
|
sed 's/^art_cache_size=.*$/art_cache_size=5/;s/^device=.*$/device=57344/;s/^dma=.*$/dma=1/;s/^irq=.*$/irq=7/;s/^port=.*$/port=544/' /usr/share/games/fallout1/fallout.cfg > fallout.cfg
|
||||||
|
mkdir DATA
|
||||||
|
pushd DATA
|
||||||
|
for i in $(ls /usr/share/games/fallout1/DATA | grep -vE '^SAVEGAME$|^MAPS$'); do
|
||||||
|
ln -s /usr/share/games/fallout1/DATA/$i $i
|
||||||
|
done
|
||||||
|
mkdir SAVEGAME
|
||||||
|
mkdir MAPS
|
||||||
|
pushd MAPS
|
||||||
|
for i in $(ls /usr/share/games/fallout1/DATA/MAPS); do
|
||||||
|
ln -s /usr/share/games/fallout1/DATA/MAPS/$i $i
|
||||||
|
done
|
||||||
|
popd
|
||||||
|
popd
|
||||||
|
popd
|
||||||
|
fi
|
||||||
|
|
||||||
|
dosbox -conf ~/.local/share/Fallout1/dosbox.conf
|
26
games-rpg/fallout1/files/fallout1_wine
Normal file
26
games-rpg/fallout1/files/fallout1_wine
Normal file
@ -0,0 +1,26 @@
|
|||||||
|
#!/usr/bin/env bash
|
||||||
|
set -xeuo pipefail
|
||||||
|
|
||||||
|
WINEPREFIX=~/.wine_fallout1
|
||||||
|
WINEARCH=win32
|
||||||
|
|
||||||
|
if [ ! -d ~/.local/share/Fallout1 ]; then
|
||||||
|
mkdir -p ~/.local/share/Fallout1
|
||||||
|
pushd ~/.local/share/Fallout1
|
||||||
|
for i in $(ls /usr/share/games/fallout1 | grep -vE '^fallout\.cfg$|^DATA$'); do
|
||||||
|
ln -s /usr/share/games/fallout1/$i $i
|
||||||
|
done
|
||||||
|
cp /usr/share/games/fallout1/fallout.cfg .
|
||||||
|
mkdir DATA
|
||||||
|
pushd DATA
|
||||||
|
for i in $(ls /usr/share/games/fallout1/DATA | grep -v ^SAVEGAME$); do
|
||||||
|
ln -s /usr/share/games/fallout1/DATA/$i $i
|
||||||
|
done
|
||||||
|
mkdir SAVEGAME
|
||||||
|
popd
|
||||||
|
popd
|
||||||
|
fi
|
||||||
|
|
||||||
|
pushd ~/.local/share/Fallout1
|
||||||
|
wine falloutw.exe
|
||||||
|
popd
|
Loading…
Reference in New Issue
Block a user