6834 Commits

Author SHA1 Message Date
Dimitris Panokostas
1b3833f2e0
refactor: remember emulation window resizes (fixes #1568)
When using Windowed mode, if the emulation window is manually resized, that position will be remembered and restored, if the GUI is opened and closed again.
2025-01-06 00:10:15 +01:00
Dimitris Panokostas
ed90471728
enhancement: remember window size and position (#1568)
When starting up, keep track of the GUI window size and position. If it's resized or moved, store the new values and re-use them when re-opening the GUI.
2025-01-05 23:10:19 +01:00
Dimitris Panokostas
87704643f8
feat: Implement shortcut handling in disk_selection function (fixes #1559)
The `disk_selection` function in `amiberry_gui.cpp` has been updated to handle various types of shortcuts. The parameter name has been changed from `drive` to `shortcut`. The function now supports:
- Floppy disk images (shortcuts 0-3)
- Loading save states (shortcut 4)
- Saving save states (shortcut 5)
- Selecting CD images (shortcut 6)
2025-01-05 16:52:18 +01:00
Dimitris Panokostas
fe3d9fc68c
refactor: use std::max/min and modernize headers
Enhanced readability and consistency by replacing manual comparisons and assignments with std::max and std::min functions. Updated #include directives to use modern C++-style headers (e.g., <cmath> instead of <math.h>).
2025-01-05 15:07:55 +01:00
Dimitris Panokostas
4d95539255
refactor: reduce checks in show_screen
Minor optimization to reduce the number of checks done on each frame update, from two to one
2025-01-05 15:07:05 +01:00
Dimitris Panokostas
848c853aa0
bugfix: fixed incorrect LED colors in status line
After switching to BGRA, the Blue and Red colors were inverted in the status line
2025-01-05 14:58:30 +01:00
Dimitris Panokostas
3b602390a4
perf: minor drawing improvements 2025-01-05 14:53:21 +01:00
Dimitris Panokostas
0c182d2ba8
refactor: clamping, update graphics functions
- Updated various functions to use `std::max` and `std::min` for clamping values.
- Removed `#ifdef PICASSO96` block in `updatepicasso96`.
- Changed surface format in `setupcursor` to `SDL_PIXELFORMAT_BGRA32`.
2025-01-05 14:42:23 +01:00
Dimitris Panokostas
1800911590
bugfix: ensure screenshot is generated even when using Quick Save State
- When using the shortcuts for Quick Save state (END + SHIFT + numpad key), no screenshot was generated.
2025-01-05 13:38:34 +01:00
Dimitris Panokostas
e7dd713ceb
bugfix: Fix TekMagic memory type. 2025-01-05 02:55:02 +01:00
Dimitris Panokostas
eccd0157e5
enhancement: Serial TCP/IP TCP_NODELAY 2025-01-05 02:54:21 +01:00
Dimitris Panokostas
2074924fe1
more fixes for savestate changes
Looks like WinUAE's commit was missing more stuff
2025-01-05 02:52:04 +01:00
Dimitris Panokostas
da25189579
added missing update in options.h 2025-01-05 02:47:56 +01:00
Dimitris Panokostas
624df66cd8
feat: Per-config statefile path 2025-01-05 02:41:43 +01:00
Dimitris Panokostas
25f9994e5d
feat: Bordercolor config entry 2025-01-05 02:33:20 +01:00
Dimitris Panokostas
514d23cfaa
bugfix: Fix debugger assembler MOVEM 2025-01-05 02:30:49 +01:00
Dimitris Panokostas
97ccaf30dd
refactor: Blacker than black update 2025-01-05 02:29:58 +01:00
Dimitris Panokostas
e494c665d0
feat: Keyboard MCU emulation 2025-01-05 02:28:38 +01:00
Dimitris Panokostas
685ff8cb00
enhancement: Add RIPPLE IDE
Merged from WinUAE
2025-01-05 00:41:07 +01:00
Dimitris Panokostas
cf5e5414a9
bugfix: Fixed config name was changed when inserting media (fixes #1564)
- The config name was always changed when inserting media into a drive (floppy, CD, whdload). However, this should not happen if we already had a config file loaded earlier.
2025-01-04 13:13:02 +01:00
Dimitris Panokostas
998f1ef2fb
refactor: Floppy Panel refactoring, add new button
- Refactor code in Floppy panel, reduce action listeners
- Add Save Config for Disk button: saves the configuration with the name of the inserted floppy image of DF0
2025-01-04 13:02:15 +01:00
Dimitris Panokostas
2c39559952
Reduce compiler warnings (#1566)
* refactor: fix compiler and clang-tidy warnings
* minor code improvements and modernization
* refactor: fix sprintf is deperecated warnings
* refactor: convert gfxboard encoding to UTF-8
2025-01-03 16:54:58 +01:00
Dimitris Panokostas
b9c5e60031
bugfix: getlocaltime would return UTC time, instead of local time 2025-01-03 05:46:18 +01:00
Dimitris Panokostas
72e2e4f6f4
refactor: code improvements in amiberry_gui
- Replace NULL with nullptr
- initialize structs that needed intializing
- replace _stprintf() which is deprecated, with _sntprintf() (both are macros defined in string.h)
- Changed gui_update() to void, since it always returned zero and we never checked for the result value anywhere
- other minor code improvements
2025-01-02 16:16:26 +01:00
Dimitris Panokostas
34bdf60016
bugfix: Fix some socket connections would not complete properly (#1359)
Some socket connections would not work properly in Amiberry (but also in most/all UAE implementations that were not WinUAE it seems, as they all use the same code).

Specifically, the optvalue would not cover cases that the type was SO_RCVTIMEO, SO_SNDTIMEO and SO_LINGER. All of these use a different struct, instead of an int value, and the result was that we'd get an error when we called setsockopt() - which got reflected back to AmigaOS, as an invalid parameter.
2024-12-29 19:54:20 +01:00
Dimitris Panokostas
bde5073378
chore: added todo for future implementation 2024-12-29 19:33:05 +01:00
Dimitris Panokostas
e833f81d1b
enhancement: Updated help text in Savestates GUI panel (fixes #1557) 2024-12-28 13:48:39 +01:00
Dimitris Panokostas
fbd0cd01a8
bugfix: don't overwrite the textfield on every update (#1554)
- When adding a hard drive, the text field with the path was annoyingly replaced on every widget refresh.
- Set active status on the dropdowns after initializing also, not after a widget action. This means that uaehf.device does not get to have controller type and feature level, as they don't make sense for it.
2024-12-27 15:57:29 +01:00
Dimitris Panokostas
21b1d1fd91
bugfix: Savestate filename handling was buggy when starting from command line (fixes #1553)
- Refactored some logic away from the GUI class
- Use TCHAR* instead of string() for the filename, when getting the timestamp
- Use last_active_config as a fallback, when checking for the filename to pick. The previous "last_loaded_config" would be empty, if we run things from the command line and just loaded a savestate (.uss) file.
- Ensure that the variable txt is freed after we have processed it with SetLastActiveConfig(), not before
2024-12-27 15:28:43 +01:00
Dimitris Panokostas
6aed44d680
refactor: minor optimization in Display panel
Don't get the source every time, instead get it once and check for it when needed
2024-12-27 08:51:17 +01:00
Dimitris Panokostas
7fe2a11e79
bugfix: Fixed NTSC mode could not be selected in Display panel (fixes #1551) 2024-12-27 08:50:43 +01:00
Dimitris Panokostas
6505ca8631
enhancement: updated WHDLoad to latest version 2024-12-24 22:00:52 +01:00
Dimitris Panokostas
fea276895c
bugfix: change to BGRA32 for 32-bit modes (fixes #1519)
Use the same pixel format that WinUAE uses, to avoid headaches like incorrect colors in custom gfx boards.
Previously, RGBA was used, after benchmarks showed that it performed better on slower devices (like the RPI) than BGRA.
2024-12-24 21:50:39 +01:00
Dimitris Panokostas
4b8225a6e0
bugfix: Refresh all panels when inserting floppy also (#1549) 2024-12-24 09:30:49 +01:00
Dimitris Panokostas
4289315a55
bugfix: Refresh all panels after editing Quickstart (#1549) 2024-12-24 09:29:01 +01:00
Dimitris Panokostas
202af212cd
Merge branch 'master' of https://github.com/BlitterStudio/amiberry 2024-12-23 23:24:16 +01:00
Dimitris Panokostas
12c89a8083
bugfix: Fix build on macOS Monterey (#1548)
Added missing cmath include.
Minor refactoring in PanelDisplay.
2024-12-23 23:23:59 +01:00
Dimitris Panokostas
0d9fa4acf8
1545 savestates fixes (#1547)
* bugfix: set last active config to the savestate name (#1545)

* Enhance filename determination in gui_update()

The code now includes additional conditions to determine the `filename` in the `gui_update()` function. Specifically, it checks if `whdload_prefs.whdload_filename` is not empty and uses it to set the `filename`. If that condition is not met, it then checks if `last_loaded_config` has a non-zero length and uses it to set the `filename`. The previous logic that set `filename` to either `last_loaded_config` or "default.uae" has been removed.

* Improve savestate handling and UI feedback in PanelSavestate

Only enable buttons is a savestate title is set.
Show the title when displaying a not found message.
If a savestate is not found, don't try to load the screenshot for it either.
Minor code optimization.
2024-12-23 23:04:36 +01:00
Dimitris Panokostas
fcf14be015
bugfix: whdload filename was not retained in configs (fixes #1539) (#1546) 2024-12-22 19:08:59 +01:00
Dimitris Panokostas
4175cbd8a1
Merge branch 'master' of https://github.com/BlitterStudio/amiberry 2024-12-20 17:26:25 +01:00
Dimitris Panokostas
47a5f2c7c7
enhancement: re-align WHDLoad Custom Fields in GUI (#1544) 2024-12-20 17:25:41 +01:00
Dimitris Panokostas
1aa441f711
enhancement: re-alight WHDLoad Custom Fields in GUI (#1544) 2024-12-20 16:09:55 +01:00
Dimitris Panokostas
7793041de4
Update README.md 2024-12-20 13:26:20 +01:00
Dimitris Panokostas
a2fa9f3b92
Prepare version for RC2 2024-12-19 17:00:47 +01:00
Dimitris Panokostas
b043c320a8
refactor: use Resources/plugins for plugins folder in MacOS
Since the user cannot copy any non-signed plugins anyway, might as well make this internal
2024-12-19 16:48:13 +01:00
Dimitris Panokostas
357cb2de4a
bugfix: fix bundled plugins on MacOS (#1540) (#1541)
The bundled plugins of capsimg and floppybridge, were not included in the final app bundle.
Furthermore, they need to be signed with the same digital certificate, otherwise MacOS will block them from loading.
2024-12-19 16:38:38 +01:00
Dimitris Panokostas
f967df0ace
Revert "refactor: bump CMake requirement to 3.27 so we can debug it"
This reverts commit 0e28e2bb1aa51c33fc4b172994e2ca4d06709276.
2024-12-19 15:52:53 +01:00
Dimitris Panokostas
0e28e2bb1a
refactor: bump CMake requirement to 3.27 so we can debug it 2024-12-19 15:28:34 +01:00
Dimitris Panokostas
656e2cec08
Merge branch 'master' of https://github.com/BlitterStudio/amiberry 2024-12-19 14:59:00 +01:00
Dimitris Panokostas
cc55f0105c
doc: added description about audio autoswitch (fixes #1537) 2024-12-19 14:58:33 +01:00