Amiberry v7.0.0 is released. Amiberry is an optimized Amiga emulator for ARM-based SoCs (such as the Raspberry Pi, Odroid XU4, ASUS Tinkerboard, etc.), that brings you the highest performance Amiga emulation. Itβs an open-source project, build with the efforts of several people and based on previous work of others.
Amiberry Changelog:
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