Commit graph

9 commits

Author SHA1 Message Date
Jools Wills
f330a8987b amiberry - Update to v5.1 and rework amiberry/uae4all modules
Update amiberry version to v5.1 tag

Remove no longer needed libxml2-dev dependency

Add patch for amiberry Makefile so it doesn't override our CFLAGS/CPPFLAGS/LDFLAGS

Remove -O3 from Makefile so it uses our default optimisation level. Previously this was -Ofast but from my own testing -O2 with our compiler flags works best.

Modify build_amiberry with updated paths for caps bootstrap/configure. Override CPUFLAGS for amiberry, so our flags are used, rather than the ones hard-coded into the Makefile.

Include abr and kickstarts folder in install_amiberry. The kickstarts folder includes a freely distributable AROS rom, so let's include it.

Symlink cd32.nvr from "$md_inst/data" to "$md_conf_root/amiga/amiberry" so it's writable by amiberry.

Split uae4arm's shared configure function out so uae4arm and amiberry now only share the launcher code. There is a small amount of duplication with some folder creation in configure_amiberry but it makes sense to split them due to the new amiberry changes.

Rework uae4arm/amiberry configure functions to simplify logic and remove nesting by changing order of calls.

Change the addEmulator calls in uae4arm and amiberry due to parameter ordering changes in the shared launcher script.

Move rom location for amiberry/uae4arm/uae4all to $biosdir/amiga

Create update hook to move / symlink kickstart ROMs from $biosdir to $biosdir/amiga

Add .lha to module description extensions

Added .chd extension to platforms.cfg

Rework the logic in the shared launcher script:

 * Instead of setting EMULATOR variable via sed in uae4arm/amiberry we just change "use_amiberry=0" to "use_amiberry=1" in configure_amiberry.
 * Argument ordering is changed to simplify the logic. Previously the launch script expected [CONFIG] [ROM/GAME], and setting [CONFIG] to auto or "" would handle it automatically. Now it uses [ROM/GAME] [ARGS]. As passing in a configuration was optional, it made it simpler just to have the ROM first, and then allow additional arguments to be sent to the emulator.
 * We now build up an parameters array which avoids duplication and simplifies the code - There is only a single call to launch uae4arm/amiberry with the processed parameters.
 * Switched to using the amiberry --model parameter over our previous rp-a500.uae/rp-a1200.uae configs. Users who have set a particular rom to use amiberry-a500/amiberry-a1200 will still get the same functionality but it will instead use --model A500/A1200. A per rom .uae config can still be saved with customised settings for an adf etc.
 * added support for .chd files for amiberry

How uae4arm.sh handles launching:

 * If the first argument (ROM/GAME) is a .cue or .lha file, and we are launching amiberry, use amiberry's --autoload function.
 * Otherwise if a rom argument is present, see if it's an archive (only zip supported currently). If it is, unpack all known disk image extensions from the archive attach each one as floppy drive arguments (-0 / -1 / -2 etc)
 * If it's not an archive, treat it as a disk image itself, and try and find additional files starting with the same name (eg Game_Disk1/Game_Disk2) and attach them as floppy drive arguments.
 * We then check if there is a .uae config file with the same name as the ROM argument in the ROM's folder or in amiberry's conf folder.
 * If there isn't we will try and use a config based on the filename. For uae4arm it will use the pre-installed rp-a500.uae config by default and rp-a1200.uae for any files containing AGA or CD32. For amiberry we use the --model parameter which chooses a default config based on argument. By default we use A500, but switch to A500P if a file contains ECS and A1200 if a file contains AGA, and CD32/CDTV if those strings are included also (Although cd images are handled separately so this may not be too useful).
 * We always set -G to not show the GUI when the first argument is present - to override this the first argument can be blank and manual parameters can be used (or the amiberry executable can just be used directly)
2022-05-03 19:11:45 +01:00
Jools Wills
7499ca7a47 amiberry - adjust amiberry launch script for argument changes - fixes #3209
* use "--config " instead of "-config=" and "--autoload "
 * may adjust this further and split out amiberry launch to its own code rather than sharing the uae4arm launch code
2020-08-08 22:28:52 +01:00
Jools Wills
307db2d5d1 amiberry/uae4arm - look for config matching name of game in amiberry/uae4arm conf folder 2019-04-07 15:49:14 +01:00
Jools Wills
e76f1b6c60 amiberry - added support for .cue files via new -autoload parameter (and also use for lha) - fixes #2626 2019-03-25 16:16:36 +00:00
Conn O'Griofa
35f07f3c3d amiberry - add support for whdload auto-load - #2327
* add lha extension
 * adjust launch script to use new -autowhdload parameter
 * rework whdboot folder set-up
2018-04-07 18:35:48 +01:00
Jools Wills
a9e4186461 add ipf to supported extensions to extraction script used by amiberry 2018-02-18 18:53:56 +00:00
Jools Wills
3d20023c07 added amiberry - fixes #1880 2017-03-06 18:34:44 +00:00
Jools Wills
22ae4d7b5e uae4arm - if no rom provided (via +Start UAE4Arm), launch directly into uae4arm gui 2017-02-19 23:49:30 +00:00
Jools Wills
156c8781a7 uae4arm - game launch script / enhancements
* add default a500 / a1200 configs
 * allow launching directly from adf/dms/zip
 * support multiple disks in zip or if named *Disk1.adf *Disk2.adf as separate files
 * choose a1200 config if filename contains AGA or CD32 else use a500 config
2017-02-09 20:19:16 +00:00