[BACK]Return to fnaify.1 CVS log [TXT][DIR] Up to [local] / projects / fnaify

File: [local] / projects / fnaify / fnaify.1 (download)

Revision 1.18, Wed Jun 10 07:09:45 2020 UTC (15 months, 1 week ago) by thfr
Branch: MAIN
Changes since 1.17: +2 -0 lines

add Shenzhen I/O to compat list; some minor additions

.Dd $Mdocdate: June 10 2020 $
.Dt FNAIFY 1
.Os
.Sh NAME
.Nm fnaify
.Nd run FNA/XNA games on OpenBSD
.Sh SYNOPSIS
.Nm
.Op Fl i | y
.Op Fl hv
.Op Fl c Ar configfile
.Op Fl d Ar depdir
.Op Fl m Ar monopath
.Op Ar gamedir
.Sh DESCRIPTION
.Nm
sets up games based on the FNA engine to operate with OpenBSD-native
libraries and its
.Xr mono 1
runtime.
.Pp
As of version 2.0,
.Nm
has been extended to attempt configuring XNA games as well.
.Nm
can be run in 3 basic modes regarding the addition of missing libraries:
restrictive, interactive, and permissive.
.Pp
The arguments are as follows:
.Bl -tag -width Ds
.It Fl i | y
The mode determines how
.Nm
handles situations where compatibility problems are identified that can
be addressed with drop-in DLL replacements, or where an option needs to
be selected.
With
.Fl i ,
.Nm
runs in interactive mode, meaning the user will be prompted in every
case.
With
.Fl y ,
.Nm
runs in permissive mode
.Po
.Fl y
for
.Dq yes
to all
.Pc .
This means that any suggested drop-in DLLs will be installed,
and if different options are possible (like picking among several .exe
files for the launch script), the first one will be selected
automatically.
If neither
.Fl i
nor
.Fl y
is specified,
.Nm
runs in restrictive mode, that is no drop-in DLLs will be installed.
.It Fl c Ar configfile
Optional. Use
.Ar configfile
for the configuration of
.Xr mono 1 .
This sets up dllmap/dllentry settings to use the correct libraries. See
.Xr mono-config 5
for details. If this option is omitted, 
.Nm
looks first for
.Pa ~/.config/fnaify/fnaify.dllmap.config
and then for
.Pa /usr/local/share/fnaify/fnaify.dllmap.config .
If neither one is found,
.Nm
creates
.Pa ~/.config/fnaify/fnaify.dllmap.config
with default settings.
.It Fl d Ar depdir
Add
.Ar depdir
to the directories to search for native library dependencies.
A directory specified this way will be searched
.Em before
the default locations
.Pq Pa /usr/local/lib No etc. .
.It Fl m Ar monopath
Add
.Ar monopath
to the directories the
.Xr mono 1
runtime will search for DLLs.
.It Fl h
Prints help text.
.It Fl v
Verbose mode.
.It Ar gamedir
Optional.
Path to the game directory to process.
If not specified, the current working directory will be used.
.El
.Sh SUPPORTED GAMES
.Bl -item -compact
.It
The Adventures of Shuggy
.It
Akane the Kunoichi
.It
Amazing Princess Sarah
.It
Apotheon
.It
Apple Jack 1&2
.It
Bleed
.It
Bleed 2
.It
Breath of Death VII
.It
Brushwood Buddies
.It
Capsized
.It
Chaos Heart
.It
Charlie Murder
.It
Chasm
.It
CometStriker
.It
Cryptark
.It
Cthulhu Saves the World
.It
Curse of the Crescent Isle DX
.It
Dad Quest
.It
Dead Pixels
.It
Dead Pixels II
.It
The Dishwasher: Vampire Smile
.It
Draw a Stickman: EPIC
.It
Dust: An Elysian Tail
.It
Eliza
.It
Escape Goat
.It
Escape Goat 2
.It
EXAPUNKS
.It
Explosionade
.It
FEZ
.It
Fist Puncher
.It
Flinthook
.It
Flotilla
.It
Game Type
.It
Gateways
.It
Grand Class Melee 2
.It
Growing Pains
.It
HackNet
.It
Hive
.It
Hyphen
.It
Jon Shafer's At the Gates
.It
LaserCat
.It
Little Racers STREET
.It
Mercenary Kings
.It
Molek-Syntez
.It
Mount Your Friends
.It
NeuroVoider
.It
Ninja Warrior
.It
One Finger Death Punch
.It
Opus Magnum
.It
Overdriven Reloaded
.It
Owlboy
.It
Paladin
.It
Penny Arcade's On the Rain-Slick Precipice of Darkness 3
.It
Penny Arcade's On the Rain-Slick Precipice of Darkness 4
.It
Phoenix Force
.It
Press X to Not Die
.It
Rex Rocket
.It
Rogue Legacy
.It
Salt and Sanctuary
.It
Shenzhen I/O
.It
Shipwreck
.It
Skulls of the Shogun
.It
Soulcaster 1 & 2
.It
SpeedRunners
.It
Stardew Valley
.It
Sumico
.It
Super Amazing Wagon Adventure
.It
Super Blood Hockey
.It
Super Rad Raygun
.It
Sword of the Stars: The Pit
.It
Terraria
.It
Timespinner
.It
TowerFall: Ascension
.It
Unexplored
.It
Unholy Heights (no audio)
.It
The Useful Dead
.It
Weapon of Choice
.It
Wizorb
.It
Wyv and Keep
.El
.Sh FILES
.Bl -tag -width Ds
.It Pa /usr/local/share/fnaify/fnaify.dllmap.config
Default configuration file to map DLLs to native libraries.
.It Pa ~/.config/fnaify/fnaify.dllmap.config
User directory configuration file. Takes precedence if it exists.
Make sure to keep it up-to-date!
.El
.Sh EXIT STATUS
.Nm
returns 1 if an error occurred with the arguments of files provided,
otherwise 0.
.Sh EXAMPLES
Run in permissive mode, suitable to set up most supported games
automatically.
.Pp
.Dl $ fnaify -y path/to/game/directory
.Pp
Run in interactive mode.
.Nm
will prompt the user if any additional DLLs are recommended, or if a
file needs to be selected for the launch script.
.Pp
.Dl $ fnaify -i path/to/game/directory
.Sh SEE ALSO
.Xr mono 1 ,
.Xr mono-config 5
.Sh HISTORY
The
.Nm
utility was originally created in December 2017 by
.An Thomas Frohwein Aq Mt thfr@openbsd.org .
.Sh RELEASE HISTORY
.Bl -tag -width Ds
.It 2.3
Support for several Zachtronics games. Add libstubborn use to dllmap.
Symlinking for MonoGame, e.g. NeuroVoider.
.It 2.2
Fix config for mono 6. Add support for libcestub.
.It 2.1
Support for additional XNA games. Add MONO_FORCE_COMPAT quirk.
.It 2.0
Add support for XNA games.
Introduce modes
.Fl i | y
to facilitate adding in needed assemblies/libraries.
.It 1.3
Add prompt to download and replace
.Pa FNA.dll
if incompatible version is found.
Detect steamstubs directory and use Steamworks stubs if present.
.It 1.2
FreeBSD portability fixes, account for more special cases (MidBoss,
Adventures of Shuggy, Atom Zombie Smasher), add directory path to plug
in additional libraries.
.It 1.1
Fix bug selecting .exe by separating input variables.
.It 1.0
Initial release.
.El
.Sh AUTHORS
.An -nosplit
.An Thomas Frohwein Aq Mt thfr@openbsd.org