12 Commits

Author SHA1 Message Date
Dimitris Panokostas
54ecc1b02b
ci: fix copyright year in macos bundle 2025-01-11 23:41:16 +01:00
Dimitris Panokostas
e494c665d0
feat: Keyboard MCU emulation 2025-01-05 02:28:38 +01:00
Dimitris Panokostas
701d538826
refactor: add pre-release version string
Pre-releases or RC packages, should indicate that in the version string
2024-11-27 10:47:14 +01:00
Dimitris Panokostas
97a7021c7b
ci: fix capitalization for MacOS App bundle 2024-11-21 23:53:19 +01:00
Dimitris Panokostas
397ca3df12
ci: only use "rt" for Linux, not macOS 2024-10-30 21:48:19 +01:00
Dimitris Panokostas
b64a623161
ci: add "rt" library to fix build on older distros 2024-10-30 21:38:21 +01:00
Dimitris Panokostas
f5ad0c3841
feat: implemented SERIAL_ENET functionality
- Added new dependency, libenet
- Enabled serial enet functionality
2024-10-29 21:29:46 +01:00
Dimitris Panokostas
9dc7dec4f4
1480 implement missing features in expansion gui panel (#1492)
* fixed vertical alignment of checkbox

* Fixed bug with string list model

* refactored functions in Expansion panel

Changed order of functions, to match WinUAE's mess closer

* Added Accelerator board RAM slider

* Fixed CPU board sub items dropdown list

* clear more lists when refreshing accelerator dropdowns

* Fixed StrngListModel clear

* Enable multiple RTG boards in cfgfile

* Added registry file, refactor things to use that for storing ROMs

Instead of storing the detected ROMs in the amiberry.conf file, we will switch to using the available functionality of registry -> ini file, that WinUAE already has.
This has become necessary, in order to use the same logic when storying the ROM entries (with their ID and type, not just the filename), which is used from the Expansions panel for custom board roms.

It also means changing the existing ROMs functionality to match, so it's likely some things will need fixing after this as well.

* Fixed rom scanning

* Create XDG dirs on startup, if they don't exist

This happened at least once in WSL2 + Debian, so let's make sure

* Fixed rom scanning again, ensure slash in path when needed
2024-10-27 17:17:29 +01:00
Dimitris Panokostas
0ea2e65cab
Gui themes (#1488)
* enhancement: Add new GUI panel, for handling GUI Themes

* Merged preview into gui-themes

* add more widgets on panel

* replaced textfields with sliders

* refactor: optimize PanelThemes

Remove duplicate code, simplify and optimize

* refactor: further optimize PanelThemes

* enhancement: added color box in PanelThemes

* refactor: Themes are now external files, not in amiberry.conf anymore

- Move themes outside of amiberry.conf
- only the theme name remains in amiberry.conf, which points to the filename to use. The default is "default.cfg" and it will be created on startup, if it's missing, with the default theme values.
- added "themes" directory and automatic creation of it on startup, if missing. The location is under XDG_DATA_HOME (~/.local/share/amiberry/themes by default)
- refactored code, themes are now loaded during the prefs_to_gui stage
- added functions for loading/saving themes to filenames

* refactor: load a fallback font if the theme one wasn't found

- Fallback to a standard system font, if the theme one wasn't found
- Enable anti-alias for GUI font
- Create default theme file if it's missing
- Added themes dropdown in GUI

* don't need the extra slash

* refactor: rename theme extension to .theme, load one on startup

- Changed .cfg to .theme for themes
- Load the selected theme on startup
- Set the defaults if the theme is missing a font name

* refactor: rename textbox_background_color to background_color

* feat: added ability to set Global widget colors

* bugfix: SelectFile didn't work when creating new files

* refactor: rename default theme to Default.theme

* added Save As option in Themes

* doc: improved help text in Themes panel

* added some navigation for the Themes panel

Sliders are not included, as they don't have unique IDs yet
2024-10-19 17:18:02 +02:00
Dimitris Panokostas
035875c76a
feat: Implemented SLIRP support
Merged from WinUAE, with minor modifications to make it compile under non-Windows environments
2024-10-16 18:53:37 +02:00
Dimitris Panokostas
8ff8a18861
enhancement: Highdpi aware renderer (#1472)
* feat: improve high-DPI rendering
Linux already works fine with scaling, but macOS works differently.

Let's see if this improves the situation

* TTF_SetFontSizeDPI is only available on SDL2 2.0.18 or newer

* Move the SDL2 version check in the right place

* Fix macos build
2024-10-13 16:35:35 +02:00
Dimitris Panokostas
0c5d05255e
Refactor cmakelists (#1467)
* refactor: break out CMakeLists.txt

Make things more manageable by breaking out sections of the monolithic CMakeLists.txt into separate files
2024-10-10 10:37:14 +02:00