Skip to content

v7.0.0

Latest
Compare
Choose a tag to compare
@github-actions github-actions released this 15 Jan 07:41
v7.0.0
8196671

This is the final v7.0 release, which includes all updates from the Release Candidates, plus a few extra bits added after RC3.

This is a major version update from v6.x (which was always in preview), and it brings several changes. Keep in mind, this version is not recommended for slower platforms like the Raspberry Pi, you should prefer Amiberry-Lite for those (which will also get a new release soon). Some of the most important changes in v7 are:

  • Amiberry is now delivered as an installable package, instead of just an archive with binaries. This also means that you don't have to manually install the dependencies, before you can run it (the package will take care of that for you automatically). For Debian or Ubuntu based systems there's a .DEB package, for Fedora there's RPM and for macOS users, there are DMG images that can be used. You can now install Amiberry by downloading the ZIP archive, extracting it, and doing something like sudo apt install ./amiberry-XYZ.deb (for DEB) or just double-click on the package (in some distros that will prompt the Installer, others will not). Upgrading to a newer version becomes as simple as installing it on top again. Uninstalling it is simple as well (sudo apt remove amiberry for Debian-based systems) and it will clean up the dependencies after it. Check the main README for instructions per platform.
  • The directory structure handling has changed. Amiberry will now install itself into standard locations, placing shared libraries where they are expected in the system, and will use the user's HOME folder to create an Amiberry directory, if it doesn't exist. That will contain the user-configurable stuff, like directories for Floppy images, Harddrives, Configurations etc. Meanwhile, internal directories are placed elsewhere, to reduce clutter. Check the Wiki for more details: https://github.com/BlitterStudio/amiberry/wiki/Amiberry-directories
  • The MacOS binaries are finally signed with an Apple-recognized developer certificate, and they are notarized. This means you no longer have to manually bypass the system's security, to allow it to run. You can just drag and drop it to your Applications location and start it up like any other downloaded App. You'll only get a warning that this was downloaded from the Internet, as expected.
  • Hi-DPI support has been added, so if you're running this on Linux with scaling enabled, or macOS Retina displays, things should look better now.
  • Integer scaling has been added and improved. Check the wiki for more details on this as well.
  • Serial port support has been fixed, as it was broken for some versions now.
  • GUI Themes have been implemented, so you can now customize the GUI color scheme and save it into theme presets.
  • The whole list of Expansions from WinUAE have been implemented, including PPC, PCI, DSP, custom graphics cards, network cards, SCSI controllers, etc. The Expansion panel was refactored significantly, but the functionality is trying to match the same one from WinUAE, to make things easier between the two emulators.

