mirror of
https://github.com/gryf/fs-uae-wrapper.git
synced 2026-02-02 22:25:47 +01:00
Compare commits
3 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 193e487bb9 | |||
| eb9012f3fa | |||
| efbb5f6f05 |
63
README.rst
63
README.rst
@@ -12,7 +12,7 @@ This little utility is a wrapper on great FS-UAE_ emulator, to perform some
|
|||||||
actions, like uncompressing archived files (CD ROMs images, filesystems),
|
actions, like uncompressing archived files (CD ROMs images, filesystems),
|
||||||
launch the emulator and archive emulator save state.
|
launch the emulator and archive emulator save state.
|
||||||
|
|
||||||
As an example, if there is a collection of CD³² game files and one want to
|
As an example, if there is a collection of CD³² game files and you want to
|
||||||
provide configuration for each game, but want to keep ISO images with
|
provide configuration for each game, but want to keep ISO images with
|
||||||
corresponding files in archive (due to size of those images) than FS-UAE
|
corresponding files in archive (due to size of those images) than FS-UAE
|
||||||
Wrapper is a way to achieve this.
|
Wrapper is a way to achieve this.
|
||||||
@@ -28,8 +28,7 @@ Requirements
|
|||||||
- Python (2 or 3)
|
- Python (2 or 3)
|
||||||
- `fs-uae`_ (obviously :)
|
- `fs-uae`_ (obviously :)
|
||||||
|
|
||||||
Also, there should be archivers programs available for compress/decompress
|
Fs-uae-wrapper supports several types of archives:
|
||||||
archives. Fs-uae-wrapper supports several types of archives:
|
|
||||||
|
|
||||||
- `7z`_
|
- `7z`_
|
||||||
- `lha`_
|
- `lha`_
|
||||||
@@ -43,25 +42,35 @@ archives. Fs-uae-wrapper supports several types of archives:
|
|||||||
|
|
||||||
- `zip`_
|
- `zip`_
|
||||||
|
|
||||||
There are several archive types which are supported, ranging from tar
|
All of those formats should have corresponding software available in the
|
||||||
(compressed with gzip, bzip2 and xz), 7z, rar, zip. lha and lzx. All of those
|
system, otherwise archive extraction/compression will fail.
|
||||||
formats should have corresponding decompressors available in the system,
|
|
||||||
otherwise archive extraction will fail.
|
|
||||||
|
|
||||||
Installation
|
Installation
|
||||||
============
|
============
|
||||||
|
|
||||||
Just perform (preferably in ``virtualenv``) a command:
|
FS-UAE Wrapper is available on `CheeseShop`_ (or python package index if you
|
||||||
|
will). To install it, you can simply invoke (preferably in ``virtualenv``) a
|
||||||
|
command:
|
||||||
|
|
||||||
.. code:: shell-session
|
.. code:: shell-session
|
||||||
|
|
||||||
$ pip install fs-uae-wrapper
|
$ pip install fs-uae-wrapper
|
||||||
|
|
||||||
|
Note, that if ``virtualenv`` was used, there is no need for activating it every
|
||||||
|
time, since if invoke wrapper like this:
|
||||||
|
|
||||||
|
.. code:: shell-session
|
||||||
|
|
||||||
|
$ /path/to/virtualenv/bin/fs-uae-wrapper
|
||||||
|
|
||||||
|
you should be able run the wrapper properly. *Tested only on Linux :)*.
|
||||||
|
|
||||||
Usage
|
Usage
|
||||||
=====
|
=====
|
||||||
|
|
||||||
After installation you should be able to access new command
|
After installation you should be able to access new command ``fs-uae-wrapper``
|
||||||
``fs-uae-wrapper``, and its invocation is identical like ``fs-uae`` binary:
|
(or use the full path to the ``virtualenv`` like on the section above), and it's
|
||||||
|
invocation is identical like ``fs-uae`` binary:
|
||||||
|
|
||||||
.. code:: shell-session
|
.. code:: shell-session
|
||||||
|
|
||||||
@@ -73,9 +82,9 @@ directly in fs-uae configuration or passed as an option:
|
|||||||
.. code:: ini
|
.. code:: ini
|
||||||
|
|
||||||
[config]
|
[config]
|
||||||
...
|
# ...
|
||||||
wrapper = cd32
|
wrapper = cd32
|
||||||
...
|
# ...
|
||||||
|
|
||||||
or
|
or
|
||||||
|
|
||||||
@@ -89,15 +98,19 @@ specific module will be loaded and depending on the module, there would be
|
|||||||
performed specific tasks before ``fs-uae`` is launched and after it.
|
performed specific tasks before ``fs-uae`` is launched and after it.
|
||||||
|
|
||||||
Assumption is, that configuration file are written in portable way, so the are
|
Assumption is, that configuration file are written in portable way, so the are
|
||||||
saved as `relative configuration file`_ (hence the name ``Config.fs-uae``, even
|
saved as `relative configuration file`_ (hence the name ``Config.fs-uae``),
|
||||||
if the are named differently. If certain wrapper is specified, it will create
|
even if the are named differently. If certain wrapper is specified, it will
|
||||||
temporary directory and place the configuration file there as
|
create temporary directory and place the configuration file there as
|
||||||
``Config.fs-uae``.
|
``Config.fs-uae``.
|
||||||
|
|
||||||
If no ``wrapper`` option would be passed either as an config option or
|
If no ``wrapper`` option would be passed either as an config option or
|
||||||
command line argument, all command line options will be passed to the fs-uae
|
command line argument, all command line options will be passed to the fs-uae
|
||||||
executable as-is.
|
executable as-is.
|
||||||
|
|
||||||
|
Note, that you can also pass all *wrapper* options via commandline in the very
|
||||||
|
same way as you can pass config options to `fs-uae`, so you don't have to
|
||||||
|
modify original configuration if you don't want to.
|
||||||
|
|
||||||
There is also new config variable introduced: ``$WRAPPER`` which have the same
|
There is also new config variable introduced: ``$WRAPPER`` which have the same
|
||||||
role as ``$CONFIG``, but apply for copied config. For instance - in module
|
role as ``$CONFIG``, but apply for copied config. For instance - in module
|
||||||
archive there are filesystem extracted to new location - to access this
|
archive there are filesystem extracted to new location - to access this
|
||||||
@@ -108,7 +121,7 @@ a config option:
|
|||||||
|
|
||||||
[config]
|
[config]
|
||||||
wrapper = archive
|
wrapper = archive
|
||||||
...
|
# ...
|
||||||
|
|
||||||
hard_drive_0 = $WRAPPER/my_hardrive
|
hard_drive_0 = $WRAPPER/my_hardrive
|
||||||
|
|
||||||
@@ -118,7 +131,7 @@ directory, where configuration will be copied.
|
|||||||
Modules
|
Modules
|
||||||
=======
|
=======
|
||||||
|
|
||||||
Currently, three wrapper modules are available:
|
Currently, couple of wrapper modules are available:
|
||||||
|
|
||||||
- plain
|
- plain
|
||||||
- cd32
|
- cd32
|
||||||
@@ -149,7 +162,7 @@ Options used:
|
|||||||
* ``wrapper_gui_msg`` (optional) if set to "1", will display a graphical
|
* ``wrapper_gui_msg`` (optional) if set to "1", will display a graphical
|
||||||
message during extracting files
|
message during extracting files
|
||||||
* ``wrapper_save_state`` (optional) if set to "1", will load/archive save state
|
* ``wrapper_save_state`` (optional) if set to "1", will load/archive save state
|
||||||
directory, defined as ``$CONFIG/[save-state-dir-name]`` using provided
|
directory, defined as ``$WRAPPER/[save-state-dir-name]`` using provided
|
||||||
``wrapper_archiver`` archiver. If this option is enabled,
|
``wrapper_archiver`` archiver. If this option is enabled,
|
||||||
``wrapper_archiver`` will be required.
|
``wrapper_archiver`` will be required.
|
||||||
|
|
||||||
@@ -170,11 +183,11 @@ fragment of configuration file is saved as ``ChaosEngine.fs-uae``:
|
|||||||
|
|
||||||
cdrom_drive_0 = Chaos Engine, The (1994)(Renegade)(M4)[!][CDD3445].cue
|
cdrom_drive_0 = Chaos Engine, The (1994)(Renegade)(M4)[!][CDD3445].cue
|
||||||
|
|
||||||
save_states_dir = $CONFIG/fs-uae-save/
|
save_states_dir = $WRAPPER/fs-uae-save/
|
||||||
|
|
||||||
joystick_port_1_mode = cd32 gamepad
|
joystick_port_1_mode = cd32 gamepad
|
||||||
platform = cd32
|
platform = cd32
|
||||||
...
|
# ...
|
||||||
|
|
||||||
Command line invocation of the wrapper would be as follows:
|
Command line invocation of the wrapper would be as follows:
|
||||||
|
|
||||||
@@ -186,7 +199,7 @@ Now, there several thing will happen:
|
|||||||
|
|
||||||
- Config file will be read, and wrapper module will be found
|
- Config file will be read, and wrapper module will be found
|
||||||
- New temporary directory will be created
|
- New temporary directory will be created
|
||||||
- Archive with game assists will be extracted in that directory
|
- Archive with game assets will be extracted in that directory
|
||||||
- Configuration file will be copied into that directory, and renamed to
|
- Configuration file will be copied into that directory, and renamed to
|
||||||
``Config.fs-uae``
|
``Config.fs-uae``
|
||||||
- If ``wrapper_save_state`` is set, and there is saved state archive, it also
|
- If ``wrapper_save_state`` is set, and there is saved state archive, it also
|
||||||
@@ -215,7 +228,7 @@ Options used:
|
|||||||
* ``wrapper_persist_data`` (optional) if set to "1", will compress (possibly
|
* ``wrapper_persist_data`` (optional) if set to "1", will compress (possibly
|
||||||
changed) data, replacing original archive
|
changed) data, replacing original archive
|
||||||
* ``wrapper_save_state`` (optional) if set to "1", will archive save state
|
* ``wrapper_save_state`` (optional) if set to "1", will archive save state
|
||||||
directory, defined as ``$CONFIG/[save-state-dir-name]`` using provided
|
directory, defined as ``$WRAPPER/[save-state-dir-name]`` using provided
|
||||||
``wrapper_archiver`` archiver. If this option is enabled,
|
``wrapper_archiver`` archiver. If this option is enabled,
|
||||||
``wrapper_archiver`` will be required.
|
``wrapper_archiver`` will be required.
|
||||||
|
|
||||||
@@ -237,7 +250,7 @@ Example configuration:
|
|||||||
wrapper_gui_msg = 1
|
wrapper_gui_msg = 1
|
||||||
wrapper_persist_data = 1
|
wrapper_persist_data = 1
|
||||||
wrapper_save_state = 1
|
wrapper_save_state = 1
|
||||||
...
|
# ...
|
||||||
|
|
||||||
And execution is as usual:
|
And execution is as usual:
|
||||||
|
|
||||||
@@ -276,12 +289,11 @@ set to value ``1`` in this module.
|
|||||||
Example configuration:
|
Example configuration:
|
||||||
|
|
||||||
.. code:: ini
|
.. code:: ini
|
||||||
:number-lines:
|
|
||||||
|
|
||||||
[config]
|
[config]
|
||||||
wrapper = savestate
|
wrapper = savestate
|
||||||
wrapper_archiver = 7z
|
wrapper_archiver = 7z
|
||||||
...
|
# ...
|
||||||
|
|
||||||
And execution is as usual:
|
And execution is as usual:
|
||||||
|
|
||||||
@@ -312,3 +324,4 @@ This work is licensed on 3-clause BSD license. See LICENSE file for details.
|
|||||||
.. _lzx: http://aminet.net/package/misc/unix/unlzx.c.readme
|
.. _lzx: http://aminet.net/package/misc/unix/unlzx.c.readme
|
||||||
.. _tar: https://www.gnu.org/software/tar/
|
.. _tar: https://www.gnu.org/software/tar/
|
||||||
.. _zip: http://www.info-zip.org
|
.. _zip: http://www.info-zip.org
|
||||||
|
.. _CheeseShop: https://pypi.python.org/pypi/fs-/fs-uae-wrapperuae-wrapper
|
||||||
|
|||||||
4
setup.py
4
setup.py
@@ -7,12 +7,12 @@ from setuptools import setup
|
|||||||
|
|
||||||
setup(name='fs-uae-wrapper',
|
setup(name='fs-uae-wrapper',
|
||||||
packages=['fs_uae_wrapper'],
|
packages=['fs_uae_wrapper'],
|
||||||
version='0.8',
|
version='0.8.1',
|
||||||
description='Automate archives and state for fs-uae',
|
description='Automate archives and state for fs-uae',
|
||||||
author='Roman Dobosz',
|
author='Roman Dobosz',
|
||||||
author_email='gryf73@gmail.com',
|
author_email='gryf73@gmail.com',
|
||||||
url='https://github.com/gryf/fs-uea-wrapper',
|
url='https://github.com/gryf/fs-uea-wrapper',
|
||||||
download_url='https://github.com/gryf/pygtktalog.git',
|
download_url='https://github.com/gryf/fs-uae-wrapper/archive/master.zip',
|
||||||
keywords=['uae', 'fs-uae', 'amiga', 'emulator', 'wrapper'],
|
keywords=['uae', 'fs-uae', 'amiga', 'emulator', 'wrapper'],
|
||||||
scripts=['script/fs-uae-wrapper'],
|
scripts=['script/fs-uae-wrapper'],
|
||||||
classifiers=['Programming Language :: Python :: 2',
|
classifiers=['Programming Language :: Python :: 2',
|
||||||
|
|||||||
Reference in New Issue
Block a user