6806 Commits

Author SHA1 Message Date
Dimitris Panokostas
08d809e49e
enhancement: remember window sizes for P96 screens also (#1568)
P96 screens would always resize the window to the resolution set. However, if the user had resized the window to other dimensions, it would be preferable to keep those, instead.

This change does that, with the following catch: Only if the amiga window if larger than the requested RTG resolution, will it be kept. If it's smaller, the window will resize to accomodate the new resolution, to avoid scaling it down.
2025-01-11 13:48:57 +01:00
Dimitris Panokostas
b3365c9120
feat: add CDFS Automount CD/DVD option in GUI
This is useful if you want to mount CDs on Workbench
2025-01-09 17:42:11 +01:00
Dimitris Panokostas
44c6ce7b0a
bugfix: Config description was not set when using WHDLoad (fixes #1580) 2025-01-09 15:56:24 +01:00
Dimitris Panokostas
2eca3a4ddb
enhancement: populate more fields in Hardfile dialog (fixes #1578) 2025-01-09 11:07:10 +01:00
Dimitris Panokostas
87ba6cf09b
bugfix: Savestate buttons would not show fully sometimes (fixes #1577) 2025-01-09 09:40:26 +01:00
Dimitris Panokostas
203c6cdf33
update to RC3 2025-01-08 20:52:49 +01:00
Dimitris Panokostas
58c3f8b95c
bugfix: Description was not kept when Restart was used (fixes #1576) 2025-01-08 19:03:12 +01:00
Dimitris Panokostas
6aaa82c86d
enhancement: add more features in Savestates panel
- Added buttons for loading and saving a custom (non-slot related) save state.
- Updated logic to save the corresponding screenshot based on the selected filename.
- When using custom filenames, no slot is selected. If you select a slot manually, the filename is reset to the default for that slot instead.
2025-01-08 18:37:19 +01:00
Dimitris Panokostas
cdc90e9d80
enhancement: added Delete save states button
- Refactored the existing Load/Save to indicate they perform their action based on the selected slot
- Added a new Delete State slot button, to help clean up unwanted save states easier
- Added confirmation dialog before deleting
2025-01-08 17:42:32 +01:00
Dimitris Panokostas
e4ead70008
refactor: move Savestates and Screenshots dirs under Amiberry Home
Move these two under $HOME/amiberry to make them more visible, since the user might interact with them more often.
2025-01-08 17:18:49 +01:00
Dimitris Panokostas
bcc717b942
refactor: Set saveimage dir to Amiberry Home
The saveimage dir was incorrectly pointing to the savestates dir, but it's not supposed to contain save states - it contains disk images
2025-01-08 17:16:10 +01:00
Dimitris Panokostas
6b2d24047e
refactor: Update file dialog text for save state operations
Modified the text in the file selection dialogs in `amiberry_gui.cpp`:
- Changed "Select save state file" to "Load a save state file" for loading operations.
- Changed "Select save state file" to "Save a save state file" for saving operations.

These changes provide clearer instructions to the user.
2025-01-08 17:06:54 +01:00
Dimitris Panokostas
066aec48b9
bugfix: Last active config was lost in Config Panel (fixes #1572)
When loading a config from the GUI, then starting emulation, if we re-opened the GUI the last active config was cleared out.
2025-01-08 16:10:51 +01:00
Dimitris Panokostas
861a243439
bugfix: GUI would show emulation hasn't started incorrectly when saving a state file (fixes #1570)
The dialog message "Emulation hasn't started yet" would be incorrectly shown if you also cancelled a warning of unsafe conditions, during the save state message.
2025-01-07 23:24:22 +01:00
Dimitris Panokostas
bb9dd76324
bugfix: uaescsi.device was always enabled by default (#1570)
The target default options had "automount_cddrives" enabled, which in turn enabled uaescsi.device always.
However, that should not be enabled in all cases.
2025-01-07 23:20:16 +01:00
Dimitris Panokostas
a280b7c073
ci: add recommended compiler flags for macOS debug builds
In order to use the profiler, Jetbrains recommend these flags for macOS Debug builds
2025-01-07 17:55:05 +01:00
Dimitris Panokostas
359e8e73ee
doc: Update HelpPanelFloppy with new help text for save button
Enhanced the help text in `HelpPanelFloppy` to include information about the "Save config for disk" button.
2025-01-06 08:01:37 +01:00
Dimitris Panokostas
25e3cc295d
Revert "refactor: rewrite bsdsocket host implementation"
This reverts commit b3ef00fe54c77420b63c21e72697fcd9b2e9b809.
2025-01-06 07:49:37 +01:00
Dimitris Panokostas
b3ef00fe54
refactor: rewrite bsdsocket host implementation 2025-01-06 07:48:37 +01:00
Dimitris Panokostas
f0156acb58
chore: initialize variables where needed in custom 2025-01-06 05:51:20 +01:00
Dimitris Panokostas
e8611b3be6
chore: minor code improvements
- Use const where possible
- use std::min
- remove elaborate type specifiers
2025-01-06 05:50:59 +01:00
Dimitris Panokostas
7ecf234e5a
refactor: show the correct 32-bit RTG format used
We switched to BGRA, might be good to show the correct option there, and make it the default
2025-01-06 05:50:07 +01:00
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