🎉 New Features

  • Implemented the full functionality of the Expansions GUI panel
  • Implemented SLIRP support
  • implemented SERIAL_ENET functionality
  • added Shared serial option
  • added internal serial options
  • Added PPC support from WinUAE (needs QEmu plugin)
  • Added PCEM support from WinUAE, with fixes for ARM/ARM64 added on top
  • Added PCI support from WinUAE
  • Added MAME (a2410 and TM34010) from WinUAE
  • Added QEMU (various gfx cards, network cards, SCSI, etc) from WinUAE
  • Added DSP emulation (disabled for now)
  • Added SANA2 support (not visible in the GUI yet)
  • Merged the latest updates from WinUAE 5.3.1
  • The directory structure used is now changed, to be more standardized. User-configurable folders are now created on startup under the User's HOME folder. Shared libraries will be placed in the expected location based on the system used. The old directory structure included in the repository is cleaned up, as empty directories are no longer needed.
  • Implemented GUI Themes. You can now customize the colors of the GUI and save those in separate theme files.
  • don't open GUI when direct-loading a statefile (fixes #1525)
  • Fixed Quickstart GUI panel would not allow DF1 to be enabled (fixes #1526)
  • JIT 32-bit, don't use LDRD/STRD since memory access is not guaranteed to be aligned
  • Reset MMU option when switching between Quickstart models (fixes #1535)
  • Fix crash on startup on MacOS Intel (fixes #1520)
  • fix bundled plugins on MacOS (#1540) (#1541)
  • whdload filename was not retained in configs (fixes #1539) (#1546)
  • Fix build on macOS Monterey (#1548)
  • Refresh all panels after editing Quickstart (#1549)
  • Refresh all panels when inserting floppy also (#1549)
  • change to BGRA32 for 32-bit modes (fixes #1519)
  • Keyboard MCU emulation
  • Bordercolor config entry
  • Per-config statefile path
  • Implement shortcut handling in disk_selection function (fixes #1559)
  • add CDFS Automount CD/DVD option in GUI

🐛 Bugfixes

  • Fixed various glitches in SelectFile dialog (fixes #1417)
  • Listboxes would not resize in width (fixes #1415)
  • Fixed capitalization in RAM panel (fixes #1422)
  • Fix CPU speed slider scale, when Fastest Possible was selected
  • Fixed navigation in Sound panel
  • Refresh RTG panel when CPU changes are modified
  • Editing entries in HD GUI panel was broken
  • Fix TekMagic RAM mapping.
  • Custom roms would not show up in GUI, after loading a config (fixes #1450)
  • when doing a Rescan ROMs, restore the originally selected ROM afterwards (fixes #1451)
  • don't associate all .lha files with Amiberry (fixes #1461)
  • Alt-Tab did not release keys properly
  • Fixed register type not allowed in newer C++ standards
  • Interlace screen height fix.
  • Theme font size wasn't picked up from the text box
  • Fixed returning to GUI triggered a segfault
  • when rotating display, mouse input should be rotated as well
  • Fixed mouse motion in different rotation angles
  • Fixed uninitialized path variable (#1502 by DidierMalenfant)
  • Expansion Rom file option would not always get saved (#1501)
  • Expansions panel refresh was buggy (fixes #1501)
  • Fixed Serial port implementation, which was broken for a few versions now. Tested with null-modem cables between instances of Amiberry, and between Amiberry and real Amigas.
  • Fixed AHI implementation, which was broken and could even cause crashes on some systems.
  • Fixed NTSC mode could not be selected in Display panel (fixes #1551)
  • Savestate filename handling was buggy when starting from command line (fixes #1553)
  • don't overwrite the textfield on every update (#1554)
  • Fix some socket connections would not complete properly (#1359)
  • getlocaltime would return UTC time, instead of local time
  • Fixed config name was changed when inserting media (fixes #1564)
  • Fix debugger assembler MOVEM
  • Fix TekMagic memory type.
  • ensure screenshot is generated even when using Quick Save State
  • fixed incorrect LED colors in status line
  • uaescsi.device was always enabled by default (#1570)
  • GUI would show emulation hasn't started incorrectly when saving a state file (fixes #1570)
  • Last active config was lost in Config Panel (fixes #1572)
  • Description was not kept when Restart was used (fixes #1576)
  • Savestate buttons would not show fully sometimes (fixes #1577)
  • Config description was not set when using WHDLoad (fixes #1580)
  • Save to slot would not show warning dialogs (fixes #1581)
  • Fix bordercolor config entry.
  • Fixed undefined shifts (merged from WinUAE)
  • ShowMessage dialog could crash if custom font was used (fixes #1591)
  • fixed a few more RGB->BGR entries in Picasso96 code
  • Fixed DF3 LED would not show (fixes #1592)
  • Prometheus FS IO space is 2M

🔨 Improvements

  • always show horizontal scrollbar in Selectfile dialog (fixes #1415)
  • guisan: updated to latest version, various fixes and improvements
  • added .bin, .cdtv and .cd32 as valid rom extensions
  • add support for XDG_CONFIG_HOME (fixes #1425)
  • Gracefully handle iconv failures
  • Remove last track being larger than total tracks check. It is allowed by SCSI spec.
  • Added QuikPak and 6500/1 Keyboard MCU ROM (Will be used in future version).
  • updated AROS rom files to latest version
  • check for Plugins in more places
  • Rename Update XML button to better indicate function
  • when updating the WHDBooter files, include JST and AmiQuit
  • if deleting a config fails, show a message
  • scan arcadia roms during a rescan operation
  • improved icon, added svg version (#1463 by midwan)
  • updated WHDLoad to latest version
  • Highdpi aware renderer (#1472 by midwan)
  • improve mime types (fixes #1474)
  • Check interlace mode field type when calculating screenshot height.
  • check for savestates in the savestate dir as well (fixes #1498)
  • apply scaling factor to emulation window also (fixes #1421)
  • use integer scaling in the GUI, if we are running on a Desktop
  • expanded DBus support with new events: Insert Floppy, Insert CD
  • Added option to use JST instead of WHDLoad binary
  • support Savestates as a parameter (fixes #1522)
  • accept capitalized versions of rom extensions also
  • added portable mode detection (fixes #1527) (#1528)
  • expand --model options with more models (fixes #1529)
  • re-align WHDLoad Custom Fields in GUI (#1544 by midwan)
  • updated WHDLoad to latest version
  • Add RIPPLE IDE
  • Serial TCP/IP TCP_NODELAY
  • remember window size and position (#1568)
  • added Delete save states button
  • add more features in Savestates panel
  • populate more fields in Hardfile dialog (fixes #1578)
  • remember window sizes for P96 screens also (#1568)
  • Updated WHDLoad DB to latest version
  • updated Game controller DB to latest version

🏎️ Performance Improvements

  • avoid using std::endl on streams
  • minor drawing improvements

🏗️ Build System

  • Now using CMake to build for all platforms, the Makefile is removed
  • We can now generate installable packages: DEB, RPM and DMG are added
  • Added builds for Ubuntu releases
  • added Fedora RPM builds
  • add libenet-dev to Ubuntu builds
  • MacOS packages are now properly signed with a certificate. There is no longer a need to bypass security to run the app.
  • add recommended compiler flags for macOS debug builds
  • fix copyright year in macos bundle

🪚 Refactors

  • remove directories that get generated on startup
  • set all GUI internal windows to be not movable
  • Moved "abr" folder under data. (#1464 by midwan)
  • Flatpak update (#1465 by midwan)
  • set alwaysrelease to true when releasing Alt-Tab
  • changed default locations for dirs
  • change default shutdown button value to disabled
  • improve internal serial port name detection
  • rename internal serial ports
  • uaeserial improvements
  • make scrollbar width 14 pixels wide (#1508)
  • remove useless AHI clearqueueaudio call
  • minor improvements in sound.cpp
  • Updated recognized ROM filename extensions
  • Use $HOME/Amiberry for all folders, under macOS installations
  • simplify logic for macOS directory handling
  • use Resources/plugins for plugins folder in MacOS
  • minor optimization in Display panel
  • code improvements in amiberry_gui
  • Floppy Panel refactoring, add new button
  • Blacker than black update
  • clamping, update graphics functions
  • reduce checks in show_screen
  • use std::max/min and modernize headers
  • remember emulation window resizes (fixes #1568)
  • show the correct 32-bit RTG format used
  • rewrite bsdsocket host implementation
  • Update file dialog text for save state operations
  • Set saveimage dir to Amiberry Home
  • move Savestates and Screenshots dirs under Amiberry Home
  • reduce height of savestates widgets
  • label gfx_api -> sdl2
  • use unique_ptr in some GUI elements

📚 Documentation Changes

  • updated Readme with new standards on getting and compiling Amiberry
  • Updated Wiki sections accordingly
  • added description about audio autoswitch (fixes #1537)
  • updated man page with latest changes (fixes #1530)
  • Update HelpPanelFloppy with new help text for save button
  • Updated help text in Savestates GUI panel (fixes #1557)
  • added help text for CDFS automount option (fixes #1582)
  • improve Savestates panel help text
  • more help text updates
  • improve help text in WHDLoad panel (#fixes 1583)

🧹 Chores

  • guisan: harmonize all files to use spaces and same line endings
  • remove opencollective links
  • only write config options if they are enabled
  • add ifdefs for DEBUGGER, cleanup