Commit graph

51 commits

Author SHA1 Message Date
s1eve-mcdichae1
ded0a28e2e
amiberry.sh - create conf when not exist and include rom_path value (#4009) 2025-01-19 10:20:13 +02:00
cmitu
b40157edea amiberry: fix 'campsimg' plugin installation
The 'capsimg.so' wasn't properly copied after build to the plugins folder, making Amiberry unable to load IPF files.
Also fixes - apparently - a double free crash on the Pi4 build.
2024-10-03 16:45:35 +01:00
G Derber
f7761fd635
Add ability to differentiate group ownership from user ownership. 2024-08-06 09:38:25 -04:00
cmitu
a1878ec78c amiberry: update build/configuration
Added a couple of changes to accomodate the upstream additions:

 - externally loaded dynamic libraries are now loaded from `$md_inst/plugins`. Include both the CAPSImg / FloppyBridge libraries on installation.
 - extra paths from which various media (floppies/LHA archives/disk or cdrom images) are now set to the `amiga` rom folder. They're useful when loading things from the Amiberry GUI, otherwise launching media from EmulationStation doesn't need these settings.

Also, don't apply the makefile patch on the x86 (preview) branch and fixed the tag name on the `preview` branch.
2024-06-29 06:37:58 +01:00
Dimitris Panokostas
f91b9ed23b
Bring back flags, add x86 tag 2024-06-27 20:14:47 +02:00
Dimitris Panokostas
f23393f386
Add Amiberry for x86 platforms as well 2024-06-20 13:24:18 +02:00
cmitu
a233272b5c amiberry: upgrade to 5.7.2; handle dispmanx deprecation
The 5.7.1 version has a couple of regresions (one is a crash), fixed in version 5.7.2. However, DispmanX support was dropped starting with 5.7.2 so just bumping the version would break Buster based Pi installation.

Therefore the module was changed so that:
 - for DispmanX platforms cherry pick the post 5.7.2 fixes manually and lock the version to 5.7.1
 - for every other platform build the 5.7.2 version
2024-06-07 17:33:54 +01:00
cmitu
678ab766f4 amiberry: update to 5.7.1
Changes in 5.7.1 (https://github.com/BlitterStudio/amiberry/releases/tag/v5.7.1)

* Bugfixes (since 5.6.6):
   - improve CD32 default mapping
   - fix base color for Radiobuttons in SaveStates panel
   - fix KMSDRM video regression
   - fixed background color for SaveStates panel checkboxes
   - when saving a new config in the GUI, it should be selected after the refresh
   - when loading config from the command line and opening the GUI, the settings were reset to defaults
   - always clear the text fields when deleting a config
   - fullscreen toggle didn't quite work
   - quickstart - enabling 2nd floppy drive did not refresh panel
   - make guisan widgets active/inactive status more visible
   - fixed textbox background color in Create hardfile dialog
   - the floppy dropdown wasn't updated properly after a selection
   - fixed CD dropdown did not refresh properly
   - ensure keyboard keys are released when pressing Alt-Tab
   - ignore alt-tab if used to release focus
   - GUI Hardware sprite checkbox wouldn't enable when needed
   - some RTG options were not changed on-the-fly
   - fix mouse drift when using RTG hardware sprite
   - mouse - when using SuperHighRes or Single line modes, the movement scaling was incorrect
   - fix offset for button indicators in ControllerMap GUI
   - mouse: RTG modes can use the positioning directly, but they were affected by the single/double line mode setting, fix absolute positioning
   - fixed crash when using Restart after previous updates
   - Ensure changes in virtual mouse and magic mouse are applied immediately
   - datapath wasn't parsed in WHDBooter
   - bugfix: aspect ratio option was not respected in autocrop
   - bugfix: return empty string when cancelling file/folder dialog
   - fixed select file/folder dialogs briefly showing a scrollbar on startup
   - enter would no longer trigger a KEYDOWN event in guisan
   - fix memory leak when closing filesys unit
   - fixed parsing of ROMs in the GUI
   - don't crash if no kickstarts are found on startup
   - controller hotkey mapping was broken after recent updates
   - fixed navigation in Floppy GUI panel
   - fix all A600 quickstart configs would always incorrectly add Fast RAM
   - start in Quickstart checkbox would not change status
   - virtual Keyboard did not respect Auto-Crop
   - listbox selection color was hardcoded when inactive
   - if Cancel was used in a file/folder dialog, the path would be emptied on return

* Enhancements:
   - Implemented GUI foreground color option for themes
   - Updated floppybridge library to latest version
   - Added button to Create new folder in the dialogs
   - All plugins (floppybridge, capsimg) now live in a separate directory, named "plugins"
   - Added option to log to console
   - Set config name automatically for CD images as well
   - Config panel double-click time reduced to 500ms
   - Improve help text in Config panel,Misc panel,Sound Panel
   - Add console logging details in GUI helptex
   - Added new custom events for Disk Swapper. Two new events were added, Insert Next/Previous disk swapper slot.These allow you to select the next/previous slot and also insert it into DF0: in one step.
   - Added default path for LHA archives. This allows you to set a default path that will be used to load WHDLoad .lha files, for use with the WHDBooter.
   - Added default Floppy, CD-ROM and Hard Drive paths
   - Added option to use "System Default" audio device.This new checkbox in the GUI (Sound panel) will not choose a specific audio device, and instead tell SDL2 to pick the system default one. This helps with systems that may have sound devices that are not listed in the dropdown.
   - Added new WHDLoad panel in GUI. This panel exposes the options that the WHDBooter uses, and allows changes to the slave options before launching a title. The Custom Fields can also be customized from this area. All information is parsed from the same XML that Amiberry uses to match the WHDLoad titles.
   - Added new "Save Mapping" button in Custom Controls.This allows you to save the current mapping for the selected controller as the default, which will be automatically loaded on startup (if the controller is connected).
   - Detect WHDLoad, CD and floppy disk images as parameters in the command line. As a fall back, you can now pass the path to a supported image filename, and it will be loaded automatically. This makes it possible to set Amiberry as the default handler for such files (e.g. .lha, .adf, .adz, .ipf, .cue, .iso, etc.). WHDLoad and CD images trigger the autoloader, while floppy disk images will be loaded into DF0:
   - If a config file that matches the inserted disk image exists, it will be loaded automatically. Otherwise the default one will be used instead. This also makes it easy to save a config after you've loaded a disk image, since the panel will be populated with the right name already.
   - Added support for custom font colors in the GUI theme
2024-06-06 17:36:52 +01:00
Rahim Packir Saibo
259bfd7760
amiberry: update to 5.6.6 2024-01-19 23:39:41 +00:00
cmitu
613c49a8a0 amiberry: update to v5.6.4
This should fix the regression from 5.6.2+ on DispmanX platforms.

Changelog (https://github.com/BlitterStudio/amiberry/releases/tag/v5.6.4):

Fixes:
 * Fixed problems writing parition tables to HDFs after latest updates
 * Fixed crash in Add Harddrive dialog
 * Quickstart did not select correct ROM for A4000T
 * The default.uae could not be deleted
 * GUI would not use default screenmode
 * DMX targets would crash when opening the GUI
 * CD images were not activated on Reset, only on Restart
 * A3000 emulation didn't work
 * Keyboard reset would not restore keys

New/Improved:
 * increase size of text field in Create Hardfile dialog
 * Use CD Image name as a fallback for screenshot filename, if no floppy was found
 * Accept archive formats as disk images also (e.g. .zip, .lha, .7z)
2023-11-20 16:31:55 +00:00
cmitu
3f6f73e1be amiberry: update to version 5.6.3
Changes since 5.6.2 (https://github.com/BlitterStudio/amiberry/releases/tag/v5.6.3)

 * Optionally keep a backup of existing file, when downloading updates
 * Show SDL2 render thread option in the GUI
 * Disable SDL2 render thread checkbox on KMSDRM
 * Improved DMS support
2023-11-14 18:37:36 +00:00
cmitu
9d2aa001ae amiberry: bump version and enable for Pi5
Updated to version 5.6.2 and enabled for Pi5.

Changes in 5.6.2 (complete changelog at https://github.com/BlitterStudio/amiberry/releases/tag/v5.6.2):

Added:
  * improved help text in DiskSwapper panel
  * don't disable CD drive if no image path is specified
  * if start_minimized is specified, do not show a window on startup
  * hide the Linux hidden directories from dialogs
  * added VSync option
  * added missing help text in GUI->Priority

Fixed:
  * fixed crash if Restart was pressed
  * fixed crash on startup on x86_64 platform
  * DiskSwapper slots should be 10
  * Virtual Keyboard options were not saved correctly
  * fixed several memory leaks from the GUI

Platforms:
  * added Raspberry Pi5
  * added RISC-V 64bit (no JIT)
2023-11-11 14:05:46 +00:00
cmitu
042ae93ce9 amiberry: update to 5.6.1
Among others, fixes some input issues, one of them reported in the forums, and a Vero4k black screen during emulation.
Full changelog at https://github.com/BlitterStudio/amiberry/releases/tag/v5.6.1

Bugfixes:

- Hardfile properties were always set to default (fixes #1077)
- cycle exact was incorrect enabled sometimes (fixes #1075)
- Fix foreign disk image support when drive is standard Amiga 3.5" DD
- hsync events should be before misc events
- fixed uaegfx board parameters
- uaegfx board name is UAE, not uaegfx.card
- Fix helptext formatting in CPU panel (fixes #1088)
- use double-quotes to denote inches in GUI
- when using --autoload with a filename in the current path, Amiberry would crash (fixes #1091)
- fix build errors with GCC 13.1 (fixes #1100)
- savestate cmd line option would not use filename (fixes #1081)
- second controller buttons would not be registered in retroarch (fixes #1092)
- Fullscreen toggle would no longer work since v5.3 (fixes #1103)
- reverted copying of prefs on hard reset (fixes #1068)

Improvements:

- VGA mode resolution autoswitch update
- VGA autoswitch update to support new OS 3.2 monitors
- Upgraded FloppyDriveBridge to v1.4
- improve message when Main ROM is not found (fixes #1095)
- improve Floppy GUI panel (fixes #1094)
- use BGR888 for 32-bit modes (fixes #1080)
2023-06-14 04:51:30 +01:00
cmitu
4424d786a7 amiberry: update to 5.6.0
Release notes - https://github.com/BlitterStudio/amiberry/releases/tag/v5.6.0

Changelog for 5.6.0, with modifications added after 5.5.1.

* New features

    - implemented On-Screen Virtual Keyboard
    - added VKBD retroarch mapping support and VKBD default toggle key
    - updated game controllers db to latest version
    - decrease mouse map sensitivity on joystick handling
    - added new default options in amiberry.conf
    - added Warp reset option in Misc Panel
    - GUI improvements
    - implemented turbo boot option
    - added 1024x600 RTG resolution
    - allow on-the-fly change of virtual mouse driver
    - increased width of dropdowns in Input Panel
    - automatically center GUI window when opening
    - updated WHDLoad XML to latest version
    - updated game controllers db to latest version

* Changes

    - refactored input event handling to minimize latency
    - rewrite Serial port support, using libserialport
    - refactored controller input logic
    - decrease mouse map sensitivity on joystick handling
    - added more logging during retroarch event handling

* Bugfixes

    - fix "default" button setting not fully enabling CD32 pad mode when CD32 was configured.
    - detection of hotplug controllers didn't work after 5.4
    - restart would cause crashes sometimes
    - fixed controller axis should be separate from joystick axis handling
    - memory pattern would cause graphics glitches in some cases
    - virtual keyboard now works with CD32 mode as well
    - fixed crash if something triggered a CPU HALT3
    - fixed various compiler warnings
    - revert custom, blitter and drawing to WinUAE 4.4.0 standard
    - improve scrolling smoothness under 50Hz
    - don't use SDL_Quit until we actually quit Amiberry
2023-03-26 19:33:43 +01:00
nemo93
8690687b69 Update Amiberry to 5.5.1 2023-01-05 11:10:09 +01:00
Jools Wills
9dc632aeeb amiberry - create $biosdir/amiga before moving and symlinking kickstart roms
This fixes an error when updating if "$biosdir/amiga" did not already exist.
2022-10-24 17:57:37 +01:00
nemo93
722216b8dc Bump Amiberry to 5.4 2022-10-01 17:04:21 +02:00
cmitu
b9eebe1e24 amiberry: add wget dependency
Amiberry uses it to download the WHDLoad and GamesControllerDB updates.
Since we switched to `curl` for downloads, `wget` may not be installed and updates would fail.
2022-07-23 04:04:34 +01:00
cmitu
77d65f435d amiberry: upgrade to version 5.3
Changed the license file link and updated the upstream project location.
Changelog (taken from upstream https://github.com/BlitterStudio/amiberry/releases/tag/v5.3):

New:
 * statusline resync indicator, merged from latest WinUAE

Fixes:

 * AmiQuit was missing from boot-data.zip file
 * Fixed P96 not working anymore in some environments
 * Navigation in Custom controls when using SDL2 versions older than 2.0.14 wasn't correct
 * input options were not properly parsed when using default.uae on startup, until the GUI was opened once
 * don't overwrite all of changed_prefs when enabling autoheight in DMX
 * Reverted CIA changes until upstream bug is fixed (fixes Mega Typhoon,Cruise for a corpse, probably more, see https://github.com/BlitterStudio/amiberry/issues/985)

Improvements:

 * updated WHDLoad binary to 18.8
 * updated WHDBooter XML to latest version
 * added logging when parsing Custom Controls from XML
 * CD32 C2P/NVRAM only config fixes, C2P init fix
 * add Brightness/Contrast controls on the GUI
 * upgraded floppybridge to latest version (v1.3), fixes some issues with GreaseWeazle
 * newcpu emulation minor fixes
2022-07-03 07:49:05 +01:00
cmitu
3ff63dede2 amiberry: update to version 5.2
* New:
  - Added new CD32 config with 8MB Fast, use that with --autoload option
  - Enable RTC automatically if enabled expansions have RTC
  - Support for Cycle-Exact mode from XML options (github.com/midwan/amiberry/issues/959)
  - Ability to set default soundcard (github.com/midwan/amiberry/issues/963)

* Bugs fixed
  - Hotkey mappings didn't work with controller buttons (github.com/midwan/amiberry/issues/949)
  - Only check for hotkey buttons if they have been mapped (github.com/midwan/amiberry/issues/949)
  - When using Auto-crop and virtual mouse driver, the pointer would not reach the edges of the screen (github.com/midwan/amiberry/issues/962)
  - Launch Amiberry binary directly in macOS app bundle (github.com/midwan/amiberry/issues/970)

* Improvements
  - Updated bundled AROS ROMs to latest version
  - Updated WHDBooter XML and WHDLoad to latest versions
  - Picasso96 new features are now optional. DACSWITCH fix.
2022-05-22 04:30:04 +01:00
Jools Wills
a63a53fc84 amiberry - add support for building with 64bit on rpi 2022-05-03 19:11:45 +01:00
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
6d396a3d5b amiberry - lock to v3.3 for now until some upstream issues are fixed 2021-04-19 02:44:55 +01:00
Jools Wills
b965f21e46 emulators - added rp_module_repo to emulators using git
Also fixed hatari licence link
2021-02-15 23:54:13 +00:00
Jools Wills
2c17061d68 amiberry - hostprefs is no longer used (integrated into main amiberry.conf) 2020-07-06 01:55:19 +01:00
Jools Wills
49cd7d6de1 amiberry - fix building on odroid c1 2020-03-23 05:06:31 +00:00
Jools Wills
f4f4b3053a amiberry - removed unused libguichan-dev dependency 2020-03-22 22:50:12 +00:00
Jools Wills
87c64c00bb amiberry - target dispmanx + sdl2 for rpi4 due to kmsdrm driver issues with amiberry 3.1.2 2020-02-28 06:20:53 +00:00
Jools Wills
dbcb139b88
Merge pull request #3000 from joolswills/module_flags
Module flags
2020-02-28 02:55:51 +00:00
Jools Wills
c310c386b2 amiberry - force to v3.1.0 due to upstream issues 2020-02-22 13:00:58 +00:00
Jools Wills
6af5c2047b updated module flags for all emulators 2020-02-22 08:23:26 +00:00
Jools Wills
acaca66b85 amiberry - added missing dependency for libraspberrypi-dev for videocore targets
* also simplift make parameter logic to use videocore flag
2020-02-02 04:31:44 +00:00
Jools Wills
67785e3af3 amiberry - remove -Ofast and use our default optimisation levels 2019-12-06 02:32:01 +00:00
Jools Wills
bad854f4c1 amiberry - fix the "make clean" for capsimg by moving to after configure stage 2019-11-21 09:41:51 +00:00
Jools Wills
ac7a252644 amiberry - remove temporary comment left over from development PR 2019-11-21 07:04:29 +00:00
Jools Wills
cb4ec2fd04 amiberry - added ipf and zip extensions to help info 2019-11-16 14:57:56 +00:00
Jools Wills
97f6ef40c8 amiberry - enable building of capsimg.so for ipf support 2019-11-16 14:57:56 +00:00
Jools Wills
ffc601cf34 amiberry - update to changes in latest version
* sdl1 is now removed - use sdl2 + dispmanx for rpi1/2/3
 * simplify platform / bin logic
 * don't use sdl1 dependencies from uae4arm / dependency logic cleanup
 * remove Makefile CFLAGS patch - uses CPUFLAGS now and they are needed for GNU as
 * no need for symlink as final binary is now called amiberry for all platforms
2019-11-16 14:57:56 +00:00
Jools Wills
f983e6ed8e amiberry - put all the platform / bin logic in a single function 2019-08-17 05:14:54 +01:00
Jools Wills
61371f9bd2 amiberry - move back to optional packages for a cleaner interface on first install
* was brought to my attention that having one system showing on first boot isn't ideal
2019-08-05 23:38:23 +01:00
Jools Wills
368c58bb29 amiberry - move to main packages
* works well out of the box, low disk usage, and utilises retroarch mapping so makes sense to include it in the main image.
2019-05-14 01:54:21 +01:00
Jools Wills
de71dab0d3 amiberry / uae4arm - skip install configure options on removal 2019-04-13 19:42:05 +01:00
Jools Wills
437ad92310 amiberry - patch makefile to remove compiler flags
* they conflict with our own flags
2019-04-05 23:30:15 +01:00
Jools Wills
3762dab79b amiberry - copy WHDLoad from whdboot-dist to whdboot 2019-03-26 16:46:29 +00:00
Jools Wills
f474d0fcbd switch to newer package name libpng-dev over libpng12-dev for dependencies.
* allow modules to still use libpng12-dev but show a message for them to be updated
 * change libpng-dev dependency to libpng12-dev for Jessie and older
2018-10-18 19:08:56 +01:00
hissingshark
3e21a64598 Add detection/build params/fixes for Vero4k and let gitPullOrClone wind back to a specific commit 2018-07-19 09:08:19 +01: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
Conn O'Griofa
091fb44a76 amiberry: drop -sdl2 postfix for xu4 target
Fixes #2321.
2018-02-27 18:35:21 +00:00
Conn O'Griofa
6632b40f12 amiberry: update for new SDL2 release
* Expand possible build targets to odroid-xu and tinker (untested by me)
* Build -sdl2 version for everything except Pi
* Build -sdl1 version for Pi with default driver, or -sdl2 for f/kms.

The sdl2-dispmanx port won't be selected, because KMS is not yet
a supported target on RetroPie for Pi, and we don't currently
distinguish between fake and full kms in the platform flags.

Fixes #2264.
2018-02-04 23:02:39 +00:00
Jools Wills
518b888eab disable some modules (rpi1 / sdl1 etc) from the kms platform 2017-11-02 19:49:59 +00:00